diff --git a/go.mod b/go.mod index d35ad83d0f6..2b7e5dd89de 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module github.com/terraform-providers/terraform-provider-aws go 1.13 require ( - github.com/aws/aws-sdk-go v1.28.9 + github.com/aws/aws-sdk-go v1.29.7 github.com/beevik/etree v1.1.0 github.com/bflad/tfproviderdocs v0.5.0 github.com/bflad/tfproviderlint v0.10.0 diff --git a/go.sum b/go.sum index b04b7f5fd4c..f65559b5fdd 100644 --- a/go.sum +++ b/go.sum @@ -35,8 +35,8 @@ github.com/armon/go-radix v1.0.0 h1:F4z6KzEeeQIMeLFa97iZU6vupzoecKdU5TX24SNppXI= github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= github.com/aws/aws-sdk-go v1.15.78/go.mod h1:E3/ieXAlvM0XWO57iftYVDLLvQ824smPP3ATZkfNZeM= github.com/aws/aws-sdk-go v1.25.3/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= -github.com/aws/aws-sdk-go v1.28.9 h1:grIuBQc+p3dTRXerh5+2OxSuWFi0iXuxbFdTSg0jaW0= -github.com/aws/aws-sdk-go v1.28.9/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= +github.com/aws/aws-sdk-go v1.29.7 h1:mwe1Bls/BsB3hB3I9CtUIWSpe1u3wdPcwdvtD9lkzsU= +github.com/aws/aws-sdk-go v1.29.7/go.mod h1:1KvfttTE3SPKMpo8g2c6jL3ZKfXtFvKscTgahTma5Xg= github.com/beevik/etree v1.1.0 h1:T0xke/WvNtMoCqgzPhkX2r4rjY3GDZFi+FjpRZY2Jbs= github.com/beevik/etree v1.1.0/go.mod h1:r8Aw8JqVegEf0w2fDnATrX9VpkMcyFeM0FhwO62wh+A= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= @@ -92,6 +92,7 @@ github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9 github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-ole/go-ole v1.2.1/go.mod h1:7FAglXiTm7HKlQRDeOQ6ZNUHidzCWXuZWq/1dTyBNF8= github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w= +github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/go-test/deep v1.0.3 h1:ZrJSEWsXzPOxaZnFteGEfooLba+ju3FYIbOrS+rQd68= github.com/go-test/deep v1.0.3/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= @@ -374,6 +375,8 @@ github.com/pkg/errors v0.8.0 h1:WdK/asTD0HN+q6hsWO3/vpuAkAr+tw6aNJNDFFf0+qw= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI= @@ -527,6 +530,8 @@ golang.org/x/net v0.0.0-20190923162816-aa69164e4478 h1:l5EDrHhldLYb3ZRHDUhXF7Om7 golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191009170851-d66e71096ffb h1:TR699M2v0qoKTOHxeLgp6zPqaQNs74f01a/ob9W0qko= golang.org/x/net v0.0.0-20191009170851-d66e71096ffb/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200202094626-16171245cfb2 h1:CCH4IOTTfewWjGOlSp+zGcjutRKlBEZQ6wTn8ozI/nI= +golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421 h1:Wo7BWFiOk0QRFMLYMqJGFMd9CgUAcGx7V+qEg/h5IBI= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= diff --git a/vendor/github.com/aws/aws-sdk-go/aws/context_background_1_5.go b/vendor/github.com/aws/aws-sdk-go/aws/context_background_1_5.go index 66c5945db15..2f9446333a6 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/context_background_1_5.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/context_background_1_5.go @@ -2,42 +2,8 @@ package aws -import "time" - -// An emptyCtx is a copy of the Go 1.7 context.emptyCtx type. This is copied to -// provide a 1.6 and 1.5 safe version of context that is compatible with Go -// 1.7's Context. -// -// An emptyCtx is never canceled, has no values, and has no deadline. It is not -// struct{}, since vars of this type must have distinct addresses. -type emptyCtx int - -func (*emptyCtx) Deadline() (deadline time.Time, ok bool) { - return -} - -func (*emptyCtx) Done() <-chan struct{} { - return nil -} - -func (*emptyCtx) Err() error { - return nil -} - -func (*emptyCtx) Value(key interface{}) interface{} { - return nil -} - -func (e *emptyCtx) String() string { - switch e { - case backgroundCtx: - return "aws.BackgroundContext" - } - return "unknown empty Context" -} - -var ( - backgroundCtx = new(emptyCtx) +import ( + "github.com/aws/aws-sdk-go/internal/context" ) // BackgroundContext returns a context that will never be canceled, has no @@ -52,5 +18,5 @@ var ( // // See https://golang.org/pkg/context for more information on Contexts. func BackgroundContext() Context { - return backgroundCtx + return context.BackgroundCtx } diff --git a/vendor/github.com/aws/aws-sdk-go/aws/credentials/context_background_go1.5.go b/vendor/github.com/aws/aws-sdk-go/aws/credentials/context_background_go1.5.go new file mode 100644 index 00000000000..5852b264870 --- /dev/null +++ b/vendor/github.com/aws/aws-sdk-go/aws/credentials/context_background_go1.5.go @@ -0,0 +1,22 @@ +// +build !go1.7 + +package credentials + +import ( + "github.com/aws/aws-sdk-go/internal/context" +) + +// backgroundContext returns a context that will never be canceled, has no +// values, and no deadline. This context is used by the SDK to provide +// backwards compatibility with non-context API operations and functionality. +// +// Go 1.6 and before: +// This context function is equivalent to context.Background in the Go stdlib. +// +// Go 1.7 and later: +// The context returned will be the value returned by context.Background() +// +// See https://golang.org/pkg/context for more information on Contexts. +func backgroundContext() Context { + return context.BackgroundCtx +} diff --git a/vendor/github.com/aws/aws-sdk-go/aws/credentials/context_background_go1.7.go b/vendor/github.com/aws/aws-sdk-go/aws/credentials/context_background_go1.7.go new file mode 100644 index 00000000000..388b2154182 --- /dev/null +++ b/vendor/github.com/aws/aws-sdk-go/aws/credentials/context_background_go1.7.go @@ -0,0 +1,20 @@ +// +build go1.7 + +package credentials + +import "context" + +// backgroundContext returns a context that will never be canceled, has no +// values, and no deadline. This context is used by the SDK to provide +// backwards compatibility with non-context API operations and functionality. +// +// Go 1.6 and before: +// This context function is equivalent to context.Background in the Go stdlib. +// +// Go 1.7 and later: +// The context returned will be the value returned by context.Background() +// +// See https://golang.org/pkg/context for more information on Contexts. +func backgroundContext() Context { + return context.Background() +} diff --git a/vendor/github.com/aws/aws-sdk-go/aws/credentials/context_go1.5.go b/vendor/github.com/aws/aws-sdk-go/aws/credentials/context_go1.5.go new file mode 100644 index 00000000000..8152a864add --- /dev/null +++ b/vendor/github.com/aws/aws-sdk-go/aws/credentials/context_go1.5.go @@ -0,0 +1,39 @@ +// +build !go1.9 + +package credentials + +import "time" + +// Context is an copy of the Go v1.7 stdlib's context.Context interface. +// It is represented as a SDK interface to enable you to use the "WithContext" +// API methods with Go v1.6 and a Context type such as golang.org/x/net/context. +// +// This type, aws.Context, and context.Context are equivalent. +// +// See https://golang.org/pkg/context on how to use contexts. +type Context interface { + // Deadline returns the time when work done on behalf of this context + // should be canceled. Deadline returns ok==false when no deadline is + // set. Successive calls to Deadline return the same results. + Deadline() (deadline time.Time, ok bool) + + // Done returns a channel that's closed when work done on behalf of this + // context should be canceled. Done may return nil if this context can + // never be canceled. Successive calls to Done return the same value. + Done() <-chan struct{} + + // Err returns a non-nil error value after Done is closed. Err returns + // Canceled if the context was canceled or DeadlineExceeded if the + // context's deadline passed. No other values for Err are defined. + // After Done is closed, successive calls to Err return the same value. + Err() error + + // Value returns the value associated with this context for key, or nil + // if no value is associated with key. Successive calls to Value with + // the same key returns the same result. + // + // Use context values only for request-scoped data that transits + // processes and API boundaries, not for passing optional parameters to + // functions. + Value(key interface{}) interface{} +} diff --git a/vendor/github.com/aws/aws-sdk-go/aws/credentials/context_go1.9.go b/vendor/github.com/aws/aws-sdk-go/aws/credentials/context_go1.9.go new file mode 100644 index 00000000000..4356edb3d5d --- /dev/null +++ b/vendor/github.com/aws/aws-sdk-go/aws/credentials/context_go1.9.go @@ -0,0 +1,13 @@ +// +build go1.9 + +package credentials + +import "context" + +// Context is an alias of the Go stdlib's context.Context interface. +// It can be used within the SDK's API operation "WithContext" methods. +// +// This type, aws.Context, and context.Context are equivalent. +// +// See https://golang.org/pkg/context on how to use contexts. +type Context = context.Context diff --git a/vendor/github.com/aws/aws-sdk-go/aws/credentials/credentials.go b/vendor/github.com/aws/aws-sdk-go/aws/credentials/credentials.go index 4af59215814..c75d7bba033 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/credentials/credentials.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/credentials/credentials.go @@ -50,10 +50,11 @@ package credentials import ( "fmt" - "sync" + "sync/atomic" "time" "github.com/aws/aws-sdk-go/aws/awserr" + "github.com/aws/aws-sdk-go/internal/sync/singleflight" ) // AnonymousCredentials is an empty Credential object that can be used as @@ -197,24 +198,24 @@ func (e *Expiry) ExpiresAt() time.Time { // first instance of the credentials Value. All calls to Get() after that // will return the cached credentials Value until IsExpired() returns true. type Credentials struct { - creds Value - forceRefresh bool - - m sync.RWMutex + creds atomic.Value + sf singleflight.Group provider Provider } // NewCredentials returns a pointer to a new Credentials with the provider set. func NewCredentials(provider Provider) *Credentials { - return &Credentials{ - provider: provider, - forceRefresh: true, + c := &Credentials{ + provider: provider, } + c.creds.Store(Value{}) + return c } -// Get returns the credentials value, or error if the credentials Value failed -// to be retrieved. +// GetWithContext returns the credentials value, or error if the credentials +// Value failed to be retrieved. Will return early if the passed in context is +// canceled. // // Will return the cached credentials Value if it has not expired. If the // credentials Value has expired the Provider's Retrieve() will be called @@ -222,31 +223,50 @@ func NewCredentials(provider Provider) *Credentials { // // If Credentials.Expire() was called the credentials Value will be force // expired, and the next call to Get() will cause them to be refreshed. -func (c *Credentials) Get() (Value, error) { - // Check the cached credentials first with just the read lock. - c.m.RLock() - if !c.isExpired() { - creds := c.creds - c.m.RUnlock() - return creds, nil +// +// Passed in Context is equivalent to aws.Context, and context.Context. +func (c *Credentials) GetWithContext(ctx Context) (Value, error) { + if curCreds := c.creds.Load(); !c.isExpired(curCreds) { + return curCreds.(Value), nil } - c.m.RUnlock() - - // Credentials are expired need to retrieve the credentials taking the full - // lock. - c.m.Lock() - defer c.m.Unlock() - - if c.isExpired() { - creds, err := c.provider.Retrieve() - if err != nil { - return Value{}, err - } - c.creds = creds - c.forceRefresh = false + + // Cannot pass context down to the actual retrieve, because the first + // context would cancel the whole group when there is not direct + // association of items in the group. + resCh := c.sf.DoChan("", c.singleRetrieve) + select { + case res := <-resCh: + return res.Val.(Value), res.Err + case <-ctx.Done(): + return Value{}, awserr.New("RequestCanceled", + "request context canceled", ctx.Err()) } +} + +func (c *Credentials) singleRetrieve() (interface{}, error) { + if curCreds := c.creds.Load(); !c.isExpired(curCreds) { + return curCreds.(Value), nil + } + + creds, err := c.provider.Retrieve() + if err == nil { + c.creds.Store(creds) + } + + return creds, err +} - return c.creds, nil +// Get returns the credentials value, or error if the credentials Value failed +// to be retrieved. +// +// Will return the cached credentials Value if it has not expired. If the +// credentials Value has expired the Provider's Retrieve() will be called +// to refresh the credentials. +// +// If Credentials.Expire() was called the credentials Value will be force +// expired, and the next call to Get() will cause them to be refreshed. +func (c *Credentials) Get() (Value, error) { + return c.GetWithContext(backgroundContext()) } // Expire expires the credentials and forces them to be retrieved on the @@ -255,10 +275,7 @@ func (c *Credentials) Get() (Value, error) { // This will override the Provider's expired state, and force Credentials // to call the Provider's Retrieve(). func (c *Credentials) Expire() { - c.m.Lock() - defer c.m.Unlock() - - c.forceRefresh = true + c.creds.Store(Value{}) } // IsExpired returns if the credentials are no longer valid, and need @@ -267,31 +284,25 @@ func (c *Credentials) Expire() { // If the Credentials were forced to be expired with Expire() this will // reflect that override. func (c *Credentials) IsExpired() bool { - c.m.RLock() - defer c.m.RUnlock() - - return c.isExpired() + return c.isExpired(c.creds.Load()) } // isExpired helper method wrapping the definition of expired credentials. -func (c *Credentials) isExpired() bool { - return c.forceRefresh || c.provider.IsExpired() +func (c *Credentials) isExpired(creds interface{}) bool { + return creds == nil || creds.(Value) == Value{} || c.provider.IsExpired() } // ExpiresAt provides access to the functionality of the Expirer interface of // the underlying Provider, if it supports that interface. Otherwise, it returns // an error. func (c *Credentials) ExpiresAt() (time.Time, error) { - c.m.RLock() - defer c.m.RUnlock() - expirer, ok := c.provider.(Expirer) if !ok { return time.Time{}, awserr.New("ProviderNotExpirer", - fmt.Sprintf("provider %s does not support ExpiresAt()", c.creds.ProviderName), + fmt.Sprintf("provider %s does not support ExpiresAt()", c.creds.Load().(Value).ProviderName), nil) } - if c.forceRefresh { + if c.creds.Load().(Value) == (Value{}) { // set expiration time to the distant past return time.Time{}, nil } diff --git a/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go b/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go index 8978d6f62e1..36029a3d401 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go @@ -169,6 +169,29 @@ var awsPartition = partition{ "us-east-1": endpoint{}, }, }, + "access-analyzer": service{ + + Endpoints: endpoints{ + "ap-east-1": endpoint{}, + "ap-northeast-1": endpoint{}, + "ap-northeast-2": endpoint{}, + "ap-south-1": endpoint{}, + "ap-southeast-1": endpoint{}, + "ap-southeast-2": endpoint{}, + "ca-central-1": endpoint{}, + "eu-central-1": endpoint{}, + "eu-north-1": endpoint{}, + "eu-west-1": endpoint{}, + "eu-west-2": endpoint{}, + "eu-west-3": endpoint{}, + "me-south-1": endpoint{}, + "sa-east-1": endpoint{}, + "us-east-1": endpoint{}, + "us-east-2": endpoint{}, + "us-west-1": endpoint{}, + "us-west-2": endpoint{}, + }, + }, "acm": service{ Endpoints: endpoints{ @@ -518,9 +541,12 @@ var awsPartition = partition{ "ap-southeast-2": endpoint{}, "ca-central-1": endpoint{}, "eu-central-1": endpoint{}, + "eu-north-1": endpoint{}, "eu-west-1": endpoint{}, "eu-west-2": endpoint{}, "eu-west-3": endpoint{}, + "me-south-1": endpoint{}, + "sa-east-1": endpoint{}, "us-east-1": endpoint{}, "us-east-2": endpoint{}, "us-west-1": endpoint{}, @@ -1089,6 +1115,9 @@ var awsPartition = partition{ Protocols: []string{"https"}, }, Endpoints: endpoints{ + "ap-northeast-1": endpoint{}, + "ap-northeast-2": endpoint{}, + "ap-south-1": endpoint{}, "ap-southeast-1": endpoint{}, "ap-southeast-2": endpoint{}, "ca-central-1": endpoint{}, @@ -1808,6 +1837,7 @@ var awsPartition = partition{ Endpoints: endpoints{ "ap-northeast-1": endpoint{}, + "ap-northeast-2": endpoint{}, "ap-southeast-1": endpoint{}, "eu-west-1": endpoint{}, "us-east-1": endpoint{}, @@ -2159,6 +2189,7 @@ var awsPartition = partition{ "iotsecuredtunneling": service{ Endpoints: endpoints{ + "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, "ap-south-1": endpoint{}, @@ -2170,6 +2201,7 @@ var awsPartition = partition{ "eu-west-1": endpoint{}, "eu-west-2": endpoint{}, "eu-west-3": endpoint{}, + "me-south-1": endpoint{}, "sa-east-1": endpoint{}, "us-east-1": endpoint{}, "us-east-2": endpoint{}, @@ -2415,6 +2447,12 @@ var awsPartition = partition{ "us-east-1": endpoint{}, }, }, + "managedblockchain": service{ + + Endpoints: endpoints{ + "us-east-1": endpoint{}, + }, + }, "marketplacecommerceanalytics": service{ Endpoints: endpoints{ @@ -2424,6 +2462,7 @@ var awsPartition = partition{ "mediaconnect": service{ Endpoints: endpoints{ + "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, "ap-south-1": endpoint{}, @@ -2592,6 +2631,7 @@ var awsPartition = partition{ "mq": service{ Endpoints: endpoints{ + "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, "ap-south-1": endpoint{}, @@ -2627,11 +2667,12 @@ var awsPartition = partition{ Region: "us-west-2", }, }, - "sa-east-1": endpoint{}, - "us-east-1": endpoint{}, - "us-east-2": endpoint{}, - "us-west-1": endpoint{}, - "us-west-2": endpoint{}, + "me-south-1": endpoint{}, + "sa-east-1": endpoint{}, + "us-east-1": endpoint{}, + "us-east-2": endpoint{}, + "us-west-1": endpoint{}, + "us-west-2": endpoint{}, }, }, "mturk-requester": service{ @@ -4380,6 +4421,13 @@ var awscnPartition = partition{ "cn-northwest-1": endpoint{}, }, }, + "backup": service{ + + Endpoints: endpoints{ + "cn-north-1": endpoint{}, + "cn-northwest-1": endpoint{}, + }, + }, "batch": service{ Endpoints: endpoints{ @@ -4813,7 +4861,8 @@ var awscnPartition = partition{ "storagegateway": service{ Endpoints: endpoints{ - "cn-north-1": endpoint{}, + "cn-north-1": endpoint{}, + "cn-northwest-1": endpoint{}, }, }, "streams.dynamodb": service{ @@ -4925,6 +4974,13 @@ var awsusgovPartition = partition{ }, }, Services: services{ + "access-analyzer": service{ + + Endpoints: endpoints{ + "us-gov-east-1": endpoint{}, + "us-gov-west-1": endpoint{}, + }, + }, "acm": service{ Endpoints: endpoints{ @@ -5026,6 +5082,13 @@ var awsusgovPartition = partition{ "us-gov-west-1": endpoint{}, }, }, + "batch": service{ + + Endpoints: endpoints{ + "us-gov-east-1": endpoint{}, + "us-gov-west-1": endpoint{}, + }, + }, "clouddirectory": service{ Endpoints: endpoints{ @@ -5218,6 +5281,7 @@ var awsusgovPartition = partition{ "elasticfilesystem": service{ Endpoints: endpoints{ + "us-gov-east-1": endpoint{}, "us-gov-west-1": endpoint{}, }, }, @@ -5693,6 +5757,18 @@ var awsusgovPartition = partition{ "us-gov-west-1": endpoint{}, }, }, + "support": service{ + PartitionEndpoint: "aws-us-gov-global", + + Endpoints: endpoints{ + "aws-us-gov-global": endpoint{ + Hostname: "support.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + }, + }, + }, "swf": service{ Endpoints: endpoints{ diff --git a/vendor/github.com/aws/aws-sdk-go/aws/request/request.go b/vendor/github.com/aws/aws-sdk-go/aws/request/request.go index 59da73ed408..d597c6ead55 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/request/request.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/request/request.go @@ -135,8 +135,6 @@ func New(cfg aws.Config, clientInfo metadata.ClientInfo, handlers Handlers, err = awserr.New("InvalidEndpointURL", "invalid endpoint uri", err) } - SanitizeHostForHeader(httpReq) - r := &Request{ Config: cfg, ClientInfo: clientInfo, @@ -426,6 +424,8 @@ func (r *Request) Sign() error { return r.Error } + SanitizeHostForHeader(r.HTTPRequest) + r.Handlers.Sign.Run(r) return r.Error } @@ -639,6 +639,10 @@ func getHost(r *http.Request) string { return r.Host } + if r.URL == nil { + return "" + } + return r.URL.Host } diff --git a/vendor/github.com/aws/aws-sdk-go/aws/request/retryer.go b/vendor/github.com/aws/aws-sdk-go/aws/request/retryer.go index 1b61dec9c21..752ae47f845 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/request/retryer.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/request/retryer.go @@ -92,6 +92,7 @@ var throttleCodes = map[string]struct{}{ "TooManyRequestsException": {}, // Lambda functions "PriorRequestNotComplete": {}, // Route53 "TransactionInProgressException": {}, + "EC2ThrottledException": {}, // EC2 } // credsExpiredCodes is a collection of error codes which signify the credentials diff --git a/vendor/github.com/aws/aws-sdk-go/aws/signer/v4/request_context_go1.5.go b/vendor/github.com/aws/aws-sdk-go/aws/signer/v4/request_context_go1.5.go new file mode 100644 index 00000000000..f35fc860b3b --- /dev/null +++ b/vendor/github.com/aws/aws-sdk-go/aws/signer/v4/request_context_go1.5.go @@ -0,0 +1,13 @@ +// +build !go1.7 + +package v4 + +import ( + "net/http" + + "github.com/aws/aws-sdk-go/aws" +) + +func requestContext(r *http.Request) aws.Context { + return aws.BackgroundContext() +} diff --git a/vendor/github.com/aws/aws-sdk-go/aws/signer/v4/request_context_go1.7.go b/vendor/github.com/aws/aws-sdk-go/aws/signer/v4/request_context_go1.7.go new file mode 100644 index 00000000000..fed5c859ca6 --- /dev/null +++ b/vendor/github.com/aws/aws-sdk-go/aws/signer/v4/request_context_go1.7.go @@ -0,0 +1,13 @@ +// +build go1.7 + +package v4 + +import ( + "net/http" + + "github.com/aws/aws-sdk-go/aws" +) + +func requestContext(r *http.Request) aws.Context { + return r.Context() +} diff --git a/vendor/github.com/aws/aws-sdk-go/aws/signer/v4/v4.go b/vendor/github.com/aws/aws-sdk-go/aws/signer/v4/v4.go index b97334c7f28..d71f7b3f4fa 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/signer/v4/v4.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/signer/v4/v4.go @@ -340,7 +340,7 @@ func (v4 Signer) signWithBody(r *http.Request, body io.ReadSeeker, service, regi } var err error - ctx.credValues, err = v4.Credentials.Get() + ctx.credValues, err = v4.Credentials.GetWithContext(requestContext(r)) if err != nil { return http.Header{}, err } diff --git a/vendor/github.com/aws/aws-sdk-go/aws/version.go b/vendor/github.com/aws/aws-sdk-go/aws/version.go index 2c55fd1659c..0be53ee6003 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/version.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.28.9" +const SDKVersion = "1.29.7" diff --git a/vendor/github.com/aws/aws-sdk-go/internal/context/background_go1.5.go b/vendor/github.com/aws/aws-sdk-go/internal/context/background_go1.5.go new file mode 100644 index 00000000000..876dcb3fde2 --- /dev/null +++ b/vendor/github.com/aws/aws-sdk-go/internal/context/background_go1.5.go @@ -0,0 +1,40 @@ +// +build !go1.7 + +package context + +import "time" + +// An emptyCtx is a copy of the Go 1.7 context.emptyCtx type. This is copied to +// provide a 1.6 and 1.5 safe version of context that is compatible with Go +// 1.7's Context. +// +// An emptyCtx is never canceled, has no values, and has no deadline. It is not +// struct{}, since vars of this type must have distinct addresses. +type emptyCtx int + +func (*emptyCtx) Deadline() (deadline time.Time, ok bool) { + return +} + +func (*emptyCtx) Done() <-chan struct{} { + return nil +} + +func (*emptyCtx) Err() error { + return nil +} + +func (*emptyCtx) Value(key interface{}) interface{} { + return nil +} + +func (e *emptyCtx) String() string { + switch e { + case BackgroundCtx: + return "aws.BackgroundContext" + } + return "unknown empty Context" +} + +// BackgroundCtx is the common base context. +var BackgroundCtx = new(emptyCtx) diff --git a/vendor/github.com/aws/aws-sdk-go/internal/sync/singleflight/LICENSE b/vendor/github.com/aws/aws-sdk-go/internal/sync/singleflight/LICENSE new file mode 100644 index 00000000000..6a66aea5eaf --- /dev/null +++ b/vendor/github.com/aws/aws-sdk-go/internal/sync/singleflight/LICENSE @@ -0,0 +1,27 @@ +Copyright (c) 2009 The Go Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/vendor/github.com/aws/aws-sdk-go/internal/sync/singleflight/singleflight.go b/vendor/github.com/aws/aws-sdk-go/internal/sync/singleflight/singleflight.go new file mode 100644 index 00000000000..14ad0c58911 --- /dev/null +++ b/vendor/github.com/aws/aws-sdk-go/internal/sync/singleflight/singleflight.go @@ -0,0 +1,120 @@ +// Copyright 2013 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Package singleflight provides a duplicate function call suppression +// mechanism. +package singleflight + +import "sync" + +// call is an in-flight or completed singleflight.Do call +type call struct { + wg sync.WaitGroup + + // These fields are written once before the WaitGroup is done + // and are only read after the WaitGroup is done. + val interface{} + err error + + // forgotten indicates whether Forget was called with this call's key + // while the call was still in flight. + forgotten bool + + // These fields are read and written with the singleflight + // mutex held before the WaitGroup is done, and are read but + // not written after the WaitGroup is done. + dups int + chans []chan<- Result +} + +// Group represents a class of work and forms a namespace in +// which units of work can be executed with duplicate suppression. +type Group struct { + mu sync.Mutex // protects m + m map[string]*call // lazily initialized +} + +// Result holds the results of Do, so they can be passed +// on a channel. +type Result struct { + Val interface{} + Err error + Shared bool +} + +// Do executes and returns the results of the given function, making +// sure that only one execution is in-flight for a given key at a +// time. If a duplicate comes in, the duplicate caller waits for the +// original to complete and receives the same results. +// The return value shared indicates whether v was given to multiple callers. +func (g *Group) Do(key string, fn func() (interface{}, error)) (v interface{}, err error, shared bool) { + g.mu.Lock() + if g.m == nil { + g.m = make(map[string]*call) + } + if c, ok := g.m[key]; ok { + c.dups++ + g.mu.Unlock() + c.wg.Wait() + return c.val, c.err, true + } + c := new(call) + c.wg.Add(1) + g.m[key] = c + g.mu.Unlock() + + g.doCall(c, key, fn) + return c.val, c.err, c.dups > 0 +} + +// DoChan is like Do but returns a channel that will receive the +// results when they are ready. +func (g *Group) DoChan(key string, fn func() (interface{}, error)) <-chan Result { + ch := make(chan Result, 1) + g.mu.Lock() + if g.m == nil { + g.m = make(map[string]*call) + } + if c, ok := g.m[key]; ok { + c.dups++ + c.chans = append(c.chans, ch) + g.mu.Unlock() + return ch + } + c := &call{chans: []chan<- Result{ch}} + c.wg.Add(1) + g.m[key] = c + g.mu.Unlock() + + go g.doCall(c, key, fn) + + return ch +} + +// doCall handles the single call for a key. +func (g *Group) doCall(c *call, key string, fn func() (interface{}, error)) { + c.val, c.err = fn() + c.wg.Done() + + g.mu.Lock() + if !c.forgotten { + delete(g.m, key) + } + for _, ch := range c.chans { + ch <- Result{c.val, c.err, c.dups > 0} + } + g.mu.Unlock() +} + +// Forget tells the singleflight to forget about a key. Future calls +// to Do for this key will call the function rather than waiting for +// an earlier call to complete. +func (g *Group) Forget(key string) { + g.mu.Lock() + if c, ok := g.m[key]; ok { + c.forgotten = true + } + delete(g.m, key) + g.mu.Unlock() +} diff --git a/vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/build.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/build.go index 50c5ed76005..5d500be27f3 100644 --- a/vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/build.go +++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/build.go @@ -1,7 +1,7 @@ // Package ec2query provides serialization of AWS EC2 requests and responses. package ec2query -//go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/input/ec2.json build_test.go +//go:generate go run -tags codegen ../../../private/model/cli/gen-protocol-tests ../../../models/protocol_tests/input/ec2.json build_test.go import ( "net/url" diff --git a/vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/unmarshal.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/unmarshal.go index 105d732f9d3..c42b04a8d55 100644 --- a/vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/unmarshal.go +++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/unmarshal.go @@ -1,6 +1,6 @@ package ec2query -//go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/output/ec2.json unmarshal_test.go +//go:generate go run -tags codegen ../../../private/model/cli/gen-protocol-tests ../../../models/protocol_tests/output/ec2.json unmarshal_test.go import ( "encoding/xml" diff --git a/vendor/github.com/aws/aws-sdk-go/private/protocol/jsonrpc/jsonrpc.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/jsonrpc/jsonrpc.go index 89cfda75f66..a029217e4c6 100644 --- a/vendor/github.com/aws/aws-sdk-go/private/protocol/jsonrpc/jsonrpc.go +++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/jsonrpc/jsonrpc.go @@ -2,8 +2,8 @@ // requests and responses. package jsonrpc -//go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/input/json.json build_test.go -//go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/output/json.json unmarshal_test.go +//go:generate go run -tags codegen ../../../private/model/cli/gen-protocol-tests ../../../models/protocol_tests/input/json.json build_test.go +//go:generate go run -tags codegen ../../../private/model/cli/gen-protocol-tests ../../../models/protocol_tests/output/json.json unmarshal_test.go import ( "github.com/aws/aws-sdk-go/aws/awserr" diff --git a/vendor/github.com/aws/aws-sdk-go/private/protocol/query/build.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/build.go index 0cb99eb5796..d40346a7790 100644 --- a/vendor/github.com/aws/aws-sdk-go/private/protocol/query/build.go +++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/build.go @@ -1,7 +1,7 @@ // Package query provides serialization of AWS query requests, and responses. package query -//go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/input/query.json build_test.go +//go:generate go run -tags codegen ../../../private/model/cli/gen-protocol-tests ../../../models/protocol_tests/input/query.json build_test.go import ( "net/url" diff --git a/vendor/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal.go index f69c1efc93a..9231e95d160 100644 --- a/vendor/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal.go +++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal.go @@ -1,6 +1,6 @@ package query -//go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/output/query.json unmarshal_test.go +//go:generate go run -tags codegen ../../../private/model/cli/gen-protocol-tests ../../../models/protocol_tests/output/query.json unmarshal_test.go import ( "encoding/xml" diff --git a/vendor/github.com/aws/aws-sdk-go/private/protocol/restjson/restjson.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/restjson/restjson.go index dd14ab020e7..2e0e205af37 100644 --- a/vendor/github.com/aws/aws-sdk-go/private/protocol/restjson/restjson.go +++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/restjson/restjson.go @@ -2,8 +2,8 @@ // requests and responses. package restjson -//go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/input/rest-json.json build_test.go -//go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/output/rest-json.json unmarshal_test.go +//go:generate go run -tags codegen ../../../private/model/cli/gen-protocol-tests ../../../models/protocol_tests/input/rest-json.json build_test.go +//go:generate go run -tags codegen ../../../private/model/cli/gen-protocol-tests ../../../models/protocol_tests/output/rest-json.json unmarshal_test.go import ( "github.com/aws/aws-sdk-go/aws/request" diff --git a/vendor/github.com/aws/aws-sdk-go/private/protocol/restxml/restxml.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/restxml/restxml.go index 07a6187ea62..b1ae3648719 100644 --- a/vendor/github.com/aws/aws-sdk-go/private/protocol/restxml/restxml.go +++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/restxml/restxml.go @@ -2,8 +2,8 @@ // requests and responses. package restxml -//go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/input/rest-xml.json build_test.go -//go:generate go run -tags codegen ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/output/rest-xml.json unmarshal_test.go +//go:generate go run -tags codegen ../../../private/model/cli/gen-protocol-tests ../../../models/protocol_tests/input/rest-xml.json build_test.go +//go:generate go run -tags codegen ../../../private/model/cli/gen-protocol-tests ../../../models/protocol_tests/output/rest-xml.json unmarshal_test.go import ( "bytes" diff --git a/vendor/github.com/aws/aws-sdk-go/service/appsync/api.go b/vendor/github.com/aws/aws-sdk-go/service/appsync/api.go index af53b94ab86..38075bece57 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/appsync/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/appsync/api.go @@ -3954,6 +3954,7 @@ func (s *AdditionalAuthenticationProvider) SetUserPoolConfig(v *CognitoUserPoolC return s } +// The ApiCache object. type ApiCache struct { _ struct{} `type:"structure"` @@ -5190,6 +5191,9 @@ type CreateGraphqlApiInput struct { // The Amazon Cognito user pool configuration. UserPoolConfig *UserPoolConfig `locationName:"userPoolConfig" type:"structure"` + + // A flag indicating whether to enable X-Ray tracing for the GraphqlApi. + XrayEnabled *bool `locationName:"xrayEnabled" type:"boolean"` } // String returns the string representation @@ -5288,6 +5292,12 @@ func (s *CreateGraphqlApiInput) SetUserPoolConfig(v *UserPoolConfig) *CreateGrap return s } +// SetXrayEnabled sets the XrayEnabled field's value. +func (s *CreateGraphqlApiInput) SetXrayEnabled(v bool) *CreateGraphqlApiInput { + s.XrayEnabled = &v + return s +} + type CreateGraphqlApiOutput struct { _ struct{} `type:"structure"` @@ -6572,6 +6582,7 @@ func (s *GetApiCacheInput) SetApiId(v string) *GetApiCacheInput { type GetApiCacheOutput struct { _ struct{} `type:"structure"` + // The ApiCache object. ApiCache *ApiCache `locationName:"apiCache" type:"structure"` } @@ -7262,6 +7273,9 @@ type GraphqlApi struct { // The Amazon Cognito user pool configuration. UserPoolConfig *UserPoolConfig `locationName:"userPoolConfig" type:"structure"` + + // A flag representing whether X-Ray tracing is enabled for this GraphqlApi. + XrayEnabled *bool `locationName:"xrayEnabled" type:"boolean"` } // String returns the string representation @@ -7334,6 +7348,12 @@ func (s *GraphqlApi) SetUserPoolConfig(v *UserPoolConfig) *GraphqlApi { return s } +// SetXrayEnabled sets the XrayEnabled field's value. +func (s *GraphqlApi) SetXrayEnabled(v bool) *GraphqlApi { + s.XrayEnabled = &v + return s +} + // Describes an HTTP data source configuration. type HttpDataSourceConfig struct { _ struct{} `type:"structure"` @@ -7441,6 +7461,8 @@ func (s InternalFailureException) RequestID() string { return s.respMetadata.RequestID } +// The LambdaConflictHandlerConfig object when configuring LAMBDA as the Conflict +// Handler. type LambdaConflictHandlerConfig struct { _ struct{} `type:"structure"` @@ -9759,6 +9781,9 @@ type UpdateGraphqlApiInput struct { // The new Amazon Cognito user pool configuration for the GraphqlApi object. UserPoolConfig *UserPoolConfig `locationName:"userPoolConfig" type:"structure"` + + // A flag indicating whether to enable X-Ray tracing for the GraphqlApi. + XrayEnabled *bool `locationName:"xrayEnabled" type:"boolean"` } // String returns the string representation @@ -9857,6 +9882,12 @@ func (s *UpdateGraphqlApiInput) SetUserPoolConfig(v *UserPoolConfig) *UpdateGrap return s } +// SetXrayEnabled sets the XrayEnabled field's value. +func (s *UpdateGraphqlApiInput) SetXrayEnabled(v bool) *UpdateGraphqlApiInput { + s.XrayEnabled = &v + return s +} + type UpdateGraphqlApiOutput struct { _ struct{} `type:"structure"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/autoscaling/api.go b/vendor/github.com/aws/aws-sdk-go/service/autoscaling/api.go index cfa9204ebdd..d80c2f819d9 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/autoscaling/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/autoscaling/api.go @@ -623,8 +623,8 @@ func (c *AutoScaling) CreateAutoScalingGroupRequest(input *CreateAutoScalingGrou // // If you exceed your maximum limit of Auto Scaling groups, the call fails. // For information about viewing this limit, see DescribeAccountLimits. For -// information about updating this limit, see Amazon EC2 Auto Scaling Limits -// (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-account-limits.html) +// information about updating this limit, see Amazon EC2 Auto Scaling Service +// Quotas (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-account-limits.html) // in the Amazon EC2 Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -722,8 +722,8 @@ func (c *AutoScaling) CreateLaunchConfigurationRequest(input *CreateLaunchConfig // // If you exceed your maximum limit of launch configurations, the call fails. // For information about viewing this limit, see DescribeAccountLimits. For -// information about updating this limit, see Amazon EC2 Auto Scaling Limits -// (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-account-limits.html) +// information about updating this limit, see Amazon EC2 Auto Scaling Service +// Quotas (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-account-limits.html) // in the Amazon EC2 Auto Scaling User Guide. // // For more information, see Launch Configurations (https://docs.aws.amazon.com/autoscaling/ec2/userguide/LaunchConfiguration.html) @@ -1527,11 +1527,11 @@ func (c *AutoScaling) DescribeAccountLimitsRequest(input *DescribeAccountLimitsI // DescribeAccountLimits API operation for Auto Scaling. // -// Describes the current Amazon EC2 Auto Scaling resource limits for your AWS +// Describes the current Amazon EC2 Auto Scaling resource quotas for your AWS // account. // -// For information about requesting an increase in these limits, see Amazon -// EC2 Auto Scaling Limits (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-account-limits.html) +// For information about requesting an increase, see Amazon EC2 Auto Scaling +// Service Quotas (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-account-limits.html) // in the Amazon EC2 Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -4403,10 +4403,7 @@ func (c *AutoScaling) PutScalingPolicyRequest(input *PutScalingPolicyInput) (req // PutScalingPolicy API operation for Auto Scaling. // -// Creates or updates a scaling policy for an Auto Scaling group. To update -// an existing scaling policy, use the existing policy name and set the parameters -// to change. Any existing parameter not changed in an update to an existing -// policy is not changed in this update request. +// Creates or updates a scaling policy for an Auto Scaling group. // // For more information about using scaling policies to scale your Auto Scaling // group automatically, see Dynamic Scaling (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scale-based-on-demand.html) @@ -5143,10 +5140,20 @@ func (c *AutoScaling) TerminateInstanceInAutoScalingGroupRequest(input *Terminat // TerminateInstanceInAutoScalingGroup API operation for Auto Scaling. // // Terminates the specified instance and optionally adjusts the desired group -// size. +// size. This call simply makes a termination request. The instance is not terminated +// immediately. When an instance is terminated, the instance status changes +// to terminated. You can't connect to or start an instance after you've terminated +// it. // -// This call simply makes a termination request. The instance is not terminated -// immediately. +// If you do not specify the option to decrement the desired capacity, Amazon +// EC2 Auto Scaling launches instances to replace the ones that are terminated. +// +// By default, Amazon EC2 Auto Scaling balances instances across all Availability +// Zones. If you decrement the desired capacity, your Auto Scaling group can +// become unbalanced between Availability Zones. Amazon EC2 Auto Scaling tries +// to rebalance the group, and rebalancing might terminate instances in other +// zones. For more information, see Rebalancing Activities (https://docs.aws.amazon.com/autoscaling/ec2/userguide/auto-scaling-benefits.html#AutoScalingBehavior.InstanceUsage) +// in the Amazon EC2 Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -6148,6 +6155,10 @@ type CreateAutoScalingGroupInput struct { // The maximum amount of time, in seconds, that an instance can be in service. // + // For more information, see Replacing Auto Scaling Instances Based on Maximum + // Instance Lifetime (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-max-instance-lifetime.html) + // in the Amazon EC2 Auto Scaling User Guide. + // // Valid Range: Minimum value of 604800. MaxInstanceLifetime *int64 `type:"integer"` @@ -7482,12 +7493,12 @@ func (s DescribeAccountLimitsInput) GoString() string { type DescribeAccountLimitsOutput struct { _ struct{} `type:"structure"` - // The maximum number of groups allowed for your AWS account. The default limit - // is 200 per AWS Region. + // The maximum number of groups allowed for your AWS account. The default is + // 200 groups per AWS Region. MaxNumberOfAutoScalingGroups *int64 `type:"integer"` // The maximum number of launch configurations allowed for your AWS account. - // The default limit is 200 per AWS Region. + // The default is 200 launch configurations per AWS Region. MaxNumberOfLaunchConfigurations *int64 `type:"integer"` // The current number of groups for your AWS account. @@ -10735,6 +10746,10 @@ type LaunchTemplateOverrides struct { // you chose to set the desired capacity in terms of instances, or a performance // attribute such as vCPUs, memory, or I/O. // + // For more information, see Instance Weighting for Amazon EC2 Auto Scaling + // (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-instance-weighting.html) + // in the Amazon EC2 Auto Scaling User Guide. + // // Valid Range: Minimum value of 1. Maximum value of 999. WeightedCapacity *string `min:"1" type:"string"` } @@ -11865,6 +11880,12 @@ type PutScalingPolicyInput struct { // in the Amazon EC2 Auto Scaling User Guide. Cooldown *int64 `type:"integer"` + // Indicates whether the scaling policy is enabled or disabled. The default + // is enabled. For more information, see Disabling a Scaling Policy for an Auto + // Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-enable-disable-scaling-policy.html) + // in the Amazon EC2 Auto Scaling User Guide. + Enabled *bool `type:"boolean"` + // The estimated time, in seconds, until a newly launched instance can contribute // to the CloudWatch metrics. The default is to use the value specified for // the default cooldown period for the group. @@ -12009,6 +12030,12 @@ func (s *PutScalingPolicyInput) SetCooldown(v int64) *PutScalingPolicyInput { return s } +// SetEnabled sets the Enabled field's value. +func (s *PutScalingPolicyInput) SetEnabled(v bool) *PutScalingPolicyInput { + s.Enabled = &v + return s +} + // SetEstimatedInstanceWarmup sets the EstimatedInstanceWarmup field's value. func (s *PutScalingPolicyInput) SetEstimatedInstanceWarmup(v int64) *PutScalingPolicyInput { s.EstimatedInstanceWarmup = &v @@ -12380,6 +12407,9 @@ type ScalingPolicy struct { // any further dynamic scaling activities can start. Cooldown *int64 `type:"integer"` + // Indicates whether the policy is enabled (true) or disabled (false). + Enabled *bool `type:"boolean"` + // The estimated time, in seconds, until a newly launched instance can contribute // to the CloudWatch metrics. EstimatedInstanceWarmup *int64 `type:"integer"` @@ -12453,6 +12483,12 @@ func (s *ScalingPolicy) SetCooldown(v int64) *ScalingPolicy { return s } +// SetEnabled sets the Enabled field's value. +func (s *ScalingPolicy) SetEnabled(v bool) *ScalingPolicy { + s.Enabled = &v + return s +} + // SetEstimatedInstanceWarmup sets the EstimatedInstanceWarmup field's value. func (s *ScalingPolicy) SetEstimatedInstanceWarmup(v int64) *ScalingPolicy { s.EstimatedInstanceWarmup = &v @@ -13562,6 +13598,10 @@ type UpdateAutoScalingGroupInput struct { // The maximum amount of time, in seconds, that an instance can be in service. // + // For more information, see Replacing Auto Scaling Instances Based on Maximum + // Instance Lifetime (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-max-instance-lifetime.html) + // in the Amazon EC2 Auto Scaling User Guide. + // // Valid Range: Minimum value of 604800. MaxInstanceLifetime *int64 `type:"integer"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/cloud9/api.go b/vendor/github.com/aws/aws-sdk-go/service/cloud9/api.go index 134fc20c195..fb8066d8aa6 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/cloud9/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/cloud9/api.go @@ -911,6 +911,266 @@ func (c *Cloud9) ListEnvironmentsPagesWithContext(ctx aws.Context, input *ListEn return p.Err() } +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTagsForResource for more information on using the ListTagsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/ListTagsForResource +func (c *Cloud9) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS Cloud9. +// +// Gets a list of the tags associated with an AWS Cloud9 development environment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Cloud9's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// * NotFoundException +// The target resource cannot be found. +// +// * InternalServerErrorException +// An internal server error occurred. +// +// * BadRequestException +// The target request is invalid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/ListTagsForResource +func (c *Cloud9) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Cloud9) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/TagResource +func (c *Cloud9) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS Cloud9. +// +// Adds tags to an AWS Cloud9 development environment. +// +// Tags that you add to an AWS Cloud9 environment by using this method will +// NOT be automatically propagated to underlying resources. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Cloud9's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// * NotFoundException +// The target resource cannot be found. +// +// * InternalServerErrorException +// An internal server error occurred. +// +// * BadRequestException +// The target request is invalid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/TagResource +func (c *Cloud9) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Cloud9) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/UntagResource +func (c *Cloud9) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS Cloud9. +// +// Removes tags from an AWS Cloud9 development environment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Cloud9's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// * NotFoundException +// The target resource cannot be found. +// +// * InternalServerErrorException +// An internal server error occurred. +// +// * BadRequestException +// The target request is invalid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/UntagResource +func (c *Cloud9) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Cloud9) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateEnvironment = "UpdateEnvironment" // UpdateEnvironmentRequest generates a "aws/request.Request" representing the @@ -1256,6 +1516,10 @@ type CreateEnvironmentEC2Input struct { // The ID of the subnet in Amazon VPC that AWS Cloud9 will use to communicate // with the Amazon EC2 instance. SubnetId *string `locationName:"subnetId" min:"5" type:"string"` + + // An array of key-value pairs that will be associated with the new AWS Cloud9 + // development environment. + Tags []*Tag `locationName:"tags" type:"list"` } // String returns the string representation @@ -1286,6 +1550,16 @@ func (s *CreateEnvironmentEC2Input) Validate() error { if s.SubnetId != nil && len(*s.SubnetId) < 5 { invalidParams.Add(request.NewErrParamMinLen("SubnetId", 5)) } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -1335,6 +1609,12 @@ func (s *CreateEnvironmentEC2Input) SetSubnetId(v string) *CreateEnvironmentEC2I return s } +// SetTags sets the Tags field's value. +func (s *CreateEnvironmentEC2Input) SetTags(v []*Tag) *CreateEnvironmentEC2Input { + s.Tags = v + return s +} + type CreateEnvironmentEC2Output struct { _ struct{} `type:"structure"` @@ -2276,6 +2556,68 @@ func (s *ListEnvironmentsOutput) SetNextToken(v string) *ListEnvironmentsOutput return s } +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the AWS Cloud9 development environment + // to get the tags for. + // + // ResourceARN is a required field + ResourceARN *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s ListTagsForResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListTagsForResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { + s.ResourceARN = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // The list of tags associated with the AWS Cloud9 development environment. + Tags []*Tag `type:"list"` +} + +// String returns the string representation +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v + return s +} + // The target resource cannot be found. type NotFoundException struct { _ struct{} `type:"structure"` @@ -2332,6 +2674,143 @@ func (s NotFoundException) RequestID() string { return s.respMetadata.RequestID } +// Metadata that is associated with AWS resources. In particular, a name-value +// pair that can be associated with an AWS Cloud9 development environment. There +// are two types of tags: user tags and system tags. A user tag is created by +// the user. A system tag is automatically created by AWS services. A system +// tag is prefixed with "aws:" and cannot be modified by the user. +type Tag struct { + _ struct{} `type:"structure"` + + // The name part of a tag. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // The value part of a tag. + // + // Value is a required field + Value *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s Tag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Tag) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *Tag) SetKey(v string) *Tag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Tag) SetValue(v string) *Tag { + s.Value = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the AWS Cloud9 development environment + // to add tags to. + // + // ResourceARN is a required field + ResourceARN *string `type:"string" required:"true"` + + // The list of tags to add to the given AWS Cloud9 development environment. + // + // Tags is a required field + Tags []*Tag `type:"list" required:"true"` +} + +// String returns the string representation +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagResourceOutput) GoString() string { + return s.String() +} + // Too many service requests were made over the given time period. type TooManyRequestsException struct { _ struct{} `type:"structure"` @@ -2388,6 +2867,74 @@ func (s TooManyRequestsException) RequestID() string { return s.respMetadata.RequestID } +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the AWS Cloud9 development environment + // to remove tags from. + // + // ResourceARN is a required field + ResourceARN *string `type:"string" required:"true"` + + // The tag names of the tags to remove from the given AWS Cloud9 development + // environment. + // + // TagKeys is a required field + TagKeys []*string `type:"list" required:"true"` +} + +// String returns the string representation +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UntagResourceOutput) GoString() string { + return s.String() +} + type UpdateEnvironmentInput struct { _ struct{} `type:"structure"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/cloud9/doc.go b/vendor/github.com/aws/aws-sdk-go/service/cloud9/doc.go index c20c565e261..dd5fc61b903 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/cloud9/doc.go +++ b/vendor/github.com/aws/aws-sdk-go/service/cloud9/doc.go @@ -30,6 +30,12 @@ // // * ListEnvironments: Gets a list of environment identifiers. // +// * ListTagsForResource: Gets the tags for an environment. +// +// * TagResource: Adds tags to an environment. +// +// * UntagResource: Removes tags from an environment. +// // * UpdateEnvironment: Changes the settings of an existing environment. // // * UpdateEnvironmentMembership: Changes the settings of an existing environment diff --git a/vendor/github.com/aws/aws-sdk-go/service/cloudformation/api.go b/vendor/github.com/aws/aws-sdk-go/service/cloudformation/api.go index 4b5eb738aee..d4fbccb7ec2 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/cloudformation/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/cloudformation/api.go @@ -438,8 +438,8 @@ func (c *CloudFormation) CreateStackInstancesRequest(input *CreateStackInstances // // Creates stack instances for the specified accounts, within the specified // regions. A stack instance refers to a stack in a specific account and region. -// Accounts and Regions are required parameters—you must specify at least -// one account and one region. +// You must specify at least one value for either Accounts or DeploymentTargets, +// and you must specify at least one value for Regions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3996,7 +3996,7 @@ func (c *CloudFormation) ListTypeRegistrationsRequest(input *ListTypeRegistratio // ListTypeRegistrations API operation for AWS CloudFormation. // -// Returns a list of registration tokens for the specified type. +// Returns a list of registration tokens for the specified type(s). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -4500,7 +4500,7 @@ func (c *CloudFormation) RegisterTypeRequest(input *RegisterTypeInput) (req *req // * Making the resource type available for use in your account // // For more information on how to develop types and ready them for registeration, -// see Creating Resource Providers (cloudformation-cli/latest/userguide/resource-types.html) +// see Creating Resource Providers (https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-types.html) // in the CloudFormation CLI User Guide. // // Once you have initiated a registration request using RegisterType , you can @@ -5444,6 +5444,47 @@ func (s *AccountLimit) SetValue(v int64) *AccountLimit { return s } +// [Service-managed permissions] Describes whether StackSets automatically deploys +// to AWS Organizations accounts that are added to a target organization or +// organizational unit (OU). +type AutoDeployment struct { + _ struct{} `type:"structure"` + + // If set to true, StackSets automatically deploys additional stack instances + // to AWS Organizations accounts that are added to a target organization or + // organizational unit (OU) in the specified Regions. If an account is removed + // from a target organization or OU, StackSets deletes stack instances from + // the account in the specified Regions. + Enabled *bool `type:"boolean"` + + // If set to true, stack resources are retained when an account is removed from + // a target organization or OU. If set to false, stack resources are deleted. + // Specify only if Enabled is set to True. + RetainStacksOnAccountRemoval *bool `type:"boolean"` +} + +// String returns the string representation +func (s AutoDeployment) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AutoDeployment) GoString() string { + return s.String() +} + +// SetEnabled sets the Enabled field's value. +func (s *AutoDeployment) SetEnabled(v bool) *AutoDeployment { + s.Enabled = &v + return s +} + +// SetRetainStacksOnAccountRemoval sets the RetainStacksOnAccountRemoval field's value. +func (s *AutoDeployment) SetRetainStacksOnAccountRemoval(v bool) *AutoDeployment { + s.RetainStacksOnAccountRemoval = &v + return s +} + // The input for the CancelUpdateStack action. type CancelUpdateStackInput struct { _ struct{} `type:"structure"` @@ -6500,11 +6541,17 @@ func (s *CreateStackInput) SetTimeoutInMinutes(v int64) *CreateStackInput { type CreateStackInstancesInput struct { _ struct{} `type:"structure"` - // The names of one or more AWS accounts that you want to create stack instances - // in the specified region(s) for. + // [Self-managed permissions] The names of one or more AWS accounts that you + // want to create stack instances in the specified region(s) for. // - // Accounts is a required field - Accounts []*string `type:"list" required:"true"` + // You can specify Accounts or DeploymentTargets, but not both. + Accounts []*string `type:"list"` + + // [Service-managed permissions] The AWS Organizations accounts for which to + // create stack instances in the specified Regions. + // + // You can specify Accounts or DeploymentTargets, but not both. + DeploymentTargets *DeploymentTargets `type:"structure"` // The unique identifier for this stack set operation. // @@ -6578,9 +6625,6 @@ func (s CreateStackInstancesInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *CreateStackInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateStackInstancesInput"} - if s.Accounts == nil { - invalidParams.Add(request.NewErrParamRequired("Accounts")) - } if s.OperationId != nil && len(*s.OperationId) < 1 { invalidParams.Add(request.NewErrParamMinLen("OperationId", 1)) } @@ -6608,6 +6652,12 @@ func (s *CreateStackInstancesInput) SetAccounts(v []*string) *CreateStackInstanc return s } +// SetDeploymentTargets sets the DeploymentTargets field's value. +func (s *CreateStackInstancesInput) SetDeploymentTargets(v *DeploymentTargets) *CreateStackInstancesInput { + s.DeploymentTargets = v + return s +} + // SetOperationId sets the OperationId field's value. func (s *CreateStackInstancesInput) SetOperationId(v string) *CreateStackInstancesInput { s.OperationId = &v @@ -6698,6 +6748,13 @@ type CreateStackSetInput struct { // in the AWS CloudFormation User Guide. AdministrationRoleARN *string `min:"20" type:"string"` + // Describes whether StackSets automatically deploys to AWS Organizations accounts + // that are added to the target organization or organizational unit (OU). Specify + // only if PermissionModel is SERVICE_MANAGED. + // + // If you specify AutoDeployment, do not specify DeploymentTargets or Regions. + AutoDeployment *AutoDeployment `type:"structure"` + // In some cases, you must explicitly acknowledge that your stack set template // contains certain capabilities in order for AWS CloudFormation to create the // stack set and related stack instances. @@ -6761,6 +6818,19 @@ type CreateStackSetInput struct { // The input parameters for the stack set template. Parameters []*Parameter `type:"list"` + // Describes how the IAM roles required for stack set operations are created. + // By default, SELF-MANAGED is specified. + // + // * With self-managed permissions, you must create the administrator and + // execution roles required to deploy to target accounts. For more information, + // see Grant Self-Managed Stack Set Permissions (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html). + // + // * With service-managed permissions, StackSets automatically creates the + // IAM roles required to deploy to accounts managed by AWS Organizations. + // For more information, see Grant Service-Managed Stack Set Permissions + // (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-service-managed.html). + PermissionModel *string `type:"string" enum:"PermissionModels"` + // The name to associate with the stack set. The name must be unique in the // region where you create your stack set. // @@ -6857,6 +6927,12 @@ func (s *CreateStackSetInput) SetAdministrationRoleARN(v string) *CreateStackSet return s } +// SetAutoDeployment sets the AutoDeployment field's value. +func (s *CreateStackSetInput) SetAutoDeployment(v *AutoDeployment) *CreateStackSetInput { + s.AutoDeployment = v + return s +} + // SetCapabilities sets the Capabilities field's value. func (s *CreateStackSetInput) SetCapabilities(v []*string) *CreateStackSetInput { s.Capabilities = v @@ -6887,6 +6963,12 @@ func (s *CreateStackSetInput) SetParameters(v []*Parameter) *CreateStackSetInput return s } +// SetPermissionModel sets the PermissionModel field's value. +func (s *CreateStackSetInput) SetPermissionModel(v string) *CreateStackSetInput { + s.PermissionModel = &v + return s +} + // SetStackSetName sets the StackSetName field's value. func (s *CreateStackSetInput) SetStackSetName(v string) *CreateStackSetInput { s.StackSetName = &v @@ -7105,10 +7187,17 @@ func (s *DeleteStackInput) SetStackName(v string) *DeleteStackInput { type DeleteStackInstancesInput struct { _ struct{} `type:"structure"` - // The names of the AWS accounts that you want to delete stack instances for. + // [Self-managed permissions] The names of the AWS accounts that you want to + // delete stack instances for. + // + // You can specify Accounts or DeploymentTargets, but not both. + Accounts []*string `type:"list"` + + // [Service-managed permissions] The AWS Organizations accounts from which to + // delete stack instances. // - // Accounts is a required field - Accounts []*string `type:"list" required:"true"` + // You can specify Accounts or DeploymentTargets, but not both. + DeploymentTargets *DeploymentTargets `type:"structure"` // The unique identifier for this stack set operation. // @@ -7160,9 +7249,6 @@ func (s DeleteStackInstancesInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteStackInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteStackInstancesInput"} - if s.Accounts == nil { - invalidParams.Add(request.NewErrParamRequired("Accounts")) - } if s.OperationId != nil && len(*s.OperationId) < 1 { invalidParams.Add(request.NewErrParamMinLen("OperationId", 1)) } @@ -7193,6 +7279,12 @@ func (s *DeleteStackInstancesInput) SetAccounts(v []*string) *DeleteStackInstanc return s } +// SetDeploymentTargets sets the DeploymentTargets field's value. +func (s *DeleteStackInstancesInput) SetDeploymentTargets(v *DeploymentTargets) *DeleteStackInstancesInput { + s.DeploymentTargets = v + return s +} + // SetOperationId sets the OperationId field's value. func (s *DeleteStackInstancesInput) SetOperationId(v string) *DeleteStackInstancesInput { s.OperationId = &v @@ -7313,22 +7405,63 @@ func (s DeleteStackSetOutput) GoString() string { return s.String() } +// [Service-managed permissions] The AWS Organizations accounts to which StackSets +// deploys. +// +// For update operations, you can specify either Accounts or OrganizationalUnitIds. +// For create and delete operations, specify OrganizationalUnitIds. +type DeploymentTargets struct { + _ struct{} `type:"structure"` + + // The names of one or more AWS accounts for which you want to deploy stack + // set updates. + Accounts []*string `type:"list"` + + // The organization root ID or organizational unit (OUs) IDs to which StackSets + // deploys. + OrganizationalUnitIds []*string `type:"list"` +} + +// String returns the string representation +func (s DeploymentTargets) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeploymentTargets) GoString() string { + return s.String() +} + +// SetAccounts sets the Accounts field's value. +func (s *DeploymentTargets) SetAccounts(v []*string) *DeploymentTargets { + s.Accounts = v + return s +} + +// SetOrganizationalUnitIds sets the OrganizationalUnitIds field's value. +func (s *DeploymentTargets) SetOrganizationalUnitIds(v []*string) *DeploymentTargets { + s.OrganizationalUnitIds = v + return s +} + type DeregisterTypeInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the type. // - // Conditional: You must specify TypeName or Arn. + // Conditional: You must specify either TypeName and Type, or Arn. Arn *string `type:"string"` // The kind of type. // // Currently the only valid value is RESOURCE. + // + // Conditional: You must specify either TypeName and Type, or Arn. Type *string `type:"string" enum:"RegistryType"` // The name of the type. // - // Conditional: You must specify TypeName or Arn. + // Conditional: You must specify either TypeName and Type, or Arn. TypeName *string `min:"10" type:"string"` // The ID of a specific version of the type. The version ID is the value at @@ -8603,17 +8736,19 @@ type DescribeTypeInput struct { // The Amazon Resource Name (ARN) of the type. // - // Conditional: You must specify TypeName or Arn. + // Conditional: You must specify either TypeName and Type, or Arn. Arn *string `type:"string"` // The kind of type. // // Currently the only valid value is RESOURCE. + // + // Conditional: You must specify either TypeName and Type, or Arn. Type *string `type:"string" enum:"RegistryType"` // The name of the type. // - // Conditional: You must specify TypeName or Arn. + // Conditional: You must specify either TypeName and Type, or Arn. TypeName *string `min:"10" type:"string"` // The ID of a specific version of the type. The version ID is the value at @@ -10726,21 +10861,25 @@ type ListTypeRegistrationsInput struct { NextToken *string `min:"1" type:"string"` // The current status of the type registration request. + // + // The default is IN_PROGRESS. RegistrationStatusFilter *string `type:"string" enum:"RegistrationStatus"` // The kind of type. // // Currently the only valid value is RESOURCE. + // + // Conditional: You must specify either TypeName and Type, or Arn. Type *string `type:"string" enum:"RegistryType"` // The Amazon Resource Name (ARN) of the type. // - // Conditional: You must specify TypeName or Arn. + // Conditional: You must specify either TypeName and Type, or Arn. TypeArn *string `type:"string"` // The name of the type. // - // Conditional: You must specify TypeName or Arn. + // Conditional: You must specify either TypeName and Type, or Arn. TypeName *string `min:"10" type:"string"` } @@ -10853,7 +10992,7 @@ type ListTypeVersionsInput struct { // The Amazon Resource Name (ARN) of the type for which you want version summary // information. // - // Conditional: You must specify TypeName or Arn. + // Conditional: You must specify either TypeName and Type, or Arn. Arn *string `type:"string"` // The deprecation status of the type versions that you want to get summary @@ -10866,6 +11005,8 @@ type ListTypeVersionsInput struct { // // * DEPRECATED: The type version has been deregistered and can no longer // be used in CloudFormation operations. + // + // The default is LIVE. DeprecatedStatus *string `type:"string" enum:"DeprecatedStatus"` // The maximum number of results to be returned with a single call. If the number @@ -10884,11 +11025,13 @@ type ListTypeVersionsInput struct { // The kind of the type. // // Currently the only valid value is RESOURCE. + // + // Conditional: You must specify either TypeName and Type, or Arn. Type *string `type:"string" enum:"RegistryType"` // The name of the type for which you want version summary information. // - // Conditional: You must specify TypeName or Arn. + // Conditional: You must specify either TypeName and Type, or Arn. TypeName *string `min:"10" type:"string"` } @@ -11046,6 +11189,8 @@ type ListTypesInput struct { // // * PUBLIC: The type is publically visible and usable within any Amazon // account. + // + // The default is PRIVATE. Visibility *string `type:"string" enum:"Visibility"` } @@ -11668,6 +11813,12 @@ type RegisterTypeInput struct { // to register, see submit (https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html) // in the CloudFormation CLI User Guide. // + // As part of registering a resource provider type, CloudFormation must be able + // to access the S3 bucket which contains the schema handler package for that + // resource provider. For more information, see IAM Permissions for Registering + // a Resource Provider (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html#registry-register-permissions) + // in the AWS CloudFormation User Guide. + // // SchemaHandlerPackage is a required field SchemaHandlerPackage *string `min:"1" type:"string" required:"true"` @@ -12410,15 +12561,17 @@ type SetTypeDefaultVersionInput struct { // The Amazon Resource Name (ARN) of the type for which you want version summary // information. // - // Conditional: You must specify TypeName or Arn. + // Conditional: You must specify either TypeName and Type, or Arn. Arn *string `type:"string"` // The kind of type. + // + // Conditional: You must specify either TypeName and Type, or Arn. Type *string `type:"string" enum:"RegistryType"` // The name of the type. // - // Conditional: You must specify TypeName or Arn. + // Conditional: You must specify either TypeName and Type, or Arn. TypeName *string `min:"10" type:"string"` // The ID of a specific version of the type. The version ID is the value at @@ -13093,7 +13246,8 @@ func (s *StackEvent) SetTimestamp(v time.Time) *StackEvent { type StackInstance struct { _ struct{} `type:"structure"` - // The name of the AWS account that the stack instance is associated with. + // [Self-managed permissions] The name of the AWS account that the stack instance + // is associated with. Account *string `type:"string"` // Status of the stack instance's actual configuration compared to the expected @@ -13118,6 +13272,10 @@ type StackInstance struct { // which drift detection has not yet been performed. LastDriftCheckTimestamp *time.Time `type:"timestamp"` + // [Service-managed permissions] The organization root ID or organizational + // unit (OU) ID that the stack instance is associated with. + OrganizationalUnitId *string `type:"string"` + // A list of parameters from the stack set template whose values have been overridden // in this stack instance. ParameterOverrides []*Parameter `type:"list"` @@ -13182,6 +13340,12 @@ func (s *StackInstance) SetLastDriftCheckTimestamp(v time.Time) *StackInstance { return s } +// SetOrganizationalUnitId sets the OrganizationalUnitId field's value. +func (s *StackInstance) SetOrganizationalUnitId(v string) *StackInstance { + s.OrganizationalUnitId = &v + return s +} + // SetParameterOverrides sets the ParameterOverrides field's value. func (s *StackInstance) SetParameterOverrides(v []*Parameter) *StackInstance { s.ParameterOverrides = v @@ -13222,7 +13386,8 @@ func (s *StackInstance) SetStatusReason(v string) *StackInstance { type StackInstanceSummary struct { _ struct{} `type:"structure"` - // The name of the AWS account that the stack instance is associated with. + // [Self-managed permissions] The name of the AWS account that the stack instance + // is associated with. Account *string `type:"string"` // Status of the stack instance's actual configuration compared to the expected @@ -13247,6 +13412,10 @@ type StackInstanceSummary struct { // which drift detection has not yet been performed. LastDriftCheckTimestamp *time.Time `type:"timestamp"` + // [Service-managed permissions] The organization root ID or organizational + // unit (OU) ID that the stack instance is associated with. + OrganizationalUnitId *string `type:"string"` + // The name of the AWS region that the stack instance is associated with. Region *string `type:"string"` @@ -13306,6 +13475,12 @@ func (s *StackInstanceSummary) SetLastDriftCheckTimestamp(v time.Time) *StackIns return s } +// SetOrganizationalUnitId sets the OrganizationalUnitId field's value. +func (s *StackInstanceSummary) SetOrganizationalUnitId(v string) *StackInstanceSummary { + s.OrganizationalUnitId = &v + return s +} + // SetRegion sets the Region field's value. func (s *StackInstanceSummary) SetRegion(v string) *StackInstanceSummary { s.Region = &v @@ -13949,6 +14124,11 @@ type StackSet struct { // in the AWS CloudFormation User Guide. AdministrationRoleARN *string `min:"20" type:"string"` + // [Service-managed permissions] Describes whether StackSets automatically deploys + // to AWS Organizations accounts that are added to a target organization or + // organizational unit (OU). + AutoDeployment *AutoDeployment `type:"structure"` + // The capabilities that are allowed in the stack set. Some stack set templates // might include resources that can affect permissions in your AWS account—for // example, by creating new AWS Identity and Access Management (IAM) users. @@ -13966,9 +14146,25 @@ type StackSet struct { // groups can include in their stack sets. ExecutionRoleName *string `min:"1" type:"string"` + // [Service-managed permissions] The organization root ID or organizational + // unit (OUs) IDs to which stacks in your stack set have been deployed. + OrganizationalUnitIds []*string `type:"list"` + // A list of input parameters for a stack set. Parameters []*Parameter `type:"list"` + // Describes how the IAM roles required for stack set operations are created. + // + // * With self-managed permissions, you must create the administrator and + // execution roles required to deploy to target accounts. For more information, + // see Grant Self-Managed Stack Set Permissions (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html). + // + // * With service-managed permissions, StackSets automatically creates the + // IAM roles required to deploy to accounts managed by AWS Organizations. + // For more information, see Grant Service-Managed Stack Set Permissions + // (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-service-managed.html). + PermissionModel *string `type:"string" enum:"PermissionModels"` + // The Amazon Resource Number (ARN) of the stack set. StackSetARN *string `type:"string"` @@ -14013,6 +14209,12 @@ func (s *StackSet) SetAdministrationRoleARN(v string) *StackSet { return s } +// SetAutoDeployment sets the AutoDeployment field's value. +func (s *StackSet) SetAutoDeployment(v *AutoDeployment) *StackSet { + s.AutoDeployment = v + return s +} + // SetCapabilities sets the Capabilities field's value. func (s *StackSet) SetCapabilities(v []*string) *StackSet { s.Capabilities = v @@ -14031,12 +14233,24 @@ func (s *StackSet) SetExecutionRoleName(v string) *StackSet { return s } +// SetOrganizationalUnitIds sets the OrganizationalUnitIds field's value. +func (s *StackSet) SetOrganizationalUnitIds(v []*string) *StackSet { + s.OrganizationalUnitIds = v + return s +} + // SetParameters sets the Parameters field's value. func (s *StackSet) SetParameters(v []*Parameter) *StackSet { s.Parameters = v return s } +// SetPermissionModel sets the PermissionModel field's value. +func (s *StackSet) SetPermissionModel(v string) *StackSet { + s.PermissionModel = &v + return s +} + // SetStackSetARN sets the StackSetARN field's value. func (s *StackSet) SetStackSetARN(v string) *StackSet { s.StackSetARN = &v @@ -14244,6 +14458,10 @@ type StackSetOperation struct { // before actually creating the first stacks. CreationTimestamp *time.Time `type:"timestamp"` + // [Service-managed permissions] The AWS Organizations accounts affected by + // the stack operation. + DeploymentTargets *DeploymentTargets `type:"structure"` + // The time at which the stack set operation ended, across all accounts and // regions specified. Note that this doesn't necessarily mean that the stack // set operation was successful, or even attempted, in each account or region. @@ -14291,6 +14509,11 @@ type StackSetOperation struct { // status of the operation as a whole to FAILED, and AWS CloudFormation cancels // the operation in any remaining regions. // + // * QUEUED: [Service-managed permissions] For automatic deployments that + // require a sequence of operations. The operation is queued to be performed. + // For more information, see the stack set operation status codes (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-status-codes) + // in the AWS CloudFormation User Guide. + // // * RUNNING: The operation is currently being performed. // // * STOPPED: The user has cancelled the operation. @@ -14330,6 +14553,12 @@ func (s *StackSetOperation) SetCreationTimestamp(v time.Time) *StackSetOperation return s } +// SetDeploymentTargets sets the DeploymentTargets field's value. +func (s *StackSetOperation) SetDeploymentTargets(v *DeploymentTargets) *StackSetOperation { + s.DeploymentTargets = v + return s +} + // SetEndTimestamp sets the EndTimestamp field's value. func (s *StackSetOperation) SetEndTimestamp(v time.Time) *StackSetOperation { s.EndTimestamp = &v @@ -14500,13 +14729,18 @@ func (s *StackSetOperationPreferences) SetRegionOrder(v []*string) *StackSetOper type StackSetOperationResultSummary struct { _ struct{} `type:"structure"` - // The name of the AWS account for this operation result. + // [Self-managed permissions] The name of the AWS account for this operation + // result. Account *string `type:"string"` // The results of the account gate function AWS CloudFormation invokes, if present, // before proceeding with stack set operations in an account AccountGateResult *AccountGateResult `type:"structure"` + // [Service-managed permissions] The organization root ID or organizational + // unit (OU) ID for this operation result. + OrganizationalUnitId *string `type:"string"` + // The name of the AWS region for this operation result. Region *string `type:"string"` @@ -14557,6 +14791,12 @@ func (s *StackSetOperationResultSummary) SetAccountGateResult(v *AccountGateResu return s } +// SetOrganizationalUnitId sets the OrganizationalUnitId field's value. +func (s *StackSetOperationResultSummary) SetOrganizationalUnitId(v string) *StackSetOperationResultSummary { + s.OrganizationalUnitId = &v + return s +} + // SetRegion sets the Region field's value. func (s *StackSetOperationResultSummary) SetRegion(v string) *StackSetOperationResultSummary { s.Region = &v @@ -14610,6 +14850,11 @@ type StackSetOperationSummary struct { // status of the operation as a whole to FAILED, and AWS CloudFormation cancels // the operation in any remaining regions. // + // * QUEUED: [Service-managed permissions] For automatic deployments that + // require a sequence of operations. The operation is queued to be performed. + // For more information, see the stack set operation status codes (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-status-codes) + // in the AWS CloudFormation User Guide. + // // * RUNNING: The operation is currently being performed. // // * STOPPED: The user has cancelled the operation. @@ -14666,6 +14911,11 @@ func (s *StackSetOperationSummary) SetStatus(v string) *StackSetOperationSummary type StackSetSummary struct { _ struct{} `type:"structure"` + // [Service-managed permissions] Describes whether StackSets automatically deploys + // to AWS Organizations accounts that are added to a target organizational unit + // (OU). + AutoDeployment *AutoDeployment `type:"structure"` + // A description of the stack set that you specify when the stack set is created // or updated. Description *string `min:"1" type:"string"` @@ -14693,6 +14943,18 @@ type StackSetSummary struct { // detection has not yet been performed. LastDriftCheckTimestamp *time.Time `type:"timestamp"` + // Describes how the IAM roles required for stack set operations are created. + // + // * With self-managed permissions, you must create the administrator and + // execution roles required to deploy to target accounts. For more information, + // see Grant Self-Managed Stack Set Permissions (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html). + // + // * With service-managed permissions, StackSets automatically creates the + // IAM roles required to deploy to accounts managed by AWS Organizations. + // For more information, see Grant Service-Managed Stack Set Permissions + // (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-service-managed.html). + PermissionModel *string `type:"string" enum:"PermissionModels"` + // The ID of the stack set. StackSetId *string `type:"string"` @@ -14713,6 +14975,12 @@ func (s StackSetSummary) GoString() string { return s.String() } +// SetAutoDeployment sets the AutoDeployment field's value. +func (s *StackSetSummary) SetAutoDeployment(v *AutoDeployment) *StackSetSummary { + s.AutoDeployment = v + return s +} + // SetDescription sets the Description field's value. func (s *StackSetSummary) SetDescription(v string) *StackSetSummary { s.Description = &v @@ -14731,6 +14999,12 @@ func (s *StackSetSummary) SetLastDriftCheckTimestamp(v time.Time) *StackSetSumma return s } +// SetPermissionModel sets the PermissionModel field's value. +func (s *StackSetSummary) SetPermissionModel(v string) *StackSetSummary { + s.PermissionModel = &v + return s +} + // SetStackSetId sets the StackSetId field's value. func (s *StackSetSummary) SetStackSetId(v string) *StackSetSummary { s.StackSetId = &v @@ -15554,12 +15828,22 @@ func (s *UpdateStackInput) SetUsePreviousTemplate(v bool) *UpdateStackInput { type UpdateStackInstancesInput struct { _ struct{} `type:"structure"` - // The names of one or more AWS accounts for which you want to update parameter - // values for stack instances. The overridden parameter values will be applied - // to all stack instances in the specified accounts and regions. + // [Self-managed permissions] The names of one or more AWS accounts for which + // you want to update parameter values for stack instances. The overridden parameter + // values will be applied to all stack instances in the specified accounts and + // regions. + // + // You can specify Accounts or DeploymentTargets, but not both. + Accounts []*string `type:"list"` + + // [Service-managed permissions] The AWS Organizations accounts for which you + // want to update parameter values for stack instances. If your update targets + // OUs, the overridden parameter values only apply to the accounts that are + // currently in the target OUs and their child OUs. Accounts added to the target + // OUs and their child OUs in the future won't use the overridden values. // - // Accounts is a required field - Accounts []*string `type:"list" required:"true"` + // You can specify Accounts or DeploymentTargets, but not both. + DeploymentTargets *DeploymentTargets `type:"structure"` // The unique identifier for this stack set operation. // @@ -15635,9 +15919,6 @@ func (s UpdateStackInstancesInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateStackInstancesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateStackInstancesInput"} - if s.Accounts == nil { - invalidParams.Add(request.NewErrParamRequired("Accounts")) - } if s.OperationId != nil && len(*s.OperationId) < 1 { invalidParams.Add(request.NewErrParamMinLen("OperationId", 1)) } @@ -15665,6 +15946,12 @@ func (s *UpdateStackInstancesInput) SetAccounts(v []*string) *UpdateStackInstanc return s } +// SetDeploymentTargets sets the DeploymentTargets field's value. +func (s *UpdateStackInstancesInput) SetDeploymentTargets(v *DeploymentTargets) *UpdateStackInstancesInput { + s.DeploymentTargets = v + return s +} + // SetOperationId sets the OperationId field's value. func (s *UpdateStackInstancesInput) SetOperationId(v string) *UpdateStackInstancesInput { s.OperationId = &v @@ -15745,9 +16032,9 @@ func (s *UpdateStackOutput) SetStackId(v string) *UpdateStackOutput { type UpdateStackSetInput struct { _ struct{} `type:"structure"` - // The accounts in which to update associated stack instances. If you specify - // accounts, you must also specify the regions in which to update stack set - // instances. + // [Self-managed permissions] The accounts in which to update associated stack + // instances. If you specify accounts, you must also specify the regions in + // which to update stack set instances. // // To update all the stack instances associated with this stack set, do not // specify the Accounts or Regions properties. @@ -15776,6 +16063,13 @@ type UpdateStackSetInput struct { // same customized administrator role used with this stack set previously. AdministrationRoleARN *string `min:"20" type:"string"` + // [Service-managed permissions] Describes whether StackSets automatically deploys + // to AWS Organizations accounts that are added to a target organization or + // organizational unit (OU). + // + // If you specify AutoDeployment, do not specify DeploymentTargets or Regions. + AutoDeployment *AutoDeployment `type:"structure"` + // In some cases, you must explicitly acknowledge that your stack template contains // certain capabilities in order for AWS CloudFormation to update the stack // set and its associated stack instances. @@ -15815,6 +16109,21 @@ type UpdateStackSetInput struct { // set operation will fail. Capabilities []*string `type:"list"` + // [Service-managed permissions] The AWS Organizations accounts in which to + // update associated stack instances. + // + // To update all the stack instances associated with this stack set, do not + // specify DeploymentTargets or Regions. + // + // If the stack set update includes changes to the template (that is, if TemplateBody + // or TemplateURL is specified), or the Parameters, AWS CloudFormation marks + // all stack instances with a status of OUTDATED prior to updating the stack + // instances in the specified accounts and Regions. If the stack set update + // does not include changes to the template or parameters, AWS CloudFormation + // updates the stack instances in the specified accounts and Regions, while + // leaving all other stack instances with their existing stack instance status. + DeploymentTargets *DeploymentTargets `type:"structure"` + // A brief description of updates that you are making. Description *string `min:"1" type:"string"` @@ -15851,6 +16160,20 @@ type UpdateStackSetInput struct { // A list of input parameters for the stack set template. Parameters []*Parameter `type:"list"` + // Describes how the IAM roles required for stack set operations are created. + // You cannot modify PermissionModel if there are stack instances associated + // with your stack set. + // + // * With self-managed permissions, you must create the administrator and + // execution roles required to deploy to target accounts. For more information, + // see Grant Self-Managed Stack Set Permissions (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html). + // + // * With service-managed permissions, StackSets automatically creates the + // IAM roles required to deploy to accounts managed by AWS Organizations. + // For more information, see Grant Service-Managed Stack Set Permissions + // (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-service-managed.html). + PermissionModel *string `type:"string" enum:"PermissionModels"` + // The regions in which to update associated stack instances. If you specify // regions, you must also specify accounts in which to update stack set instances. // @@ -15995,12 +16318,24 @@ func (s *UpdateStackSetInput) SetAdministrationRoleARN(v string) *UpdateStackSet return s } +// SetAutoDeployment sets the AutoDeployment field's value. +func (s *UpdateStackSetInput) SetAutoDeployment(v *AutoDeployment) *UpdateStackSetInput { + s.AutoDeployment = v + return s +} + // SetCapabilities sets the Capabilities field's value. func (s *UpdateStackSetInput) SetCapabilities(v []*string) *UpdateStackSetInput { s.Capabilities = v return s } +// SetDeploymentTargets sets the DeploymentTargets field's value. +func (s *UpdateStackSetInput) SetDeploymentTargets(v *DeploymentTargets) *UpdateStackSetInput { + s.DeploymentTargets = v + return s +} + // SetDescription sets the Description field's value. func (s *UpdateStackSetInput) SetDescription(v string) *UpdateStackSetInput { s.Description = &v @@ -16031,6 +16366,12 @@ func (s *UpdateStackSetInput) SetParameters(v []*Parameter) *UpdateStackSetInput return s } +// SetPermissionModel sets the PermissionModel field's value. +func (s *UpdateStackSetInput) SetPermissionModel(v string) *UpdateStackSetInput { + s.PermissionModel = &v + return s +} + // SetRegions sets the Regions field's value. func (s *UpdateStackSetInput) SetRegions(v []*string) *UpdateStackSetInput { s.Regions = v @@ -16500,6 +16841,14 @@ const ( OperationStatusFailed = "FAILED" ) +const ( + // PermissionModelsServiceManaged is a PermissionModels enum value + PermissionModelsServiceManaged = "SERVICE_MANAGED" + + // PermissionModelsSelfManaged is a PermissionModels enum value + PermissionModelsSelfManaged = "SELF_MANAGED" +) + const ( // ProvisioningTypeNonProvisionable is a ProvisioningType enum value ProvisioningTypeNonProvisionable = "NON_PROVISIONABLE" @@ -16751,6 +17100,9 @@ const ( // StackSetOperationStatusStopped is a StackSetOperationStatus enum value StackSetOperationStatusStopped = "STOPPED" + + // StackSetOperationStatusQueued is a StackSetOperationStatus enum value + StackSetOperationStatusQueued = "QUEUED" ) const ( diff --git a/vendor/github.com/aws/aws-sdk-go/service/cloudfront/api.go b/vendor/github.com/aws/aws-sdk-go/service/cloudfront/api.go index 078d10fb8d7..316965c88ba 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/cloudfront/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/cloudfront/api.go @@ -204,7 +204,7 @@ func (c *CloudFront) CreateDistributionRequest(input *CreateDistributionInput) ( // One or more of your trusted signers don't exist. // // * ErrCodeInvalidViewerCertificate "InvalidViewerCertificate" -// A viewer certificate specified in the response body is not valid. +// A viewer certificate specified is not valid. // // * ErrCodeInvalidMinimumProtocolVersion "InvalidMinimumProtocolVersion" // The minimum protocol version specified is not valid. @@ -231,7 +231,7 @@ func (c *CloudFront) CreateDistributionRequest(input *CreateDistributionInput) ( // An invalid error code was specified. // // * ErrCodeInvalidResponseCode "InvalidResponseCode" -// A response code specified in the response body is not valid. +// A response code is not valid. // // * ErrCodeInvalidArgument "InvalidArgument" // The argument is invalid. @@ -287,12 +287,11 @@ func (c *CloudFront) CreateDistributionRequest(input *CreateDistributionInput) ( // to support only clients that support Server Name Indication (SNI). // // * ErrCodeInvalidTTLOrder "InvalidTTLOrder" -// TTL order specified in the response body is not valid. +// The TTL order specified is not valid. // // * ErrCodeInvalidWebACLId "InvalidWebACLId" -// A web ACL ID specified in the response body is not valid. To specify a web -// ACL created using the latest version of AWS WAF, use the ACL ARN, for example -// arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a. +// A web ACL ID specified is not valid. To specify a web ACL created using the +// latest version of AWS WAF, use the ACL ARN, for example arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a. // To specify a web ACL created using AWS WAF Classic, use the ACL ID, for example // 473e64fd-f30b-4765-81a0-62ad96dd167a. // @@ -303,7 +302,7 @@ func (c *CloudFront) CreateDistributionRequest(input *CreateDistributionInput) ( // Your request contains too many query string parameters. // // * ErrCodeInvalidQueryStringParameters "InvalidQueryStringParameters" -// Query string parameters specified in the response body are not valid. +// The query string parameters specified are not valid. // // * ErrCodeTooManyDistributionsWithLambdaAssociations "TooManyDistributionsWithLambdaAssociations" // Processing your request would cause the maximum number of distributions with @@ -433,7 +432,7 @@ func (c *CloudFront) CreateDistributionWithTagsRequest(input *CreateDistribution // One or more of your trusted signers don't exist. // // * ErrCodeInvalidViewerCertificate "InvalidViewerCertificate" -// A viewer certificate specified in the response body is not valid. +// A viewer certificate specified is not valid. // // * ErrCodeInvalidMinimumProtocolVersion "InvalidMinimumProtocolVersion" // The minimum protocol version specified is not valid. @@ -460,7 +459,7 @@ func (c *CloudFront) CreateDistributionWithTagsRequest(input *CreateDistribution // An invalid error code was specified. // // * ErrCodeInvalidResponseCode "InvalidResponseCode" -// A response code specified in the response body is not valid. +// A response code is not valid. // // * ErrCodeInvalidArgument "InvalidArgument" // The argument is invalid. @@ -516,12 +515,11 @@ func (c *CloudFront) CreateDistributionWithTagsRequest(input *CreateDistribution // to support only clients that support Server Name Indication (SNI). // // * ErrCodeInvalidTTLOrder "InvalidTTLOrder" -// TTL order specified in the response body is not valid. +// The TTL order specified is not valid. // // * ErrCodeInvalidWebACLId "InvalidWebACLId" -// A web ACL ID specified in the response body is not valid. To specify a web -// ACL created using the latest version of AWS WAF, use the ACL ARN, for example -// arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a. +// A web ACL ID specified is not valid. To specify a web ACL created using the +// latest version of AWS WAF, use the ACL ARN, for example arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a. // To specify a web ACL created using AWS WAF Classic, use the ACL ID, for example // 473e64fd-f30b-4765-81a0-62ad96dd167a. // @@ -529,13 +527,13 @@ func (c *CloudFront) CreateDistributionWithTagsRequest(input *CreateDistribution // Your request contains too many origin custom headers. // // * ErrCodeInvalidTagging "InvalidTagging" -// Tagging specified in the response body is not valid. +// The tagging specified is not valid. // // * ErrCodeTooManyQueryStringParameters "TooManyQueryStringParameters" // Your request contains too many query string parameters. // // * ErrCodeInvalidQueryStringParameters "InvalidQueryStringParameters" -// Query string parameters specified in the response body are not valid. +// The query string parameters specified are not valid. // // * ErrCodeTooManyDistributionsWithLambdaAssociations "TooManyDistributionsWithLambdaAssociations" // Processing your request would cause the maximum number of distributions with @@ -1216,7 +1214,7 @@ func (c *CloudFront) CreateStreamingDistributionWithTagsRequest(input *CreateStr // The value of Quantity and the size of Items don't match. // // * ErrCodeInvalidTagging "InvalidTagging" -// Tagging specified in the response body is not valid. +// The tagging specified is not valid. // // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2019-03-26/CreateStreamingDistributionWithTags func (c *CloudFront) CreateStreamingDistributionWithTags(input *CreateStreamingDistributionWithTagsInput) (*CreateStreamingDistributionWithTagsOutput, error) { @@ -3237,9 +3235,8 @@ func (c *CloudFront) ListDistributionsByWebACLIdRequest(input *ListDistributions // The argument is invalid. // // * ErrCodeInvalidWebACLId "InvalidWebACLId" -// A web ACL ID specified in the response body is not valid. To specify a web -// ACL created using the latest version of AWS WAF, use the ACL ARN, for example -// arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a. +// A web ACL ID specified is not valid. To specify a web ACL created using the +// latest version of AWS WAF, use the ACL ARN, for example arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a. // To specify a web ACL created using AWS WAF Classic, use the ACL ID, for example // 473e64fd-f30b-4765-81a0-62ad96dd167a. // @@ -3845,7 +3842,7 @@ func (c *CloudFront) ListTagsForResourceRequest(input *ListTagsForResourceInput) // The argument is invalid. // // * ErrCodeInvalidTagging "InvalidTagging" -// Tagging specified in the response body is not valid. +// The tagging specified is not valid. // // * ErrCodeNoSuchResource "NoSuchResource" // A resource that was specified is not valid. @@ -3934,7 +3931,7 @@ func (c *CloudFront) TagResourceRequest(input *TagResourceInput) (req *request.R // The argument is invalid. // // * ErrCodeInvalidTagging "InvalidTagging" -// Tagging specified in the response body is not valid. +// The tagging specified is not valid. // // * ErrCodeNoSuchResource "NoSuchResource" // A resource that was specified is not valid. @@ -4023,7 +4020,7 @@ func (c *CloudFront) UntagResourceRequest(input *UntagResourceInput) (req *reque // The argument is invalid. // // * ErrCodeInvalidTagging "InvalidTagging" -// Tagging specified in the response body is not valid. +// The tagging specified is not valid. // // * ErrCodeNoSuchResource "NoSuchResource" // A resource that was specified is not valid. @@ -4306,7 +4303,7 @@ func (c *CloudFront) UpdateDistributionRequest(input *UpdateDistributionInput) ( // An invalid error code was specified. // // * ErrCodeInvalidResponseCode "InvalidResponseCode" -// A response code specified in the response body is not valid. +// A response code is not valid. // // * ErrCodeInvalidArgument "InvalidArgument" // The argument is invalid. @@ -4321,7 +4318,7 @@ func (c *CloudFront) UpdateDistributionRequest(input *UpdateDistributionInput) ( // One or more of your trusted signers don't exist. // // * ErrCodeInvalidViewerCertificate "InvalidViewerCertificate" -// A viewer certificate specified in the response body is not valid. +// A viewer certificate specified is not valid. // // * ErrCodeInvalidMinimumProtocolVersion "InvalidMinimumProtocolVersion" // The minimum protocol version specified is not valid. @@ -4373,12 +4370,11 @@ func (c *CloudFront) UpdateDistributionRequest(input *UpdateDistributionInput) ( // The specified geo restriction parameter is not valid. // // * ErrCodeInvalidTTLOrder "InvalidTTLOrder" -// TTL order specified in the response body is not valid. +// The TTL order specified is not valid. // // * ErrCodeInvalidWebACLId "InvalidWebACLId" -// A web ACL ID specified in the response body is not valid. To specify a web -// ACL created using the latest version of AWS WAF, use the ACL ARN, for example -// arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a. +// A web ACL ID specified is not valid. To specify a web ACL created using the +// latest version of AWS WAF, use the ACL ARN, for example arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a. // To specify a web ACL created using AWS WAF Classic, use the ACL ID, for example // 473e64fd-f30b-4765-81a0-62ad96dd167a. // @@ -4389,7 +4385,7 @@ func (c *CloudFront) UpdateDistributionRequest(input *UpdateDistributionInput) ( // Your request contains too many query string parameters. // // * ErrCodeInvalidQueryStringParameters "InvalidQueryStringParameters" -// Query string parameters specified in the response body are not valid. +// The query string parameters specified are not valid. // // * ErrCodeTooManyDistributionsWithLambdaAssociations "TooManyDistributionsWithLambdaAssociations" // Processing your request would cause the maximum number of distributions with @@ -5774,11 +5770,19 @@ type CookieNames struct { _ struct{} `type:"structure"` // A complex type that contains one Name element for each cookie that you want - // CloudFront to forward to the origin for this cache behavior. + // CloudFront to forward to the origin for this cache behavior. It must contain + // the same number of items that is specified in the Quantity field. + // + // When you set Forward = whitelist (in the CookiePreferences object), this + // field must contain at least one item. Items []*string `locationNameList:"Name" type:"list"` // The number of different cookies that you want CloudFront to forward to the - // origin for this cache behavior. + // origin for this cache behavior. The value must equal the number of items + // that are in the Items field. + // + // When you set Forward = whitelist (in the CookiePreferences object), this + // value must be 1 or higher. // // Quantity is a required field Quantity *int64 `type:"integer" required:"true"` @@ -5836,7 +5840,7 @@ type CookiePreference struct { // Forward is a required field Forward *string `type:"string" required:"true" enum:"ItemSelection"` - // Required if you specify whitelist for the value of Forward:. A complex type + // Required if you specify whitelist for the value of Forward. A complex type // that specifies how many different cookies you want CloudFront to forward // to the origin for this cache behavior and, if you want to forward selected // cookies, the names of those cookies. @@ -8037,10 +8041,8 @@ type DistributionConfig struct { // of your content. Restrictions *Restrictions `type:"structure"` - // A complex type that specifies whether you want viewers to use HTTP or HTTPS - // to request your objects, whether you're using an alternate domain name with - // HTTPS, and if so, if you're using AWS Certificate Manager (ACM) or a third-party - // certificate authority. + // A complex type that determines the distribution’s SSL/TLS configuration + // for communicating with viewers. ViewerCertificate *ViewerCertificate `type:"structure"` // A unique identifier that specifies the AWS WAF web ACL, if any, to associate @@ -8491,10 +8493,8 @@ type DistributionSummary struct { // Status is a required field Status *string `type:"string" required:"true"` - // A complex type that specifies whether you want viewers to use HTTP or HTTPS - // to request your objects, whether you're using an alternate domain name with - // HTTPS, and if so, if you're using AWS Certificate Manager (ACM) or a third-party - // certificate authority. + // A complex type that determines the distribution’s SSL/TLS configuration + // for communicating with viewers. // // ViewerCertificate is a required field ViewerCertificate *ViewerCertificate `type:"structure" required:"true"` @@ -15094,138 +15094,144 @@ func (s *UpdateStreamingDistributionOutput) SetStreamingDistribution(v *Streamin return s } -// A complex type that specifies the following: +// A complex type that determines the distribution’s SSL/TLS configuration +// for communicating with viewers. // -// * Whether you want viewers to use HTTP or HTTPS to request your objects. +// If the distribution doesn’t use Aliases (also known as alternate domain +// names or CNAMEs)—that is, if the distribution uses the CloudFront domain +// name such as d111111abcdef8.cloudfront.net—set CloudFrontDefaultCertificate +// to true and leave all other fields empty. // -// * If you want viewers to use HTTPS, whether you're using an alternate -// domain name, such as example.com, or the CloudFront domain name for your -// distribution, such as d111111abcdef8.cloudfront.net. +// If the distribution uses Aliases (alternate domain names or CNAMEs), use +// the fields in this type to specify the following settings: // -// * If you're using an alternate domain name, whether AWS Certificate Manager -// (ACM) provided the certificate, or you purchased a certificate from a -// third-party certificate authority and imported it into ACM or uploaded -// it to the IAM certificate store. +// * Which viewers the distribution accepts HTTPS connections from: only +// viewers that support server name indication (SNI) (https://en.wikipedia.org/wiki/Server_Name_Indication) +// (recommended), or all viewers including those that don’t support SNI. +// To accept HTTPS connections from only viewers that support SNI, set SSLSupportMethod +// to sni-only. This is recommended. Most browsers and clients released after +// 2010 support SNI. To accept HTTPS connections from all viewers, including +// those that don’t support SNI, set SSLSupportMethod to vip. This is not +// recommended, and results in additional monthly charges from CloudFront. // -// Specify only one of the following values: +// * The minimum SSL/TLS protocol version that the distribution can use to +// communicate with viewers. To specify a minimum version, choose a value +// for MinimumProtocolVersion. For more information, see Security Policy +// (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) +// in the Amazon CloudFront Developer Guide. // -// * ACMCertificateArn (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html#cloudfront-Type-ViewerCertificate-ACMCertificateArn) +// * The location of the SSL/TLS certificate, AWS Certificate Manager (ACM) +// (https://docs.aws.amazon.com/acm/latest/userguide/acm-overview.html) (recommended) +// or AWS Identity and Access Management (AWS IAM) (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html). +// You specify the location by setting a value in one of the following fields +// (not both): ACMCertificateArn IAMCertificateId // -// * IAMCertificateId (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html#cloudfront-Type-ViewerCertificate-IAMCertificateId) +// All distributions support HTTPS connections from viewers. To require viewers +// to use HTTPS only, or to redirect them from HTTP to HTTPS, use ViewerProtocolPolicy +// in the CacheBehavior or DefaultCacheBehavior. To specify how CloudFront should +// use SSL/TLS to communicate with your custom origin, use CustomOriginConfig. // -// * CloudFrontDefaultCertificate (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html#cloudfront-Type-ViewerCertificate-CloudFrontDefaultCertificate) -// -// For more information, see Using Alternate Domain Names and HTTPS (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#CNAMEsAndHTTPS) +// For more information, see Using HTTPS with CloudFront (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https.html) +// and Using Alternate Domain Names and HTTPS (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-alternate-domain-names.html) // in the Amazon CloudFront Developer Guide. type ViewerCertificate struct { _ struct{} `type:"structure"` - // If you want viewers to use HTTPS to request your objects and you're using - // an alternate domain name, you must choose the type of certificate that you - // want to use. If ACM provided your certificate, specify the Amazon Resource - // Name (ARN) for the ACM certificate that you want to use for this distribution. - // CloudFront only supports ACM certificates in the US East (N. Virginia) Region - // (us-east-1). + // If the distribution uses Aliases (alternate domain names or CNAMEs) and the + // SSL/TLS certificate is stored in AWS Certificate Manager (ACM) (https://docs.aws.amazon.com/acm/latest/userguide/acm-overview.html), + // provide the Amazon Resource Name (ARN) of the ACM certificate. CloudFront + // only supports ACM certificates in the US East (N. Virginia) Region (us-east-1). // - // If you specify an ACM certificate ARN, you must also specify an SSL support - // method (sni-only or vip). + // If you specify an ACM certificate ARN, you must also specify values for MinimumProtocolVerison + // and SSLSupportMethod. ACMCertificateArn *string `type:"string"` - // This field is no longer used. Use one of the following fields instead: + // This field is deprecated. Use one of the following fields instead: // - // * ACMCertificateArn (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html#cloudfront-Type-ViewerCertificate-ACMCertificateArn) + // * ACMCertificateArn // - // * IAMCertificateId (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html#cloudfront-Type-ViewerCertificate-IAMCertificateId) + // * IAMCertificateId // - // * CloudFrontDefaultCertificate (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html#cloudfront-Type-ViewerCertificate-CloudFrontDefaultCertificate) + // * CloudFrontDefaultCertificate // // Deprecated: Certificate has been deprecated Certificate *string `deprecated:"true" type:"string"` - // This field is no longer used. Use one of the following fields instead: + // This field is deprecated. Use one of the following fields instead: // - // * ACMCertificateArn (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html#cloudfront-Type-ViewerCertificate-ACMCertificateArn) + // * ACMCertificateArn // - // * IAMCertificateId (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html#cloudfront-Type-ViewerCertificate-IAMCertificateId) + // * IAMCertificateId // - // * CloudFrontDefaultCertificate (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html#cloudfront-Type-ViewerCertificate-CloudFrontDefaultCertificate) + // * CloudFrontDefaultCertificate // // Deprecated: CertificateSource has been deprecated CertificateSource *string `deprecated:"true" type:"string" enum:"CertificateSource"` - // If you're using the CloudFront domain name for your distribution, such as - // d111111abcdef8.cloudfront.net, specify this value as true. + // If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net, + // set this field to true. + // + // If the distribution uses Aliases (alternate domain names or CNAMEs), set + // this field to false and specify values for the following fields: + // + // * ACMCertificateArn or IAMCertificateId (specify a value for one, not + // both) + // + // * MinimumProtocolVersion + // + // * SSLSupportMethod CloudFrontDefaultCertificate *bool `type:"boolean"` - // If you want viewers to use HTTPS to request your objects and you're using - // an alternate domain name, you must choose the type of certificate that you - // want to use. If you purchased your certificate from a third-party certificate - // authority and uploaded it to the IAM certificate store, specify the certificate - // ID that you want to use for this distribution. + // If the distribution uses Aliases (alternate domain names or CNAMEs) and the + // SSL/TLS certificate is stored in AWS Identity and Access Management (AWS + // IAM) (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html), + // provide the ID of the IAM certificate. // - // If you specify a certificate ID, you must also specify an SSL support method - // (sni-only or vip). + // If you specify an IAM certificate ID, you must also specify values for MinimumProtocolVerison + // and SSLSupportMethod. IAMCertificateId *string `type:"string"` - // Specify the security policy that you want CloudFront to use for HTTPS connections. - // A security policy determines two settings: + // If the distribution uses Aliases (alternate domain names or CNAMEs), specify + // the security policy that you want CloudFront to use for HTTPS connections + // with viewers. The security policy determines two settings: // - // * The minimum SSL/TLS protocol that CloudFront uses to communicate with - // viewers. + // * The minimum SSL/TLS protocol that CloudFront can use to communicate + // with viewers. // - // * The cipher that CloudFront uses to encrypt the content that it returns + // * The ciphers that CloudFront can use to encrypt the content that it returns // to viewers. // + // For more information, see Security Policy (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValues-security-policy) + // and Supported Protocols and Ciphers Between Viewers and CloudFront (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers) + // in the Amazon CloudFront Developer Guide. + // // On the CloudFront console, this setting is called Security Policy. // - // We recommend that you specify TLSv1.1_2016 unless your viewers are using - // browsers or devices that do not support TLSv1.1 or later. + // We recommend that you specify TLSv1.2_2018 unless your viewers are using + // browsers or devices that don’t support TLSv1.2. // - // When both of the following are true, you must specify TLSv1 or later for - // the security policy: + // When you’re using SNI only (you set SSLSupportMethod to sni-only), you + // must specify TLSv1 or higher. // - // * You're using a custom certificate; that is, you specified a value for - // ACMCertificateArn or for IAMCertificateId. + // If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net + // (you set CloudFrontDefaultCertificate to true), CloudFront automatically + // sets the security policy to TLSv1 regardless of the value that you set here. + MinimumProtocolVersion *string `type:"string" enum:"MinimumProtocolVersion"` + + // If the distribution uses Aliases (alternate domain names or CNAMEs), specify + // which viewers the distribution accepts HTTPS connections from. // - // * You're using SNI; that is, you specified sni-only for SSLSupportMethod. + // * sni-only – The distribution accepts HTTPS connections from only viewers + // that support server name indication (SNI) (https://en.wikipedia.org/wiki/Server_Name_Indication). + // This is recommended. Most browsers and clients released after 2010 support + // SNI. // - // If you specify true for CloudFrontDefaultCertificate, CloudFront automatically - // sets the security policy to TLSv1 regardless of the value that you specify - // here. + // * vip – The distribution accepts HTTPS connections from all viewers + // including those that don’t support SNI. This is not recommended, and + // results in additional monthly charges from CloudFront. // - // For information about the relationship between the security policy that you - // choose and the protocols and ciphers that CloudFront uses to communicate - // with viewers, see Supported SSL/TLS Protocols and Ciphers for Communication - // Between Viewers and CloudFront (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers) - // in the Amazon CloudFront Developer Guide. - MinimumProtocolVersion *string `type:"string" enum:"MinimumProtocolVersion"` - - // If you specify a value for ACMCertificateArn (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html#cloudfront-Type-ViewerCertificate-ACMCertificateArn) - // or for IAMCertificateId (https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ViewerCertificate.html#cloudfront-Type-ViewerCertificate-IAMCertificateId), - // you must also specify how you want CloudFront to serve HTTPS requests: using - // a method that works for browsers and clients released after 2010, or one - // that works for all clients. - // - // * sni-only: CloudFront can respond to HTTPS requests from viewers that - // support Server Name Indication (SNI). All modern browsers support SNI, - // but there are a few that don't. For a current list of the browsers that - // support SNI, see the Wikipedia entry Server Name Indication (http://en.wikipedia.org/wiki/Server_Name_Indication). - // To learn about options to explore if you have viewers with browsers that - // don't include SNI support, see Choosing How CloudFront Serves HTTPS Requests - // (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cnames-https-dedicated-ip-or-sni.html) - // in the Amazon CloudFront Developer Guide. - // - // * vip: CloudFront uses dedicated IP addresses for your content and can - // respond to HTTPS requests from any viewer. However, there are additional - // monthly charges. For details, including specific pricing information, - // see Custom SSL options for Amazon CloudFront (http://aws.amazon.com/cloudfront/custom-ssl-domains/) - // on the AWS marketing site. - // - // Don't specify a value here if you specified CloudFrontDefaultCertificate - // as true. - // - // For more information, see Choosing How CloudFront Serves HTTPS Requests (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cnames-https-dedicated-ip-or-sni.html) - // in the Amazon CloudFront Developer Guide. + // If the distribution uses the CloudFront domain name such as d111111abcdef8.cloudfront.net, + // don’t set a value for this field. SSLSupportMethod *string `type:"string" enum:"SSLSupportMethod"` } diff --git a/vendor/github.com/aws/aws-sdk-go/service/cloudfront/errors.go b/vendor/github.com/aws/aws-sdk-go/service/cloudfront/errors.go index 48a178e1e70..827ff5f7eba 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/cloudfront/errors.go +++ b/vendor/github.com/aws/aws-sdk-go/service/cloudfront/errors.go @@ -189,7 +189,7 @@ const ( // ErrCodeInvalidQueryStringParameters for service response error code // "InvalidQueryStringParameters". // - // Query string parameters specified in the response body are not valid. + // The query string parameters specified are not valid. ErrCodeInvalidQueryStringParameters = "InvalidQueryStringParameters" // ErrCodeInvalidRelativePath for service response error code @@ -210,33 +210,32 @@ const ( // ErrCodeInvalidResponseCode for service response error code // "InvalidResponseCode". // - // A response code specified in the response body is not valid. + // A response code is not valid. ErrCodeInvalidResponseCode = "InvalidResponseCode" // ErrCodeInvalidTTLOrder for service response error code // "InvalidTTLOrder". // - // TTL order specified in the response body is not valid. + // The TTL order specified is not valid. ErrCodeInvalidTTLOrder = "InvalidTTLOrder" // ErrCodeInvalidTagging for service response error code // "InvalidTagging". // - // Tagging specified in the response body is not valid. + // The tagging specified is not valid. ErrCodeInvalidTagging = "InvalidTagging" // ErrCodeInvalidViewerCertificate for service response error code // "InvalidViewerCertificate". // - // A viewer certificate specified in the response body is not valid. + // A viewer certificate specified is not valid. ErrCodeInvalidViewerCertificate = "InvalidViewerCertificate" // ErrCodeInvalidWebACLId for service response error code // "InvalidWebACLId". // - // A web ACL ID specified in the response body is not valid. To specify a web - // ACL created using the latest version of AWS WAF, use the ACL ARN, for example - // arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a. + // A web ACL ID specified is not valid. To specify a web ACL created using the + // latest version of AWS WAF, use the ACL ARN, for example arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a. // To specify a web ACL created using AWS WAF Classic, use the ACL ID, for example // 473e64fd-f30b-4765-81a0-62ad96dd167a. ErrCodeInvalidWebACLId = "InvalidWebACLId" diff --git a/vendor/github.com/aws/aws-sdk-go/service/codebuild/api.go b/vendor/github.com/aws/aws-sdk-go/service/codebuild/api.go index f26a4ebcaa1..c22775a00ad 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/codebuild/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/codebuild/api.go @@ -3279,6 +3279,11 @@ type Build struct { // A list of exported environment variables for this build. ExportedEnvironmentVariables []*ExportedEnvironmentVariable `locationName:"exportedEnvironmentVariables" type:"list"` + // An array of ProjectFileSystemLocation objects for a CodeBuild build project. + // A ProjectFileSystemLocation object specifies the identifier, location, mountOptions, + // mountPoint, and type of a file system created using Amazon Elastic File System. + FileSystemLocations []*ProjectFileSystemLocation `locationName:"fileSystemLocations" type:"list"` + // The unique ID for the build. Id *string `locationName:"id" min:"1" type:"string"` @@ -3454,6 +3459,12 @@ func (s *Build) SetExportedEnvironmentVariables(v []*ExportedEnvironmentVariable return s } +// SetFileSystemLocations sets the FileSystemLocations field's value. +func (s *Build) SetFileSystemLocations(v []*ProjectFileSystemLocation) *Build { + s.FileSystemLocations = v + return s +} + // SetId sets the Id field's value. func (s *Build) SetId(v string) *Build { s.Id = &v @@ -3584,8 +3595,8 @@ type BuildArtifacts struct { // to ZIP. Md5sum *string `locationName:"md5sum" type:"string"` - // If this flag is set, a name specified in the build spec file overrides the - // artifact name. The name specified in a build spec file is calculated at build + // If this flag is set, a name specified in the buildspec file overrides the + // artifact name. The name specified in a buildspec file is calculated at build // time and uses the Shell Command Language. For example, you can append a date // and time to your artifact name so that it is always unique. OverrideArtifactName *bool `locationName:"overrideArtifactName" type:"boolean"` @@ -3887,6 +3898,11 @@ type CreateProjectInput struct { // Environment is a required field Environment *ProjectEnvironment `locationName:"environment" type:"structure" required:"true"` + // An array of ProjectFileSystemLocation objects for a CodeBuild build project. + // A ProjectFileSystemLocation object specifies the identifier, location, mountOptions, + // mountPoint, and type of a file system created using Amazon Elastic File System. + FileSystemLocations []*ProjectFileSystemLocation `locationName:"fileSystemLocations" type:"list"` + // Information about logs for the build project. These can be logs in Amazon // CloudWatch Logs, logs uploaded to a specified S3 bucket, or both. LogsConfig *LogsConfig `locationName:"logsConfig" type:"structure"` @@ -4120,6 +4136,12 @@ func (s *CreateProjectInput) SetEnvironment(v *ProjectEnvironment) *CreateProjec return s } +// SetFileSystemLocations sets the FileSystemLocations field's value. +func (s *CreateProjectInput) SetFileSystemLocations(v []*ProjectFileSystemLocation) *CreateProjectInput { + s.FileSystemLocations = v + return s +} + // SetLogsConfig sets the LogsConfig field's value. func (s *CreateProjectInput) SetLogsConfig(v *LogsConfig) *CreateProjectInput { s.LogsConfig = v @@ -4991,10 +5013,11 @@ type EnvironmentVariable struct { // The value of the environment variable. // - // We strongly discourage the use of environment variables to store sensitive - // values, especially AWS secret key IDs and secret access keys. Environment - // variables can be displayed in plain text using the AWS CodeBuild console - // and the AWS Command Line Interface (AWS CLI). + // We strongly discourage the use of PLAINTEXT environment variables to store + // sensitive values, especially AWS secret key IDs and secret access keys. PLAINTEXT + // environment variables can be displayed in plain text using the AWS CodeBuild + // console and the AWS Command Line Interface (AWS CLI). For sensitive values, + // we recommend you use an environment variable of type PARAMETER_STORE or SECRETS_MANAGER. // // Value is a required field Value *string `locationName:"value" type:"string" required:"true"` @@ -6689,6 +6712,11 @@ type Project struct { // Information about the build environment for this build project. Environment *ProjectEnvironment `locationName:"environment" type:"structure"` + // An array of ProjectFileSystemLocation objects for a CodeBuild build project. + // A ProjectFileSystemLocation object specifies the identifier, location, mountOptions, + // mountPoint, and type of a file system created using Amazon Elastic File System. + FileSystemLocations []*ProjectFileSystemLocation `locationName:"fileSystemLocations" type:"list"` + // When the build project's settings were last modified, expressed in Unix time // format. LastModified *time.Time `locationName:"lastModified" type:"timestamp"` @@ -6826,6 +6854,12 @@ func (s *Project) SetEnvironment(v *ProjectEnvironment) *Project { return s } +// SetFileSystemLocations sets the FileSystemLocations field's value. +func (s *Project) SetFileSystemLocations(v []*ProjectFileSystemLocation) *Project { + s.FileSystemLocations = v + return s +} + // SetLastModified sets the LastModified field's value. func (s *Project) SetLastModified(v time.Time) *Project { s.LastModified = &v @@ -6979,8 +7013,8 @@ type ProjectArtifacts struct { // and name is set to MyArtifact.zip, the output artifact is stored in MyArtifacts/build-ID/MyArtifact.zip. NamespaceType *string `locationName:"namespaceType" type:"string" enum:"ArtifactNamespace"` - // If this flag is set, a name specified in the build spec file overrides the - // artifact name. The name specified in a build spec file is calculated at build + // If this flag is set, a name specified in the buildspec file overrides the + // artifact name. The name specified in a buildspec file is calculated at build // time and uses the Shell Command Language. For example, you can append a date // and time to your artifact name so that it is always unique. OverrideArtifactName *bool `locationName:"overrideArtifactName" type:"boolean"` @@ -7455,6 +7489,83 @@ func (s *ProjectEnvironment) SetType(v string) *ProjectEnvironment { return s } +// Information about a file system created by Amazon Elastic File System (EFS). +// For more information, see What Is Amazon Elastic File System? (https://docs.aws.amazon.com/efs/latest/ug/whatisefs.html) +type ProjectFileSystemLocation struct { + _ struct{} `type:"structure"` + + // The name used to access a file system created by Amazon EFS. CodeBuild creates + // an environment variable by appending the identifier in all capital letters + // to CODEBUILD_. For example, if you specify my-efs for identifier, a new environment + // variable is create named CODEBUILD_MY-EFS. + // + // The identifier is used to mount your file system. + Identifier *string `locationName:"identifier" type:"string"` + + // A string that specifies the location of the file system created by Amazon + // EFS. Its format is efs-dns-name:/directory-path. You can find the DNS name + // of file system when you view it in the AWS EFS console. The directory path + // is a path to a directory in the file system that CodeBuild mounts. For example, + // if the DNS name of a file system is fs-abcd1234.efs.us-west-2.amazonaws.com, + // and its mount directory is my-efs-mount-directory, then the location is fs-abcd1234.efs.us-west-2.amazonaws.com:/my-efs-mount-directory. + // + // The directory path in the format efs-dns-name:/directory-path is optional. + // If you do not specify a directory path, the location is only the DNS name + // and CodeBuild mounts the entire file system. + Location *string `locationName:"location" type:"string"` + + // The mount options for a file system created by AWS EFS. The default mount + // options used by CodeBuild are nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2. + // For more information, see Recommended NFS Mount Options (https://docs.aws.amazon.com/efs/latest/ug/mounting-fs-nfs-mount-settings.html). + MountOptions *string `locationName:"mountOptions" type:"string"` + + // The location in the container where you mount the file system. + MountPoint *string `locationName:"mountPoint" type:"string"` + + // The type of the file system. The one supported type is EFS. + Type *string `locationName:"type" type:"string" enum:"FileSystemType"` +} + +// String returns the string representation +func (s ProjectFileSystemLocation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ProjectFileSystemLocation) GoString() string { + return s.String() +} + +// SetIdentifier sets the Identifier field's value. +func (s *ProjectFileSystemLocation) SetIdentifier(v string) *ProjectFileSystemLocation { + s.Identifier = &v + return s +} + +// SetLocation sets the Location field's value. +func (s *ProjectFileSystemLocation) SetLocation(v string) *ProjectFileSystemLocation { + s.Location = &v + return s +} + +// SetMountOptions sets the MountOptions field's value. +func (s *ProjectFileSystemLocation) SetMountOptions(v string) *ProjectFileSystemLocation { + s.MountOptions = &v + return s +} + +// SetMountPoint sets the MountPoint field's value. +func (s *ProjectFileSystemLocation) SetMountPoint(v string) *ProjectFileSystemLocation { + s.MountPoint = &v + return s +} + +// SetType sets the Type field's value. +func (s *ProjectFileSystemLocation) SetType(v string) *ProjectFileSystemLocation { + s.Type = &v + return s +} + // Information about the build input source code for the build project. type ProjectSource struct { _ struct{} `type:"structure"` @@ -7466,10 +7577,16 @@ type ProjectSource struct { // not get or set this information directly. Auth *SourceAuth `locationName:"auth" type:"structure"` - // The build spec declaration to use for the builds in this build project. + // The buildspec file declaration to use for the builds in this build project. // - // If this value is not specified, a build spec must be included along with - // the source code to be built. + // If this value is set, it can be either an inline buildspec definition, the + // path to an alternate buildspec file relative to the value of the built-in + // CODEBUILD_SRC_DIR environment variable, or the path to an S3 bucket. The + // bucket must be in the same AWS Region as the build project. Specify the buildspec + // file using its ARN (for example, arn:aws:s3:::my-codebuild-sample2/buildspec.yml). + // If this value is not provided or is set to an empty string, the source code + // must contain a buildspec file in its root directory. For more information, + // see Buildspec File Name and Storage Location (https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage). Buildspec *string `locationName:"buildspec" type:"string"` // Information about the Git clone depth for the build project. @@ -7491,8 +7608,8 @@ type ProjectSource struct { // uses the settings in a pipeline's source action instead of this value. // // * For source code in an AWS CodeCommit repository, the HTTPS clone URL - // to the repository that contains the source code and the build spec (for - // example, https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name + // to the repository that contains the source code and the buildspec file + // (for example, https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name // ). // // * For source code in an Amazon Simple Storage Service (Amazon S3) input @@ -7501,8 +7618,8 @@ type ProjectSource struct { // to the folder that contains the source code (for example, bucket-name/path/to/source-code/folder/). // // * For source code in a GitHub repository, the HTTPS clone URL to the repository - // that contains the source and the build spec. You must connect your AWS - // account to your GitHub account. Use the AWS CodeBuild console to start + // that contains the source and the buildspec file. You must connect your + // AWS account to your GitHub account. Use the AWS CodeBuild console to start // creating a build project. When you use the console to connect (or reconnect) // with GitHub, on the GitHub Authorize application page, for Organization // access, choose Request access next to each repository you want to allow @@ -7513,7 +7630,7 @@ type ProjectSource struct { // set the auth object's type value to OAUTH. // // * For source code in a Bitbucket repository, the HTTPS clone URL to the - // repository that contains the source and the build spec. You must connect + // repository that contains the source and the buildspec file. You must connect // your AWS account to your Bitbucket account. Use the AWS CodeBuild console // to start creating a build project. When you use the console to connect // (or reconnect) with Bitbucket, on the Bitbucket Confirm access to your @@ -7822,7 +7939,7 @@ type RegistryCredential struct { // Manager. // // The credential can use the name of the credentials only if they exist in - // your current region. + // your current AWS Region. // // Credential is a required field Credential *string `locationName:"credential" min:"1" type:"string" required:"true"` @@ -8513,8 +8630,17 @@ type StartBuildInput struct { // ones already defined in the build project. ArtifactsOverride *ProjectArtifacts `locationName:"artifactsOverride" type:"structure"` - // A build spec declaration that overrides, for this build only, the latest + // A buildspec file declaration that overrides, for this build only, the latest // one already defined in the build project. + // + // If this value is set, it can be either an inline buildspec definition, the + // path to an alternate buildspec file relative to the value of the built-in + // CODEBUILD_SRC_DIR environment variable, or the path to an S3 bucket. The + // bucket must be in the same AWS Region as the build project. Specify the buildspec + // file using its ARN (for example, arn:aws:s3:::my-codebuild-sample2/buildspec.yml). + // If this value is not provided or is set to an empty string, the source code + // must contain a buildspec file in its root directory. For more information, + // see Buildspec File Name and Storage Location (https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage). BuildspecOverride *string `locationName:"buildspecOverride" type:"string"` // A ProjectCache object specified for this build that overrides the one defined @@ -9294,6 +9420,11 @@ type UpdateProjectInput struct { // Information to be changed about the build environment for the build project. Environment *ProjectEnvironment `locationName:"environment" type:"structure"` + // An array of ProjectFileSystemLocation objects for a CodeBuild build project. + // A ProjectFileSystemLocation object specifies the identifier, location, mountOptions, + // mountPoint, and type of a file system created using Amazon Elastic File System. + FileSystemLocations []*ProjectFileSystemLocation `locationName:"fileSystemLocations" type:"list"` + // Information about logs for the build project. A project can create logs in // Amazon CloudWatch Logs, logs in an S3 bucket, or both. LogsConfig *LogsConfig `locationName:"logsConfig" type:"structure"` @@ -9513,6 +9644,12 @@ func (s *UpdateProjectInput) SetEnvironment(v *ProjectEnvironment) *UpdateProjec return s } +// SetFileSystemLocations sets the FileSystemLocations field's value. +func (s *UpdateProjectInput) SetFileSystemLocations(v []*ProjectFileSystemLocation) *UpdateProjectInput { + s.FileSystemLocations = v + return s +} + // SetLogsConfig sets the LogsConfig field's value. func (s *UpdateProjectInput) SetLogsConfig(v *LogsConfig) *UpdateProjectInput { s.LogsConfig = v @@ -10163,6 +10300,11 @@ const ( EnvironmentVariableTypeSecretsManager = "SECRETS_MANAGER" ) +const ( + // FileSystemTypeEfs is a FileSystemType enum value + FileSystemTypeEfs = "EFS" +) + const ( // ImagePullCredentialsTypeCodebuild is a ImagePullCredentialsType enum value ImagePullCredentialsTypeCodebuild = "CODEBUILD" diff --git a/vendor/github.com/aws/aws-sdk-go/service/cognitoidentityprovider/api.go b/vendor/github.com/aws/aws-sdk-go/service/cognitoidentityprovider/api.go index 3e41a16be6c..8fd262b54ff 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/cognitoidentityprovider/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/cognitoidentityprovider/api.go @@ -16341,7 +16341,22 @@ type CreateIdentityProviderInput struct { // A list of identity provider identifiers. IdpIdentifiers []*string `type:"list"` - // The identity provider details, such as MetadataURL and MetadataFile. + // The identity provider details. The following list describes the provider + // detail keys for each identity provider type. + // + // * For Google, Facebook and Login with Amazon: client_id client_secret + // authorize_scopes + // + // * For Sign in with Apple: client_id team_id key_id private_key authorize_scopes + // + // * For OIDC providers: client_id client_secret attributes_request_method + // oidc_issuer authorize_scopes authorize_url if not available from discovery + // URL specified by oidc_issuer key token_url if not available from discovery + // URL specified by oidc_issuer key attributes_url if not available from + // discovery URL specified by oidc_issuer key jwks_uri if not available from + // discovery URL specified by oidc_issuer key authorize_scopes + // + // * For SAML providers: MetadataFile OR MetadataURL IDPSignOut optional // // ProviderDetails is a required field ProviderDetails map[string]*string `type:"map" required:"true"` @@ -16686,21 +16701,27 @@ func (s *CreateUserImportJobOutput) SetUserImportJob(v *UserImportJobType) *Crea type CreateUserPoolClientInput struct { _ struct{} `type:"structure"` + // The allowed OAuth flows. + // // Set to code to initiate a code grant flow, which provides an authorization // code as the response. This code can be exchanged for access tokens with the // token endpoint. // - // Set to token to specify that the client should get the access token (and, + // Set to implicit to specify that the client should get the access token (and, // optionally, ID token, based on scopes) directly. + // + // Set to client_credentials to specify that the client should get the access + // token (and, optionally, ID token, based on scopes) from the token endpoint + // using a combination of client and client_secret. AllowedOAuthFlows []*string `type:"list"` - // Set to True if the client is allowed to follow the OAuth protocol when interacting + // Set to true if the client is allowed to follow the OAuth protocol when interacting // with Cognito user pools. AllowedOAuthFlowsUserPoolClient *bool `type:"boolean"` - // A list of allowed OAuth scopes. Currently supported values are "phone", "email", - // "openid", and "Cognito". In addition to these values, custom scopes created - // in Resource Servers are also supported. + // The allowed OAuth scopes. Possible values provided by OAuth are: phone, email, + // openid, and profile. Possible values provided by AWS are: aws.cognito.signin.user.admin. + // Custom scopes created in Resource Servers are also supported. AllowedOAuthScopes []*string `type:"list"` // The Amazon Pinpoint analytics configuration for collecting metrics for this @@ -16813,7 +16834,7 @@ type CreateUserPoolClientInput struct { // // * ResendConfirmationCode // - // After January 1st 2020, the value of PreventUserExistenceErrors will default + // After February 15th 2020, the value of PreventUserExistenceErrors will default // to ENABLED for newly created user pool clients if no value is provided. PreventUserExistenceErrors *string `type:"string" enum:"PreventUserExistenceErrorTypes"` @@ -17197,6 +17218,12 @@ type CreateUserPoolInput struct { // when a user signs up. UsernameAttributes []*string `type:"list"` + // You can choose to set case sensitivity on the username input for the selected + // sign-in option. For example, when this is set to False, users will be able + // to sign in using either "username" or "Username". This configuration is immutable + // once it has been set. For more information, see . + UsernameConfiguration *UsernameConfigurationType `type:"structure"` + // The template for the verification message that the user sees when the app // requests permission to access the user's information. VerificationMessageTemplate *VerificationMessageTemplateType `type:"structure"` @@ -17281,6 +17308,11 @@ func (s *CreateUserPoolInput) Validate() error { invalidParams.AddNested("UserPoolAddOns", err.(request.ErrInvalidParams)) } } + if s.UsernameConfiguration != nil { + if err := s.UsernameConfiguration.Validate(); err != nil { + invalidParams.AddNested("UsernameConfiguration", err.(request.ErrInvalidParams)) + } + } if s.VerificationMessageTemplate != nil { if err := s.VerificationMessageTemplate.Validate(); err != nil { invalidParams.AddNested("VerificationMessageTemplate", err.(request.ErrInvalidParams)) @@ -17407,6 +17439,12 @@ func (s *CreateUserPoolInput) SetUsernameAttributes(v []*string) *CreateUserPool return s } +// SetUsernameConfiguration sets the UsernameConfiguration field's value. +func (s *CreateUserPoolInput) SetUsernameConfiguration(v *UsernameConfigurationType) *CreateUserPoolInput { + s.UsernameConfiguration = v + return s +} + // SetVerificationMessageTemplate sets the VerificationMessageTemplate field's value. func (s *CreateUserPoolInput) SetVerificationMessageTemplate(v *VerificationMessageTemplateType) *CreateUserPoolInput { s.VerificationMessageTemplate = v @@ -20488,7 +20526,22 @@ type IdentityProviderType struct { // The date the identity provider was last modified. LastModifiedDate *time.Time `type:"timestamp"` - // The identity provider details, such as MetadataURL and MetadataFile. + // The identity provider details. The following list describes the provider + // detail keys for each identity provider type. + // + // * For Google, Facebook and Login with Amazon: client_id client_secret + // authorize_scopes + // + // * For Sign in with Apple: client_id team_id key_id private_key authorize_scopes + // + // * For OIDC providers: client_id client_secret attributes_request_method + // oidc_issuer authorize_scopes authorize_url if not available from discovery + // URL specified by oidc_issuer key token_url if not available from discovery + // URL specified by oidc_issuer key attributes_url if not available from + // discovery URL specified by oidc_issuer key jwks_uri if not available from + // discovery URL specified by oidc_issuer key authorize_scopes + // + // * For SAML providers: MetadataFile OR MetadataURL IDPSignOut optional ProviderDetails map[string]*string `type:"map"` // The identity provider name. @@ -24116,7 +24169,15 @@ type SchemaAttributeType struct { // The attribute data type. AttributeDataType *string `type:"string" enum:"AttributeDataType"` - // Specifies whether the attribute type is developer only. + // + // We recommend that you use WriteAttributes (https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UserPoolClientType.html#CognitoUserPools-Type-UserPoolClientType-WriteAttributes) + // in the user pool client to control how attributes can be mutated for new + // use cases instead of using DeveloperOnlyAttribute. + // + // Specifies whether the attribute type is developer only. This attribute can + // only be modified by an administrator. Users will not be able to modify this + // attribute using their access token. For example, DeveloperOnlyAttribute can + // be modified using the API but cannot be updated using the API. DeveloperOnlyAttribute *bool `type:"boolean"` // Specifies whether the value of the attribute can be changed. @@ -26606,18 +26667,27 @@ func (s *UpdateUserAttributesOutput) SetCodeDeliveryDetailsList(v []*CodeDeliver type UpdateUserPoolClientInput struct { _ struct{} `type:"structure"` + // The allowed OAuth flows. + // // Set to code to initiate a code grant flow, which provides an authorization // code as the response. This code can be exchanged for access tokens with the // token endpoint. + // + // Set to implicit to specify that the client should get the access token (and, + // optionally, ID token, based on scopes) directly. + // + // Set to client_credentials to specify that the client should get the access + // token (and, optionally, ID token, based on scopes) from the token endpoint + // using a combination of client and client_secret. AllowedOAuthFlows []*string `type:"list"` - // Set to TRUE if the client is allowed to follow the OAuth protocol when interacting + // Set to true if the client is allowed to follow the OAuth protocol when interacting // with Cognito user pools. AllowedOAuthFlowsUserPoolClient *bool `type:"boolean"` - // A list of allowed OAuth scopes. Currently supported values are "phone", "email", - // "openid", and "Cognito". In addition to these values, custom scopes created - // in Resource Servers are also supported. + // The allowed OAuth scopes. Possible values provided by OAuth are: phone, email, + // openid, and profile. Possible values provided by AWS are: aws.cognito.signin.user.admin. + // Custom scopes created in Resource Servers are also supported. AllowedOAuthScopes []*string `type:"list"` // The Amazon Pinpoint analytics configuration for collecting metrics for this @@ -26729,7 +26799,7 @@ type UpdateUserPoolClientInput struct { // // * ResendConfirmationCode // - // After January 1st 2020, the value of PreventUserExistenceErrors will default + // After February 15th 2020, the value of PreventUserExistenceErrors will default // to ENABLED for newly created user pool clients if no value is provided. PreventUserExistenceErrors *string `type:"string" enum:"PreventUserExistenceErrorTypes"` @@ -27859,21 +27929,27 @@ func (s *UserPoolClientDescription) SetUserPoolId(v string) *UserPoolClientDescr type UserPoolClientType struct { _ struct{} `type:"structure"` + // The allowed OAuth flows. + // // Set to code to initiate a code grant flow, which provides an authorization // code as the response. This code can be exchanged for access tokens with the // token endpoint. // - // Set to token to specify that the client should get the access token (and, + // Set to implicit to specify that the client should get the access token (and, // optionally, ID token, based on scopes) directly. + // + // Set to client_credentials to specify that the client should get the access + // token (and, optionally, ID token, based on scopes) from the token endpoint + // using a combination of client and client_secret. AllowedOAuthFlows []*string `type:"list"` - // Set to TRUE if the client is allowed to follow the OAuth protocol when interacting + // Set to true if the client is allowed to follow the OAuth protocol when interacting // with Cognito user pools. AllowedOAuthFlowsUserPoolClient *bool `type:"boolean"` - // A list of allowed OAuth scopes. Currently supported values are "phone", "email", - // "openid", and "Cognito". In addition to these values, custom scopes created - // in Resource Servers are also supported. + // The allowed OAuth scopes. Possible values provided by OAuth are: phone, email, + // openid, and profile. Possible values provided by AWS are: aws.cognito.signin.user.admin. + // Custom scopes created in Resource Servers are also supported. AllowedOAuthScopes []*string `type:"list"` // The Amazon Pinpoint analytics configuration for the user pool client. @@ -27991,7 +28067,7 @@ type UserPoolClientType struct { // // * ResendConfirmationCode // - // After January 1st 2020, the value of PreventUserExistenceErrors will default + // After February 15th 2020, the value of PreventUserExistenceErrors will default // to ENABLED for newly created user pool clients if no value is provided. PreventUserExistenceErrors *string `type:"string" enum:"PreventUserExistenceErrorTypes"` @@ -28414,6 +28490,12 @@ type UserPoolType struct { // when a user signs up. UsernameAttributes []*string `type:"list"` + // You can choose to enable case sensitivity on the username input for the selected + // sign-in option. For example, when this is set to False, users will be able + // to sign in using either "username" or "Username". This configuration is immutable + // once it has been set. For more information, see . + UsernameConfiguration *UsernameConfigurationType `type:"structure"` + // The template for verification messages. VerificationMessageTemplate *VerificationMessageTemplateType `type:"structure"` } @@ -28602,6 +28684,12 @@ func (s *UserPoolType) SetUsernameAttributes(v []*string) *UserPoolType { return s } +// SetUsernameConfiguration sets the UsernameConfiguration field's value. +func (s *UserPoolType) SetUsernameConfiguration(v *UsernameConfigurationType) *UserPoolType { + s.UsernameConfiguration = v + return s +} + // SetVerificationMessageTemplate sets the VerificationMessageTemplate field's value. func (s *UserPoolType) SetVerificationMessageTemplate(v *VerificationMessageTemplateType) *UserPoolType { s.VerificationMessageTemplate = v @@ -28703,6 +28791,57 @@ func (s *UserType) SetUsername(v string) *UserType { return s } +// The username configuration type. +type UsernameConfigurationType struct { + _ struct{} `type:"structure"` + + // Specifies whether username case sensitivity will be applied for all users + // in the user pool through Cognito APIs. + // + // Valid values include: + // + // * True : Enables case sensitivity for all username input. When this option + // is set to True, users must sign in using the exact capitalization of their + // given username. For example, “UserName”. This is the default value. + // + // * False : Enables case insensitivity for all username input. For example, + // when this option is set to False, users will be able to sign in using + // either "username" or "Username". This option also enables both preferred_username + // and email alias to be case insensitive, in addition to the username attribute. + // + // CaseSensitive is a required field + CaseSensitive *bool `type:"boolean" required:"true"` +} + +// String returns the string representation +func (s UsernameConfigurationType) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UsernameConfigurationType) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UsernameConfigurationType) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UsernameConfigurationType"} + if s.CaseSensitive == nil { + invalidParams.Add(request.NewErrParamRequired("CaseSensitive")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCaseSensitive sets the CaseSensitive field's value. +func (s *UsernameConfigurationType) SetCaseSensitive(v bool) *UsernameConfigurationType { + s.CaseSensitive = &v + return s +} + // This exception is thrown when Amazon Cognito encounters a user name that // already exists in the user pool. type UsernameExistsException struct { diff --git a/vendor/github.com/aws/aws-sdk-go/service/directoryservice/api.go b/vendor/github.com/aws/aws-sdk-go/service/directoryservice/api.go index 4cecec07fe4..ce66195e46f 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/directoryservice/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/directoryservice/api.go @@ -6256,6 +6256,9 @@ type CertificateInfo struct { // The common name for the certificate. CommonName *string `type:"string"` + // The date and time when the certificate will expire. + ExpiryDateTime *time.Time `type:"timestamp"` + // The state of the certificate. State *string `type:"string" enum:"CertificateState"` } @@ -6282,6 +6285,12 @@ func (s *CertificateInfo) SetCommonName(v string) *CertificateInfo { return s } +// SetExpiryDateTime sets the ExpiryDateTime field's value. +func (s *CertificateInfo) SetExpiryDateTime(v time.Time) *CertificateInfo { + s.ExpiryDateTime = &v + return s +} + // SetState sets the State field's value. func (s *CertificateInfo) SetState(v string) *CertificateInfo { s.State = &v @@ -8422,8 +8431,7 @@ type DescribeLDAPSSettingsInput struct { // The type of next token used for pagination. NextToken *string `type:"string"` - // The type of LDAP security the customer wants to enable, either server or - // client. Currently supports only Client, (the default). + // The type of LDAP security to enable. Currently only the value Client is supported. Type *string `type:"string" enum:"LDAPSType"` } @@ -9727,9 +9735,7 @@ type DisableLDAPSInput struct { // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` - // The type of LDAP security that the customer wants to enable. The security - // can be either server or client, but currently only the default Client is - // supported. + // The type of LDAP security to enable. Currently only the value Client is supported. // // Type is a required field Type *string `type:"string" required:"true" enum:"LDAPSType"` @@ -10103,8 +10109,7 @@ type EnableLDAPSInput struct { // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` - // The type of LDAP security the customer wants to enable. The security can - // be either server or client, but currently only the default Client is supported. + // The type of LDAP security to enable. Currently only the value Client is supported. // // Type is a required field Type *string `type:"string" required:"true" enum:"LDAPSType"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/dlm/api.go b/vendor/github.com/aws/aws-sdk-go/service/dlm/api.go index 4cfc6a01146..6182bf173f9 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/dlm/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/dlm/api.go @@ -1739,14 +1739,14 @@ func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForRe return s } -// Optional parameters that can be added to the policy. The set of valid parameters -// depends on the combination of policyType and resourceType values. +// Specifies optional parameters to add to a policy. The set of valid parameters +// depends on the combination of policy type and resource type. type Parameters struct { _ struct{} `type:"structure"` - // When executing an EBS Snapshot Management – Instance policy, execute all - // CreateSnapshots calls with the excludeBootVolume set to the supplied field. - // Defaults to false. Only valid for EBS Snapshot Management – Instance policies. + // [EBS Snapshot Management – Instance policies only] Indicates whether to + // exclude the root volume from snapshots created using CreateSnapshots (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateSnapshots.html). + // The default is false. ExcludeBootVolume *bool `type:"boolean"` } @@ -1770,11 +1770,11 @@ func (s *Parameters) SetExcludeBootVolume(v bool) *Parameters { type PolicyDetails struct { _ struct{} `type:"structure"` - // A set of optional parameters that can be provided by the policy. + // A set of optional parameters for the policy. Parameters *Parameters `type:"structure"` - // This field determines the valid target resource types and actions a policy - // can manage. This field defaults to EBS_SNAPSHOT_MANAGEMENT if not present. + // The valid target resource types and actions a policy can manage. The default + // is EBS_SNAPSHOT_MANAGEMENT. PolicyType *string `type:"string" enum:"PolicyTypeValues"` // The resource type. @@ -1990,7 +1990,7 @@ func (s *RetainRule) SetIntervalUnit(v string) *RetainRule { return s } -// Specifies a schedule. +// Specifies a backup schedule. type Schedule struct { _ struct{} `type:"structure"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/docdb/api.go b/vendor/github.com/aws/aws-sdk-go/service/docdb/api.go index 8074f02c7a1..9e64a67dbd1 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/docdb/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/docdb/api.go @@ -72,13 +72,13 @@ func (c *DocDB) AddTagsToResourceRequest(input *AddTagsToResourceInput) (req *re // // Returned Error Codes: // * ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" -// DBInstanceIdentifier doesn't refer to an existing DB instance. +// DBInstanceIdentifier doesn't refer to an existing instance. // // * ErrCodeDBSnapshotNotFoundFault "DBSnapshotNotFound" -// DBSnapshotIdentifier doesn't refer to an existing DB snapshot. +// DBSnapshotIdentifier doesn't refer to an existing snapshot. // // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/AddTagsToResource func (c *DocDB) AddTagsToResource(input *AddTagsToResourceInput) (*AddTagsToResourceOutput, error) { @@ -161,10 +161,10 @@ func (c *DocDB) ApplyPendingMaintenanceActionRequest(input *ApplyPendingMaintena // The specified resource ID was not found. // // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" -// The DB cluster isn't in a valid state. +// The cluster isn't in a valid state. // // * ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" -// The specified DB instance isn't in the available state. +// The specified instance isn't in the available state. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ApplyPendingMaintenanceAction func (c *DocDB) ApplyPendingMaintenanceAction(input *ApplyPendingMaintenanceActionInput) (*ApplyPendingMaintenanceActionOutput, error) { @@ -232,7 +232,7 @@ func (c *DocDB) CopyDBClusterParameterGroupRequest(input *CopyDBClusterParameter // CopyDBClusterParameterGroup API operation for Amazon DocumentDB with MongoDB compatibility. // -// Copies the specified DB cluster parameter group. +// Copies the specified cluster parameter group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -243,14 +243,13 @@ func (c *DocDB) CopyDBClusterParameterGroupRequest(input *CopyDBClusterParameter // // Returned Error Codes: // * ErrCodeDBParameterGroupNotFoundFault "DBParameterGroupNotFound" -// DBParameterGroupName doesn't refer to an existing DB parameter group. +// DBParameterGroupName doesn't refer to an existing parameter group. // // * ErrCodeDBParameterGroupQuotaExceededFault "DBParameterGroupQuotaExceeded" -// This request would cause you to exceed the allowed number of DB parameter -// groups. +// This request would cause you to exceed the allowed number of parameter groups. // // * ErrCodeDBParameterGroupAlreadyExistsFault "DBParameterGroupAlreadyExists" -// A DB parameter group with the same name already exists. +// A parameter group with the same name already exists. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/CopyDBClusterParameterGroup func (c *DocDB) CopyDBClusterParameterGroup(input *CopyDBClusterParameterGroupInput) (*CopyDBClusterParameterGroupOutput, error) { @@ -318,14 +317,14 @@ func (c *DocDB) CopyDBClusterSnapshotRequest(input *CopyDBClusterSnapshotInput) // CopyDBClusterSnapshot API operation for Amazon DocumentDB with MongoDB compatibility. // -// Copies a snapshot of a DB cluster. +// Copies a snapshot of a cluster. // -// To copy a DB cluster snapshot from a shared manual DB cluster snapshot, SourceDBClusterSnapshotIdentifier -// must be the Amazon Resource Name (ARN) of the shared DB cluster snapshot. +// To copy a cluster snapshot from a shared manual cluster snapshot, SourceDBClusterSnapshotIdentifier +// must be the Amazon Resource Name (ARN) of the shared cluster snapshot. // -// To cancel the copy operation after it is in progress, delete the target DB -// cluster snapshot identified by TargetDBClusterSnapshotIdentifier while that -// DB cluster snapshot is in the copying status. +// To cancel the copy operation after it is in progress, delete the target cluster +// snapshot identified by TargetDBClusterSnapshotIdentifier while that DB cluster +// snapshot is in the copying status. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -336,19 +335,19 @@ func (c *DocDB) CopyDBClusterSnapshotRequest(input *CopyDBClusterSnapshotInput) // // Returned Error Codes: // * ErrCodeDBClusterSnapshotAlreadyExistsFault "DBClusterSnapshotAlreadyExistsFault" -// You already have a DB cluster snapshot with the given identifier. +// You already have a cluster snapshot with the given identifier. // // * ErrCodeDBClusterSnapshotNotFoundFault "DBClusterSnapshotNotFoundFault" -// DBClusterSnapshotIdentifier doesn't refer to an existing DB cluster snapshot. +// DBClusterSnapshotIdentifier doesn't refer to an existing cluster snapshot. // // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" -// The DB cluster isn't in a valid state. +// The cluster isn't in a valid state. // // * ErrCodeInvalidDBClusterSnapshotStateFault "InvalidDBClusterSnapshotStateFault" -// The provided value isn't a valid DB cluster snapshot state. +// The provided value isn't a valid cluster snapshot state. // // * ErrCodeSnapshotQuotaExceededFault "SnapshotQuotaExceeded" -// The request would cause you to exceed the allowed number of DB snapshots. +// The request would cause you to exceed the allowed number of snapshots. // // * ErrCodeKMSKeyNotAccessibleFault "KMSKeyNotAccessibleFault" // An error occurred when accessing an AWS KMS key. @@ -419,7 +418,7 @@ func (c *DocDB) CreateDBClusterRequest(input *CreateDBClusterInput) (req *reques // CreateDBCluster API operation for Amazon DocumentDB with MongoDB compatibility. // -// Creates a new Amazon DocumentDB DB cluster. +// Creates a new Amazon DocumentDB cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -430,7 +429,7 @@ func (c *DocDB) CreateDBClusterRequest(input *CreateDBClusterInput) (req *reques // // Returned Error Codes: // * ErrCodeDBClusterAlreadyExistsFault "DBClusterAlreadyExistsFault" -// You already have a DB cluster with the given identifier. +// You already have a cluster with the given identifier. // // * ErrCodeInsufficientStorageClusterCapacityFault "InsufficientStorageClusterCapacity" // There is not enough storage available for the current action. You might be @@ -438,48 +437,48 @@ func (c *DocDB) CreateDBClusterRequest(input *CreateDBClusterInput) (req *reques // Availability Zones that have more storage available. // // * ErrCodeDBClusterQuotaExceededFault "DBClusterQuotaExceededFault" -// The DB cluster can't be created because you have reached the maximum allowed -// quota of DB clusters. +// The cluster can't be created because you have reached the maximum allowed +// quota of clusters. // // * ErrCodeStorageQuotaExceededFault "StorageQuotaExceeded" // The request would cause you to exceed the allowed amount of storage available -// across all DB instances. +// across all instances. // // * ErrCodeDBSubnetGroupNotFoundFault "DBSubnetGroupNotFoundFault" -// DBSubnetGroupName doesn't refer to an existing DB subnet group. +// DBSubnetGroupName doesn't refer to an existing subnet group. // // * ErrCodeInvalidVPCNetworkStateFault "InvalidVPCNetworkStateFault" -// The DB subnet group doesn't cover all Availability Zones after it is created +// The subnet group doesn't cover all Availability Zones after it is created // because of changes that were made. // // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" -// The DB cluster isn't in a valid state. +// The cluster isn't in a valid state. // // * ErrCodeInvalidDBSubnetGroupStateFault "InvalidDBSubnetGroupStateFault" -// The DB subnet group can't be deleted because it's in use. +// The subnet group can't be deleted because it's in use. // // * ErrCodeInvalidSubnet "InvalidSubnet" // The requested subnet is not valid, or multiple subnets were requested that // are not all in a common virtual private cloud (VPC). // // * ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" -// The specified DB instance isn't in the available state. +// The specified instance isn't in the available state. // // * ErrCodeDBClusterParameterGroupNotFoundFault "DBClusterParameterGroupNotFound" -// DBClusterParameterGroupName doesn't refer to an existing DB cluster parameter +// DBClusterParameterGroupName doesn't refer to an existing cluster parameter // group. // // * ErrCodeKMSKeyNotAccessibleFault "KMSKeyNotAccessibleFault" // An error occurred when accessing an AWS KMS key. // // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // * ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" -// DBInstanceIdentifier doesn't refer to an existing DB instance. +// DBInstanceIdentifier doesn't refer to an existing instance. // // * ErrCodeDBSubnetGroupDoesNotCoverEnoughAZs "DBSubnetGroupDoesNotCoverEnoughAZs" -// Subnets in the DB subnet group should cover at least two Availability Zones +// Subnets in the subnet group should cover at least two Availability Zones // unless there is only one Availability Zone. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/CreateDBCluster @@ -548,27 +547,27 @@ func (c *DocDB) CreateDBClusterParameterGroupRequest(input *CreateDBClusterParam // CreateDBClusterParameterGroup API operation for Amazon DocumentDB with MongoDB compatibility. // -// Creates a new DB cluster parameter group. +// Creates a new cluster parameter group. // -// Parameters in a DB cluster parameter group apply to all of the instances -// in a DB cluster. +// Parameters in a cluster parameter group apply to all of the instances in +// a DB cluster. // -// A DB cluster parameter group is initially created with the default parameters -// for the database engine used by instances in the DB cluster. To provide custom +// A cluster parameter group is initially created with the default parameters +// for the database engine used by instances in the cluster. To provide custom // values for any of the parameters, you must modify the group after you create // it. After you create a DB cluster parameter group, you must associate it -// with your DB cluster. For the new DB cluster parameter group and associated -// settings to take effect, you must then reboot the DB instances in the DB -// cluster without failover. -// -// After you create a DB cluster parameter group, you should wait at least 5 -// minutes before creating your first DB cluster that uses that DB cluster parameter -// group as the default parameter group. This allows Amazon DocumentDB to fully -// complete the create action before the DB cluster parameter group is used -// as the default for a new DB cluster. This step is especially important for -// parameters that are critical when creating the default database for a DB -// cluster, such as the character set for the default database defined by the -// character_set_database parameter. +// with your cluster. For the new DB cluster parameter group and associated +// settings to take effect, you must then reboot the instances in the cluster +// without failover. +// +// After you create a cluster parameter group, you should wait at least 5 minutes +// before creating your first cluster that uses that cluster parameter group +// as the default parameter group. This allows Amazon DocumentDB to fully complete +// the create action before the cluster parameter group is used as the default +// for a new cluster. This step is especially important for parameters that +// are critical when creating the default database for a cluster, such as the +// character set for the default database defined by the character_set_database +// parameter. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -579,11 +578,10 @@ func (c *DocDB) CreateDBClusterParameterGroupRequest(input *CreateDBClusterParam // // Returned Error Codes: // * ErrCodeDBParameterGroupQuotaExceededFault "DBParameterGroupQuotaExceeded" -// This request would cause you to exceed the allowed number of DB parameter -// groups. +// This request would cause you to exceed the allowed number of parameter groups. // // * ErrCodeDBParameterGroupAlreadyExistsFault "DBParameterGroupAlreadyExists" -// A DB parameter group with the same name already exists. +// A parameter group with the same name already exists. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/CreateDBClusterParameterGroup func (c *DocDB) CreateDBClusterParameterGroup(input *CreateDBClusterParameterGroupInput) (*CreateDBClusterParameterGroupOutput, error) { @@ -651,7 +649,7 @@ func (c *DocDB) CreateDBClusterSnapshotRequest(input *CreateDBClusterSnapshotInp // CreateDBClusterSnapshot API operation for Amazon DocumentDB with MongoDB compatibility. // -// Creates a snapshot of a DB cluster. +// Creates a snapshot of a cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -662,19 +660,19 @@ func (c *DocDB) CreateDBClusterSnapshotRequest(input *CreateDBClusterSnapshotInp // // Returned Error Codes: // * ErrCodeDBClusterSnapshotAlreadyExistsFault "DBClusterSnapshotAlreadyExistsFault" -// You already have a DB cluster snapshot with the given identifier. +// You already have a cluster snapshot with the given identifier. // // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" -// The DB cluster isn't in a valid state. +// The cluster isn't in a valid state. // // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // * ErrCodeSnapshotQuotaExceededFault "SnapshotQuotaExceeded" -// The request would cause you to exceed the allowed number of DB snapshots. +// The request would cause you to exceed the allowed number of snapshots. // // * ErrCodeInvalidDBClusterSnapshotStateFault "InvalidDBClusterSnapshotStateFault" -// The provided value isn't a valid DB cluster snapshot state. +// The provided value isn't a valid cluster snapshot state. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/CreateDBClusterSnapshot func (c *DocDB) CreateDBClusterSnapshot(input *CreateDBClusterSnapshotInput) (*CreateDBClusterSnapshotOutput, error) { @@ -742,7 +740,7 @@ func (c *DocDB) CreateDBInstanceRequest(input *CreateDBInstanceInput) (req *requ // CreateDBInstance API operation for Amazon DocumentDB with MongoDB compatibility. // -// Creates a new DB instance. +// Creates a new instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -753,52 +751,52 @@ func (c *DocDB) CreateDBInstanceRequest(input *CreateDBInstanceInput) (req *requ // // Returned Error Codes: // * ErrCodeDBInstanceAlreadyExistsFault "DBInstanceAlreadyExists" -// You already have a DB instance with the given identifier. +// You already have a instance with the given identifier. // // * ErrCodeInsufficientDBInstanceCapacityFault "InsufficientDBInstanceCapacity" -// The specified DB instance class isn't available in the specified Availability +// The specified instance class isn't available in the specified Availability // Zone. // // * ErrCodeDBParameterGroupNotFoundFault "DBParameterGroupNotFound" -// DBParameterGroupName doesn't refer to an existing DB parameter group. +// DBParameterGroupName doesn't refer to an existing parameter group. // // * ErrCodeDBSecurityGroupNotFoundFault "DBSecurityGroupNotFound" -// DBSecurityGroupName doesn't refer to an existing DB security group. +// DBSecurityGroupName doesn't refer to an existing security group. // // * ErrCodeInstanceQuotaExceededFault "InstanceQuotaExceeded" -// The request would cause you to exceed the allowed number of DB instances. +// The request would cause you to exceed the allowed number of instances. // // * ErrCodeStorageQuotaExceededFault "StorageQuotaExceeded" // The request would cause you to exceed the allowed amount of storage available -// across all DB instances. +// across all instances. // // * ErrCodeDBSubnetGroupNotFoundFault "DBSubnetGroupNotFoundFault" -// DBSubnetGroupName doesn't refer to an existing DB subnet group. +// DBSubnetGroupName doesn't refer to an existing subnet group. // // * ErrCodeDBSubnetGroupDoesNotCoverEnoughAZs "DBSubnetGroupDoesNotCoverEnoughAZs" -// Subnets in the DB subnet group should cover at least two Availability Zones +// Subnets in the subnet group should cover at least two Availability Zones // unless there is only one Availability Zone. // // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" -// The DB cluster isn't in a valid state. +// The cluster isn't in a valid state. // // * ErrCodeInvalidSubnet "InvalidSubnet" // The requested subnet is not valid, or multiple subnets were requested that // are not all in a common virtual private cloud (VPC). // // * ErrCodeInvalidVPCNetworkStateFault "InvalidVPCNetworkStateFault" -// The DB subnet group doesn't cover all Availability Zones after it is created +// The subnet group doesn't cover all Availability Zones after it is created // because of changes that were made. // // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // * ErrCodeStorageTypeNotSupportedFault "StorageTypeNotSupported" // Storage of the specified StorageType can't be associated with the DB instance. // // * ErrCodeAuthorizationNotFoundFault "AuthorizationNotFound" // The specified CIDR IP or Amazon EC2 security group isn't authorized for the -// specified DB security group. +// specified security group. // // Amazon DocumentDB also might not be authorized to perform necessary actions // on your behalf using IAM. @@ -872,8 +870,8 @@ func (c *DocDB) CreateDBSubnetGroupRequest(input *CreateDBSubnetGroupInput) (req // CreateDBSubnetGroup API operation for Amazon DocumentDB with MongoDB compatibility. // -// Creates a new DB subnet group. DB subnet groups must contain at least one -// subnet in at least two Availability Zones in the AWS Region. +// Creates a new subnet group. subnet groups must contain at least one subnet +// in at least two Availability Zones in the AWS Region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -884,17 +882,17 @@ func (c *DocDB) CreateDBSubnetGroupRequest(input *CreateDBSubnetGroupInput) (req // // Returned Error Codes: // * ErrCodeDBSubnetGroupAlreadyExistsFault "DBSubnetGroupAlreadyExists" -// DBSubnetGroupName is already being used by an existing DB subnet group. +// DBSubnetGroupName is already being used by an existing subnet group. // // * ErrCodeDBSubnetGroupQuotaExceededFault "DBSubnetGroupQuotaExceeded" -// The request would cause you to exceed the allowed number of DB subnet groups. +// The request would cause you to exceed the allowed number of subnet groups. // // * ErrCodeDBSubnetQuotaExceededFault "DBSubnetQuotaExceededFault" // The request would cause you to exceed the allowed number of subnets in a -// DB subnet group. +// subnet group. // // * ErrCodeDBSubnetGroupDoesNotCoverEnoughAZs "DBSubnetGroupDoesNotCoverEnoughAZs" -// Subnets in the DB subnet group should cover at least two Availability Zones +// Subnets in the subnet group should cover at least two Availability Zones // unless there is only one Availability Zone. // // * ErrCodeInvalidSubnet "InvalidSubnet" @@ -967,9 +965,9 @@ func (c *DocDB) DeleteDBClusterRequest(input *DeleteDBClusterInput) (req *reques // DeleteDBCluster API operation for Amazon DocumentDB with MongoDB compatibility. // -// Deletes a previously provisioned DB cluster. When you delete a DB cluster, -// all automated backups for that DB cluster are deleted and can't be recovered. -// Manual DB cluster snapshots of the specified DB cluster are not deleted. +// Deletes a previously provisioned cluster. When you delete a cluster, all +// automated backups for that cluster are deleted and can't be recovered. Manual +// DB cluster snapshots of the specified cluster are not deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -980,19 +978,19 @@ func (c *DocDB) DeleteDBClusterRequest(input *DeleteDBClusterInput) (req *reques // // Returned Error Codes: // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" -// The DB cluster isn't in a valid state. +// The cluster isn't in a valid state. // // * ErrCodeDBClusterSnapshotAlreadyExistsFault "DBClusterSnapshotAlreadyExistsFault" -// You already have a DB cluster snapshot with the given identifier. +// You already have a cluster snapshot with the given identifier. // // * ErrCodeSnapshotQuotaExceededFault "SnapshotQuotaExceeded" -// The request would cause you to exceed the allowed number of DB snapshots. +// The request would cause you to exceed the allowed number of snapshots. // // * ErrCodeInvalidDBClusterSnapshotStateFault "InvalidDBClusterSnapshotStateFault" -// The provided value isn't a valid DB cluster snapshot state. +// The provided value isn't a valid cluster snapshot state. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DeleteDBCluster func (c *DocDB) DeleteDBCluster(input *DeleteDBClusterInput) (*DeleteDBClusterOutput, error) { @@ -1061,8 +1059,8 @@ func (c *DocDB) DeleteDBClusterParameterGroupRequest(input *DeleteDBClusterParam // DeleteDBClusterParameterGroup API operation for Amazon DocumentDB with MongoDB compatibility. // -// Deletes a specified DB cluster parameter group. The DB cluster parameter -// group to be deleted can't be associated with any DB clusters. +// Deletes a specified cluster parameter group. The cluster parameter group +// to be deleted can't be associated with any clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1073,12 +1071,12 @@ func (c *DocDB) DeleteDBClusterParameterGroupRequest(input *DeleteDBClusterParam // // Returned Error Codes: // * ErrCodeInvalidDBParameterGroupStateFault "InvalidDBParameterGroupState" -// The DB parameter group is in use, or it is in a state that is not valid. -// If you are trying to delete the parameter group, you can't delete it when -// the parameter group is in this state. +// The parameter group is in use, or it is in a state that is not valid. If +// you are trying to delete the parameter group, you can't delete it when the +// parameter group is in this state. // // * ErrCodeDBParameterGroupNotFoundFault "DBParameterGroupNotFound" -// DBParameterGroupName doesn't refer to an existing DB parameter group. +// DBParameterGroupName doesn't refer to an existing parameter group. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DeleteDBClusterParameterGroup func (c *DocDB) DeleteDBClusterParameterGroup(input *DeleteDBClusterParameterGroupInput) (*DeleteDBClusterParameterGroupOutput, error) { @@ -1146,10 +1144,10 @@ func (c *DocDB) DeleteDBClusterSnapshotRequest(input *DeleteDBClusterSnapshotInp // DeleteDBClusterSnapshot API operation for Amazon DocumentDB with MongoDB compatibility. // -// Deletes a DB cluster snapshot. If the snapshot is being copied, the copy -// operation is terminated. +// Deletes a cluster snapshot. If the snapshot is being copied, the copy operation +// is terminated. // -// The DB cluster snapshot must be in the available state to be deleted. +// The cluster snapshot must be in the available state to be deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1160,10 +1158,10 @@ func (c *DocDB) DeleteDBClusterSnapshotRequest(input *DeleteDBClusterSnapshotInp // // Returned Error Codes: // * ErrCodeInvalidDBClusterSnapshotStateFault "InvalidDBClusterSnapshotStateFault" -// The provided value isn't a valid DB cluster snapshot state. +// The provided value isn't a valid cluster snapshot state. // // * ErrCodeDBClusterSnapshotNotFoundFault "DBClusterSnapshotNotFoundFault" -// DBClusterSnapshotIdentifier doesn't refer to an existing DB cluster snapshot. +// DBClusterSnapshotIdentifier doesn't refer to an existing cluster snapshot. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DeleteDBClusterSnapshot func (c *DocDB) DeleteDBClusterSnapshot(input *DeleteDBClusterSnapshotInput) (*DeleteDBClusterSnapshotOutput, error) { @@ -1231,7 +1229,7 @@ func (c *DocDB) DeleteDBInstanceRequest(input *DeleteDBInstanceInput) (req *requ // DeleteDBInstance API operation for Amazon DocumentDB with MongoDB compatibility. // -// Deletes a previously provisioned DB instance. +// Deletes a previously provisioned instance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1242,19 +1240,19 @@ func (c *DocDB) DeleteDBInstanceRequest(input *DeleteDBInstanceInput) (req *requ // // Returned Error Codes: // * ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" -// DBInstanceIdentifier doesn't refer to an existing DB instance. +// DBInstanceIdentifier doesn't refer to an existing instance. // // * ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" -// The specified DB instance isn't in the available state. +// The specified instance isn't in the available state. // // * ErrCodeDBSnapshotAlreadyExistsFault "DBSnapshotAlreadyExists" // DBSnapshotIdentifier is already being used by an existing snapshot. // // * ErrCodeSnapshotQuotaExceededFault "SnapshotQuotaExceeded" -// The request would cause you to exceed the allowed number of DB snapshots. +// The request would cause you to exceed the allowed number of snapshots. // // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" -// The DB cluster isn't in a valid state. +// The cluster isn't in a valid state. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DeleteDBInstance func (c *DocDB) DeleteDBInstance(input *DeleteDBInstanceInput) (*DeleteDBInstanceOutput, error) { @@ -1323,7 +1321,7 @@ func (c *DocDB) DeleteDBSubnetGroupRequest(input *DeleteDBSubnetGroupInput) (req // DeleteDBSubnetGroup API operation for Amazon DocumentDB with MongoDB compatibility. // -// Deletes a DB subnet group. +// Deletes a subnet group. // // The specified database subnet group must not be associated with any DB instances. // @@ -1336,13 +1334,13 @@ func (c *DocDB) DeleteDBSubnetGroupRequest(input *DeleteDBSubnetGroupInput) (req // // Returned Error Codes: // * ErrCodeInvalidDBSubnetGroupStateFault "InvalidDBSubnetGroupStateFault" -// The DB subnet group can't be deleted because it's in use. +// The subnet group can't be deleted because it's in use. // // * ErrCodeInvalidDBSubnetStateFault "InvalidDBSubnetStateFault" -// The DB subnet isn't in the available state. +// The subnet isn't in the available state. // // * ErrCodeDBSubnetGroupNotFoundFault "DBSubnetGroupNotFoundFault" -// DBSubnetGroupName doesn't refer to an existing DB subnet group. +// DBSubnetGroupName doesn't refer to an existing subnet group. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DeleteDBSubnetGroup func (c *DocDB) DeleteDBSubnetGroup(input *DeleteDBSubnetGroupInput) (*DeleteDBSubnetGroupOutput, error) { @@ -1411,7 +1409,10 @@ func (c *DocDB) DescribeCertificatesRequest(input *DescribeCertificatesInput) (r // DescribeCertificates API operation for Amazon DocumentDB with MongoDB compatibility. // // Returns a list of certificate authority (CA) certificates provided by Amazon -// RDS for this AWS account. +// DocumentDB for this AWS account. For certain management features such as +// cluster and instance lifecycle management, Amazon DocumentDB leverages operational +// technology that is shared with Amazon RDS and Amazon Neptune. Use the filterName=engine,Values=docdb +// filter parameter to return only Amazon DocumentDB clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1492,7 +1493,7 @@ func (c *DocDB) DescribeDBClusterParameterGroupsRequest(input *DescribeDBCluster // // Returns a list of DBClusterParameterGroup descriptions. If a DBClusterParameterGroupName // parameter is specified, the list contains only the description of the specified -// DB cluster parameter group. +// cluster parameter group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1503,7 +1504,7 @@ func (c *DocDB) DescribeDBClusterParameterGroupsRequest(input *DescribeDBCluster // // Returned Error Codes: // * ErrCodeDBParameterGroupNotFoundFault "DBParameterGroupNotFound" -// DBParameterGroupName doesn't refer to an existing DB parameter group. +// DBParameterGroupName doesn't refer to an existing parameter group. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBClusterParameterGroups func (c *DocDB) DescribeDBClusterParameterGroups(input *DescribeDBClusterParameterGroupsInput) (*DescribeDBClusterParameterGroupsOutput, error) { @@ -1571,8 +1572,7 @@ func (c *DocDB) DescribeDBClusterParametersRequest(input *DescribeDBClusterParam // DescribeDBClusterParameters API operation for Amazon DocumentDB with MongoDB compatibility. // -// Returns the detailed parameter list for a particular DB cluster parameter -// group. +// Returns the detailed parameter list for a particular cluster parameter group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1583,7 +1583,7 @@ func (c *DocDB) DescribeDBClusterParametersRequest(input *DescribeDBClusterParam // // Returned Error Codes: // * ErrCodeDBParameterGroupNotFoundFault "DBParameterGroupNotFound" -// DBParameterGroupName doesn't refer to an existing DB parameter group. +// DBParameterGroupName doesn't refer to an existing parameter group. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBClusterParameters func (c *DocDB) DescribeDBClusterParameters(input *DescribeDBClusterParametersInput) (*DescribeDBClusterParametersOutput, error) { @@ -1651,14 +1651,14 @@ func (c *DocDB) DescribeDBClusterSnapshotAttributesRequest(input *DescribeDBClus // DescribeDBClusterSnapshotAttributes API operation for Amazon DocumentDB with MongoDB compatibility. // -// Returns a list of DB cluster snapshot attribute names and values for a manual +// Returns a list of cluster snapshot attribute names and values for a manual // DB cluster snapshot. // // When you share snapshots with other AWS accounts, DescribeDBClusterSnapshotAttributes // returns the restore attribute and a list of IDs for the AWS accounts that -// are authorized to copy or restore the manual DB cluster snapshot. If all -// is included in the list of values for the restore attribute, then the manual -// DB cluster snapshot is public and can be copied or restored by all AWS accounts. +// are authorized to copy or restore the manual cluster snapshot. If all is +// included in the list of values for the restore attribute, then the manual +// cluster snapshot is public and can be copied or restored by all AWS accounts. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1669,7 +1669,7 @@ func (c *DocDB) DescribeDBClusterSnapshotAttributesRequest(input *DescribeDBClus // // Returned Error Codes: // * ErrCodeDBClusterSnapshotNotFoundFault "DBClusterSnapshotNotFoundFault" -// DBClusterSnapshotIdentifier doesn't refer to an existing DB cluster snapshot. +// DBClusterSnapshotIdentifier doesn't refer to an existing cluster snapshot. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBClusterSnapshotAttributes func (c *DocDB) DescribeDBClusterSnapshotAttributes(input *DescribeDBClusterSnapshotAttributesInput) (*DescribeDBClusterSnapshotAttributesOutput, error) { @@ -1737,7 +1737,7 @@ func (c *DocDB) DescribeDBClusterSnapshotsRequest(input *DescribeDBClusterSnapsh // DescribeDBClusterSnapshots API operation for Amazon DocumentDB with MongoDB compatibility. // -// Returns information about DB cluster snapshots. This API operation supports +// Returns information about cluster snapshots. This API operation supports // pagination. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -1749,7 +1749,7 @@ func (c *DocDB) DescribeDBClusterSnapshotsRequest(input *DescribeDBClusterSnapsh // // Returned Error Codes: // * ErrCodeDBClusterSnapshotNotFoundFault "DBClusterSnapshotNotFoundFault" -// DBClusterSnapshotIdentifier doesn't refer to an existing DB cluster snapshot. +// DBClusterSnapshotIdentifier doesn't refer to an existing cluster snapshot. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBClusterSnapshots func (c *DocDB) DescribeDBClusterSnapshots(input *DescribeDBClusterSnapshotsInput) (*DescribeDBClusterSnapshotsOutput, error) { @@ -1823,8 +1823,8 @@ func (c *DocDB) DescribeDBClustersRequest(input *DescribeDBClustersInput) (req * // DescribeDBClusters API operation for Amazon DocumentDB with MongoDB compatibility. // -// Returns information about provisioned Amazon DocumentDB DB clusters. This -// API operation supports pagination. +// Returns information about provisioned Amazon DocumentDB clusters. This API +// operation supports pagination. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1835,7 +1835,7 @@ func (c *DocDB) DescribeDBClustersRequest(input *DescribeDBClustersInput) (req * // // Returned Error Codes: // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBClusters func (c *DocDB) DescribeDBClusters(input *DescribeDBClustersInput) (*DescribeDBClustersOutput, error) { @@ -1961,7 +1961,7 @@ func (c *DocDB) DescribeDBEngineVersionsRequest(input *DescribeDBEngineVersionsI // DescribeDBEngineVersions API operation for Amazon DocumentDB with MongoDB compatibility. // -// Returns a list of the available DB engines. +// Returns a list of the available engines. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2105,7 +2105,7 @@ func (c *DocDB) DescribeDBInstancesRequest(input *DescribeDBInstancesInput) (req // // Returned Error Codes: // * ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" -// DBInstanceIdentifier doesn't refer to an existing DB instance. +// DBInstanceIdentifier doesn't refer to an existing instance. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBInstances func (c *DocDB) DescribeDBInstances(input *DescribeDBInstancesInput) (*DescribeDBInstancesOutput, error) { @@ -2243,7 +2243,7 @@ func (c *DocDB) DescribeDBSubnetGroupsRequest(input *DescribeDBSubnetGroupsInput // // Returned Error Codes: // * ErrCodeDBSubnetGroupNotFoundFault "DBSubnetGroupNotFoundFault" -// DBSubnetGroupName doesn't refer to an existing DB subnet group. +// DBSubnetGroupName doesn't refer to an existing subnet group. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/DescribeDBSubnetGroups func (c *DocDB) DescribeDBSubnetGroups(input *DescribeDBSubnetGroupsInput) (*DescribeDBSubnetGroupsOutput, error) { @@ -2519,11 +2519,10 @@ func (c *DocDB) DescribeEventsRequest(input *DescribeEventsInput) (req *request. // DescribeEvents API operation for Amazon DocumentDB with MongoDB compatibility. // -// Returns events related to DB instances, DB security groups, DB snapshots, -// and DB parameter groups for the past 14 days. You can obtain events specific -// to a particular DB instance, DB security group, DB snapshot, or DB parameter -// group by providing the name as a parameter. By default, the events of the -// past hour are returned. +// Returns events related to instances, security groups, snapshots, and DB parameter +// groups for the past 14 days. You can obtain events specific to a particular +// DB instance, security group, snapshot, or parameter group by providing the +// name as a parameter. By default, the events of the past hour are returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2655,7 +2654,7 @@ func (c *DocDB) DescribeOrderableDBInstanceOptionsRequest(input *DescribeOrderab // DescribeOrderableDBInstanceOptions API operation for Amazon DocumentDB with MongoDB compatibility. // -// Returns a list of orderable DB instance options for the specified engine. +// Returns a list of orderable instance options for the specified engine. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2781,8 +2780,8 @@ func (c *DocDB) DescribePendingMaintenanceActionsRequest(input *DescribePendingM // DescribePendingMaintenanceActions API operation for Amazon DocumentDB with MongoDB compatibility. // -// Returns a list of resources (for example, DB instances) that have at least -// one pending maintenance action. +// Returns a list of resources (for example, instances) that have at least one +// pending maintenance action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2861,11 +2860,10 @@ func (c *DocDB) FailoverDBClusterRequest(input *FailoverDBClusterInput) (req *re // FailoverDBCluster API operation for Amazon DocumentDB with MongoDB compatibility. // -// Forces a failover for a DB cluster. +// Forces a failover for a cluster. // -// A failover for a DB cluster promotes one of the Amazon DocumentDB replicas -// (read-only instances) in the DB cluster to be the primary instance (the cluster -// writer). +// A failover for a cluster promotes one of the Amazon DocumentDB replicas (read-only +// instances) in the cluster to be the primary instance (the cluster writer). // // If the primary instance fails, Amazon DocumentDB automatically fails over // to an Amazon DocumentDB replica, if one exists. You can force a failover @@ -2880,13 +2878,13 @@ func (c *DocDB) FailoverDBClusterRequest(input *FailoverDBClusterInput) (req *re // // Returned Error Codes: // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" -// The DB cluster isn't in a valid state. +// The cluster isn't in a valid state. // // * ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" -// The specified DB instance isn't in the available state. +// The specified instance isn't in the available state. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/FailoverDBCluster func (c *DocDB) FailoverDBCluster(input *FailoverDBClusterInput) (*FailoverDBClusterOutput, error) { @@ -2965,13 +2963,13 @@ func (c *DocDB) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req // // Returned Error Codes: // * ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" -// DBInstanceIdentifier doesn't refer to an existing DB instance. +// DBInstanceIdentifier doesn't refer to an existing instance. // // * ErrCodeDBSnapshotNotFoundFault "DBSnapshotNotFound" -// DBSnapshotIdentifier doesn't refer to an existing DB snapshot. +// DBSnapshotIdentifier doesn't refer to an existing snapshot. // // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ListTagsForResource func (c *DocDB) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { @@ -3039,9 +3037,9 @@ func (c *DocDB) ModifyDBClusterRequest(input *ModifyDBClusterInput) (req *reques // ModifyDBCluster API operation for Amazon DocumentDB with MongoDB compatibility. // -// Modifies a setting for an Amazon DocumentDB DB cluster. You can change one -// or more database configuration parameters by specifying these parameters -// and the new values in the request. +// Modifies a setting for an Amazon DocumentDB cluster. You can change one or +// more database configuration parameters by specifying these parameters and +// the new values in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3052,41 +3050,41 @@ func (c *DocDB) ModifyDBClusterRequest(input *ModifyDBClusterInput) (req *reques // // Returned Error Codes: // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" -// The DB cluster isn't in a valid state. +// The cluster isn't in a valid state. // // * ErrCodeStorageQuotaExceededFault "StorageQuotaExceeded" // The request would cause you to exceed the allowed amount of storage available -// across all DB instances. +// across all instances. // // * ErrCodeDBSubnetGroupNotFoundFault "DBSubnetGroupNotFoundFault" -// DBSubnetGroupName doesn't refer to an existing DB subnet group. +// DBSubnetGroupName doesn't refer to an existing subnet group. // // * ErrCodeInvalidVPCNetworkStateFault "InvalidVPCNetworkStateFault" -// The DB subnet group doesn't cover all Availability Zones after it is created +// The subnet group doesn't cover all Availability Zones after it is created // because of changes that were made. // // * ErrCodeInvalidDBSubnetGroupStateFault "InvalidDBSubnetGroupStateFault" -// The DB subnet group can't be deleted because it's in use. +// The subnet group can't be deleted because it's in use. // // * ErrCodeInvalidSubnet "InvalidSubnet" // The requested subnet is not valid, or multiple subnets were requested that // are not all in a common virtual private cloud (VPC). // // * ErrCodeDBClusterParameterGroupNotFoundFault "DBClusterParameterGroupNotFound" -// DBClusterParameterGroupName doesn't refer to an existing DB cluster parameter +// DBClusterParameterGroupName doesn't refer to an existing cluster parameter // group. // // * ErrCodeInvalidDBSecurityGroupStateFault "InvalidDBSecurityGroupState" -// The state of the DB security group doesn't allow deletion. +// The state of the security group doesn't allow deletion. // // * ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" -// The specified DB instance isn't in the available state. +// The specified instance isn't in the available state. // // * ErrCodeDBClusterAlreadyExistsFault "DBClusterAlreadyExistsFault" -// You already have a DB cluster with the given identifier. +// You already have a cluster with the given identifier. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ModifyDBCluster func (c *DocDB) ModifyDBCluster(input *ModifyDBClusterInput) (*ModifyDBClusterOutput, error) { @@ -3154,7 +3152,7 @@ func (c *DocDB) ModifyDBClusterParameterGroupRequest(input *ModifyDBClusterParam // ModifyDBClusterParameterGroup API operation for Amazon DocumentDB with MongoDB compatibility. // -// Modifies the parameters of a DB cluster parameter group. To modify more than +// Modifies the parameters of a cluster parameter group. To modify more than // one parameter, submit a list of the following: ParameterName, ParameterValue, // and ApplyMethod. A maximum of 20 parameters can be modified in a single request. // @@ -3162,14 +3160,13 @@ func (c *DocDB) ModifyDBClusterParameterGroupRequest(input *ModifyDBClusterParam // parameters require a reboot or maintenance window before the change can take // effect. // -// After you create a DB cluster parameter group, you should wait at least 5 -// minutes before creating your first DB cluster that uses that DB cluster parameter -// group as the default parameter group. This allows Amazon DocumentDB to fully -// complete the create action before the parameter group is used as the default -// for a new DB cluster. This step is especially important for parameters that -// are critical when creating the default database for a DB cluster, such as -// the character set for the default database defined by the character_set_database -// parameter. +// After you create a cluster parameter group, you should wait at least 5 minutes +// before creating your first cluster that uses that cluster parameter group +// as the default parameter group. This allows Amazon DocumentDB to fully complete +// the create action before the parameter group is used as the default for a +// new cluster. This step is especially important for parameters that are critical +// when creating the default database for a cluster, such as the character set +// for the default database defined by the character_set_database parameter. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3180,12 +3177,12 @@ func (c *DocDB) ModifyDBClusterParameterGroupRequest(input *ModifyDBClusterParam // // Returned Error Codes: // * ErrCodeDBParameterGroupNotFoundFault "DBParameterGroupNotFound" -// DBParameterGroupName doesn't refer to an existing DB parameter group. +// DBParameterGroupName doesn't refer to an existing parameter group. // // * ErrCodeInvalidDBParameterGroupStateFault "InvalidDBParameterGroupState" -// The DB parameter group is in use, or it is in a state that is not valid. -// If you are trying to delete the parameter group, you can't delete it when -// the parameter group is in this state. +// The parameter group is in use, or it is in a state that is not valid. If +// you are trying to delete the parameter group, you can't delete it when the +// parameter group is in this state. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ModifyDBClusterParameterGroup func (c *DocDB) ModifyDBClusterParameterGroup(input *ModifyDBClusterParameterGroupInput) (*ModifyDBClusterParameterGroupOutput, error) { @@ -3256,16 +3253,16 @@ func (c *DocDB) ModifyDBClusterSnapshotAttributeRequest(input *ModifyDBClusterSn // Adds an attribute and values to, or removes an attribute and values from, // a manual DB cluster snapshot. // -// To share a manual DB cluster snapshot with other AWS accounts, specify restore +// To share a manual cluster snapshot with other AWS accounts, specify restore // as the AttributeName, and use the ValuesToAdd parameter to add a list of -// IDs of the AWS accounts that are authorized to restore the manual DB cluster -// snapshot. Use the value all to make the manual DB cluster snapshot public, -// which means that it can be copied or restored by all AWS accounts. Do not -// add the all value for any manual DB cluster snapshots that contain private -// information that you don't want available to all AWS accounts. If a manual -// DB cluster snapshot is encrypted, it can be shared, but only by specifying -// a list of authorized AWS account IDs for the ValuesToAdd parameter. You can't -// use all as a value for that parameter in this case. +// IDs of the AWS accounts that are authorized to restore the manual cluster +// snapshot. Use the value all to make the manual cluster snapshot public, which +// means that it can be copied or restored by all AWS accounts. Do not add the +// all value for any manual DB cluster snapshots that contain private information +// that you don't want available to all AWS accounts. If a manual cluster snapshot +// is encrypted, it can be shared, but only by specifying a list of authorized +// AWS account IDs for the ValuesToAdd parameter. You can't use all as a value +// for that parameter in this case. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3276,10 +3273,10 @@ func (c *DocDB) ModifyDBClusterSnapshotAttributeRequest(input *ModifyDBClusterSn // // Returned Error Codes: // * ErrCodeDBClusterSnapshotNotFoundFault "DBClusterSnapshotNotFoundFault" -// DBClusterSnapshotIdentifier doesn't refer to an existing DB cluster snapshot. +// DBClusterSnapshotIdentifier doesn't refer to an existing cluster snapshot. // // * ErrCodeInvalidDBClusterSnapshotStateFault "InvalidDBClusterSnapshotStateFault" -// The provided value isn't a valid DB cluster snapshot state. +// The provided value isn't a valid cluster snapshot state. // // * ErrCodeSharedSnapshotQuotaExceededFault "SharedSnapshotQuotaExceeded" // You have exceeded the maximum number of accounts that you can share a manual @@ -3351,9 +3348,8 @@ func (c *DocDB) ModifyDBInstanceRequest(input *ModifyDBInstanceInput) (req *requ // ModifyDBInstance API operation for Amazon DocumentDB with MongoDB compatibility. // -// Modifies settings for a DB instance. You can change one or more database -// configuration parameters by specifying these parameters and the new values -// in the request. +// Modifies settings for an instance. You can change one or more database configuration +// parameters by specifying these parameters and the new values in the request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3364,45 +3360,44 @@ func (c *DocDB) ModifyDBInstanceRequest(input *ModifyDBInstanceInput) (req *requ // // Returned Error Codes: // * ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" -// The specified DB instance isn't in the available state. +// The specified instance isn't in the available state. // // * ErrCodeInvalidDBSecurityGroupStateFault "InvalidDBSecurityGroupState" -// The state of the DB security group doesn't allow deletion. +// The state of the security group doesn't allow deletion. // // * ErrCodeDBInstanceAlreadyExistsFault "DBInstanceAlreadyExists" -// You already have a DB instance with the given identifier. +// You already have a instance with the given identifier. // // * ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" -// DBInstanceIdentifier doesn't refer to an existing DB instance. +// DBInstanceIdentifier doesn't refer to an existing instance. // // * ErrCodeDBSecurityGroupNotFoundFault "DBSecurityGroupNotFound" -// DBSecurityGroupName doesn't refer to an existing DB security group. +// DBSecurityGroupName doesn't refer to an existing security group. // // * ErrCodeDBParameterGroupNotFoundFault "DBParameterGroupNotFound" -// DBParameterGroupName doesn't refer to an existing DB parameter group. +// DBParameterGroupName doesn't refer to an existing parameter group. // // * ErrCodeInsufficientDBInstanceCapacityFault "InsufficientDBInstanceCapacity" -// The specified DB instance class isn't available in the specified Availability +// The specified instance class isn't available in the specified Availability // Zone. // // * ErrCodeStorageQuotaExceededFault "StorageQuotaExceeded" // The request would cause you to exceed the allowed amount of storage available -// across all DB instances. +// across all instances. // // * ErrCodeInvalidVPCNetworkStateFault "InvalidVPCNetworkStateFault" -// The DB subnet group doesn't cover all Availability Zones after it is created +// The subnet group doesn't cover all Availability Zones after it is created // because of changes that were made. // // * ErrCodeDBUpgradeDependencyFailureFault "DBUpgradeDependencyFailure" -// The DB upgrade failed because a resource that the DB depends on can't be -// modified. +// The upgrade failed because a resource that the depends on can't be modified. // // * ErrCodeStorageTypeNotSupportedFault "StorageTypeNotSupported" // Storage of the specified StorageType can't be associated with the DB instance. // // * ErrCodeAuthorizationNotFoundFault "AuthorizationNotFound" // The specified CIDR IP or Amazon EC2 security group isn't authorized for the -// specified DB security group. +// specified security group. // // Amazon DocumentDB also might not be authorized to perform necessary actions // on your behalf using IAM. @@ -3476,8 +3471,8 @@ func (c *DocDB) ModifyDBSubnetGroupRequest(input *ModifyDBSubnetGroupInput) (req // ModifyDBSubnetGroup API operation for Amazon DocumentDB with MongoDB compatibility. // -// Modifies an existing DB subnet group. DB subnet groups must contain at least -// one subnet in at least two Availability Zones in the AWS Region. +// Modifies an existing subnet group. subnet groups must contain at least one +// subnet in at least two Availability Zones in the AWS Region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3488,17 +3483,17 @@ func (c *DocDB) ModifyDBSubnetGroupRequest(input *ModifyDBSubnetGroupInput) (req // // Returned Error Codes: // * ErrCodeDBSubnetGroupNotFoundFault "DBSubnetGroupNotFoundFault" -// DBSubnetGroupName doesn't refer to an existing DB subnet group. +// DBSubnetGroupName doesn't refer to an existing subnet group. // // * ErrCodeDBSubnetQuotaExceededFault "DBSubnetQuotaExceededFault" // The request would cause you to exceed the allowed number of subnets in a -// DB subnet group. +// subnet group. // // * ErrCodeSubnetAlreadyInUse "SubnetAlreadyInUse" -// The DB subnet is already in use in the Availability Zone. +// The subnet is already in use in the Availability Zone. // // * ErrCodeDBSubnetGroupDoesNotCoverEnoughAZs "DBSubnetGroupDoesNotCoverEnoughAZs" -// Subnets in the DB subnet group should cover at least two Availability Zones +// Subnets in the subnet group should cover at least two Availability Zones // unless there is only one Availability Zone. // // * ErrCodeInvalidSubnet "InvalidSubnet" @@ -3571,13 +3566,13 @@ func (c *DocDB) RebootDBInstanceRequest(input *RebootDBInstanceInput) (req *requ // RebootDBInstance API operation for Amazon DocumentDB with MongoDB compatibility. // -// You might need to reboot your DB instance, usually for maintenance reasons. -// For example, if you make certain changes, or if you change the DB cluster -// parameter group that is associated with the DB instance, you must reboot -// the instance for the changes to take effect. +// You might need to reboot your instance, usually for maintenance reasons. +// For example, if you make certain changes, or if you change the cluster parameter +// group that is associated with the instance, you must reboot the instance +// for the changes to take effect. // -// Rebooting a DB instance restarts the database engine service. Rebooting a -// DB instance results in a momentary outage, during which the DB instance status +// Rebooting an instance restarts the database engine service. Rebooting an +// instance results in a momentary outage, during which the instance status // is set to rebooting. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -3589,10 +3584,10 @@ func (c *DocDB) RebootDBInstanceRequest(input *RebootDBInstanceInput) (req *requ // // Returned Error Codes: // * ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" -// The specified DB instance isn't in the available state. +// The specified instance isn't in the available state. // // * ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" -// DBInstanceIdentifier doesn't refer to an existing DB instance. +// DBInstanceIdentifier doesn't refer to an existing instance. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/RebootDBInstance func (c *DocDB) RebootDBInstance(input *RebootDBInstanceInput) (*RebootDBInstanceOutput, error) { @@ -3672,13 +3667,13 @@ func (c *DocDB) RemoveTagsFromResourceRequest(input *RemoveTagsFromResourceInput // // Returned Error Codes: // * ErrCodeDBInstanceNotFoundFault "DBInstanceNotFound" -// DBInstanceIdentifier doesn't refer to an existing DB instance. +// DBInstanceIdentifier doesn't refer to an existing instance. // // * ErrCodeDBSnapshotNotFoundFault "DBSnapshotNotFound" -// DBSnapshotIdentifier doesn't refer to an existing DB snapshot. +// DBSnapshotIdentifier doesn't refer to an existing snapshot. // // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/RemoveTagsFromResource func (c *DocDB) RemoveTagsFromResource(input *RemoveTagsFromResourceInput) (*RemoveTagsFromResourceOutput, error) { @@ -3746,10 +3741,10 @@ func (c *DocDB) ResetDBClusterParameterGroupRequest(input *ResetDBClusterParamet // ResetDBClusterParameterGroup API operation for Amazon DocumentDB with MongoDB compatibility. // -// Modifies the parameters of a DB cluster parameter group to the default value. +// Modifies the parameters of a cluster parameter group to the default value. // To reset specific parameters, submit a list of the following: ParameterName -// and ApplyMethod. To reset the entire DB cluster parameter group, specify -// the DBClusterParameterGroupName and ResetAllParameters parameters. +// and ApplyMethod. To reset the entire cluster parameter group, specify the +// DBClusterParameterGroupName and ResetAllParameters parameters. // // When you reset the entire group, dynamic parameters are updated immediately // and static parameters are set to pending-reboot to take effect on the next @@ -3764,12 +3759,12 @@ func (c *DocDB) ResetDBClusterParameterGroupRequest(input *ResetDBClusterParamet // // Returned Error Codes: // * ErrCodeInvalidDBParameterGroupStateFault "InvalidDBParameterGroupState" -// The DB parameter group is in use, or it is in a state that is not valid. -// If you are trying to delete the parameter group, you can't delete it when -// the parameter group is in this state. +// The parameter group is in use, or it is in a state that is not valid. If +// you are trying to delete the parameter group, you can't delete it when the +// parameter group is in this state. // // * ErrCodeDBParameterGroupNotFoundFault "DBParameterGroupNotFound" -// DBParameterGroupName doesn't refer to an existing DB parameter group. +// DBParameterGroupName doesn't refer to an existing parameter group. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/ResetDBClusterParameterGroup func (c *DocDB) ResetDBClusterParameterGroup(input *ResetDBClusterParameterGroupInput) (*ResetDBClusterParameterGroupOutput, error) { @@ -3837,14 +3832,14 @@ func (c *DocDB) RestoreDBClusterFromSnapshotRequest(input *RestoreDBClusterFromS // RestoreDBClusterFromSnapshot API operation for Amazon DocumentDB with MongoDB compatibility. // -// Creates a new DB cluster from a DB snapshot or DB cluster snapshot. +// Creates a new cluster from a snapshot or cluster snapshot. // -// If a DB snapshot is specified, the target DB cluster is created from the -// source DB snapshot with a default configuration and default security group. +// If a snapshot is specified, the target cluster is created from the source +// DB snapshot with a default configuration and default security group. // -// If a DB cluster snapshot is specified, the target DB cluster is created from -// the source DB cluster restore point with the same configuration as the original -// source DB cluster, except that the new DB cluster is created with the default +// If a cluster snapshot is specified, the target cluster is created from the +// source cluster restore point with the same configuration as the original +// source DB cluster, except that the new cluster is created with the default // security group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -3856,27 +3851,27 @@ func (c *DocDB) RestoreDBClusterFromSnapshotRequest(input *RestoreDBClusterFromS // // Returned Error Codes: // * ErrCodeDBClusterAlreadyExistsFault "DBClusterAlreadyExistsFault" -// You already have a DB cluster with the given identifier. +// You already have a cluster with the given identifier. // // * ErrCodeDBClusterQuotaExceededFault "DBClusterQuotaExceededFault" -// The DB cluster can't be created because you have reached the maximum allowed -// quota of DB clusters. +// The cluster can't be created because you have reached the maximum allowed +// quota of clusters. // // * ErrCodeStorageQuotaExceededFault "StorageQuotaExceeded" // The request would cause you to exceed the allowed amount of storage available -// across all DB instances. +// across all instances. // // * ErrCodeDBSubnetGroupNotFoundFault "DBSubnetGroupNotFoundFault" -// DBSubnetGroupName doesn't refer to an existing DB subnet group. +// DBSubnetGroupName doesn't refer to an existing subnet group. // // * ErrCodeDBSnapshotNotFoundFault "DBSnapshotNotFound" -// DBSnapshotIdentifier doesn't refer to an existing DB snapshot. +// DBSnapshotIdentifier doesn't refer to an existing snapshot. // // * ErrCodeDBClusterSnapshotNotFoundFault "DBClusterSnapshotNotFoundFault" -// DBClusterSnapshotIdentifier doesn't refer to an existing DB cluster snapshot. +// DBClusterSnapshotIdentifier doesn't refer to an existing cluster snapshot. // // * ErrCodeInsufficientDBClusterCapacityFault "InsufficientDBClusterCapacityFault" -// The DB cluster doesn't have enough capacity for the current operation. +// The cluster doesn't have enough capacity for the current operation. // // * ErrCodeInsufficientStorageClusterCapacityFault "InsufficientStorageClusterCapacity" // There is not enough storage available for the current action. You might be @@ -3884,17 +3879,17 @@ func (c *DocDB) RestoreDBClusterFromSnapshotRequest(input *RestoreDBClusterFromS // Availability Zones that have more storage available. // // * ErrCodeInvalidDBSnapshotStateFault "InvalidDBSnapshotState" -// The state of the DB snapshot doesn't allow deletion. +// The state of the snapshot doesn't allow deletion. // // * ErrCodeInvalidDBClusterSnapshotStateFault "InvalidDBClusterSnapshotStateFault" -// The provided value isn't a valid DB cluster snapshot state. +// The provided value isn't a valid cluster snapshot state. // // * ErrCodeStorageQuotaExceededFault "StorageQuotaExceeded" // The request would cause you to exceed the allowed amount of storage available -// across all DB instances. +// across all instances. // // * ErrCodeInvalidVPCNetworkStateFault "InvalidVPCNetworkStateFault" -// The DB subnet group doesn't cover all Availability Zones after it is created +// The subnet group doesn't cover all Availability Zones after it is created // because of changes that were made. // // * ErrCodeInvalidRestoreFault "InvalidRestoreFault" @@ -3902,7 +3897,7 @@ func (c *DocDB) RestoreDBClusterFromSnapshotRequest(input *RestoreDBClusterFromS // DB instance. // // * ErrCodeDBSubnetGroupNotFoundFault "DBSubnetGroupNotFoundFault" -// DBSubnetGroupName doesn't refer to an existing DB subnet group. +// DBSubnetGroupName doesn't refer to an existing subnet group. // // * ErrCodeInvalidSubnet "InvalidSubnet" // The requested subnet is not valid, or multiple subnets were requested that @@ -3977,11 +3972,11 @@ func (c *DocDB) RestoreDBClusterToPointInTimeRequest(input *RestoreDBClusterToPo // RestoreDBClusterToPointInTime API operation for Amazon DocumentDB with MongoDB compatibility. // -// Restores a DB cluster to an arbitrary point in time. Users can restore to -// any point in time before LatestRestorableTime for up to BackupRetentionPeriod -// days. The target DB cluster is created from the source DB cluster with the -// same configuration as the original DB cluster, except that the new DB cluster -// is created with the default DB security group. +// Restores a cluster to an arbitrary point in time. Users can restore to any +// point in time before LatestRestorableTime for up to BackupRetentionPeriod +// days. The target cluster is created from the source cluster with the same +// configuration as the original cluster, except that the new cluster is created +// with the default security group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3992,23 +3987,23 @@ func (c *DocDB) RestoreDBClusterToPointInTimeRequest(input *RestoreDBClusterToPo // // Returned Error Codes: // * ErrCodeDBClusterAlreadyExistsFault "DBClusterAlreadyExistsFault" -// You already have a DB cluster with the given identifier. +// You already have a cluster with the given identifier. // // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // * ErrCodeDBClusterQuotaExceededFault "DBClusterQuotaExceededFault" -// The DB cluster can't be created because you have reached the maximum allowed -// quota of DB clusters. +// The cluster can't be created because you have reached the maximum allowed +// quota of clusters. // // * ErrCodeDBClusterSnapshotNotFoundFault "DBClusterSnapshotNotFoundFault" -// DBClusterSnapshotIdentifier doesn't refer to an existing DB cluster snapshot. +// DBClusterSnapshotIdentifier doesn't refer to an existing cluster snapshot. // // * ErrCodeDBSubnetGroupNotFoundFault "DBSubnetGroupNotFoundFault" -// DBSubnetGroupName doesn't refer to an existing DB subnet group. +// DBSubnetGroupName doesn't refer to an existing subnet group. // // * ErrCodeInsufficientDBClusterCapacityFault "InsufficientDBClusterCapacityFault" -// The DB cluster doesn't have enough capacity for the current operation. +// The cluster doesn't have enough capacity for the current operation. // // * ErrCodeInsufficientStorageClusterCapacityFault "InsufficientStorageClusterCapacity" // There is not enough storage available for the current action. You might be @@ -4016,13 +4011,13 @@ func (c *DocDB) RestoreDBClusterToPointInTimeRequest(input *RestoreDBClusterToPo // Availability Zones that have more storage available. // // * ErrCodeInvalidDBClusterSnapshotStateFault "InvalidDBClusterSnapshotStateFault" -// The provided value isn't a valid DB cluster snapshot state. +// The provided value isn't a valid cluster snapshot state. // // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" -// The DB cluster isn't in a valid state. +// The cluster isn't in a valid state. // // * ErrCodeInvalidDBSnapshotStateFault "InvalidDBSnapshotState" -// The state of the DB snapshot doesn't allow deletion. +// The state of the snapshot doesn't allow deletion. // // * ErrCodeInvalidRestoreFault "InvalidRestoreFault" // You cannot restore from a virtual private cloud (VPC) backup to a non-VPC @@ -4033,7 +4028,7 @@ func (c *DocDB) RestoreDBClusterToPointInTimeRequest(input *RestoreDBClusterToPo // are not all in a common virtual private cloud (VPC). // // * ErrCodeInvalidVPCNetworkStateFault "InvalidVPCNetworkStateFault" -// The DB subnet group doesn't cover all Availability Zones after it is created +// The subnet group doesn't cover all Availability Zones after it is created // because of changes that were made. // // * ErrCodeKMSKeyNotAccessibleFault "KMSKeyNotAccessibleFault" @@ -4041,7 +4036,7 @@ func (c *DocDB) RestoreDBClusterToPointInTimeRequest(input *RestoreDBClusterToPo // // * ErrCodeStorageQuotaExceededFault "StorageQuotaExceeded" // The request would cause you to exceed the allowed amount of storage available -// across all DB instances. +// across all instances. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/RestoreDBClusterToPointInTime func (c *DocDB) RestoreDBClusterToPointInTime(input *RestoreDBClusterToPointInTimeInput) (*RestoreDBClusterToPointInTimeOutput, error) { @@ -4122,13 +4117,13 @@ func (c *DocDB) StartDBClusterRequest(input *StartDBClusterInput) (req *request. // // Returned Error Codes: // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" -// The DB cluster isn't in a valid state. +// The cluster isn't in a valid state. // // * ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" -// The specified DB instance isn't in the available state. +// The specified instance isn't in the available state. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/StartDBCluster func (c *DocDB) StartDBCluster(input *StartDBClusterInput) (*StartDBClusterOutput, error) { @@ -4209,13 +4204,13 @@ func (c *DocDB) StopDBClusterRequest(input *StopDBClusterInput) (req *request.Re // // Returned Error Codes: // * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" -// DBClusterIdentifier doesn't refer to an existing DB cluster. +// DBClusterIdentifier doesn't refer to an existing cluster. // // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" -// The DB cluster isn't in a valid state. +// The cluster isn't in a valid state. // // * ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" -// The specified DB instance isn't in the available state. +// The specified instance isn't in the available state. // // See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/StopDBCluster func (c *DocDB) StopDBCluster(input *StopDBClusterInput) (*StopDBClusterOutput, error) { @@ -4514,11 +4509,11 @@ func (s *Certificate) SetValidTill(v time.Time) *Certificate { } // The configuration setting for the log types to be enabled for export to Amazon -// CloudWatch Logs for a specific DB instance or DB cluster. +// CloudWatch Logs for a specific instance or cluster. // // The EnableLogTypes and DisableLogTypes arrays determine which logs are exported // (or not exported) to CloudWatch Logs. The values within these arrays depend -// on the DB engine that is being used. +// on the engine that is being used. type CloudwatchLogsExportConfiguration struct { _ struct{} `type:"structure"` @@ -4555,19 +4550,19 @@ func (s *CloudwatchLogsExportConfiguration) SetEnableLogTypes(v []*string) *Clou type CopyDBClusterParameterGroupInput struct { _ struct{} `type:"structure"` - // The identifier or Amazon Resource Name (ARN) for the source DB cluster parameter + // The identifier or Amazon Resource Name (ARN) for the source cluster parameter // group. // // Constraints: // - // * Must specify a valid DB cluster parameter group. + // * Must specify a valid cluster parameter group. // - // * If the source DB cluster parameter group is in the same AWS Region as - // the copy, specify a valid DB parameter group identifier; for example, - // my-db-cluster-param-group, or a valid ARN. + // * If the source cluster parameter group is in the same AWS Region as the + // copy, specify a valid parameter group identifier; for example, my-db-cluster-param-group, + // or a valid ARN. // - // * If the source DB parameter group is in a different AWS Region than the - // copy, specify a valid DB cluster parameter group ARN; for example, arn:aws:rds:us-east-1:123456789012:cluster-pg:custom-cluster-group1. + // * If the source parameter group is in a different AWS Region than the + // copy, specify a valid cluster parameter group ARN; for example, arn:aws:rds:us-east-1:123456789012:cluster-pg:custom-cluster-group1. // // SourceDBClusterParameterGroupIdentifier is a required field SourceDBClusterParameterGroupIdentifier *string `type:"string" required:"true"` @@ -4575,12 +4570,12 @@ type CopyDBClusterParameterGroupInput struct { // The tags that are to be assigned to the parameter group. Tags []*Tag `locationNameList:"Tag" type:"list"` - // A description for the copied DB cluster parameter group. + // A description for the copied cluster parameter group. // // TargetDBClusterParameterGroupDescription is a required field TargetDBClusterParameterGroupDescription *string `type:"string" required:"true"` - // The identifier for the copied DB cluster parameter group. + // The identifier for the copied cluster parameter group. // // Constraints: // @@ -4654,7 +4649,7 @@ func (s *CopyDBClusterParameterGroupInput) SetTargetDBClusterParameterGroupIdent type CopyDBClusterParameterGroupOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster parameter group. + // Detailed information about a cluster parameter group. DBClusterParameterGroup *DBClusterParameterGroup `type:"structure"` } @@ -4678,37 +4673,36 @@ func (s *CopyDBClusterParameterGroupOutput) SetDBClusterParameterGroup(v *DBClus type CopyDBClusterSnapshotInput struct { _ struct{} `type:"structure"` - // Set to true to copy all tags from the source DB cluster snapshot to the target - // DB cluster snapshot, and otherwise false. The default is false. + // Set to true to copy all tags from the source cluster snapshot to the target + // cluster snapshot, and otherwise false. The default is false. CopyTags *bool `type:"boolean"` - // The AWS KMS key ID for an encrypted DB cluster snapshot. The AWS KMS key - // ID is the Amazon Resource Name (ARN), AWS KMS key identifier, or the AWS - // KMS key alias for the AWS KMS encryption key. + // The AWS KMS key ID for an encrypted cluster snapshot. The AWS KMS key ID + // is the Amazon Resource Name (ARN), AWS KMS key identifier, or the AWS KMS + // key alias for the AWS KMS encryption key. // - // If you copy an encrypted DB cluster snapshot from your AWS account, you can + // If you copy an encrypted cluster snapshot from your AWS account, you can // specify a value for KmsKeyId to encrypt the copy with a new AWS KMS encryption - // key. If you don't specify a value for KmsKeyId, then the copy of the DB cluster - // snapshot is encrypted with the same AWS KMS key as the source DB cluster - // snapshot. + // key. If you don't specify a value for KmsKeyId, then the copy of the cluster + // snapshot is encrypted with the same AWS KMS key as the source cluster snapshot. // - // If you copy an encrypted DB cluster snapshot that is shared from another - // AWS account, then you must specify a value for KmsKeyId. + // If you copy an encrypted cluster snapshot that is shared from another AWS + // account, then you must specify a value for KmsKeyId. // - // To copy an encrypted DB cluster snapshot to another AWS Region, set KmsKeyId - // to the AWS KMS key ID that you want to use to encrypt the copy of the DB - // cluster snapshot in the destination Region. AWS KMS encryption keys are specific + // To copy an encrypted cluster snapshot to another AWS Region, set KmsKeyId + // to the AWS KMS key ID that you want to use to encrypt the copy of the cluster + // snapshot in the destination Region. AWS KMS encryption keys are specific // to the AWS Region that they are created in, and you can't use encryption // keys from one Region in another Region. // - // If you copy an unencrypted DB cluster snapshot and specify a value for the - // KmsKeyId parameter, an error is returned. + // If you copy an unencrypted cluster snapshot and specify a value for the KmsKeyId + // parameter, an error is returned. KmsKeyId *string `type:"string"` // The URL that contains a Signature Version 4 signed request for the CopyDBClusterSnapshot - // API action in the AWS Region that contains the source DB cluster snapshot - // to copy. You must use the PreSignedUrl parameter when copying an encrypted - // DB cluster snapshot from another AWS Region. + // API action in the AWS Region that contains the source cluster snapshot to + // copy. You must use the PreSignedUrl parameter when copying an encrypted cluster + // snapshot from another AWS Region. // // The presigned URL must be a valid request for the CopyDBSClusterSnapshot // API action that can be executed in the source AWS Region that contains the @@ -4716,26 +4710,26 @@ type CopyDBClusterSnapshotInput struct { // contain the following parameter values: // // * KmsKeyId - The AWS KMS key identifier for the key to use to encrypt - // the copy of the DB cluster snapshot in the destination AWS Region. This - // is the same identifier for both the CopyDBClusterSnapshot action that - // is called in the destination AWS Region, and the action contained in the + // the copy of the cluster snapshot in the destination AWS Region. This is + // the same identifier for both the CopyDBClusterSnapshot action that is + // called in the destination AWS Region, and the action contained in the // presigned URL. // // * DestinationRegion - The name of the AWS Region that the DB cluster snapshot // will be created in. // - // * SourceDBClusterSnapshotIdentifier - The DB cluster snapshot identifier - // for the encrypted DB cluster snapshot to be copied. This identifier must + // * SourceDBClusterSnapshotIdentifier - The cluster snapshot identifier + // for the encrypted cluster snapshot to be copied. This identifier must // be in the Amazon Resource Name (ARN) format for the source AWS Region. - // For example, if you are copying an encrypted DB cluster snapshot from - // the us-west-2 AWS Region, then your SourceDBClusterSnapshotIdentifier - // looks like the following example: arn:aws:rds:us-west-2:123456789012:cluster-snapshot:my-cluster-snapshot-20161115. + // For example, if you are copying an encrypted cluster snapshot from the + // us-west-2 AWS Region, then your SourceDBClusterSnapshotIdentifier looks + // like the following example: arn:aws:rds:us-west-2:123456789012:cluster-snapshot:my-cluster-snapshot-20161115. PreSignedUrl *string `type:"string"` - // The identifier of the DB cluster snapshot to copy. This parameter is not - // case sensitive. + // The identifier of the cluster snapshot to copy. This parameter is not case + // sensitive. // - // You can't copy an encrypted, shared DB cluster snapshot from one AWS Region + // You can't copy an encrypted, shared cluster snapshot from one AWS Region // to another. // // Constraints: @@ -4743,21 +4737,21 @@ type CopyDBClusterSnapshotInput struct { // * Must specify a valid system snapshot in the "available" state. // // * If the source snapshot is in the same AWS Region as the copy, specify - // a valid DB snapshot identifier. + // a valid snapshot identifier. // // * If the source snapshot is in a different AWS Region than the copy, specify - // a valid DB cluster snapshot ARN. + // a valid cluster snapshot ARN. // // Example: my-cluster-snapshot1 // // SourceDBClusterSnapshotIdentifier is a required field SourceDBClusterSnapshotIdentifier *string `type:"string" required:"true"` - // The tags to be assigned to the DB cluster snapshot. + // The tags to be assigned to the cluster snapshot. Tags []*Tag `locationNameList:"Tag" type:"list"` - // The identifier of the new DB cluster snapshot to create from the source DB - // cluster snapshot. This parameter is not case sensitive. + // The identifier of the new cluster snapshot to create from the source cluster + // snapshot. This parameter is not case sensitive. // // Constraints: // @@ -4838,7 +4832,7 @@ func (s *CopyDBClusterSnapshotInput) SetTargetDBClusterSnapshotIdentifier(v stri type CopyDBClusterSnapshotOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster snapshot. + // Detailed information about a cluster snapshot. DBClusterSnapshot *DBClusterSnapshot `type:"structure"` } @@ -4862,8 +4856,8 @@ func (s *CopyDBClusterSnapshotOutput) SetDBClusterSnapshot(v *DBClusterSnapshot) type CreateDBClusterInput struct { _ struct{} `type:"structure"` - // A list of Amazon EC2 Availability Zones that instances in the DB cluster - // can be created in. + // A list of Amazon EC2 Availability Zones that instances in the cluster can + // be created in. AvailabilityZones []*string `locationNameList:"AvailabilityZone" type:"list"` // The number of days for which automated backups are retained. You must specify @@ -4876,7 +4870,7 @@ type CreateDBClusterInput struct { // * Must be a value from 1 to 35. BackupRetentionPeriod *int64 `type:"integer"` - // The DB cluster identifier. This parameter is stored as a lowercase string. + // The cluster identifier. This parameter is stored as a lowercase string. // // Constraints: // @@ -4891,10 +4885,10 @@ type CreateDBClusterInput struct { // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` - // The name of the DB cluster parameter group to associate with this DB cluster. + // The name of the cluster parameter group to associate with this cluster. DBClusterParameterGroupName *string `type:"string"` - // A DB subnet group to associate with this DB cluster. + // A subnet group to associate with this cluster. // // Constraints: Must match the name of an existing DBSubnetGroup. Must not be // default. @@ -4912,7 +4906,7 @@ type CreateDBClusterInput struct { // Logs. EnableCloudwatchLogsExports []*string `type:"list"` - // The name of the database engine to be used for this DB cluster. + // The name of the database engine to be used for this cluster. // // Valid values: docdb // @@ -4922,11 +4916,11 @@ type CreateDBClusterInput struct { // The version number of the database engine to use. EngineVersion *string `type:"string"` - // The AWS KMS key identifier for an encrypted DB cluster. + // The AWS KMS key identifier for an encrypted cluster. // // The AWS KMS key identifier is the Amazon Resource Name (ARN) for the AWS - // KMS encryption key. If you are creating a DB cluster using the same AWS account - // that owns the AWS KMS encryption key that is used to encrypt the new DB cluster, + // KMS encryption key. If you are creating a cluster using the same AWS account + // that owns the AWS KMS encryption key that is used to encrypt the new cluster, // you can use the AWS KMS key alias instead of the ARN for the AWS KMS encryption // key. // @@ -4942,9 +4936,9 @@ type CreateDBClusterInput struct { // AWS KMS creates the default encryption key for your AWS account. Your AWS // account has a different default encryption key for each AWS Region. // - // If you create a replica of an encrypted DB cluster in another AWS Region, - // you must set KmsKeyId to a KMS key ID that is valid in the destination AWS - // Region. This key is used to encrypt the replica in that AWS Region. + // If you create a replica of an encrypted cluster in another AWS Region, you + // must set KmsKeyId to a KMS key ID that is valid in the destination AWS Region. + // This key is used to encrypt the replica in that AWS Region. KmsKeyId *string `type:"string"` // The password for the master database user. This password can contain any @@ -4956,7 +4950,7 @@ type CreateDBClusterInput struct { // MasterUserPassword is a required field MasterUserPassword *string `type:"string" required:"true"` - // The name of the master user for the DB cluster. + // The name of the master user for the cluster. // // Constraints: // @@ -4969,7 +4963,7 @@ type CreateDBClusterInput struct { // MasterUsername is a required field MasterUsername *string `type:"string" required:"true"` - // The port number on which the instances in the DB cluster accept connections. + // The port number on which the instances in the cluster accept connections. Port *int64 `type:"integer"` // The daily time range during which automated backups are created if automated @@ -5002,13 +4996,13 @@ type CreateDBClusterInput struct { // Constraints: Minimum 30-minute window. PreferredMaintenanceWindow *string `type:"string"` - // Specifies whether the DB cluster is encrypted. + // Specifies whether the cluster is encrypted. StorageEncrypted *bool `type:"boolean"` - // The tags to be assigned to the DB cluster. + // The tags to be assigned to the cluster. Tags []*Tag `locationNameList:"Tag" type:"list"` - // A list of EC2 VPC security groups to associate with this DB cluster. + // A list of EC2 VPC security groups to associate with this cluster. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } @@ -5155,7 +5149,7 @@ func (s *CreateDBClusterInput) SetVpcSecurityGroupIds(v []*string) *CreateDBClus type CreateDBClusterOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster. + // Detailed information about a cluster. DBCluster *DBCluster `type:"structure"` } @@ -5179,7 +5173,7 @@ func (s *CreateDBClusterOutput) SetDBCluster(v *DBCluster) *CreateDBClusterOutpu type CreateDBClusterParameterGroupInput struct { _ struct{} `type:"structure"` - // The name of the DB cluster parameter group. + // The name of the cluster parameter group. // // Constraints: // @@ -5190,17 +5184,17 @@ type CreateDBClusterParameterGroupInput struct { // DBClusterParameterGroupName is a required field DBClusterParameterGroupName *string `type:"string" required:"true"` - // The DB cluster parameter group family name. + // The cluster parameter group family name. // // DBParameterGroupFamily is a required field DBParameterGroupFamily *string `type:"string" required:"true"` - // The description for the DB cluster parameter group. + // The description for the cluster parameter group. // // Description is a required field Description *string `type:"string" required:"true"` - // The tags to be assigned to the DB cluster parameter group. + // The tags to be assigned to the cluster parameter group. Tags []*Tag `locationNameList:"Tag" type:"list"` } @@ -5260,7 +5254,7 @@ func (s *CreateDBClusterParameterGroupInput) SetTags(v []*Tag) *CreateDBClusterP type CreateDBClusterParameterGroupOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster parameter group. + // Detailed information about a cluster parameter group. DBClusterParameterGroup *DBClusterParameterGroup `type:"structure"` } @@ -5284,8 +5278,8 @@ func (s *CreateDBClusterParameterGroupOutput) SetDBClusterParameterGroup(v *DBCl type CreateDBClusterSnapshotInput struct { _ struct{} `type:"structure"` - // The identifier of the DB cluster to create a snapshot for. This parameter - // is not case sensitive. + // The identifier of the cluster to create a snapshot for. This parameter is + // not case sensitive. // // Constraints: // @@ -5296,8 +5290,8 @@ type CreateDBClusterSnapshotInput struct { // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` - // The identifier of the DB cluster snapshot. This parameter is stored as a - // lowercase string. + // The identifier of the cluster snapshot. This parameter is stored as a lowercase + // string. // // Constraints: // @@ -5312,7 +5306,7 @@ type CreateDBClusterSnapshotInput struct { // DBClusterSnapshotIdentifier is a required field DBClusterSnapshotIdentifier *string `type:"string" required:"true"` - // The tags to be assigned to the DB cluster snapshot. + // The tags to be assigned to the cluster snapshot. Tags []*Tag `locationNameList:"Tag" type:"list"` } @@ -5363,7 +5357,7 @@ func (s *CreateDBClusterSnapshotInput) SetTags(v []*Tag) *CreateDBClusterSnapsho type CreateDBClusterSnapshotOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster snapshot. + // Detailed information about a cluster snapshot. DBClusterSnapshot *DBClusterSnapshot `type:"structure"` } @@ -5387,13 +5381,13 @@ func (s *CreateDBClusterSnapshotOutput) SetDBClusterSnapshot(v *DBClusterSnapsho type CreateDBInstanceInput struct { _ struct{} `type:"structure"` - // Indicates that minor engine upgrades are applied automatically to the DB - // instance during the maintenance window. + // Indicates that minor engine upgrades are applied automatically to the instance + // during the maintenance window. // // Default: true AutoMinorVersionUpgrade *bool `type:"boolean"` - // The Amazon EC2 Availability Zone that the DB instance is created in. + // The Amazon EC2 Availability Zone that the instance is created in. // // Default: A random, system-chosen Availability Zone in the endpoint's AWS // Region. @@ -5405,17 +5399,17 @@ type CreateDBInstanceInput struct { // same AWS Region as the current endpoint. AvailabilityZone *string `type:"string"` - // The identifier of the DB cluster that the instance will belong to. + // The identifier of the cluster that the instance will belong to. // // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` - // The compute and memory capacity of the DB instance; for example, db.r5.large. + // The compute and memory capacity of the instance; for example, db.r5.large. // // DBInstanceClass is a required field DBInstanceClass *string `type:"string" required:"true"` - // The DB instance identifier. This parameter is stored as a lowercase string. + // The instance identifier. This parameter is stored as a lowercase string. // // Constraints: // @@ -5459,8 +5453,8 @@ type CreateDBInstanceInput struct { // Valid values: 0-15 PromotionTier *int64 `type:"integer"` - // The tags to be assigned to the DB instance. You can assign up to 10 tags - // to an instance. + // The tags to be assigned to the instance. You can assign up to 10 tags to + // an instance. Tags []*Tag `locationNameList:"Tag" type:"list"` } @@ -5553,7 +5547,7 @@ func (s *CreateDBInstanceInput) SetTags(v []*Tag) *CreateDBInstanceInput { type CreateDBInstanceOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB instance. + // Detailed information about an instance. DBInstance *DBInstance `type:"structure"` } @@ -5577,12 +5571,12 @@ func (s *CreateDBInstanceOutput) SetDBInstance(v *DBInstance) *CreateDBInstanceO type CreateDBSubnetGroupInput struct { _ struct{} `type:"structure"` - // The description for the DB subnet group. + // The description for the subnet group. // // DBSubnetGroupDescription is a required field DBSubnetGroupDescription *string `type:"string" required:"true"` - // The name for the DB subnet group. This value is stored as a lowercase string. + // The name for the subnet group. This value is stored as a lowercase string. // // Constraints: Must contain no more than 255 letters, numbers, periods, underscores, // spaces, or hyphens. Must not be default. @@ -5592,12 +5586,12 @@ type CreateDBSubnetGroupInput struct { // DBSubnetGroupName is a required field DBSubnetGroupName *string `type:"string" required:"true"` - // The Amazon EC2 subnet IDs for the DB subnet group. + // The Amazon EC2 subnet IDs for the subnet group. // // SubnetIds is a required field SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"` - // The tags to be assigned to the DB subnet group. + // The tags to be assigned to the subnet group. Tags []*Tag `locationNameList:"Tag" type:"list"` } @@ -5657,7 +5651,7 @@ func (s *CreateDBSubnetGroupInput) SetTags(v []*Tag) *CreateDBSubnetGroupInput { type CreateDBSubnetGroupOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB subnet group. + // Detailed information about a subnet group. DBSubnetGroup *DBSubnetGroup `type:"structure"` } @@ -5677,47 +5671,46 @@ func (s *CreateDBSubnetGroupOutput) SetDBSubnetGroup(v *DBSubnetGroup) *CreateDB return s } -// Detailed information about a DB cluster. +// Detailed information about a cluster. type DBCluster struct { _ struct{} `type:"structure"` // Provides a list of the AWS Identity and Access Management (IAM) roles that - // are associated with the DB cluster. IAM roles that are associated with a - // DB cluster grant permission for the DB cluster to access other AWS services - // on your behalf. + // are associated with the cluster. IAM roles that are associated with a cluster + // grant permission for the cluster to access other AWS services on your behalf. AssociatedRoles []*DBClusterRole `locationNameList:"DBClusterRole" type:"list"` // Provides the list of Amazon EC2 Availability Zones that instances in the - // DB cluster can be created in. + // cluster can be created in. AvailabilityZones []*string `locationNameList:"AvailabilityZone" type:"list"` - // Specifies the number of days for which automatic DB snapshots are retained. + // Specifies the number of days for which automatic snapshots are retained. BackupRetentionPeriod *int64 `type:"integer"` - // Specifies the time when the DB cluster was created, in Universal Coordinated + // Specifies the time when the cluster was created, in Universal Coordinated // Time (UTC). ClusterCreateTime *time.Time `type:"timestamp"` - // The Amazon Resource Name (ARN) for the DB cluster. + // The Amazon Resource Name (ARN) for the cluster. DBClusterArn *string `type:"string"` - // Contains a user-supplied DB cluster identifier. This identifier is the unique - // key that identifies a DB cluster. + // Contains a user-supplied cluster identifier. This identifier is the unique + // key that identifies a cluster. DBClusterIdentifier *string `type:"string"` - // Provides the list of instances that make up the DB cluster. + // Provides the list of instances that make up the cluster. DBClusterMembers []*DBClusterMember `locationNameList:"DBClusterMember" type:"list"` - // Specifies the name of the DB cluster parameter group for the DB cluster. + // Specifies the name of the cluster parameter group for the cluster. DBClusterParameterGroup *string `type:"string"` - // Specifies information on the subnet group that is associated with the DB - // cluster, including the name, description, and subnets in the subnet group. + // Specifies information on the subnet group that is associated with the cluster, + // including the name, description, and subnets in the subnet group. DBSubnetGroup *string `type:"string"` - // The AWS Region-unique, immutable identifier for the DB cluster. This identifier - // is found in AWS CloudTrail log entries whenever the AWS KMS key for the DB - // cluster is accessed. + // The AWS Region-unique, immutable identifier for the cluster. This identifier + // is found in AWS CloudTrail log entries whenever the AWS KMS key for the cluster + // is accessed. DbClusterResourceId *string `type:"string"` // Specifies whether this cluster can be deleted. If DeletionProtection is enabled, @@ -5730,14 +5723,14 @@ type DBCluster struct { // restore. EarliestRestorableTime *time.Time `type:"timestamp"` - // A list of log types that this DB cluster is configured to export to Amazon - // CloudWatch Logs. + // A list of log types that this cluster is configured to export to Amazon CloudWatch + // Logs. EnabledCloudwatchLogsExports []*string `type:"list"` - // Specifies the connection endpoint for the primary instance of the DB cluster. + // Specifies the connection endpoint for the primary instance of the cluster. Endpoint *string `type:"string"` - // Provides the name of the database engine to be used for this DB cluster. + // Provides the name of the database engine to be used for this cluster. Engine *string `type:"string"` // Indicates the database engine version. @@ -5747,17 +5740,17 @@ type DBCluster struct { HostedZoneId *string `type:"string"` // If StorageEncrypted is true, the AWS KMS key identifier for the encrypted - // DB cluster. + // cluster. KmsKeyId *string `type:"string"` // Specifies the latest time to which a database can be restored with point-in-time // restore. LatestRestorableTime *time.Time `type:"timestamp"` - // Contains the master user name for the DB cluster. + // Contains the master user name for the cluster. MasterUsername *string `type:"string"` - // Specifies whether the DB cluster has instances in multiple Availability Zones. + // Specifies whether the cluster has instances in multiple Availability Zones. MultiAZ *bool `type:"boolean"` // Specifies the progress of the operation as a percentage. @@ -5774,13 +5767,12 @@ type DBCluster struct { // in Universal Coordinated Time (UTC). PreferredMaintenanceWindow *string `type:"string"` - // The reader endpoint for the DB cluster. The reader endpoint for a DB cluster - // load balances connections across the Amazon DocumentDB replicas that are - // available in a DB cluster. As clients request new connections to the reader - // endpoint, Amazon DocumentDB distributes the connection requests among the - // Amazon DocumentDB replicas in the DB cluster. This functionality can help - // balance your read workload across multiple Amazon DocumentDB replicas in - // your DB cluster. + // The reader endpoint for the cluster. The reader endpoint for a cluster load + // balances connections across the Amazon DocumentDB replicas that are available + // in a cluster. As clients request new connections to the reader endpoint, + // Amazon DocumentDB distributes the connection requests among the Amazon DocumentDB + // replicas in the cluster. This functionality can help balance your read workload + // across multiple Amazon DocumentDB replicas in your cluster. // // If a failover occurs, and the Amazon DocumentDB replica that you are connected // to is promoted to be the primary instance, your connection is dropped. To @@ -5788,14 +5780,14 @@ type DBCluster struct { // the cluster, you can then reconnect to the reader endpoint. ReaderEndpoint *string `type:"string"` - // Specifies the current state of this DB cluster. + // Specifies the current state of this cluster. Status *string `type:"string"` - // Specifies whether the DB cluster is encrypted. + // Specifies whether the cluster is encrypted. StorageEncrypted *bool `type:"boolean"` - // Provides a list of virtual private cloud (VPC) security groups that the DB - // cluster belongs to. + // Provides a list of virtual private cloud (VPC) security groups that the cluster + // belongs to. VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroupMembership" type:"list"` } @@ -5983,19 +5975,19 @@ func (s *DBCluster) SetVpcSecurityGroups(v []*VpcSecurityGroupMembership) *DBClu return s } -// Contains information about an instance that is part of a DB cluster. +// Contains information about an instance that is part of a cluster. type DBClusterMember struct { _ struct{} `type:"structure"` - // Specifies the status of the DB cluster parameter group for this member of - // the DB cluster. + // Specifies the status of the cluster parameter group for this member of the + // DB cluster. DBClusterParameterGroupStatus *string `type:"string"` - // Specifies the instance identifier for this member of the DB cluster. + // Specifies the instance identifier for this member of the cluster. DBInstanceIdentifier *string `type:"string"` // A value that is true if the cluster member is the primary instance for the - // DB cluster and false otherwise. + // cluster and false otherwise. IsClusterWriter *bool `type:"boolean"` // A value that specifies the order in which an Amazon DocumentDB replica is @@ -6038,22 +6030,21 @@ func (s *DBClusterMember) SetPromotionTier(v int64) *DBClusterMember { return s } -// Detailed information about a DB cluster parameter group. +// Detailed information about a cluster parameter group. type DBClusterParameterGroup struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) for the DB cluster parameter group. + // The Amazon Resource Name (ARN) for the cluster parameter group. DBClusterParameterGroupArn *string `type:"string"` - // Provides the name of the DB cluster parameter group. + // Provides the name of the cluster parameter group. DBClusterParameterGroupName *string `type:"string"` - // Provides the name of the DB parameter group family that this DB cluster parameter + // Provides the name of the parameter group family that this cluster parameter // group is compatible with. DBParameterGroupFamily *string `type:"string"` - // Provides the customer-specified description for this DB cluster parameter - // group. + // Provides the customer-specified description for this cluster parameter group. Description *string `type:"string"` } @@ -6092,7 +6083,7 @@ func (s *DBClusterParameterGroup) SetDescription(v string) *DBClusterParameterGr } // Describes an AWS Identity and Access Management (IAM) role that is associated -// with a DB cluster. +// with a cluster. type DBClusterRole struct { _ struct{} `type:"structure"` @@ -6100,17 +6091,16 @@ type DBClusterRole struct { // DB cluster. RoleArn *string `type:"string"` - // Describes the state of association between the IAM role and the DB cluster. + // Describes the state of association between the IAM role and the cluster. // The Status property returns one of the following values: // - // * ACTIVE - The IAM role ARN is associated with the DB cluster and can - // be used to access other AWS services on your behalf. + // * ACTIVE - The IAM role ARN is associated with the cluster and can be + // used to access other AWS services on your behalf. // // * PENDING - The IAM role ARN is being associated with the DB cluster. // - // * INVALID - The IAM role ARN is associated with the DB cluster, but the - // DB cluster cannot assume the IAM role to access other AWS services on - // your behalf. + // * INVALID - The IAM role ARN is associated with the cluster, but the cluster + // cannot assume the IAM role to access other AWS services on your behalf. Status *string `type:"string"` } @@ -6136,66 +6126,65 @@ func (s *DBClusterRole) SetStatus(v string) *DBClusterRole { return s } -// Detailed information about a DB cluster snapshot. +// Detailed information about a cluster snapshot. type DBClusterSnapshot struct { _ struct{} `type:"structure"` // Provides the list of Amazon EC2 Availability Zones that instances in the - // DB cluster snapshot can be restored in. + // cluster snapshot can be restored in. AvailabilityZones []*string `locationNameList:"AvailabilityZone" type:"list"` - // Specifies the time when the DB cluster was created, in Universal Coordinated + // Specifies the time when the cluster was created, in Universal Coordinated // Time (UTC). ClusterCreateTime *time.Time `type:"timestamp"` - // Specifies the DB cluster identifier of the DB cluster that this DB cluster - // snapshot was created from. + // Specifies the cluster identifier of the cluster that this cluster snapshot + // was created from. DBClusterIdentifier *string `type:"string"` - // The Amazon Resource Name (ARN) for the DB cluster snapshot. + // The Amazon Resource Name (ARN) for the cluster snapshot. DBClusterSnapshotArn *string `type:"string"` - // Specifies the identifier for the DB cluster snapshot. + // Specifies the identifier for the cluster snapshot. DBClusterSnapshotIdentifier *string `type:"string"` // Specifies the name of the database engine. Engine *string `type:"string"` - // Provides the version of the database engine for this DB cluster snapshot. + // Provides the version of the database engine for this cluster snapshot. EngineVersion *string `type:"string"` // If StorageEncrypted is true, the AWS KMS key identifier for the encrypted - // DB cluster snapshot. + // cluster snapshot. KmsKeyId *string `type:"string"` - // Provides the master user name for the DB cluster snapshot. + // Provides the master user name for the cluster snapshot. MasterUsername *string `type:"string"` // Specifies the percentage of the estimated data that has been transferred. PercentProgress *int64 `type:"integer"` - // Specifies the port that the DB cluster was listening on at the time of the - // snapshot. + // Specifies the port that the cluster was listening on at the time of the snapshot. Port *int64 `type:"integer"` // Provides the time when the snapshot was taken, in UTC. SnapshotCreateTime *time.Time `type:"timestamp"` - // Provides the type of the DB cluster snapshot. + // Provides the type of the cluster snapshot. SnapshotType *string `type:"string"` - // If the DB cluster snapshot was copied from a source DB cluster snapshot, - // the ARN for the source DB cluster snapshot; otherwise, a null value. + // If the cluster snapshot was copied from a source cluster snapshot, the ARN + // for the source cluster snapshot; otherwise, a null value. SourceDBClusterSnapshotArn *string `type:"string"` - // Specifies the status of this DB cluster snapshot. + // Specifies the status of this cluster snapshot. Status *string `type:"string"` - // Specifies whether the DB cluster snapshot is encrypted. + // Specifies whether the cluster snapshot is encrypted. StorageEncrypted *bool `type:"boolean"` - // Provides the virtual private cloud (VPC) ID that is associated with the DB - // cluster snapshot. + // Provides the virtual private cloud (VPC) ID that is associated with the cluster + // snapshot. VpcId *string `type:"string"` } @@ -6311,26 +6300,25 @@ func (s *DBClusterSnapshot) SetVpcId(v string) *DBClusterSnapshot { return s } -// Contains the name and values of a manual DB cluster snapshot attribute. +// Contains the name and values of a manual cluster snapshot attribute. // -// Manual DB cluster snapshot attributes are used to authorize other AWS accounts -// to restore a manual DB cluster snapshot. +// Manual cluster snapshot attributes are used to authorize other AWS accounts +// to restore a manual cluster snapshot. type DBClusterSnapshotAttribute struct { _ struct{} `type:"structure"` - // The name of the manual DB cluster snapshot attribute. + // The name of the manual cluster snapshot attribute. // // The attribute named restore refers to the list of AWS accounts that have - // permission to copy or restore the manual DB cluster snapshot. + // permission to copy or restore the manual cluster snapshot. AttributeName *string `type:"string"` - // The values for the manual DB cluster snapshot attribute. + // The values for the manual cluster snapshot attribute. // // If the AttributeName field is set to restore, then this element returns a // list of IDs of the AWS accounts that are authorized to copy or restore the - // manual DB cluster snapshot. If a value of all is in the list, then the manual - // DB cluster snapshot is public and available for any AWS account to copy or - // restore. + // manual cluster snapshot. If a value of all is in the list, then the manual + // cluster snapshot is public and available for any AWS account to copy or restore. AttributeValues []*string `locationNameList:"AttributeValue" type:"list"` } @@ -6356,15 +6344,15 @@ func (s *DBClusterSnapshotAttribute) SetAttributeValues(v []*string) *DBClusterS return s } -// Detailed information about the attributes that are associated with a DB cluster +// Detailed information about the attributes that are associated with a cluster // snapshot. type DBClusterSnapshotAttributesResult struct { _ struct{} `type:"structure"` - // The list of attributes and values for the DB cluster snapshot. + // The list of attributes and values for the cluster snapshot. DBClusterSnapshotAttributes []*DBClusterSnapshotAttribute `locationNameList:"DBClusterSnapshotAttribute" type:"list"` - // The identifier of the DB cluster snapshot that the attributes apply to. + // The identifier of the cluster snapshot that the attributes apply to. DBClusterSnapshotIdentifier *string `type:"string"` } @@ -6390,7 +6378,7 @@ func (s *DBClusterSnapshotAttributesResult) SetDBClusterSnapshotIdentifier(v str return s } -// Detailed information about a DB engine version. +// Detailed information about an engine version. type DBEngineVersion struct { _ struct{} `type:"structure"` @@ -6400,7 +6388,7 @@ type DBEngineVersion struct { // The description of the database engine version. DBEngineVersionDescription *string `type:"string"` - // The name of the DB parameter group family for the database engine. + // The name of the parameter group family for the database engine. DBParameterGroupFamily *string `type:"string"` // The name of the database engine. @@ -6480,74 +6468,74 @@ func (s *DBEngineVersion) SetValidUpgradeTarget(v []*UpgradeTarget) *DBEngineVer return s } -// Detailed information about a DB instance. +// Detailed information about an instance. type DBInstance struct { _ struct{} `type:"structure"` // Indicates that minor version patches are applied automatically. AutoMinorVersionUpgrade *bool `type:"boolean"` - // Specifies the name of the Availability Zone that the DB instance is located + // Specifies the name of the Availability Zone that the instance is located // in. AvailabilityZone *string `type:"string"` - // Specifies the number of days for which automatic DB snapshots are retained. + // Specifies the number of days for which automatic snapshots are retained. BackupRetentionPeriod *int64 `type:"integer"` // The identifier of the CA certificate for this DB instance. CACertificateIdentifier *string `type:"string"` - // Contains the name of the DB cluster that the DB instance is a member of if - // the DB instance is a member of a DB cluster. + // Contains the name of the cluster that the instance is a member of if the + // instance is a member of a cluster. DBClusterIdentifier *string `type:"string"` - // The Amazon Resource Name (ARN) for the DB instance. + // The Amazon Resource Name (ARN) for the instance. DBInstanceArn *string `type:"string"` - // Contains the name of the compute and memory capacity class of the DB instance. + // Contains the name of the compute and memory capacity class of the instance. DBInstanceClass *string `type:"string"` // Contains a user-provided database identifier. This identifier is the unique - // key that identifies a DB instance. + // key that identifies an instance. DBInstanceIdentifier *string `type:"string"` // Specifies the current state of this database. DBInstanceStatus *string `type:"string"` - // Specifies information on the subnet group that is associated with the DB - // instance, including the name, description, and subnets in the subnet group. + // Specifies information on the subnet group that is associated with the instance, + // including the name, description, and subnets in the subnet group. DBSubnetGroup *DBSubnetGroup `type:"structure"` - // The AWS Region-unique, immutable identifier for the DB instance. This identifier - // is found in AWS CloudTrail log entries whenever the AWS KMS key for the DB - // instance is accessed. + // The AWS Region-unique, immutable identifier for the instance. This identifier + // is found in AWS CloudTrail log entries whenever the AWS KMS key for the instance + // is accessed. DbiResourceId *string `type:"string"` - // A list of log types that this DB instance is configured to export to Amazon + // A list of log types that this instance is configured to export to Amazon // CloudWatch Logs. EnabledCloudwatchLogsExports []*string `type:"list"` // Specifies the connection endpoint. Endpoint *Endpoint `type:"structure"` - // Provides the name of the database engine to be used for this DB instance. + // Provides the name of the database engine to be used for this instance. Engine *string `type:"string"` // Indicates the database engine version. EngineVersion *string `type:"string"` - // Provides the date and time that the DB instance was created. + // Provides the date and time that the instance was created. InstanceCreateTime *time.Time `type:"timestamp"` // If StorageEncrypted is true, the AWS KMS key identifier for the encrypted - // DB instance. + // instance. KmsKeyId *string `type:"string"` // Specifies the latest time to which a database can be restored with point-in-time // restore. LatestRestorableTime *time.Time `type:"timestamp"` - // Specifies that changes to the DB instance are pending. This element is included + // Specifies that changes to the instance are pending. This element is included // only when changes are pending. Specific changes are identified by subelements. PendingModifiedValues *PendingModifiedValues `type:"structure"` @@ -6572,10 +6560,10 @@ type DBInstance struct { // is blank. StatusInfos []*DBInstanceStatusInfo `locationNameList:"DBInstanceStatusInfo" type:"list"` - // Specifies whether or not the DB instance is encrypted. + // Specifies whether or not the instance is encrypted. StorageEncrypted *bool `type:"boolean"` - // Provides a list of VPC security group elements that the DB instance belongs + // Provides a list of VPC security group elements that the instance belongs // to. VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroupMembership" type:"list"` } @@ -6746,7 +6734,7 @@ func (s *DBInstance) SetVpcSecurityGroups(v []*VpcSecurityGroupMembership) *DBIn return s } -// Provides a list of status information for a DB instance. +// Provides a list of status information for an instance. type DBInstanceStatusInfo struct { _ struct{} `type:"structure"` @@ -6758,7 +6746,7 @@ type DBInstanceStatusInfo struct { // if the instance is in an error state. Normal *bool `type:"boolean"` - // Status of the DB instance. For a StatusType of read replica, the values can + // Status of the instance. For a StatusType of read replica, the values can // be replicating, error, stopped, or terminated. Status *string `type:"string"` @@ -6800,26 +6788,26 @@ func (s *DBInstanceStatusInfo) SetStatusType(v string) *DBInstanceStatusInfo { return s } -// Detailed information about a DB subnet group. +// Detailed information about a subnet group. type DBSubnetGroup struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the DB subnet group. DBSubnetGroupArn *string `type:"string"` - // Provides the description of the DB subnet group. + // Provides the description of the subnet group. DBSubnetGroupDescription *string `type:"string"` - // The name of the DB subnet group. + // The name of the subnet group. DBSubnetGroupName *string `type:"string"` - // Provides the status of the DB subnet group. + // Provides the status of the subnet group. SubnetGroupStatus *string `type:"string"` - // Detailed information about one or more subnets within a DB subnet group. + // Detailed information about one or more subnets within a subnet group. Subnets []*Subnet `locationNameList:"Subnet" type:"list"` - // Provides the virtual private cloud (VPC) ID of the DB subnet group. + // Provides the virtual private cloud (VPC) ID of the subnet group. VpcId *string `type:"string"` } @@ -6873,8 +6861,8 @@ func (s *DBSubnetGroup) SetVpcId(v string) *DBSubnetGroup { type DeleteDBClusterInput struct { _ struct{} `type:"structure"` - // The DB cluster identifier for the DB cluster to be deleted. This parameter - // isn't case sensitive. + // The cluster identifier for the cluster to be deleted. This parameter isn't + // case sensitive. // // Constraints: // @@ -6883,8 +6871,8 @@ type DeleteDBClusterInput struct { // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` - // The DB cluster snapshot identifier of the new DB cluster snapshot created - // when SkipFinalSnapshot is set to false. + // The cluster snapshot identifier of the new cluster snapshot created when + // SkipFinalSnapshot is set to false. // // Specifying this parameter and also setting the SkipFinalShapshot parameter // to true results in an error. @@ -6898,9 +6886,9 @@ type DeleteDBClusterInput struct { // * Cannot end with a hyphen or contain two consecutive hyphens. FinalDBSnapshotIdentifier *string `type:"string"` - // Determines whether a final DB cluster snapshot is created before the DB cluster - // is deleted. If true is specified, no DB cluster snapshot is created. If false - // is specified, a DB cluster snapshot is created before the DB cluster is deleted. + // Determines whether a final cluster snapshot is created before the cluster + // is deleted. If true is specified, no cluster snapshot is created. If false + // is specified, a cluster snapshot is created before the DB cluster is deleted. // // If SkipFinalSnapshot is false, you must specify a FinalDBSnapshotIdentifier // parameter. @@ -6953,7 +6941,7 @@ func (s *DeleteDBClusterInput) SetSkipFinalSnapshot(v bool) *DeleteDBClusterInpu type DeleteDBClusterOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster. + // Detailed information about a cluster. DBCluster *DBCluster `type:"structure"` } @@ -6977,15 +6965,15 @@ func (s *DeleteDBClusterOutput) SetDBCluster(v *DBCluster) *DeleteDBClusterOutpu type DeleteDBClusterParameterGroupInput struct { _ struct{} `type:"structure"` - // The name of the DB cluster parameter group. + // The name of the cluster parameter group. // // Constraints: // - // * Must be the name of an existing DB cluster parameter group. + // * Must be the name of an existing cluster parameter group. // - // * You can't delete a default DB cluster parameter group. + // * You can't delete a default cluster parameter group. // - // * Cannot be associated with any DB clusters. + // * Cannot be associated with any clusters. // // DBClusterParameterGroupName is a required field DBClusterParameterGroupName *string `type:"string" required:"true"` @@ -7038,9 +7026,9 @@ func (s DeleteDBClusterParameterGroupOutput) GoString() string { type DeleteDBClusterSnapshotInput struct { _ struct{} `type:"structure"` - // The identifier of the DB cluster snapshot to delete. + // The identifier of the cluster snapshot to delete. // - // Constraints: Must be the name of an existing DB cluster snapshot in the available + // Constraints: Must be the name of an existing cluster snapshot in the available // state. // // DBClusterSnapshotIdentifier is a required field @@ -7079,7 +7067,7 @@ func (s *DeleteDBClusterSnapshotInput) SetDBClusterSnapshotIdentifier(v string) type DeleteDBClusterSnapshotOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster snapshot. + // Detailed information about a cluster snapshot. DBClusterSnapshot *DBClusterSnapshot `type:"structure"` } @@ -7103,12 +7091,12 @@ func (s *DeleteDBClusterSnapshotOutput) SetDBClusterSnapshot(v *DBClusterSnapsho type DeleteDBInstanceInput struct { _ struct{} `type:"structure"` - // The DB instance identifier for the DB instance to be deleted. This parameter - // isn't case sensitive. + // The instance identifier for the instance to be deleted. This parameter isn't + // case sensitive. // // Constraints: // - // * Must match the name of an existing DB instance. + // * Must match the name of an existing instance. // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` @@ -7146,7 +7134,7 @@ func (s *DeleteDBInstanceInput) SetDBInstanceIdentifier(v string) *DeleteDBInsta type DeleteDBInstanceOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB instance. + // Detailed information about an instance. DBInstance *DBInstance `type:"structure"` } @@ -7355,7 +7343,7 @@ func (s *DescribeCertificatesOutput) SetMarker(v string) *DescribeCertificatesOu type DescribeDBClusterParameterGroupsInput struct { _ struct{} `type:"structure"` - // The name of a specific DB cluster parameter group to return details for. + // The name of a specific cluster parameter group to return details for. // // Constraints: // @@ -7438,7 +7426,7 @@ func (s *DescribeDBClusterParameterGroupsInput) SetMaxRecords(v int64) *Describe type DescribeDBClusterParameterGroupsOutput struct { _ struct{} `type:"structure"` - // A list of DB cluster parameter groups. + // A list of cluster parameter groups. DBClusterParameterGroups []*DBClusterParameterGroup `locationNameList:"DBClusterParameterGroup" type:"list"` // An optional pagination token provided by a previous request. If this parameter @@ -7473,7 +7461,7 @@ func (s *DescribeDBClusterParameterGroupsOutput) SetMarker(v string) *DescribeDB type DescribeDBClusterParametersInput struct { _ struct{} `type:"structure"` - // The name of a specific DB cluster parameter group to return parameter details + // The name of a specific cluster parameter group to return parameter details // for. // // Constraints: @@ -7577,7 +7565,7 @@ type DescribeDBClusterParametersOutput struct { // the value specified by MaxRecords. Marker *string `type:"string"` - // Provides a list of parameters for the DB cluster parameter group. + // Provides a list of parameters for the cluster parameter group. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` } @@ -7607,7 +7595,7 @@ func (s *DescribeDBClusterParametersOutput) SetParameters(v []*Parameter) *Descr type DescribeDBClusterSnapshotAttributesInput struct { _ struct{} `type:"structure"` - // The identifier for the DB cluster snapshot to describe the attributes for. + // The identifier for the cluster snapshot to describe the attributes for. // // DBClusterSnapshotIdentifier is a required field DBClusterSnapshotIdentifier *string `type:"string" required:"true"` @@ -7645,7 +7633,7 @@ func (s *DescribeDBClusterSnapshotAttributesInput) SetDBClusterSnapshotIdentifie type DescribeDBClusterSnapshotAttributesOutput struct { _ struct{} `type:"structure"` - // Detailed information about the attributes that are associated with a DB cluster + // Detailed information about the attributes that are associated with a cluster // snapshot. DBClusterSnapshotAttributesResult *DBClusterSnapshotAttributesResult `type:"structure"` } @@ -7670,16 +7658,16 @@ func (s *DescribeDBClusterSnapshotAttributesOutput) SetDBClusterSnapshotAttribut type DescribeDBClusterSnapshotsInput struct { _ struct{} `type:"structure"` - // The ID of the DB cluster to retrieve the list of DB cluster snapshots for. - // This parameter can't be used with the DBClusterSnapshotIdentifier parameter. - // This parameter is not case sensitive. + // The ID of the cluster to retrieve the list of cluster snapshots for. This + // parameter can't be used with the DBClusterSnapshotIdentifier parameter. This + // parameter is not case sensitive. // // Constraints: // // * If provided, must match the identifier of an existing DBCluster. DBClusterIdentifier *string `type:"string"` - // A specific DB cluster snapshot identifier to describe. This parameter can't + // A specific cluster snapshot identifier to describe. This parameter can't // be used with the DBClusterIdentifier parameter. This value is stored as a // lowercase string. // @@ -7694,14 +7682,14 @@ type DescribeDBClusterSnapshotsInput struct { // This parameter is not currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` - // Set to true to include manual DB cluster snapshots that are public and can - // be copied or restored by any AWS account, and otherwise false. The default - // is false. + // Set to true to include manual cluster snapshots that are public and can be + // copied or restored by any AWS account, and otherwise false. The default is + // false. IncludePublic *bool `type:"boolean"` - // Set to true to include shared manual DB cluster snapshots from other AWS - // accounts that this AWS account has been given permission to copy or restore, - // and otherwise false. The default is false. + // Set to true to include shared manual cluster snapshots from other AWS accounts + // that this AWS account has been given permission to copy or restore, and otherwise + // false. The default is false. IncludeShared *bool `type:"boolean"` // An optional pagination token provided by a previous request. If this parameter @@ -7718,24 +7706,24 @@ type DescribeDBClusterSnapshotsInput struct { // Constraints: Minimum 20, maximum 100. MaxRecords *int64 `type:"integer"` - // The type of DB cluster snapshots to be returned. You can specify one of the + // The type of cluster snapshots to be returned. You can specify one of the // following values: // - // * automated - Return all DB cluster snapshots that Amazon DocumentDB has + // * automated - Return all cluster snapshots that Amazon DocumentDB has // automatically created for your AWS account. // - // * manual - Return all DB cluster snapshots that you have manually created + // * manual - Return all cluster snapshots that you have manually created // for your AWS account. // - // * shared - Return all manual DB cluster snapshots that have been shared - // to your AWS account. + // * shared - Return all manual cluster snapshots that have been shared to + // your AWS account. // - // * public - Return all DB cluster snapshots that have been marked as public. + // * public - Return all cluster snapshots that have been marked as public. // // If you don't specify a SnapshotType value, then both automated and manual - // DB cluster snapshots are returned. You can include shared DB cluster snapshots + // cluster snapshots are returned. You can include shared cluster snapshots // with these results by setting the IncludeShared parameter to true. You can - // include public DB cluster snapshots with these results by setting the IncludePublic + // include public cluster snapshots with these results by setting the IncludePublic // parameter to true. // // The IncludeShared and IncludePublic parameters don't apply for SnapshotType @@ -7827,7 +7815,7 @@ func (s *DescribeDBClusterSnapshotsInput) SetSnapshotType(v string) *DescribeDBC type DescribeDBClusterSnapshotsOutput struct { _ struct{} `type:"structure"` - // Provides a list of DB cluster snapshots. + // Provides a list of cluster snapshots. DBClusterSnapshots []*DBClusterSnapshot `locationNameList:"DBClusterSnapshot" type:"list"` // An optional pagination token provided by a previous request. If this parameter @@ -7862,22 +7850,21 @@ func (s *DescribeDBClusterSnapshotsOutput) SetMarker(v string) *DescribeDBCluste type DescribeDBClustersInput struct { _ struct{} `type:"structure"` - // The user-provided DB cluster identifier. If this parameter is specified, - // information from only the specific DB cluster is returned. This parameter - // isn't case sensitive. + // The user-provided cluster identifier. If this parameter is specified, information + // from only the specific cluster is returned. This parameter isn't case sensitive. // // Constraints: // // * If provided, must match an existing DBClusterIdentifier. DBClusterIdentifier *string `type:"string"` - // A filter that specifies one or more DB clusters to describe. + // A filter that specifies one or more clusters to describe. // // Supported filters: // - // * db-cluster-id - Accepts DB cluster identifiers and DB cluster Amazon - // Resource Names (ARNs). The results list only includes information about - // the DB clusters identified by these ARNs. + // * db-cluster-id - Accepts cluster identifiers and cluster Amazon Resource + // Names (ARNs). The results list only includes information about the clusters + // identified by these ARNs. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous request. If this parameter @@ -7953,7 +7940,7 @@ func (s *DescribeDBClustersInput) SetMaxRecords(v int64) *DescribeDBClustersInpu type DescribeDBClustersOutput struct { _ struct{} `type:"structure"` - // A list of DB clusters. + // A list of clusters. DBClusters []*DBCluster `locationNameList:"DBCluster" type:"list"` // An optional pagination token provided by a previous request. If this parameter @@ -7988,7 +7975,7 @@ func (s *DescribeDBClustersOutput) SetMarker(v string) *DescribeDBClustersOutput type DescribeDBEngineVersionsInput struct { _ struct{} `type:"structure"` - // The name of a specific DB parameter group family to return details for. + // The name of a specific parameter group family to return details for. // // Constraints: // @@ -8123,7 +8110,7 @@ func (s *DescribeDBEngineVersionsInput) SetMaxRecords(v int64) *DescribeDBEngine type DescribeDBEngineVersionsOutput struct { _ struct{} `type:"structure"` - // Detailed information about one or more DB engine versions. + // Detailed information about one or more engine versions. DBEngineVersions []*DBEngineVersion `locationNameList:"DBEngineVersion" type:"list"` // An optional pagination token provided by a previous request. If this parameter @@ -8159,26 +8146,25 @@ type DescribeDBInstancesInput struct { _ struct{} `type:"structure"` // The user-provided instance identifier. If this parameter is specified, information - // from only the specific DB instance is returned. This parameter isn't case - // sensitive. + // from only the specific instance is returned. This parameter isn't case sensitive. // // Constraints: // // * If provided, must match the identifier of an existing DBInstance. DBInstanceIdentifier *string `type:"string"` - // A filter that specifies one or more DB instances to describe. + // A filter that specifies one or more instances to describe. // // Supported filters: // - // * db-cluster-id - Accepts DB cluster identifiers and DB cluster Amazon - // Resource Names (ARNs). The results list includes only the information - // about the DB instances that are associated with the DB clusters that are - // identified by these ARNs. + // * db-cluster-id - Accepts cluster identifiers and cluster Amazon Resource + // Names (ARNs). The results list includes only the information about the + // instances that are associated with the clusters that are identified by + // these ARNs. // - // * db-instance-id - Accepts DB instance identifiers and DB instance ARNs. - // The results list includes only the information about the DB instances - // that are identified by these ARNs. + // * db-instance-id - Accepts instance identifiers and instance ARNs. The + // results list includes only the information about the instances that are + // identified by these ARNs. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous request. If this parameter @@ -8254,7 +8240,7 @@ func (s *DescribeDBInstancesInput) SetMaxRecords(v int64) *DescribeDBInstancesIn type DescribeDBInstancesOutput struct { _ struct{} `type:"structure"` - // Detailed information about one or more DB instances. + // Detailed information about one or more instances. DBInstances []*DBInstance `locationNameList:"DBInstance" type:"list"` // An optional pagination token provided by a previous request. If this parameter @@ -8289,7 +8275,7 @@ func (s *DescribeDBInstancesOutput) SetMarker(v string) *DescribeDBInstancesOutp type DescribeDBSubnetGroupsInput struct { _ struct{} `type:"structure"` - // The name of the DB subnet group to return details for. + // The name of the subnet group to return details for. DBSubnetGroupName *string `type:"string"` // This parameter is not currently supported. @@ -8368,7 +8354,7 @@ func (s *DescribeDBSubnetGroupsInput) SetMaxRecords(v int64) *DescribeDBSubnetGr type DescribeDBSubnetGroupsOutput struct { _ struct{} `type:"structure"` - // Detailed information about one or more DB subnet groups. + // Detailed information about one or more subnet groups. DBSubnetGroups []*DBSubnetGroup `locationNameList:"DBSubnetGroup" type:"list"` // An optional pagination token provided by a previous request. If this parameter @@ -8403,7 +8389,7 @@ func (s *DescribeDBSubnetGroupsOutput) SetMarker(v string) *DescribeDBSubnetGrou type DescribeEngineDefaultClusterParametersInput struct { _ struct{} `type:"structure"` - // The name of the DB cluster parameter group family to return the engine parameter + // The name of the cluster parameter group family to return the engine parameter // information for. // // DBParameterGroupFamily is a required field @@ -8777,11 +8763,11 @@ func (s *DescribeEventsOutput) SetMarker(v string) *DescribeEventsOutput { type DescribeOrderableDBInstanceOptionsInput struct { _ struct{} `type:"structure"` - // The DB instance class filter value. Specify this parameter to show only the - // available offerings that match the specified DB instance class. + // The instance class filter value. Specify this parameter to show only the + // available offerings that match the specified instance class. DBInstanceClass *string `type:"string"` - // The name of the engine to retrieve DB instance options for. + // The name of the engine to retrieve instance options for. // // Engine is a required field Engine *string `type:"string" required:"true"` @@ -8906,7 +8892,7 @@ type DescribeOrderableDBInstanceOptionsOutput struct { // the value specified by MaxRecords. Marker *string `type:"string"` - // The options that are available for a particular orderable DB instance. + // The options that are available for a particular orderable instance. OrderableDBInstanceOptions []*OrderableDBInstanceOption `locationNameList:"OrderableDBInstanceOption" type:"list"` } @@ -8941,13 +8927,13 @@ type DescribePendingMaintenanceActionsInput struct { // // Supported filters: // - // * db-cluster-id - Accepts DB cluster identifiers and DB cluster Amazon - // Resource Names (ARNs). The results list includes only pending maintenance - // actions for the DB clusters identified by these ARNs. + // * db-cluster-id - Accepts cluster identifiers and cluster Amazon Resource + // Names (ARNs). The results list includes only pending maintenance actions + // for the clusters identified by these ARNs. // - // * db-instance-id - Accepts DB instance identifiers and DB instance ARNs. - // The results list includes only pending maintenance actions for the DB - // instances identified by these ARNs. + // * db-instance-id - Accepts instance identifiers and instance ARNs. The + // results list includes only pending maintenance actions for the DB instances + // identified by these ARNs. Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous request. If this parameter @@ -9057,12 +9043,12 @@ func (s *DescribePendingMaintenanceActionsOutput) SetPendingMaintenanceActions(v return s } -// Network information for accessing a DB cluster or DB instance. Client programs +// Network information for accessing a cluster or instance. Client programs // must specify a valid endpoint to access these Amazon DocumentDB resources. type Endpoint struct { _ struct{} `type:"structure"` - // Specifies the DNS address of the DB instance. + // Specifies the DNS address of the instance. Address *string `type:"string"` // Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. @@ -9105,7 +9091,7 @@ func (s *Endpoint) SetPort(v int64) *Endpoint { type EngineDefaults struct { _ struct{} `type:"structure"` - // The name of the DB cluster parameter group family to return the engine parameter + // The name of the cluster parameter group family to return the engine parameter // information for. DBParameterGroupFamily *string `type:"string"` @@ -9114,7 +9100,7 @@ type EngineDefaults struct { // the value specified by MaxRecords. Marker *string `type:"string"` - // The parameters of a particular DB cluster parameter group family. + // The parameters of a particular cluster parameter group family. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` } @@ -9252,7 +9238,7 @@ func (s *EventCategoriesMap) SetSourceType(v string) *EventCategoriesMap { type FailoverDBClusterInput struct { _ struct{} `type:"structure"` - // A DB cluster identifier to force a failover for. This parameter is not case + // A cluster identifier to force a failover for. This parameter is not case // sensitive. // // Constraints: @@ -9263,7 +9249,7 @@ type FailoverDBClusterInput struct { // The name of the instance to promote to the primary instance. // // You must specify the instance identifier for an Amazon DocumentDB replica - // in the DB cluster. For example, mydbcluster-replica1. + // in the cluster. For example, mydbcluster-replica1. TargetDBInstanceIdentifier *string `type:"string"` } @@ -9292,7 +9278,7 @@ func (s *FailoverDBClusterInput) SetTargetDBInstanceIdentifier(v string) *Failov type FailoverDBClusterOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster. + // Detailed information about a cluster. DBCluster *DBCluster `type:"structure"` } @@ -9458,8 +9444,8 @@ type ModifyDBClusterInput struct { // A value that specifies whether the changes in this request and any pending // changes are asynchronously applied as soon as possible, regardless of the - // PreferredMaintenanceWindow setting for the DB cluster. If this parameter - // is set to false, changes to the DB cluster are applied during the next maintenance + // PreferredMaintenanceWindow setting for the cluster. If this parameter is + // set to false, changes to the cluster are applied during the next maintenance // window. // // The ApplyImmediately parameter affects only the NewDBClusterIdentifier and @@ -9482,12 +9468,12 @@ type ModifyDBClusterInput struct { BackupRetentionPeriod *int64 `type:"integer"` // The configuration setting for the log types to be enabled for export to Amazon - // CloudWatch Logs for a specific DB instance or DB cluster. The EnableLogTypes - // and DisableLogTypes arrays determine which logs are exported (or not exported) + // CloudWatch Logs for a specific instance or cluster. The EnableLogTypes and + // DisableLogTypes arrays determine which logs are exported (or not exported) // to CloudWatch Logs. CloudwatchLogsExportConfiguration *CloudwatchLogsExportConfiguration `type:"structure"` - // The DB cluster identifier for the cluster that is being modified. This parameter + // The cluster identifier for the cluster that is being modified. This parameter // is not case sensitive. // // Constraints: @@ -9497,7 +9483,7 @@ type ModifyDBClusterInput struct { // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` - // The name of the DB cluster parameter group to use for the DB cluster. + // The name of the cluster parameter group to use for the cluster. DBClusterParameterGroupName *string `type:"string"` // Specifies whether this cluster can be deleted. If DeletionProtection is enabled, @@ -9518,8 +9504,8 @@ type ModifyDBClusterInput struct { // Constraints: Must contain from 8 to 100 characters. MasterUserPassword *string `type:"string"` - // The new DB cluster identifier for the DB cluster when renaming a DB cluster. - // This value is stored as a lowercase string. + // The new cluster identifier for the cluster when renaming a cluster. This + // value is stored as a lowercase string. // // Constraints: // @@ -9532,11 +9518,11 @@ type ModifyDBClusterInput struct { // Example: my-cluster2 NewDBClusterIdentifier *string `type:"string"` - // The port number on which the DB cluster accepts connections. + // The port number on which the cluster accepts connections. // // Constraints: Must be a value from 1150 to 65535. // - // Default: The same port as the original DB cluster. + // Default: The same port as the original cluster. Port *int64 `type:"integer"` // The daily time range during which automated backups are created if automated @@ -9569,8 +9555,8 @@ type ModifyDBClusterInput struct { // Constraints: Minimum 30-minute window. PreferredMaintenanceWindow *string `type:"string"` - // A list of virtual private cloud (VPC) security groups that the DB cluster - // will belong to. + // A list of virtual private cloud (VPC) security groups that the cluster will + // belong to. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } @@ -9678,7 +9664,7 @@ func (s *ModifyDBClusterInput) SetVpcSecurityGroupIds(v []*string) *ModifyDBClus type ModifyDBClusterOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster. + // Detailed information about a cluster. DBCluster *DBCluster `type:"structure"` } @@ -9702,12 +9688,12 @@ func (s *ModifyDBClusterOutput) SetDBCluster(v *DBCluster) *ModifyDBClusterOutpu type ModifyDBClusterParameterGroupInput struct { _ struct{} `type:"structure"` - // The name of the DB cluster parameter group to modify. + // The name of the cluster parameter group to modify. // // DBClusterParameterGroupName is a required field DBClusterParameterGroupName *string `type:"string" required:"true"` - // A list of parameters in the DB cluster parameter group to modify. + // A list of parameters in the cluster parameter group to modify. // // Parameters is a required field Parameters []*Parameter `locationNameList:"Parameter" type:"list" required:"true"` @@ -9751,11 +9737,11 @@ func (s *ModifyDBClusterParameterGroupInput) SetParameters(v []*Parameter) *Modi return s } -// Contains the name of a DB cluster parameter group. +// Contains the name of a cluster parameter group. type ModifyDBClusterParameterGroupOutput struct { _ struct{} `type:"structure"` - // The name of a DB cluster parameter group. + // The name of a cluster parameter group. // // Constraints: // @@ -9789,38 +9775,38 @@ func (s *ModifyDBClusterParameterGroupOutput) SetDBClusterParameterGroupName(v s type ModifyDBClusterSnapshotAttributeInput struct { _ struct{} `type:"structure"` - // The name of the DB cluster snapshot attribute to modify. + // The name of the cluster snapshot attribute to modify. // // To manage authorization for other AWS accounts to copy or restore a manual - // DB cluster snapshot, set this value to restore. + // cluster snapshot, set this value to restore. // // AttributeName is a required field AttributeName *string `type:"string" required:"true"` - // The identifier for the DB cluster snapshot to modify the attributes for. + // The identifier for the cluster snapshot to modify the attributes for. // // DBClusterSnapshotIdentifier is a required field DBClusterSnapshotIdentifier *string `type:"string" required:"true"` - // A list of DB cluster snapshot attributes to add to the attribute specified - // by AttributeName. + // A list of cluster snapshot attributes to add to the attribute specified by + // AttributeName. // - // To authorize other AWS accounts to copy or restore a manual DB cluster snapshot, + // To authorize other AWS accounts to copy or restore a manual cluster snapshot, // set this list to include one or more AWS account IDs. To make the manual - // DB cluster snapshot restorable by any AWS account, set it to all. Do not - // add the all value for any manual DB cluster snapshots that contain private - // information that you don't want to be available to all AWS accounts. + // cluster snapshot restorable by any AWS account, set it to all. Do not add + // the all value for any manual cluster snapshots that contain private information + // that you don't want to be available to all AWS accounts. ValuesToAdd []*string `locationNameList:"AttributeValue" type:"list"` - // A list of DB cluster snapshot attributes to remove from the attribute specified + // A list of cluster snapshot attributes to remove from the attribute specified // by AttributeName. // // To remove authorization for other AWS accounts to copy or restore a manual - // DB cluster snapshot, set this list to include one or more AWS account identifiers. - // To remove authorization for any AWS account to copy or restore the DB cluster + // cluster snapshot, set this list to include one or more AWS account identifiers. + // To remove authorization for any AWS account to copy or restore the cluster // snapshot, set it to all . If you specify all, an AWS account whose account // ID is explicitly added to the restore attribute can still copy or restore - // a manual DB cluster snapshot. + // a manual cluster snapshot. ValuesToRemove []*string `locationNameList:"AttributeValue" type:"list"` } @@ -9877,7 +9863,7 @@ func (s *ModifyDBClusterSnapshotAttributeInput) SetValuesToRemove(v []*string) * type ModifyDBClusterSnapshotAttributeOutput struct { _ struct{} `type:"structure"` - // Detailed information about the attributes that are associated with a DB cluster + // Detailed information about the attributes that are associated with a cluster // snapshot. DBClusterSnapshotAttributesResult *DBClusterSnapshotAttributesResult `type:"structure"` } @@ -9904,18 +9890,18 @@ type ModifyDBInstanceInput struct { // Specifies whether the modifications in this request and any pending modifications // are asynchronously applied as soon as possible, regardless of the PreferredMaintenanceWindow - // setting for the DB instance. + // setting for the instance. // - // If this parameter is set to false, changes to the DB instance are applied - // during the next maintenance window. Some parameter changes can cause an outage - // and are applied on the next reboot. + // If this parameter is set to false, changes to the instance are applied during + // the next maintenance window. Some parameter changes can cause an outage and + // are applied on the next reboot. // // Default: false ApplyImmediately *bool `type:"boolean"` - // Indicates that minor version upgrades are applied automatically to the DB - // instance during the maintenance window. Changing this parameter doesn't result - // in an outage except in the following case, and the change is asynchronously + // Indicates that minor version upgrades are applied automatically to the instance + // during the maintenance window. Changing this parameter doesn't result in + // an outage except in the following case, and the change is asynchronously // applied as soon as possible. An outage results if this parameter is set to // true during the maintenance window, and a newer minor version is available, // and Amazon DocumentDB has enabled automatic patching for that engine version. @@ -9924,17 +9910,17 @@ type ModifyDBInstanceInput struct { // Indicates the certificate that needs to be associated with the instance. CACertificateIdentifier *string `type:"string"` - // The new compute and memory capacity of the DB instance; for example, db.r5.large. - // Not all DB instance classes are available in all AWS Regions. + // The new compute and memory capacity of the instance; for example, db.r5.large. + // Not all instance classes are available in all AWS Regions. // - // If you modify the DB instance class, an outage occurs during the change. - // The change is applied during the next maintenance window, unless ApplyImmediately + // If you modify the instance class, an outage occurs during the change. The + // change is applied during the next maintenance window, unless ApplyImmediately // is specified as true for this request. // // Default: Uses existing setting. DBInstanceClass *string `type:"string"` - // The DB instance identifier. This value is stored as a lowercase string. + // The instance identifier. This value is stored as a lowercase string. // // Constraints: // @@ -9943,8 +9929,8 @@ type ModifyDBInstanceInput struct { // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` - // The new DB instance identifier for the DB instance when renaming a DB instance. - // When you change the DB instance identifier, an instance reboot occurs immediately + // The new instance identifier for the instance when renaming an instance. When + // you change the instance identifier, an instance reboot occurs immediately // if you set Apply Immediately to true. It occurs during the next maintenance // window if you set Apply Immediately to false. This value is stored as a lowercase // string. @@ -9965,9 +9951,9 @@ type ModifyDBInstanceInput struct { // an outage except in the following situation, and the change is asynchronously // applied as soon as possible. If there are pending actions that cause a reboot, // and the maintenance window is changed to include the current time, changing - // this parameter causes a reboot of the DB instance. If you are moving this - // window to the current time, there must be at least 30 minutes between the - // current time and end of the window to ensure that pending changes are applied. + // this parameter causes a reboot of the instance. If you are moving this window + // to the current time, there must be at least 30 minutes between the current + // time and end of the window to ensure that pending changes are applied. // // Default: Uses existing setting. // @@ -10062,7 +10048,7 @@ func (s *ModifyDBInstanceInput) SetPromotionTier(v int64) *ModifyDBInstanceInput type ModifyDBInstanceOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB instance. + // Detailed information about an instance. DBInstance *DBInstance `type:"structure"` } @@ -10086,10 +10072,10 @@ func (s *ModifyDBInstanceOutput) SetDBInstance(v *DBInstance) *ModifyDBInstanceO type ModifyDBSubnetGroupInput struct { _ struct{} `type:"structure"` - // The description for the DB subnet group. + // The description for the subnet group. DBSubnetGroupDescription *string `type:"string"` - // The name for the DB subnet group. This value is stored as a lowercase string. + // The name for the subnet group. This value is stored as a lowercase string. // You can't modify the default subnet group. // // Constraints: Must match the name of an existing DBSubnetGroup. Must not be @@ -10100,7 +10086,7 @@ type ModifyDBSubnetGroupInput struct { // DBSubnetGroupName is a required field DBSubnetGroupName *string `type:"string" required:"true"` - // The Amazon EC2 subnet IDs for the DB subnet group. + // The Amazon EC2 subnet IDs for the subnet group. // // SubnetIds is a required field SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"` @@ -10153,7 +10139,7 @@ func (s *ModifyDBSubnetGroupInput) SetSubnetIds(v []*string) *ModifyDBSubnetGrou type ModifyDBSubnetGroupOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB subnet group. + // Detailed information about a subnet group. DBSubnetGroup *DBSubnetGroup `type:"structure"` } @@ -10173,26 +10159,26 @@ func (s *ModifyDBSubnetGroupOutput) SetDBSubnetGroup(v *DBSubnetGroup) *ModifyDB return s } -// The options that are available for a DB instance. +// The options that are available for an instance. type OrderableDBInstanceOption struct { _ struct{} `type:"structure"` - // A list of Availability Zones for a DB instance. + // A list of Availability Zones for an instance. AvailabilityZones []*AvailabilityZone `locationNameList:"AvailabilityZone" type:"list"` - // The DB instance class for a DB instance. + // The instance class for an instance. DBInstanceClass *string `type:"string"` - // The engine type of a DB instance. + // The engine type of an instance. Engine *string `type:"string"` - // The engine version of a DB instance. + // The engine version of an instance. EngineVersion *string `type:"string"` - // The license model for a DB instance. + // The license model for an instance. LicenseModel *string `type:"string"` - // Indicates whether a DB instance is in a virtual private cloud (VPC). + // Indicates whether an instance is in a virtual private cloud (VPC). Vpc *bool `type:"boolean"` } @@ -10461,12 +10447,12 @@ func (s *PendingMaintenanceAction) SetOptInStatus(v string) *PendingMaintenanceA return s } -// One or more modified settings for a DB instance. These modified settings -// have been requested, but haven't been applied yet. +// One or more modified settings for an instance. These modified settings have +// been requested, but haven't been applied yet. type PendingModifiedValues struct { _ struct{} `type:"structure"` - // Contains the new AllocatedStorage size for the DB instance that will be applied + // Contains the new AllocatedStorage size for then instance that will be applied // or is currently being applied. AllocatedStorage *int64 `type:"integer"` @@ -10477,44 +10463,44 @@ type PendingModifiedValues struct { // the DB instance. CACertificateIdentifier *string `type:"string"` - // Contains the new DBInstanceClass for the DB instance that will be applied - // or is currently being applied. + // Contains the new DBInstanceClass for the instance that will be applied or + // is currently being applied. DBInstanceClass *string `type:"string"` - // Contains the new DBInstanceIdentifier for the DB instance that will be applied + // Contains the new DBInstanceIdentifier for the instance that will be applied // or is currently being applied. DBInstanceIdentifier *string `type:"string"` - // The new DB subnet group for the DB instance. + // The new subnet group for the instance. DBSubnetGroupName *string `type:"string"` // Indicates the database engine version. EngineVersion *string `type:"string"` - // Specifies the new Provisioned IOPS value for the DB instance that will be - // applied or is currently being applied. + // Specifies the new Provisioned IOPS value for the instance that will be applied + // or is currently being applied. Iops *int64 `type:"integer"` - // The license model for the DB instance. + // The license model for the instance. // // Valid values: license-included, bring-your-own-license, general-public-license LicenseModel *string `type:"string"` // Contains the pending or currently in-progress change of the master credentials - // for the DB instance. + // for the instance. MasterUserPassword *string `type:"string"` - // Indicates that the Single-AZ DB instance is to change to a Multi-AZ deployment. + // Indicates that the Single-AZ instance is to change to a Multi-AZ deployment. MultiAZ *bool `type:"boolean"` // A list of the log types whose configuration is still pending. These log types // are in the process of being activated or deactivated. PendingCloudwatchLogsExports *PendingCloudwatchLogsExports `type:"structure"` - // Specifies the pending port for the DB instance. + // Specifies the pending port for the instance. Port *int64 `type:"integer"` - // Specifies the storage type to be associated with the DB instance. + // Specifies the storage type to be associated with the instance. StorageType *string `type:"string"` } @@ -10616,7 +10602,7 @@ func (s *PendingModifiedValues) SetStorageType(v string) *PendingModifiedValues type RebootDBInstanceInput struct { _ struct{} `type:"structure"` - // The DB instance identifier. This parameter is stored as a lowercase string. + // The instance identifier. This parameter is stored as a lowercase string. // // Constraints: // @@ -10670,7 +10656,7 @@ func (s *RebootDBInstanceInput) SetForceFailover(v bool) *RebootDBInstanceInput type RebootDBInstanceOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB instance. + // Detailed information about an instance. DBInstance *DBInstance `type:"structure"` } @@ -10762,17 +10748,17 @@ func (s RemoveTagsFromResourceOutput) GoString() string { type ResetDBClusterParameterGroupInput struct { _ struct{} `type:"structure"` - // The name of the DB cluster parameter group to reset. + // The name of the cluster parameter group to reset. // // DBClusterParameterGroupName is a required field DBClusterParameterGroupName *string `type:"string" required:"true"` - // A list of parameter names in the DB cluster parameter group to reset to the + // A list of parameter names in the cluster parameter group to reset to the // default values. You can't use this parameter if the ResetAllParameters parameter // is set to true. Parameters []*Parameter `locationNameList:"Parameter" type:"list"` - // A value that is set to true to reset all parameters in the DB cluster parameter + // A value that is set to true to reset all parameters in the cluster parameter // group to their default values, and false otherwise. You can't use this parameter // if there is a list of parameter names specified for the Parameters parameter. ResetAllParameters *bool `type:"boolean"` @@ -10819,11 +10805,11 @@ func (s *ResetDBClusterParameterGroupInput) SetResetAllParameters(v bool) *Reset return s } -// Contains the name of a DB cluster parameter group. +// Contains the name of a cluster parameter group. type ResetDBClusterParameterGroupOutput struct { _ struct{} `type:"structure"` - // The name of a DB cluster parameter group. + // The name of a cluster parameter group. // // Constraints: // @@ -10896,7 +10882,7 @@ type RestoreDBClusterFromSnapshotInput struct { // restored DB cluster can be created in. AvailabilityZones []*string `locationNameList:"AvailabilityZone" type:"list"` - // The name of the DB cluster to create from the DB snapshot or DB cluster snapshot. + // The name of the cluster to create from the snapshot or cluster snapshot. // This parameter isn't case sensitive. // // Constraints: @@ -10912,7 +10898,7 @@ type RestoreDBClusterFromSnapshotInput struct { // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` - // The name of the DB subnet group to use for the new DB cluster. + // The name of the subnet group to use for the new cluster. // // Constraints: If provided, must match the name of an existing DBSubnetGroup. // @@ -10929,7 +10915,7 @@ type RestoreDBClusterFromSnapshotInput struct { // Logs. EnableCloudwatchLogsExports []*string `type:"list"` - // The database engine to use for the new DB cluster. + // The database engine to use for the new cluster. // // Default: The same as source. // @@ -10938,41 +10924,40 @@ type RestoreDBClusterFromSnapshotInput struct { // Engine is a required field Engine *string `type:"string" required:"true"` - // The version of the database engine to use for the new DB cluster. + // The version of the database engine to use for the new cluster. EngineVersion *string `type:"string"` - // The AWS KMS key identifier to use when restoring an encrypted DB cluster - // from a DB snapshot or DB cluster snapshot. + // The AWS KMS key identifier to use when restoring an encrypted cluster from + // a DB snapshot or cluster snapshot. // // The AWS KMS key identifier is the Amazon Resource Name (ARN) for the AWS - // KMS encryption key. If you are restoring a DB cluster with the same AWS account - // that owns the AWS KMS encryption key used to encrypt the new DB cluster, - // then you can use the AWS KMS key alias instead of the ARN for the AWS KMS - // encryption key. + // KMS encryption key. If you are restoring a cluster with the same AWS account + // that owns the AWS KMS encryption key used to encrypt the new cluster, then + // you can use the AWS KMS key alias instead of the ARN for the AWS KMS encryption + // key. // // If you do not specify a value for the KmsKeyId parameter, then the following // occurs: // - // * If the DB snapshot or DB cluster snapshot in SnapshotIdentifier is encrypted, - // then the restored DB cluster is encrypted using the AWS KMS key that was - // used to encrypt the DB snapshot or the DB cluster snapshot. + // * If the snapshot or cluster snapshot in SnapshotIdentifier is encrypted, + // then the restored cluster is encrypted using the AWS KMS key that was + // used to encrypt the snapshot or the cluster snapshot. // - // * If the DB snapshot or the DB cluster snapshot in SnapshotIdentifier - // is not encrypted, then the restored DB cluster is not encrypted. + // * If the snapshot or the cluster snapshot in SnapshotIdentifier is not + // encrypted, then the restored DB cluster is not encrypted. KmsKeyId *string `type:"string"` - // The port number on which the new DB cluster accepts connections. + // The port number on which the new cluster accepts connections. // // Constraints: Must be a value from 1150 to 65535. // - // Default: The same port as the original DB cluster. + // Default: The same port as the original cluster. Port *int64 `type:"integer"` - // The identifier for the DB snapshot or DB cluster snapshot to restore from. + // The identifier for the snapshot or cluster snapshot to restore from. // // You can use either the name or the Amazon Resource Name (ARN) to specify - // a DB cluster snapshot. However, you can use only the ARN to specify a DB - // snapshot. + // a cluster snapshot. However, you can use only the ARN to specify a snapshot. // // Constraints: // @@ -10981,10 +10966,10 @@ type RestoreDBClusterFromSnapshotInput struct { // SnapshotIdentifier is a required field SnapshotIdentifier *string `type:"string" required:"true"` - // The tags to be assigned to the restored DB cluster. + // The tags to be assigned to the restored cluster. Tags []*Tag `locationNameList:"Tag" type:"list"` - // A list of virtual private cloud (VPC) security groups that the new DB cluster + // A list of virtual private cloud (VPC) security groups that the new cluster // will belong to. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } @@ -11093,7 +11078,7 @@ func (s *RestoreDBClusterFromSnapshotInput) SetVpcSecurityGroupIds(v []*string) type RestoreDBClusterFromSnapshotOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster. + // Detailed information about a cluster. DBCluster *DBCluster `type:"structure"` } @@ -11117,7 +11102,7 @@ func (s *RestoreDBClusterFromSnapshotOutput) SetDBCluster(v *DBCluster) *Restore type RestoreDBClusterToPointInTimeInput struct { _ struct{} `type:"structure"` - // The name of the new DB cluster to be created. + // The name of the new cluster to be created. // // Constraints: // @@ -11130,7 +11115,7 @@ type RestoreDBClusterToPointInTimeInput struct { // DBClusterIdentifier is a required field DBClusterIdentifier *string `type:"string" required:"true"` - // The DB subnet group name to use for the new DB cluster. + // The subnet group name to use for the new cluster. // // Constraints: If provided, must match the name of an existing DBSubnetGroup. // @@ -11147,47 +11132,46 @@ type RestoreDBClusterToPointInTimeInput struct { // Logs. EnableCloudwatchLogsExports []*string `type:"list"` - // The AWS KMS key identifier to use when restoring an encrypted DB cluster - // from an encrypted DB cluster. + // The AWS KMS key identifier to use when restoring an encrypted cluster from + // an encrypted cluster. // // The AWS KMS key identifier is the Amazon Resource Name (ARN) for the AWS - // KMS encryption key. If you are restoring a DB cluster with the same AWS account - // that owns the AWS KMS encryption key used to encrypt the new DB cluster, - // then you can use the AWS KMS key alias instead of the ARN for the AWS KMS - // encryption key. - // - // You can restore to a new DB cluster and encrypt the new DB cluster with an - // AWS KMS key that is different from the AWS KMS key used to encrypt the source - // DB cluster. The new DB cluster is encrypted with the AWS KMS key identified + // KMS encryption key. If you are restoring a cluster with the same AWS account + // that owns the AWS KMS encryption key used to encrypt the new cluster, then + // you can use the AWS KMS key alias instead of the ARN for the AWS KMS encryption + // key. + // + // You can restore to a new cluster and encrypt the new cluster with an AWS + // KMS key that is different from the AWS KMS key used to encrypt the source + // cluster. The new DB cluster is encrypted with the AWS KMS key identified // by the KmsKeyId parameter. // // If you do not specify a value for the KmsKeyId parameter, then the following // occurs: // - // * If the DB cluster is encrypted, then the restored DB cluster is encrypted - // using the AWS KMS key that was used to encrypt the source DB cluster. + // * If the cluster is encrypted, then the restored cluster is encrypted + // using the AWS KMS key that was used to encrypt the source cluster. // - // * If the DB cluster is not encrypted, then the restored DB cluster is - // not encrypted. + // * If the cluster is not encrypted, then the restored cluster is not encrypted. // - // If DBClusterIdentifier refers to a DB cluster that is not encrypted, then - // the restore request is rejected. + // If DBClusterIdentifier refers to a cluster that is not encrypted, then the + // restore request is rejected. KmsKeyId *string `type:"string"` - // The port number on which the new DB cluster accepts connections. + // The port number on which the new cluster accepts connections. // // Constraints: Must be a value from 1150 to 65535. // // Default: The default port for the engine. Port *int64 `type:"integer"` - // The date and time to restore the DB cluster to. + // The date and time to restore the cluster to. // // Valid values: A time in Universal Coordinated Time (UTC) format. // // Constraints: // - // * Must be before the latest restorable time for the DB instance. + // * Must be before the latest restorable time for the instance. // // * Must be specified if the UseLatestRestorableTime parameter is not provided. // @@ -11198,7 +11182,7 @@ type RestoreDBClusterToPointInTimeInput struct { // Example: 2015-03-07T23:45:00Z RestoreToTime *time.Time `type:"timestamp"` - // The identifier of the source DB cluster from which to restore. + // The identifier of the source cluster from which to restore. // // Constraints: // @@ -11207,10 +11191,10 @@ type RestoreDBClusterToPointInTimeInput struct { // SourceDBClusterIdentifier is a required field SourceDBClusterIdentifier *string `type:"string" required:"true"` - // The tags to be assigned to the restored DB cluster. + // The tags to be assigned to the restored cluster. Tags []*Tag `locationNameList:"Tag" type:"list"` - // A value that is set to true to restore the DB cluster to the latest restorable + // A value that is set to true to restore the cluster to the latest restorable // backup time, and false otherwise. // // Default: false @@ -11218,7 +11202,7 @@ type RestoreDBClusterToPointInTimeInput struct { // Constraints: Cannot be specified if the RestoreToTime parameter is provided. UseLatestRestorableTime *bool `type:"boolean"` - // A list of VPC security groups that the new DB cluster belongs to. + // A list of VPC security groups that the new cluster belongs to. VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"` } @@ -11317,7 +11301,7 @@ func (s *RestoreDBClusterToPointInTimeInput) SetVpcSecurityGroupIds(v []*string) type RestoreDBClusterToPointInTimeOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster. + // Detailed information about a cluster. DBCluster *DBCluster `type:"structure"` } @@ -11378,7 +11362,7 @@ func (s *StartDBClusterInput) SetDBClusterIdentifier(v string) *StartDBClusterIn type StartDBClusterOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster. + // Detailed information about a cluster. DBCluster *DBCluster `type:"structure"` } @@ -11439,7 +11423,7 @@ func (s *StopDBClusterInput) SetDBClusterIdentifier(v string) *StopDBClusterInpu type StopDBClusterOutput struct { _ struct{} `type:"structure"` - // Detailed information about a DB cluster. + // Detailed information about a cluster. DBCluster *DBCluster `type:"structure"` } @@ -11541,7 +11525,7 @@ func (s *Tag) SetValue(v string) *Tag { return s } -// The version of the database engine that a DB instance can be upgraded to. +// The version of the database engine that an instance can be upgraded to. type UpgradeTarget struct { _ struct{} `type:"structure"` @@ -11549,7 +11533,7 @@ type UpgradeTarget struct { // DB instances that have AutoMinorVersionUpgrade set to true. AutoUpgrade *bool `type:"boolean"` - // The version of the database engine that a DB instance can be upgraded to. + // The version of the database engine that an instance can be upgraded to. Description *string `type:"string"` // The name of the upgrade target database engine. diff --git a/vendor/github.com/aws/aws-sdk-go/service/docdb/errors.go b/vendor/github.com/aws/aws-sdk-go/service/docdb/errors.go index cbce0b232e4..98309f9a33e 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/docdb/errors.go +++ b/vendor/github.com/aws/aws-sdk-go/service/docdb/errors.go @@ -8,7 +8,7 @@ const ( // "AuthorizationNotFound". // // The specified CIDR IP or Amazon EC2 security group isn't authorized for the - // specified DB security group. + // specified security group. // // Amazon DocumentDB also might not be authorized to perform necessary actions // on your behalf using IAM. @@ -23,76 +23,75 @@ const ( // ErrCodeDBClusterAlreadyExistsFault for service response error code // "DBClusterAlreadyExistsFault". // - // You already have a DB cluster with the given identifier. + // You already have a cluster with the given identifier. ErrCodeDBClusterAlreadyExistsFault = "DBClusterAlreadyExistsFault" // ErrCodeDBClusterNotFoundFault for service response error code // "DBClusterNotFoundFault". // - // DBClusterIdentifier doesn't refer to an existing DB cluster. + // DBClusterIdentifier doesn't refer to an existing cluster. ErrCodeDBClusterNotFoundFault = "DBClusterNotFoundFault" // ErrCodeDBClusterParameterGroupNotFoundFault for service response error code // "DBClusterParameterGroupNotFound". // - // DBClusterParameterGroupName doesn't refer to an existing DB cluster parameter + // DBClusterParameterGroupName doesn't refer to an existing cluster parameter // group. ErrCodeDBClusterParameterGroupNotFoundFault = "DBClusterParameterGroupNotFound" // ErrCodeDBClusterQuotaExceededFault for service response error code // "DBClusterQuotaExceededFault". // - // The DB cluster can't be created because you have reached the maximum allowed - // quota of DB clusters. + // The cluster can't be created because you have reached the maximum allowed + // quota of clusters. ErrCodeDBClusterQuotaExceededFault = "DBClusterQuotaExceededFault" // ErrCodeDBClusterSnapshotAlreadyExistsFault for service response error code // "DBClusterSnapshotAlreadyExistsFault". // - // You already have a DB cluster snapshot with the given identifier. + // You already have a cluster snapshot with the given identifier. ErrCodeDBClusterSnapshotAlreadyExistsFault = "DBClusterSnapshotAlreadyExistsFault" // ErrCodeDBClusterSnapshotNotFoundFault for service response error code // "DBClusterSnapshotNotFoundFault". // - // DBClusterSnapshotIdentifier doesn't refer to an existing DB cluster snapshot. + // DBClusterSnapshotIdentifier doesn't refer to an existing cluster snapshot. ErrCodeDBClusterSnapshotNotFoundFault = "DBClusterSnapshotNotFoundFault" // ErrCodeDBInstanceAlreadyExistsFault for service response error code // "DBInstanceAlreadyExists". // - // You already have a DB instance with the given identifier. + // You already have a instance with the given identifier. ErrCodeDBInstanceAlreadyExistsFault = "DBInstanceAlreadyExists" // ErrCodeDBInstanceNotFoundFault for service response error code // "DBInstanceNotFound". // - // DBInstanceIdentifier doesn't refer to an existing DB instance. + // DBInstanceIdentifier doesn't refer to an existing instance. ErrCodeDBInstanceNotFoundFault = "DBInstanceNotFound" // ErrCodeDBParameterGroupAlreadyExistsFault for service response error code // "DBParameterGroupAlreadyExists". // - // A DB parameter group with the same name already exists. + // A parameter group with the same name already exists. ErrCodeDBParameterGroupAlreadyExistsFault = "DBParameterGroupAlreadyExists" // ErrCodeDBParameterGroupNotFoundFault for service response error code // "DBParameterGroupNotFound". // - // DBParameterGroupName doesn't refer to an existing DB parameter group. + // DBParameterGroupName doesn't refer to an existing parameter group. ErrCodeDBParameterGroupNotFoundFault = "DBParameterGroupNotFound" // ErrCodeDBParameterGroupQuotaExceededFault for service response error code // "DBParameterGroupQuotaExceeded". // - // This request would cause you to exceed the allowed number of DB parameter - // groups. + // This request would cause you to exceed the allowed number of parameter groups. ErrCodeDBParameterGroupQuotaExceededFault = "DBParameterGroupQuotaExceeded" // ErrCodeDBSecurityGroupNotFoundFault for service response error code // "DBSecurityGroupNotFound". // - // DBSecurityGroupName doesn't refer to an existing DB security group. + // DBSecurityGroupName doesn't refer to an existing security group. ErrCodeDBSecurityGroupNotFoundFault = "DBSecurityGroupNotFound" // ErrCodeDBSnapshotAlreadyExistsFault for service response error code @@ -104,64 +103,63 @@ const ( // ErrCodeDBSnapshotNotFoundFault for service response error code // "DBSnapshotNotFound". // - // DBSnapshotIdentifier doesn't refer to an existing DB snapshot. + // DBSnapshotIdentifier doesn't refer to an existing snapshot. ErrCodeDBSnapshotNotFoundFault = "DBSnapshotNotFound" // ErrCodeDBSubnetGroupAlreadyExistsFault for service response error code // "DBSubnetGroupAlreadyExists". // - // DBSubnetGroupName is already being used by an existing DB subnet group. + // DBSubnetGroupName is already being used by an existing subnet group. ErrCodeDBSubnetGroupAlreadyExistsFault = "DBSubnetGroupAlreadyExists" // ErrCodeDBSubnetGroupDoesNotCoverEnoughAZs for service response error code // "DBSubnetGroupDoesNotCoverEnoughAZs". // - // Subnets in the DB subnet group should cover at least two Availability Zones + // Subnets in the subnet group should cover at least two Availability Zones // unless there is only one Availability Zone. ErrCodeDBSubnetGroupDoesNotCoverEnoughAZs = "DBSubnetGroupDoesNotCoverEnoughAZs" // ErrCodeDBSubnetGroupNotFoundFault for service response error code // "DBSubnetGroupNotFoundFault". // - // DBSubnetGroupName doesn't refer to an existing DB subnet group. + // DBSubnetGroupName doesn't refer to an existing subnet group. ErrCodeDBSubnetGroupNotFoundFault = "DBSubnetGroupNotFoundFault" // ErrCodeDBSubnetGroupQuotaExceededFault for service response error code // "DBSubnetGroupQuotaExceeded". // - // The request would cause you to exceed the allowed number of DB subnet groups. + // The request would cause you to exceed the allowed number of subnet groups. ErrCodeDBSubnetGroupQuotaExceededFault = "DBSubnetGroupQuotaExceeded" // ErrCodeDBSubnetQuotaExceededFault for service response error code // "DBSubnetQuotaExceededFault". // // The request would cause you to exceed the allowed number of subnets in a - // DB subnet group. + // subnet group. ErrCodeDBSubnetQuotaExceededFault = "DBSubnetQuotaExceededFault" // ErrCodeDBUpgradeDependencyFailureFault for service response error code // "DBUpgradeDependencyFailure". // - // The DB upgrade failed because a resource that the DB depends on can't be - // modified. + // The upgrade failed because a resource that the depends on can't be modified. ErrCodeDBUpgradeDependencyFailureFault = "DBUpgradeDependencyFailure" // ErrCodeInstanceQuotaExceededFault for service response error code // "InstanceQuotaExceeded". // - // The request would cause you to exceed the allowed number of DB instances. + // The request would cause you to exceed the allowed number of instances. ErrCodeInstanceQuotaExceededFault = "InstanceQuotaExceeded" // ErrCodeInsufficientDBClusterCapacityFault for service response error code // "InsufficientDBClusterCapacityFault". // - // The DB cluster doesn't have enough capacity for the current operation. + // The cluster doesn't have enough capacity for the current operation. ErrCodeInsufficientDBClusterCapacityFault = "InsufficientDBClusterCapacityFault" // ErrCodeInsufficientDBInstanceCapacityFault for service response error code // "InsufficientDBInstanceCapacity". // - // The specified DB instance class isn't available in the specified Availability + // The specified instance class isn't available in the specified Availability // Zone. ErrCodeInsufficientDBInstanceCapacityFault = "InsufficientDBInstanceCapacity" @@ -176,51 +174,51 @@ const ( // ErrCodeInvalidDBClusterSnapshotStateFault for service response error code // "InvalidDBClusterSnapshotStateFault". // - // The provided value isn't a valid DB cluster snapshot state. + // The provided value isn't a valid cluster snapshot state. ErrCodeInvalidDBClusterSnapshotStateFault = "InvalidDBClusterSnapshotStateFault" // ErrCodeInvalidDBClusterStateFault for service response error code // "InvalidDBClusterStateFault". // - // The DB cluster isn't in a valid state. + // The cluster isn't in a valid state. ErrCodeInvalidDBClusterStateFault = "InvalidDBClusterStateFault" // ErrCodeInvalidDBInstanceStateFault for service response error code // "InvalidDBInstanceState". // - // The specified DB instance isn't in the available state. + // The specified instance isn't in the available state. ErrCodeInvalidDBInstanceStateFault = "InvalidDBInstanceState" // ErrCodeInvalidDBParameterGroupStateFault for service response error code // "InvalidDBParameterGroupState". // - // The DB parameter group is in use, or it is in a state that is not valid. - // If you are trying to delete the parameter group, you can't delete it when - // the parameter group is in this state. + // The parameter group is in use, or it is in a state that is not valid. If + // you are trying to delete the parameter group, you can't delete it when the + // parameter group is in this state. ErrCodeInvalidDBParameterGroupStateFault = "InvalidDBParameterGroupState" // ErrCodeInvalidDBSecurityGroupStateFault for service response error code // "InvalidDBSecurityGroupState". // - // The state of the DB security group doesn't allow deletion. + // The state of the security group doesn't allow deletion. ErrCodeInvalidDBSecurityGroupStateFault = "InvalidDBSecurityGroupState" // ErrCodeInvalidDBSnapshotStateFault for service response error code // "InvalidDBSnapshotState". // - // The state of the DB snapshot doesn't allow deletion. + // The state of the snapshot doesn't allow deletion. ErrCodeInvalidDBSnapshotStateFault = "InvalidDBSnapshotState" // ErrCodeInvalidDBSubnetGroupStateFault for service response error code // "InvalidDBSubnetGroupStateFault". // - // The DB subnet group can't be deleted because it's in use. + // The subnet group can't be deleted because it's in use. ErrCodeInvalidDBSubnetGroupStateFault = "InvalidDBSubnetGroupStateFault" // ErrCodeInvalidDBSubnetStateFault for service response error code // "InvalidDBSubnetStateFault". // - // The DB subnet isn't in the available state. + // The subnet isn't in the available state. ErrCodeInvalidDBSubnetStateFault = "InvalidDBSubnetStateFault" // ErrCodeInvalidRestoreFault for service response error code @@ -240,7 +238,7 @@ const ( // ErrCodeInvalidVPCNetworkStateFault for service response error code // "InvalidVPCNetworkStateFault". // - // The DB subnet group doesn't cover all Availability Zones after it is created + // The subnet group doesn't cover all Availability Zones after it is created // because of changes that were made. ErrCodeInvalidVPCNetworkStateFault = "InvalidVPCNetworkStateFault" @@ -266,14 +264,14 @@ const ( // ErrCodeSnapshotQuotaExceededFault for service response error code // "SnapshotQuotaExceeded". // - // The request would cause you to exceed the allowed number of DB snapshots. + // The request would cause you to exceed the allowed number of snapshots. ErrCodeSnapshotQuotaExceededFault = "SnapshotQuotaExceeded" // ErrCodeStorageQuotaExceededFault for service response error code // "StorageQuotaExceeded". // // The request would cause you to exceed the allowed amount of storage available - // across all DB instances. + // across all instances. ErrCodeStorageQuotaExceededFault = "StorageQuotaExceeded" // ErrCodeStorageTypeNotSupportedFault for service response error code @@ -285,6 +283,6 @@ const ( // ErrCodeSubnetAlreadyInUse for service response error code // "SubnetAlreadyInUse". // - // The DB subnet is already in use in the Availability Zone. + // The subnet is already in use in the Availability Zone. ErrCodeSubnetAlreadyInUse = "SubnetAlreadyInUse" ) diff --git a/vendor/github.com/aws/aws-sdk-go/service/dynamodb/api.go b/vendor/github.com/aws/aws-sdk-go/service/dynamodb/api.go index 5fe0248729c..4378008b1f7 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/dynamodb/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/dynamodb/api.go @@ -5,6 +5,7 @@ package dynamodb import ( "fmt" "net/url" + "strings" "time" "github.com/aws/aws-sdk-go/aws" @@ -1661,6 +1662,7 @@ type discovererDescribeEndpoints struct { EndpointCache *crr.EndpointCache Params map[string]*string Key string + req *request.Request } func (d *discovererDescribeEndpoints) Discover() (crr.Endpoint, error) { @@ -1680,8 +1682,19 @@ func (d *discovererDescribeEndpoints) Discover() (crr.Endpoint, error) { continue } + address := *e.Address + + var scheme string + if idx := strings.Index(address, "://"); idx != -1 { + scheme = address[:idx] + } + + if len(scheme) == 0 { + address = fmt.Sprintf("%s://%s", d.req.HTTPRequest.URL.Scheme, address) + } + cachedInMinutes := aws.Int64Value(e.CachePeriodInMinutes) - u, err := url.Parse(*e.Address) + u, err := url.Parse(address) if err != nil { continue } @@ -1702,6 +1715,7 @@ func (d *discovererDescribeEndpoints) Discover() (crr.Endpoint, error) { func (d *discovererDescribeEndpoints) Handler(r *request.Request) { endpointKey := crr.BuildEndpointKey(d.Params) d.Key = endpointKey + d.req = r endpoint, err := d.EndpointCache.Get(d, endpointKey, d.Required) if err != nil { @@ -12238,7 +12252,13 @@ type ListGlobalTablesInput struct { // The first global table name that this operation will evaluate. ExclusiveStartGlobalTableName *string `min:"3" type:"string"` - // The maximum number of table names to return. + // The maximum number of table names to return, if the parameter is not specified + // DynamoDB defaults to 100. + // + // If the number of global tables DynamoDB finds reaches this limit, it stops + // the operation and returns the table names collected up to that point, with + // a table name in the LastEvaluatedGlobalTableName to apply in a subsequent + // operation to the ExclusiveStartGlobalTableName parameter. Limit *int64 `min:"1" type:"integer"` // Lists the global tables in a specific Region. @@ -15490,6 +15510,9 @@ type RestoreTableFromBackupInput struct { // Provisioned throughput settings for the restored table. ProvisionedThroughputOverride *ProvisionedThroughput `type:"structure"` + // The new server-side encryption settings for the restored table. + SSESpecificationOverride *SSESpecification `type:"structure"` + // The name of the new table to which the backup must be restored. // // TargetTableName is a required field @@ -15583,6 +15606,12 @@ func (s *RestoreTableFromBackupInput) SetProvisionedThroughputOverride(v *Provis return s } +// SetSSESpecificationOverride sets the SSESpecificationOverride field's value. +func (s *RestoreTableFromBackupInput) SetSSESpecificationOverride(v *SSESpecification) *RestoreTableFromBackupInput { + s.SSESpecificationOverride = v + return s +} + // SetTargetTableName sets the TargetTableName field's value. func (s *RestoreTableFromBackupInput) SetTargetTableName(v string) *RestoreTableFromBackupInput { s.TargetTableName = &v @@ -15634,10 +15663,15 @@ type RestoreTableToPointInTimeInput struct { // Time in the past to restore the table to. RestoreDateTime *time.Time `type:"timestamp"` + // The new server-side encryption settings for the restored table. + SSESpecificationOverride *SSESpecification `type:"structure"` + + // The DynamoDB table that will be restored. This value is an Amazon Resource + // Name (ARN). + SourceTableArn *string `type:"string"` + // Name of the source table that is being restored. - // - // SourceTableName is a required field - SourceTableName *string `min:"3" type:"string" required:"true"` + SourceTableName *string `min:"3" type:"string"` // The name of the new table to which it must be restored to. // @@ -15662,9 +15696,6 @@ func (s RestoreTableToPointInTimeInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *RestoreTableToPointInTimeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RestoreTableToPointInTimeInput"} - if s.SourceTableName == nil { - invalidParams.Add(request.NewErrParamRequired("SourceTableName")) - } if s.SourceTableName != nil && len(*s.SourceTableName) < 3 { invalidParams.Add(request.NewErrParamMinLen("SourceTableName", 3)) } @@ -15736,6 +15767,18 @@ func (s *RestoreTableToPointInTimeInput) SetRestoreDateTime(v time.Time) *Restor return s } +// SetSSESpecificationOverride sets the SSESpecificationOverride field's value. +func (s *RestoreTableToPointInTimeInput) SetSSESpecificationOverride(v *SSESpecification) *RestoreTableToPointInTimeInput { + s.SSESpecificationOverride = v + return s +} + +// SetSourceTableArn sets the SourceTableArn field's value. +func (s *RestoreTableToPointInTimeInput) SetSourceTableArn(v string) *RestoreTableToPointInTimeInput { + s.SourceTableArn = &v + return s +} + // SetSourceTableName sets the SourceTableName field's value. func (s *RestoreTableToPointInTimeInput) SetSourceTableName(v string) *RestoreTableToPointInTimeInput { s.SourceTableName = &v diff --git a/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go b/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go index a7e91197c3c..00760d6ef80 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go @@ -787,6 +787,9 @@ func (c *EC2) AssignIpv6AddressesRequest(input *AssignIpv6AddressesInput) (req * // Type (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI) // in the Amazon Elastic Compute Cloud User Guide. // +// You must specify either the IPv6 addresses or the IPv6 address count in the +// request. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -878,6 +881,8 @@ func (c *EC2) AssignPrivateIpAddressesRequest(input *AssignPrivateIpAddressesInp // address from one network interface to another, check network/interfaces/macs/mac/local-ipv4s // in the instance metadata to confirm that the remapping is complete. // +// You must specify either the IP addresses or the IP address count in the request. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -1608,6 +1613,9 @@ func (c *EC2) AssociateVpcCidrBlockRequest(input *AssociateVpcCidrBlockInput) (r // (BYOIP (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html)). // The IPv6 CIDR block size is fixed at /56. // +// You must specify one of the following in the request: an IPv4 CIDR block, +// an IPv6 pool, or an Amazon-provided IPv6 CIDR block. +// // For more information about associating CIDR blocks with your VPC and applicable // restrictions, see VPC and Subnet Sizing (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html#VPC_Sizing) // in the Amazon Virtual Private Cloud User Guide. @@ -20166,7 +20174,7 @@ func (c *EC2) DescribeSnapshotsRequest(input *DescribeSnapshotsInput) (req *requ // * implicit: An AWS account has implicit create volume permissions for // all snapshots it owns. // -// The list of snapshots returned can be modified by specifying snapshot IDs, +// The list of snapshots returned can be filtered by specifying snapshot IDs, // snapshot owners, or AWS accounts with create volume permissions. If no options // are specified, Amazon EC2 returns all snapshots for which you have create // volume permissions. @@ -20193,6 +20201,8 @@ func (c *EC2) DescribeSnapshotsRequest(input *DescribeSnapshotsInput) (req *requ // a NextToken value that can be passed to a subsequent DescribeSnapshots request // to retrieve the remaining results. // +// To get the state of fast snapshot restores for a snapshot, use DescribeFastSnapshotRestores. +// // For more information about EBS snapshots, see Amazon EBS Snapshots (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSSnapshots.html) // in the Amazon Elastic Compute Cloud User Guide. // @@ -26012,6 +26022,9 @@ func (c *EC2) EnableFastSnapshotRestoresRequest(input *EnableFastSnapshotRestore // state. To get the current state of fast snapshot restores, use DescribeFastSnapshotRestores. // To disable fast snapshot restores, use DisableFastSnapshotRestores. // +// For more information, see Amazon EBS Fast Snapshot Restore (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-fast-snapshot-restore.html) +// in the Amazon Elastic Compute Cloud User Guide. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -32519,20 +32532,23 @@ func (c *EC2) RegisterImageRequest(input *RegisterImageInput) (req *request.Requ // and SUSE Linux Enterprise Server (SLES), use the EC2 billing product code // associated with an AMI to verify the subscription status for package updates. // To create a new AMI for operating systems that require a billing product -// code, do the following: +// code, instead of registering the AMI, do the following to preserve the billing +// product code association: // // Launch an instance from an existing AMI with that billing product code. // // Customize the instance. // -// Create a new AMI from the instance using CreateImage to preserve the billing -// product code association. +// Create an AMI from the instance using CreateImage. // // If you purchase a Reserved Instance to apply to an On-Demand Instance that // was launched from an AMI with a billing product code, make sure that the // Reserved Instance has the matching billing product code. If you purchase // a Reserved Instance without the matching billing product code, the Reserved -// Instance will not be applied to the On-Demand Instance. +// Instance will not be applied to the On-Demand Instance. For information about +// how to obtain the platform details and billing information of an AMI, see +// Obtaining Billing Information (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-billing-info.html) +// in the Amazon Elastic Compute Cloud User Guide. // // If needed, you can deregister an AMI at any time. Any modifications you make // to an AMI backed by an instance store volume invalidates its registration. @@ -33828,9 +33844,9 @@ func (c *EC2) RequestSpotFleetRequest(input *RequestSpotFleetInput) (req *reques // ensuring that the Spot Instances in your Spot Fleet are in different Spot // pools, you can improve the availability of your fleet. // -// You can specify tags for the Spot Instances. You cannot tag other resource -// types in a Spot Fleet request because only the instance resource type is -// supported. +// You can specify tags for the Spot Fleet and Spot Instances. You cannot tag +// other resource types in a Spot Fleet request because only the spot-fleet-request +// and instance resource types are supported. // // For more information, see Spot Fleet Requests (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html) // in the Amazon EC2 User Guide for Linux Instances. @@ -35505,9 +35521,9 @@ func (c *EC2) StopInstancesRequest(input *StopInstancesInput) (req *request.Requ // your Linux instance, Amazon EC2 charges a one-minute minimum for instance // usage, and thereafter charges per second for instance usage. // -// You can't start, stop, or hibernate Spot Instances, and you can't stop or -// hibernate instance store-backed instances. For information about using hibernation -// for Spot Instances, see Hibernating Interrupted Spot Instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-interruptions.html#hibernate-spot-instances) +// You can't hibernate Spot Instances, and you can't stop or hibernate instance +// store-backed instances. For information about using hibernation for Spot +// Instances, see Hibernating Interrupted Spot Instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-interruptions.html#hibernate-spot-instances) // in the Amazon Elastic Compute Cloud User Guide. // // When you stop or hibernate an instance, we shut it down. You can restart @@ -44612,6 +44628,17 @@ type CreateFlowLogsInput struct { // or LogGroupName. LogGroupName *string `type:"string"` + // The maximum interval of time during which a flow of packets is captured and + // aggregated into a flow log record. You can specify 60 seconds (1 minute) + // or 600 seconds (10 minutes). + // + // When a network interface is attached to a Nitro-based instance (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances), + // the aggregation interval is always 60 seconds or less, regardless of the + // value that you specify. + // + // Default: 600 + MaxAggregationInterval *int64 `type:"integer"` + // The ID of the subnet, network interface, or VPC for which you want to create // a flow log. // @@ -44704,6 +44731,12 @@ func (s *CreateFlowLogsInput) SetLogGroupName(v string) *CreateFlowLogsInput { return s } +// SetMaxAggregationInterval sets the MaxAggregationInterval field's value. +func (s *CreateFlowLogsInput) SetMaxAggregationInterval(v int64) *CreateFlowLogsInput { + s.MaxAggregationInterval = &v + return s +} + // SetResourceIds sets the ResourceIds field's value. func (s *CreateFlowLogsInput) SetResourceIds(v []*string) *CreateFlowLogsInput { s.ResourceIds = v @@ -48578,10 +48611,18 @@ type CreateVolumeInput struct { // fails. KmsKeyId *string `type:"string"` + // Specifies whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach, + // you can attach the volume to up to 16 Nitro-based instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances) + // in the same Availability Zone. For more information, see Amazon EBS Multi-Attach + // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volumes-multi.html) + // in the Amazon Elastic Compute Cloud User Guide. + MultiAttachEnabled *bool `type:"boolean"` + // The Amazon Resource Name (ARN) of the Outpost. OutpostArn *string `type:"string"` - // The size of the volume, in GiBs. + // The size of the volume, in GiBs. You must specify either a snapshot ID or + // a volume size. // // Constraints: 1-16,384 for gp2, 4-16,384 for io1, 500-16,384 for st1, 500-16,384 // for sc1, and 1-1,024 for standard. If you specify a snapshot, the volume @@ -48589,13 +48630,10 @@ type CreateVolumeInput struct { // // Default: If you're creating the volume from a snapshot and don't specify // a volume size, the default is the snapshot size. - // - // At least one of Size or SnapshotId is required. Size *int64 `type:"integer"` - // The snapshot from which to create the volume. - // - // At least one of Size or SnapshotId are required. + // The snapshot from which to create the volume. You must specify either a snapshot + // ID or a volume size. SnapshotId *string `type:"string"` // The tags to apply to the volume during creation. @@ -48662,6 +48700,12 @@ func (s *CreateVolumeInput) SetKmsKeyId(v string) *CreateVolumeInput { return s } +// SetMultiAttachEnabled sets the MultiAttachEnabled field's value. +func (s *CreateVolumeInput) SetMultiAttachEnabled(v bool) *CreateVolumeInput { + s.MultiAttachEnabled = &v + return s +} + // SetOutpostArn sets the OutpostArn field's value. func (s *CreateVolumeInput) SetOutpostArn(v string) *CreateVolumeInput { s.OutpostArn = &v @@ -48936,6 +48980,9 @@ type CreateVpcEndpointInput struct { // endpoint network interface. SubnetIds []*string `locationName:"SubnetId" locationNameList:"item" type:"list"` + // The tags to associate with the endpoint. + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` + // The type of endpoint. // // Default: Gateway @@ -49021,6 +49068,12 @@ func (s *CreateVpcEndpointInput) SetSubnetIds(v []*string) *CreateVpcEndpointInp return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *CreateVpcEndpointInput) SetTagSpecifications(v []*TagSpecification) *CreateVpcEndpointInput { + s.TagSpecifications = v + return s +} + // SetVpcEndpointType sets the VpcEndpointType field's value. func (s *CreateVpcEndpointInput) SetVpcEndpointType(v string) *CreateVpcEndpointInput { s.VpcEndpointType = &v @@ -49092,6 +49145,9 @@ type CreateVpcEndpointServiceConfigurationInput struct { // The private DNS name to assign to the VPC endpoint service. PrivateDnsName *string `type:"string"` + + // The tags to associate with the service. + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` } // String returns the string representation @@ -49147,6 +49203,12 @@ func (s *CreateVpcEndpointServiceConfigurationInput) SetPrivateDnsName(v string) return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *CreateVpcEndpointServiceConfigurationInput) SetTagSpecifications(v []*TagSpecification) *CreateVpcEndpointServiceConfigurationInput { + s.TagSpecifications = v + return s +} + type CreateVpcEndpointServiceConfigurationOutput struct { _ struct{} `type:"structure"` @@ -61701,6 +61763,19 @@ func (s *DescribePrincipalIdFormatOutput) SetPrincipals(v []*PrincipalIdFormat) type DescribePublicIpv4PoolsInput struct { _ struct{} `type:"structure"` + // One or more filters. + // + // * tag: - The key/value combination of a tag assigned to the resource. + // Use the tag key in the filter name and the tag value as the filter value. + // For example, to find all resources that have a tag with the key Owner + // and the value TeamA, specify tag:Owner for the filter name and TeamA for + // the filter value. + // + // * tag-key - The key of a tag assigned to the resource. Use this filter + // to find all resources assigned a tag with a specific key, regardless of + // the tag value. + Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` + // The maximum number of results to return with a single call. To retrieve the // remaining results, make another call with the returned nextToken value. MaxResults *int64 `min:"1" type:"integer"` @@ -61735,6 +61810,12 @@ func (s *DescribePublicIpv4PoolsInput) Validate() error { return nil } +// SetFilters sets the Filters field's value. +func (s *DescribePublicIpv4PoolsInput) SetFilters(v []*Filter) *DescribePublicIpv4PoolsInput { + s.Filters = v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *DescribePublicIpv4PoolsInput) SetMaxResults(v int64) *DescribePublicIpv4PoolsInput { s.MaxResults = &v @@ -65966,6 +66047,12 @@ type DescribeVolumesInput struct { // // * encrypted - Indicates whether the volume is encrypted (true | false) // + // * multi-attach-enabled - Indicates whether the volume is enabled for Multi-Attach + // (true | false) + // + // * fast-restored - Indicates whether the volume was created from a snapshot + // that is enabled for fast snapshot restore (true | false). + // // * size - The size of the volume, in GiB. // // * snapshot-id - The snapshot from which the volume was created. @@ -66060,9 +66147,9 @@ type DescribeVolumesModificationsInput struct { // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` - // The filters. Supported filters: volume-id, modification-state, target-size, - // target-iops, target-volume-type, original-size, original-iops, original-volume-type, - // start-time. + // The filters. Supported filters: volume-id | modification-state | target-size + // | target-iops | target-volume-type | original-size | original-iops | original-volume-type + // | start-time | originalMultiAttachEnabled | targetMultiAttachEnabled. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The maximum number of results (up to a limit of 500) to be returned in a @@ -67937,7 +68024,8 @@ type DetachVolumeInput struct { // and repair procedures. Force *bool `type:"boolean"` - // The ID of the instance. + // The ID of the instance. If you are detaching a Multi-Attach enabled volume, + // you must specify an instance ID. InstanceId *string `type:"string"` // The ID of the volume. @@ -68669,6 +68757,8 @@ func (s *DisableTransitGatewayRouteTablePropagationOutput) SetPropagation(v *Tra type DisableVgwRoutePropagationInput struct { _ struct{} `type:"structure"` + DryRun *bool `type:"boolean"` + // The ID of the virtual private gateway. // // GatewayId is a required field @@ -68706,6 +68796,12 @@ func (s *DisableVgwRoutePropagationInput) Validate() error { return nil } +// SetDryRun sets the DryRun field's value. +func (s *DisableVgwRoutePropagationInput) SetDryRun(v bool) *DisableVgwRoutePropagationInput { + s.DryRun = &v + return s +} + // SetGatewayId sets the GatewayId field's value. func (s *DisableVgwRoutePropagationInput) SetGatewayId(v string) *DisableVgwRoutePropagationInput { s.GatewayId = &v @@ -69802,6 +69898,8 @@ type EbsBlockDevice struct { // // Encrypted volumes can only be attached to instances that support Amazon EBS // encryption. For more information, see Supported Instance Types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#EBSEncryption_supported_instances). + // + // This parameter is not returned by . Encrypted *bool `locationName:"encrypted" type:"boolean"` // The number of I/O operations per second (IOPS) that the volume supports. @@ -70854,6 +70952,8 @@ func (s *EnableTransitGatewayRouteTablePropagationOutput) SetPropagation(v *Tran type EnableVgwRoutePropagationInput struct { _ struct{} `type:"structure"` + DryRun *bool `type:"boolean"` + // The ID of the virtual private gateway that is attached to a VPC. The virtual // private gateway must be attached to the same VPC that the routing tables // are associated with. @@ -70894,6 +70994,12 @@ func (s *EnableVgwRoutePropagationInput) Validate() error { return nil } +// SetDryRun sets the DryRun field's value. +func (s *EnableVgwRoutePropagationInput) SetDryRun(v bool) *EnableVgwRoutePropagationInput { + s.DryRun = &v + return s +} + // SetGatewayId sets the GatewayId field's value. func (s *EnableVgwRoutePropagationInput) SetGatewayId(v string) *EnableVgwRoutePropagationInput { s.GatewayId = &v @@ -72543,7 +72649,9 @@ type FleetLaunchTemplateOverridesRequest struct { // override has the lowest priority. Priority *float64 `type:"double"` - // The ID of the subnet in which to launch the instances. + // The IDs of the subnets in which to launch the instances. Separate multiple + // subnet IDs using commas (for example, subnet-1234abcdeexample1, subnet-0987cdef6example2). + // A request of type instant can have only one subnet ID. SubnetId *string `type:"string"` // The number of units provided by the specified instance type. @@ -72761,6 +72869,16 @@ type FlowLog struct { // The name of the flow log group. LogGroupName *string `locationName:"logGroupName" type:"string"` + // The maximum interval of time, in seconds, during which a flow of packets + // is captured and aggregated into a flow log record. + // + // When a network interface is attached to a Nitro-based instance (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances), + // the aggregation interval is always 60 seconds (1 minute) or less, regardless + // of the specified value. + // + // Valid Values: 60 | 600 + MaxAggregationInterval *int64 `locationName:"maxAggregationInterval" type:"integer"` + // The ID of the resource on which the flow log was created. ResourceId *string `locationName:"resourceId" type:"string"` @@ -72838,6 +72956,12 @@ func (s *FlowLog) SetLogGroupName(v string) *FlowLog { return s } +// SetMaxAggregationInterval sets the MaxAggregationInterval field's value. +func (s *FlowLog) SetMaxAggregationInterval(v int64) *FlowLog { + s.MaxAggregationInterval = &v + return s +} + // SetResourceId sets the ResourceId field's value. func (s *FlowLog) SetResourceId(v string) *FlowLog { s.ResourceId = &v @@ -75989,6 +76113,11 @@ type Image struct { // This value is set to windows for Windows AMIs; otherwise, it is blank. Platform *string `locationName:"platform" type:"string" enum:"PlatformValues"` + // The platform details associated with the billing code of the AMI. For more + // information, see Obtaining Billing Information (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-billing-info.html) + // in the Amazon Elastic Compute Cloud User Guide. + PlatformDetails *string `locationName:"platformDetails" type:"string"` + // Any product codes associated with the AMI. ProductCodes []*ProductCode `locationName:"productCodes" locationNameList:"item" type:"list"` @@ -76022,6 +76151,14 @@ type Image struct { // Any tags assigned to the image. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` + // The operation of the Amazon EC2 instance and the billing code that is associated + // with the AMI. usageOperation corresponds to the lineitem/Operation (https://docs.aws.amazon.com/cur/latest/userguide/Lineitem-columns.html#Lineitem-details-O-Operation) + // column on your AWS Cost and Usage Report and in the AWS Price List API (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/price-changes.html). + // For the list of UsageOperation codes, see Platform Details and Usage Operation + // Billing Codes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-billing-info.html#billing-info) + // in the Amazon Elastic Compute Cloud User Guide. + UsageOperation *string `locationName:"usageOperation" type:"string"` + // The type of virtualization of the AMI. VirtualizationType *string `locationName:"virtualizationType" type:"string" enum:"VirtualizationType"` } @@ -76120,6 +76257,12 @@ func (s *Image) SetPlatform(v string) *Image { return s } +// SetPlatformDetails sets the PlatformDetails field's value. +func (s *Image) SetPlatformDetails(v string) *Image { + s.PlatformDetails = &v + return s +} + // SetProductCodes sets the ProductCodes field's value. func (s *Image) SetProductCodes(v []*ProductCode) *Image { s.ProductCodes = v @@ -76174,6 +76317,12 @@ func (s *Image) SetTags(v []*Tag) *Image { return s } +// SetUsageOperation sets the UsageOperation field's value. +func (s *Image) SetUsageOperation(v string) *Image { + s.UsageOperation = &v + return s +} + // SetVirtualizationType sets the VirtualizationType field's value. func (s *Image) SetVirtualizationType(v string) *Image { s.VirtualizationType = &v @@ -79116,6 +79265,9 @@ type InstanceNetworkInterfaceSpecification struct { Ipv6Addresses []*InstanceIpv6Address `locationName:"ipv6AddressesSet" queryName:"Ipv6Addresses" locationNameList:"item" type:"list"` // The ID of the network interface. + // + // If you are creating a Spot Fleet, omit this parameter because you can’t + // specify a network interface ID in a launch specification. NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` // The private IPv4 address of the network interface. Applies only if creating @@ -89694,12 +89846,16 @@ type Placement struct { // The affinity setting for the instance on the Dedicated Host. This parameter // is not supported for the ImportInstance command. + // + // This parameter is not supported by . Affinity *string `locationName:"affinity" type:"string"` // The Availability Zone of the instance. // // If not specified, an Availability Zone will be automatically chosen for you // based on the load balancing criteria for the Region. + // + // This parameter is not supported by . AvailabilityZone *string `locationName:"availabilityZone" type:"string"` // The name of the placement group the instance is in. @@ -89707,23 +89863,33 @@ type Placement struct { // The ID of the Dedicated Host on which the instance resides. This parameter // is not supported for the ImportInstance command. + // + // This parameter is not supported by . HostId *string `locationName:"hostId" type:"string"` // The ARN of the host resource group in which to launch the instances. If you // specify a host resource group ARN, omit the Tenancy parameter or set it to // host. + // + // This parameter is not supported by . HostResourceGroupArn *string `locationName:"hostResourceGroupArn" type:"string"` // The number of the partition the instance is in. Valid only if the placement // group strategy is set to partition. + // + // This parameter is not supported by . PartitionNumber *int64 `locationName:"partitionNumber" type:"integer"` // Reserved for future use. + // + // This parameter is not supported by . SpreadDomain *string `locationName:"spreadDomain" type:"string"` // The tenancy of the instance (if the instance is running in a VPC). An instance // with a tenancy of dedicated runs on single-tenant hardware. The host tenancy // is not supported for the ImportInstance command. + // + // This parameter is not supported by . Tenancy *string `locationName:"tenancy" type:"string" enum:"Tenancy"` } @@ -90590,6 +90756,9 @@ type PublicIpv4Pool struct { // The ID of the address pool. PoolId *string `locationName:"poolId" type:"string"` + // Any tags for the address pool. + Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` + // The total number of addresses. TotalAddressCount *int64 `locationName:"totalAddressCount" type:"integer"` @@ -90625,6 +90794,12 @@ func (s *PublicIpv4Pool) SetPoolId(v string) *PublicIpv4Pool { return s } +// SetTags sets the Tags field's value. +func (s *PublicIpv4Pool) SetTags(v []*Tag) *PublicIpv4Pool { + s.Tags = v + return s +} + // SetTotalAddressCount sets the TotalAddressCount field's value. func (s *PublicIpv4Pool) SetTotalAddressCount(v int64) *PublicIpv4Pool { s.TotalAddressCount = &v @@ -99709,6 +99884,9 @@ type SpotFleetRequestConfig struct { // The state of the Spot Fleet request. SpotFleetRequestState *string `locationName:"spotFleetRequestState" type:"string" enum:"BatchState"` + + // The tags for a Spot Fleet resource. + Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` } // String returns the string representation @@ -99751,6 +99929,12 @@ func (s *SpotFleetRequestConfig) SetSpotFleetRequestState(v string) *SpotFleetRe return s } +// SetTags sets the Tags field's value. +func (s *SpotFleetRequestConfig) SetTags(v []*Tag) *SpotFleetRequestConfig { + s.Tags = v + return s +} + // Describes the configuration of a Spot Fleet request. type SpotFleetRequestConfigData struct { _ struct{} `type:"structure"` @@ -99870,6 +100054,13 @@ type SpotFleetRequestConfigData struct { // The default is the On-Demand price. SpotPrice *string `locationName:"spotPrice" type:"string"` + // The key-value pair for tagging the Spot Fleet request on creation. The value + // for ResourceType must be spot-fleet-request, otherwise the Spot Fleet request + // fails. To tag instances at launch, specify the tags in the launch template + // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template). + // For information about tagging after launch, see Tagging Your Resources (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources). + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` + // The number of units to request for the Spot Fleet. You can choose to set // the target capacity in terms of instances or a performance characteristic // that is important to your application workload, such as vCPUs, memory, or @@ -100047,6 +100238,12 @@ func (s *SpotFleetRequestConfigData) SetSpotPrice(v string) *SpotFleetRequestCon return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *SpotFleetRequestConfigData) SetTagSpecifications(v []*TagSpecification) *SpotFleetRequestConfigData { + s.TagSpecifications = v + return s +} + // SetTargetCapacity sets the TargetCapacity field's value. func (s *SpotFleetRequestConfigData) SetTargetCapacity(v int64) *SpotFleetRequestConfigData { s.TargetCapacity = &v @@ -100081,8 +100278,8 @@ func (s *SpotFleetRequestConfigData) SetValidUntil(v time.Time) *SpotFleetReques type SpotFleetTagSpecification struct { _ struct{} `type:"structure"` - // The type of resource. Currently, the only resource type that is supported - // is instance. + // The type of resource. Currently, the only resource types that are supported + // are spot-fleet-request and instance. ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` // The tags. @@ -104256,7 +104453,7 @@ type TransitGatewayVpcAttachmentOptions struct { // Indicates whether DNS support is enabled. DnsSupport *string `locationName:"dnsSupport" type:"string" enum:"DnsSupportValue"` - // Indicates whether IPv6 support is enabled. + // Indicates whether IPv6 support is disabled. Ipv6Support *string `locationName:"ipv6Support" type:"string" enum:"Ipv6SupportValue"` } @@ -105354,6 +105551,9 @@ type Volume struct { // key for the volume. KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + // Indicates whether Amazon EBS Multi-Attach is enabled. + MultiAttachEnabled *bool `locationName:"multiAttachEnabled" type:"boolean"` + // The Amazon Resource Name (ARN) of the Outpost. OutpostArn *string `locationName:"outpostArn" type:"string"` @@ -105430,6 +105630,12 @@ func (s *Volume) SetKmsKeyId(v string) *Volume { return s } +// SetMultiAttachEnabled sets the MultiAttachEnabled field's value. +func (s *Volume) SetMultiAttachEnabled(v bool) *Volume { + s.MultiAttachEnabled = &v + return s +} + // SetOutpostArn sets the OutpostArn field's value. func (s *Volume) SetOutpostArn(v string) *Volume { s.OutpostArn = &v @@ -105757,6 +105963,39 @@ func (s *VolumeStatusAction) SetEventType(v string) *VolumeStatusAction { return s } +// Information about the instances to which the volume is attached. +type VolumeStatusAttachmentStatus struct { + _ struct{} `type:"structure"` + + // The ID of the attached instance. + InstanceId *string `locationName:"instanceId" type:"string"` + + // The maximum IOPS supported by the attached instance. + IoPerformance *string `locationName:"ioPerformance" type:"string"` +} + +// String returns the string representation +func (s VolumeStatusAttachmentStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s VolumeStatusAttachmentStatus) GoString() string { + return s.String() +} + +// SetInstanceId sets the InstanceId field's value. +func (s *VolumeStatusAttachmentStatus) SetInstanceId(v string) *VolumeStatusAttachmentStatus { + s.InstanceId = &v + return s +} + +// SetIoPerformance sets the IoPerformance field's value. +func (s *VolumeStatusAttachmentStatus) SetIoPerformance(v string) *VolumeStatusAttachmentStatus { + s.IoPerformance = &v + return s +} + // Describes a volume status. type VolumeStatusDetails struct { _ struct{} `type:"structure"` @@ -105803,6 +106042,9 @@ type VolumeStatusEvent struct { // The type of this event. EventType *string `locationName:"eventType" type:"string"` + // The ID of the instance associated with the event. + InstanceId *string `locationName:"instanceId" type:"string"` + // The latest end time of the event. NotAfter *time.Time `locationName:"notAfter" type:"timestamp"` @@ -105838,6 +106080,12 @@ func (s *VolumeStatusEvent) SetEventType(v string) *VolumeStatusEvent { return s } +// SetInstanceId sets the InstanceId field's value. +func (s *VolumeStatusEvent) SetInstanceId(v string) *VolumeStatusEvent { + s.InstanceId = &v + return s +} + // SetNotAfter sets the NotAfter field's value. func (s *VolumeStatusEvent) SetNotAfter(v time.Time) *VolumeStatusEvent { s.NotAfter = &v @@ -105890,6 +106138,9 @@ type VolumeStatusItem struct { // The details of the operation. Actions []*VolumeStatusAction `locationName:"actionsSet" locationNameList:"item" type:"list"` + // Information about the instances to which the volume is attached. + AttachmentStatuses []*VolumeStatusAttachmentStatus `locationName:"attachmentStatuses" locationNameList:"item" type:"list"` + // The Availability Zone of the volume. AvailabilityZone *string `locationName:"availabilityZone" type:"string"` @@ -105922,6 +106173,12 @@ func (s *VolumeStatusItem) SetActions(v []*VolumeStatusAction) *VolumeStatusItem return s } +// SetAttachmentStatuses sets the AttachmentStatuses field's value. +func (s *VolumeStatusItem) SetAttachmentStatuses(v []*VolumeStatusAttachmentStatus) *VolumeStatusItem { + s.AttachmentStatuses = v + return s +} + // SetAvailabilityZone sets the AvailabilityZone field's value. func (s *VolumeStatusItem) SetAvailabilityZone(v string) *VolumeStatusItem { s.AvailabilityZone = &v @@ -107083,7 +107340,7 @@ func (s *VpnStaticRoute) SetState(v string) *VpnStaticRoute { return s } -// The tunnel options for a VPN connection. +// The tunnel options for a single VPN tunnel. type VpnTunnelOptionsSpecification struct { _ struct{} `type:"structure"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/ecr/api.go b/vendor/github.com/aws/aws-sdk-go/service/ecr/api.go index 5fcf63e6bb3..2a5e6e3cd46 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ecr/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ecr/api.go @@ -57,8 +57,13 @@ func (c *ECR) BatchCheckLayerAvailabilityRequest(input *BatchCheckLayerAvailabil // BatchCheckLayerAvailability API operation for Amazon EC2 Container Registry. // -// Check the availability of multiple image layers in a specified registry and -// repository. +// Checks the availability of one or more image layers in a repository. +// +// When an image is pushed to a repository, each image layer is checked to verify +// if it has been uploaded before. If it is, then the image layer is skipped. +// +// When an image is pulled from a repository, each image layer is checked once +// to verify it is available to be pulled. // // This operation is used by the Amazon ECR proxy, and it is not intended for // general use by customers for pulling and pushing images. In most cases, you @@ -149,8 +154,8 @@ func (c *ECR) BatchDeleteImageRequest(input *BatchDeleteImageInput) (req *reques // BatchDeleteImage API operation for Amazon EC2 Container Registry. // -// Deletes a list of specified images within a specified repository. Images -// are specified with either imageTag or imageDigest. +// Deletes a list of specified images within a repository. Images are specified +// with either an imageTag or imageDigest. // // You can remove a tag from an image by specifying the image's tag in your // request. When you remove the last tag from an image, the image is deleted @@ -244,8 +249,11 @@ func (c *ECR) BatchGetImageRequest(input *BatchGetImageInput) (req *request.Requ // BatchGetImage API operation for Amazon EC2 Container Registry. // -// Gets detailed information for specified images within a specified repository. -// Images are specified with either imageTag or imageDigest. +// Gets detailed information for an image. Images are specified with either +// an imageTag or imageDigest. +// +// When an image is pulled, the BatchGetImage API is called once to retrieve +// the image manifest. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -336,6 +344,9 @@ func (c *ECR) CompleteLayerUploadRequest(input *CompleteLayerUploadInput) (req * // registry, repository name, and upload ID. You can optionally provide a sha256 // digest of the image layer for data validation purposes. // +// When an image is pushed, the CompleteLayerUpload API is called once per each +// new image layer to verify that the upload has completed. +// // This operation is used by the Amazon ECR proxy, and it is not intended for // general use by customers for pulling and pushing images. In most cases, you // should use the docker CLI to pull, tag, and push images. @@ -442,9 +453,7 @@ func (c *ECR) CreateRepositoryRequest(input *CreateRepositoryInput) (req *reques // CreateRepository API operation for Amazon EC2 Container Registry. // -// Creates an Amazon Elastic Container Registry (Amazon ECR) repository, where -// users can push and pull Docker images. For more information, see Amazon ECR -// Repositories (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Repositories.html) +// Creates a repository. For more information, see Amazon ECR Repositories (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Repositories.html) // in the Amazon Elastic Container Registry User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -546,7 +555,7 @@ func (c *ECR) DeleteLifecyclePolicyRequest(input *DeleteLifecyclePolicyInput) (r // DeleteLifecyclePolicy API operation for Amazon EC2 Container Registry. // -// Deletes the specified lifecycle policy. +// Deletes the lifecycle policy associated with the specified repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -636,8 +645,9 @@ func (c *ECR) DeleteRepositoryRequest(input *DeleteRepositoryInput) (req *reques // DeleteRepository API operation for Amazon EC2 Container Registry. // -// Deletes an existing image repository. If a repository contains images, you -// must use the force option to delete it. +// Deletes a repository. If the repository contains images, you must either +// delete all images in the repository or use the force option to delete the +// repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -728,7 +738,7 @@ func (c *ECR) DeleteRepositoryPolicyRequest(input *DeleteRepositoryPolicyInput) // DeleteRepositoryPolicy API operation for Amazon EC2 Container Registry. // -// Deletes the repository policy from a specified repository. +// Deletes the repository policy associated with the specified repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -825,7 +835,7 @@ func (c *ECR) DescribeImageScanFindingsRequest(input *DescribeImageScanFindingsI // DescribeImageScanFindings API operation for Amazon EC2 Container Registry. // -// Describes the image scan findings for the specified image. +// Returns the scan findings for the specified image. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -977,8 +987,7 @@ func (c *ECR) DescribeImagesRequest(input *DescribeImagesInput) (req *request.Re // DescribeImages API operation for Amazon EC2 Container Registry. // -// Returns metadata about the images in a repository, including image size, -// image tags, and creation date. +// Returns metadata about the images in a repository. // // Beginning with Docker version 1.9, the Docker client compresses image layers // before pushing them to a V2 Docker registry. The output of the docker images @@ -1270,14 +1279,16 @@ func (c *ECR) GetAuthorizationTokenRequest(input *GetAuthorizationTokenInput) (r // GetAuthorizationToken API operation for Amazon EC2 Container Registry. // -// Retrieves a token that is valid for a specified registry for 12 hours. This -// command allows you to use the docker CLI to push and pull images with Amazon -// ECR. If you do not specify a registry, the default registry is assumed. +// Retrieves an authorization token. An authorization token represents your +// IAM authentication credentials and can be used to access any Amazon ECR registry +// that your IAM principal has access to. The authorization token is valid for +// 12 hours. // -// The authorizationToken returned for each registry specified is a base64 encoded -// string that can be decoded and used in a docker login command to authenticate -// to a registry. The AWS CLI offers an aws ecr get-login command that simplifies -// the login process. +// The authorizationToken returned is a base64 encoded string that can be decoded +// and used in a docker login command to authenticate to a registry. The AWS +// CLI offers an get-login-password command that simplifies the login process. +// For more information, see Registry Authentication (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth) +// in the Amazon Elastic Container Registry User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1363,6 +1374,9 @@ func (c *ECR) GetDownloadUrlForLayerRequest(input *GetDownloadUrlForLayerInput) // Retrieves the pre-signed Amazon S3 download URL corresponding to an image // layer. You can only get URLs for image layers that are referenced in an image. // +// When an image is pulled, the GetDownloadUrlForLayer API is called once per +// image layer. +// // This operation is used by the Amazon ECR proxy, and it is not intended for // general use by customers for pulling and pushing images. In most cases, you // should use the docker CLI to pull, tag, and push images. @@ -1460,7 +1474,7 @@ func (c *ECR) GetLifecyclePolicyRequest(input *GetLifecyclePolicyInput) (req *re // GetLifecyclePolicy API operation for Amazon EC2 Container Registry. // -// Retrieves the specified lifecycle policy. +// Retrieves the lifecycle policy for the specified repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1556,7 +1570,8 @@ func (c *ECR) GetLifecyclePolicyPreviewRequest(input *GetLifecyclePolicyPreviewI // GetLifecyclePolicyPreview API operation for Amazon EC2 Container Registry. // -// Retrieves the results of the specified lifecycle policy preview request. +// Retrieves the results of the lifecycle policy preview request for the specified +// repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1698,7 +1713,7 @@ func (c *ECR) GetRepositoryPolicyRequest(input *GetRepositoryPolicyInput) (req * // GetRepositoryPolicy API operation for Amazon EC2 Container Registry. // -// Retrieves the repository policy for a specified repository. +// Retrieves the repository policy for the specified repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1789,7 +1804,11 @@ func (c *ECR) InitiateLayerUploadRequest(input *InitiateLayerUploadInput) (req * // InitiateLayerUpload API operation for Amazon EC2 Container Registry. // -// Notify Amazon ECR that you intend to upload an image layer. +// Notifies Amazon ECR that you intend to upload an image layer. +// +// When an image is pushed, the InitiateLayerUpload API is called once per image +// layer that has not already been uploaded. Whether an image layer has been +// uploaded before is determined by the BatchCheckLayerAvailability API action. // // This operation is used by the Amazon ECR proxy, and it is not intended for // general use by customers for pulling and pushing images. In most cases, you @@ -1886,13 +1905,14 @@ func (c *ECR) ListImagesRequest(input *ListImagesInput) (req *request.Request, o // ListImages API operation for Amazon EC2 Container Registry. // -// Lists all the image IDs for a given repository. +// Lists all the image IDs for the specified repository. // -// You can filter images based on whether or not they are tagged by setting -// the tagStatus parameter to TAGGED or UNTAGGED. For example, you can filter -// your results to return only UNTAGGED images and then pipe that result to -// a BatchDeleteImage operation to delete them. Or, you can filter your results -// to return only TAGGED images to list all of the tags in your repository. +// You can filter images based on whether or not they are tagged by using the +// tagStatus filter and specifying either TAGGED, UNTAGGED or ANY. For example, +// you can filter your results to return only UNTAGGED images and then pipe +// that result to a BatchDeleteImage operation to delete them. Or, you can filter +// your results to return only TAGGED images to list all of the tags in your +// repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2120,6 +2140,10 @@ func (c *ECR) PutImageRequest(input *PutImageInput) (req *request.Request, outpu // // Creates or updates the image manifest and tags associated with an image. // +// When an image is pushed and all new image layers have been uploaded, the +// PutImage API is called once to create or update the image manifest and tags +// associated with the image. +// // This operation is used by the Amazon ECR proxy, and it is not intended for // general use by customers for pulling and pushing images. In most cases, you // should use the docker CLI to pull, tag, and push images. @@ -2227,7 +2251,7 @@ func (c *ECR) PutImageScanningConfigurationRequest(input *PutImageScanningConfig // PutImageScanningConfiguration API operation for Amazon EC2 Container Registry. // -// Updates the image scanning configuration for a repository. +// Updates the image scanning configuration for the specified repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2314,10 +2338,8 @@ func (c *ECR) PutImageTagMutabilityRequest(input *PutImageTagMutabilityInput) (r // PutImageTagMutability API operation for Amazon EC2 Container Registry. // -// Updates the image tag mutability settings for a repository. When a repository -// is configured with tag immutability, all image tags within the repository -// will be prevented them from being overwritten. For more information, see -// Image Tag Mutability (https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-tag-mutability.html) +// Updates the image tag mutability settings for the specified repository. For +// more information, see Image Tag Mutability (https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-tag-mutability.html) // in the Amazon Elastic Container Registry User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -2405,8 +2427,8 @@ func (c *ECR) PutLifecyclePolicyRequest(input *PutLifecyclePolicyInput) (req *re // PutLifecyclePolicy API operation for Amazon EC2 Container Registry. // -// Creates or updates a lifecycle policy. For information about lifecycle policy -// syntax, see Lifecycle Policy Template (https://docs.aws.amazon.com/AmazonECR/latest/userguide/LifecyclePolicies.html). +// Creates or updates the lifecycle policy for the specified repository. For +// more information, see Lifecycle Policy Template (https://docs.aws.amazon.com/AmazonECR/latest/userguide/LifecyclePolicies.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2493,8 +2515,8 @@ func (c *ECR) SetRepositoryPolicyRequest(input *SetRepositoryPolicyInput) (req * // SetRepositoryPolicy API operation for Amazon EC2 Container Registry. // -// Applies a repository policy on a specified repository to control access permissions. -// For more information, see Amazon ECR Repository Policies (https://docs.aws.amazon.com/AmazonECR/latest/userguide/RepositoryPolicies.html) +// Applies a repository policy to the specified repository to control access +// permissions. For more information, see Amazon ECR Repository Policies (https://docs.aws.amazon.com/AmazonECR/latest/userguide/RepositoryPolicies.html) // in the Amazon Elastic Container Registry User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -2675,8 +2697,9 @@ func (c *ECR) StartLifecyclePolicyPreviewRequest(input *StartLifecyclePolicyPrev // StartLifecyclePolicyPreview API operation for Amazon EC2 Container Registry. // -// Starts a preview of the specified lifecycle policy. This allows you to see -// the results before creating the lifecycle policy. +// Starts a preview of a lifecycle policy for the specified repository. This +// allows you to see the results before associating the lifecycle policy with +// the repository. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2967,6 +2990,10 @@ func (c *ECR) UploadLayerPartRequest(input *UploadLayerPartInput) (req *request. // // Uploads an image layer part to Amazon ECR. // +// When an image is pushed, each new image layer is uploaded in parts. The maximum +// size of each image layer part can be 20971520 bytes (or about 20MB). The +// UploadLayerPart API is called once per each new image layer part. +// // This operation is used by the Amazon ECR proxy, and it is not intended for // general use by customers for pulling and pushing images. In most cases, you // should use the docker CLI to pull, tag, and push images. @@ -4489,7 +4516,7 @@ type GetAuthorizationTokenInput struct { _ struct{} `type:"structure"` // A list of AWS account IDs that are associated with the registries for which - // to get authorization tokens. If you do not specify a registry, the default + // to get AuthorizationData objects. If you do not specify a registry, the default // registry is assumed. RegistryIds []*string `locationName:"registryIds" min:"1" type:"list"` } diff --git a/vendor/github.com/aws/aws-sdk-go/service/elasticsearchservice/api.go b/vendor/github.com/aws/aws-sdk-go/service/elasticsearchservice/api.go index b78db2fddb4..3acde019b39 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/elasticsearchservice/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/elasticsearchservice/api.go @@ -2622,6 +2622,138 @@ func (s *AdvancedOptionsStatus) SetStatus(v *OptionStatus) *AdvancedOptionsStatu return s } +// Specifies the advanced security configuration: whether advanced security +// is enabled, whether the internal database option is enabled. +type AdvancedSecurityOptions struct { + _ struct{} `type:"structure"` + + // True if advanced security is enabled. + Enabled *bool `type:"boolean"` + + // True if the internal user database is enabled. + InternalUserDatabaseEnabled *bool `type:"boolean"` +} + +// String returns the string representation +func (s AdvancedSecurityOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AdvancedSecurityOptions) GoString() string { + return s.String() +} + +// SetEnabled sets the Enabled field's value. +func (s *AdvancedSecurityOptions) SetEnabled(v bool) *AdvancedSecurityOptions { + s.Enabled = &v + return s +} + +// SetInternalUserDatabaseEnabled sets the InternalUserDatabaseEnabled field's value. +func (s *AdvancedSecurityOptions) SetInternalUserDatabaseEnabled(v bool) *AdvancedSecurityOptions { + s.InternalUserDatabaseEnabled = &v + return s +} + +// Specifies the advanced security configuration: whether advanced security +// is enabled, whether the internal database option is enabled, master username +// and password (if internal database is enabled), and master user ARN (if IAM +// is enabled). +type AdvancedSecurityOptionsInput struct { + _ struct{} `type:"structure"` + + // True if advanced security is enabled. + Enabled *bool `type:"boolean"` + + // True if the internal user database is enabled. + InternalUserDatabaseEnabled *bool `type:"boolean"` + + // Credentials for the master user: username and password, ARN, or both. + MasterUserOptions *MasterUserOptions `type:"structure"` +} + +// String returns the string representation +func (s AdvancedSecurityOptionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AdvancedSecurityOptionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AdvancedSecurityOptionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AdvancedSecurityOptionsInput"} + if s.MasterUserOptions != nil { + if err := s.MasterUserOptions.Validate(); err != nil { + invalidParams.AddNested("MasterUserOptions", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnabled sets the Enabled field's value. +func (s *AdvancedSecurityOptionsInput) SetEnabled(v bool) *AdvancedSecurityOptionsInput { + s.Enabled = &v + return s +} + +// SetInternalUserDatabaseEnabled sets the InternalUserDatabaseEnabled field's value. +func (s *AdvancedSecurityOptionsInput) SetInternalUserDatabaseEnabled(v bool) *AdvancedSecurityOptionsInput { + s.InternalUserDatabaseEnabled = &v + return s +} + +// SetMasterUserOptions sets the MasterUserOptions field's value. +func (s *AdvancedSecurityOptionsInput) SetMasterUserOptions(v *MasterUserOptions) *AdvancedSecurityOptionsInput { + s.MasterUserOptions = v + return s +} + +// Specifies the status of advanced security options for the specified Elasticsearch +// domain. +type AdvancedSecurityOptionsStatus struct { + _ struct{} `type:"structure"` + + // Specifies advanced security options for the specified Elasticsearch domain. + // + // Options is a required field + Options *AdvancedSecurityOptions `type:"structure" required:"true"` + + // Status of the advanced security options for the specified Elasticsearch domain. + // + // Status is a required field + Status *OptionStatus `type:"structure" required:"true"` +} + +// String returns the string representation +func (s AdvancedSecurityOptionsStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AdvancedSecurityOptionsStatus) GoString() string { + return s.String() +} + +// SetOptions sets the Options field's value. +func (s *AdvancedSecurityOptionsStatus) SetOptions(v *AdvancedSecurityOptions) *AdvancedSecurityOptionsStatus { + s.Options = v + return s +} + +// SetStatus sets the Status field's value. +func (s *AdvancedSecurityOptionsStatus) SetStatus(v *OptionStatus) *AdvancedSecurityOptionsStatus { + s.Status = v + return s +} + // An error occurred while processing the request. type BaseException struct { _ struct{} `type:"structure"` @@ -2905,6 +3037,9 @@ type CreateElasticsearchDomainInput struct { // for more information. AdvancedOptions map[string]*string `type:"map"` + // Specifies advanced security options. + AdvancedSecurityOptions *AdvancedSecurityOptionsInput `type:"structure"` + // Options to specify the Cognito user and identity pools for Kibana authentication. // For more information, see Amazon Cognito Authentication for Kibana (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html). CognitoOptions *CognitoOptions `type:"structure"` @@ -2972,6 +3107,11 @@ func (s *CreateElasticsearchDomainInput) Validate() error { if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } + if s.AdvancedSecurityOptions != nil { + if err := s.AdvancedSecurityOptions.Validate(); err != nil { + invalidParams.AddNested("AdvancedSecurityOptions", err.(request.ErrInvalidParams)) + } + } if s.CognitoOptions != nil { if err := s.CognitoOptions.Validate(); err != nil { invalidParams.AddNested("CognitoOptions", err.(request.ErrInvalidParams)) @@ -3001,6 +3141,12 @@ func (s *CreateElasticsearchDomainInput) SetAdvancedOptions(v map[string]*string return s } +// SetAdvancedSecurityOptions sets the AdvancedSecurityOptions field's value. +func (s *CreateElasticsearchDomainInput) SetAdvancedSecurityOptions(v *AdvancedSecurityOptionsInput) *CreateElasticsearchDomainInput { + s.AdvancedSecurityOptions = v + return s +} + // SetCognitoOptions sets the CognitoOptions field's value. func (s *CreateElasticsearchDomainInput) SetCognitoOptions(v *CognitoOptions) *CreateElasticsearchDomainInput { s.CognitoOptions = v @@ -4066,6 +4212,9 @@ type ElasticsearchDomainConfig struct { // for more information. AdvancedOptions *AdvancedOptionsStatus `type:"structure"` + // Specifies AdvancedSecurityOptions for the domain. + AdvancedSecurityOptions *AdvancedSecurityOptionsStatus `type:"structure"` + // The CognitoOptions for the specified domain. For more information, see Amazon // Cognito Authentication for Kibana (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html). CognitoOptions *CognitoOptionsStatus `type:"structure"` @@ -4121,6 +4270,12 @@ func (s *ElasticsearchDomainConfig) SetAdvancedOptions(v *AdvancedOptionsStatus) return s } +// SetAdvancedSecurityOptions sets the AdvancedSecurityOptions field's value. +func (s *ElasticsearchDomainConfig) SetAdvancedSecurityOptions(v *AdvancedSecurityOptionsStatus) *ElasticsearchDomainConfig { + s.AdvancedSecurityOptions = v + return s +} + // SetCognitoOptions sets the CognitoOptions field's value. func (s *ElasticsearchDomainConfig) SetCognitoOptions(v *CognitoOptionsStatus) *ElasticsearchDomainConfig { s.CognitoOptions = v @@ -4198,6 +4353,9 @@ type ElasticsearchDomainStatus struct { // Specifies the status of the AdvancedOptions AdvancedOptions map[string]*string `type:"map"` + // The current status of the Elasticsearch domain's advanced security options. + AdvancedSecurityOptions *AdvancedSecurityOptions `type:"structure"` + // The CognitoOptions for the specified domain. For more information, see Amazon // Cognito Authentication for Kibana (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html). CognitoOptions *CognitoOptions `type:"structure"` @@ -4305,6 +4463,12 @@ func (s *ElasticsearchDomainStatus) SetAdvancedOptions(v map[string]*string) *El return s } +// SetAdvancedSecurityOptions sets the AdvancedSecurityOptions field's value. +func (s *ElasticsearchDomainStatus) SetAdvancedSecurityOptions(v *AdvancedSecurityOptions) *ElasticsearchDomainStatus { + s.AdvancedSecurityOptions = v + return s +} + // SetCognitoOptions sets the CognitoOptions field's value. func (s *ElasticsearchDomainStatus) SetCognitoOptions(v *CognitoOptions) *ElasticsearchDomainStatus { s.CognitoOptions = v @@ -5458,6 +5622,66 @@ func (s *LogPublishingOptionsStatus) SetStatus(v *OptionStatus) *LogPublishingOp return s } +// Credentials for the master user: username and password, ARN, or both. +type MasterUserOptions struct { + _ struct{} `type:"structure"` + + // ARN for the master user (if IAM is enabled). + MasterUserARN *string `type:"string"` + + // The master user's username, which is stored in the Amazon Elasticsearch Service + // domain's internal database. + MasterUserName *string `min:"1" type:"string" sensitive:"true"` + + // The master user's password, which is stored in the Amazon Elasticsearch Service + // domain's internal database. + MasterUserPassword *string `min:"8" type:"string" sensitive:"true"` +} + +// String returns the string representation +func (s MasterUserOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s MasterUserOptions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MasterUserOptions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MasterUserOptions"} + if s.MasterUserName != nil && len(*s.MasterUserName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MasterUserName", 1)) + } + if s.MasterUserPassword != nil && len(*s.MasterUserPassword) < 8 { + invalidParams.Add(request.NewErrParamMinLen("MasterUserPassword", 8)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMasterUserARN sets the MasterUserARN field's value. +func (s *MasterUserOptions) SetMasterUserARN(v string) *MasterUserOptions { + s.MasterUserARN = &v + return s +} + +// SetMasterUserName sets the MasterUserName field's value. +func (s *MasterUserOptions) SetMasterUserName(v string) *MasterUserOptions { + s.MasterUserName = &v + return s +} + +// SetMasterUserPassword sets the MasterUserPassword field's value. +func (s *MasterUserOptions) SetMasterUserPassword(v string) *MasterUserOptions { + s.MasterUserPassword = &v + return s +} + // Specifies the node-to-node encryption options. type NodeToNodeEncryptionOptions struct { _ struct{} `type:"structure"` @@ -6512,6 +6736,9 @@ type UpdateElasticsearchDomainConfigInput struct { // for more information. AdvancedOptions map[string]*string `type:"map"` + // Specifies advanced security options. + AdvancedSecurityOptions *AdvancedSecurityOptionsInput `type:"structure"` + // Options to specify the Cognito user and identity pools for Kibana authentication. // For more information, see Amazon Cognito Authentication for Kibana (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html). CognitoOptions *CognitoOptions `type:"structure"` @@ -6563,6 +6790,11 @@ func (s *UpdateElasticsearchDomainConfigInput) Validate() error { if s.DomainName != nil && len(*s.DomainName) < 3 { invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) } + if s.AdvancedSecurityOptions != nil { + if err := s.AdvancedSecurityOptions.Validate(); err != nil { + invalidParams.AddNested("AdvancedSecurityOptions", err.(request.ErrInvalidParams)) + } + } if s.CognitoOptions != nil { if err := s.CognitoOptions.Validate(); err != nil { invalidParams.AddNested("CognitoOptions", err.(request.ErrInvalidParams)) @@ -6587,6 +6819,12 @@ func (s *UpdateElasticsearchDomainConfigInput) SetAdvancedOptions(v map[string]* return s } +// SetAdvancedSecurityOptions sets the AdvancedSecurityOptions field's value. +func (s *UpdateElasticsearchDomainConfigInput) SetAdvancedSecurityOptions(v *AdvancedSecurityOptionsInput) *UpdateElasticsearchDomainConfigInput { + s.AdvancedSecurityOptions = v + return s +} + // SetCognitoOptions sets the CognitoOptions field's value. func (s *UpdateElasticsearchDomainConfigInput) SetCognitoOptions(v *CognitoOptions) *UpdateElasticsearchDomainConfigInput { s.CognitoOptions = v diff --git a/vendor/github.com/aws/aws-sdk-go/service/glue/api.go b/vendor/github.com/aws/aws-sdk-go/service/glue/api.go index a40fbd941f6..b26e61598a3 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/glue/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/glue/api.go @@ -16932,6 +16932,9 @@ type CreateJobInput struct { // Name is a required field Name *string `min:"1" type:"string" required:"true"` + // Non-overridable arguments for this job, specified as name-value pairs. + NonOverridableArguments map[string]*string `type:"map"` + // Specifies configuration properties of a job notification. NotificationProperty *NotificationProperty `type:"structure"` @@ -17089,6 +17092,12 @@ func (s *CreateJobInput) SetName(v string) *CreateJobInput { return s } +// SetNonOverridableArguments sets the NonOverridableArguments field's value. +func (s *CreateJobInput) SetNonOverridableArguments(v map[string]*string) *CreateJobInput { + s.NonOverridableArguments = v + return s +} + // SetNotificationProperty sets the NotificationProperty field's value. func (s *CreateJobInput) SetNotificationProperty(v *NotificationProperty) *CreateJobInput { s.NotificationProperty = v @@ -25242,6 +25251,9 @@ type Job struct { // The name you assign to this job definition. Name *string `min:"1" type:"string"` + // Non-overridable arguments for this job, specified as name-value pairs. + NonOverridableArguments map[string]*string `type:"map"` + // Specifies configuration properties of a job notification. NotificationProperty *NotificationProperty `type:"structure"` @@ -25368,6 +25380,12 @@ func (s *Job) SetName(v string) *Job { return s } +// SetNonOverridableArguments sets the NonOverridableArguments field's value. +func (s *Job) SetNonOverridableArguments(v map[string]*string) *Job { + s.NonOverridableArguments = v + return s +} + // SetNotificationProperty sets the NotificationProperty field's value. func (s *Job) SetNotificationProperty(v *NotificationProperty) *Job { s.NotificationProperty = v @@ -25939,6 +25957,9 @@ type JobUpdate struct { // The maximum number of times to retry this job if it fails. MaxRetries *int64 `type:"integer"` + // Non-overridable arguments for this job, specified as name-value pairs. + NonOverridableArguments map[string]*string `type:"map"` + // Specifies the configuration properties of a job notification. NotificationProperty *NotificationProperty `type:"structure"` @@ -26071,6 +26092,12 @@ func (s *JobUpdate) SetMaxRetries(v int64) *JobUpdate { return s } +// SetNonOverridableArguments sets the NonOverridableArguments field's value. +func (s *JobUpdate) SetNonOverridableArguments(v map[string]*string) *JobUpdate { + s.NonOverridableArguments = v + return s +} + // SetNotificationProperty sets the NotificationProperty field's value. func (s *JobUpdate) SetNotificationProperty(v *NotificationProperty) *JobUpdate { s.NotificationProperty = v diff --git a/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/api.go b/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/api.go index afa2f1e206a..02e78844c4a 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/api.go @@ -56,7 +56,7 @@ func (c *Imagebuilder) CancelImageCreationRequest(input *CancelImageCreationInpu // CancelImageCreation API operation for EC2 Image Builder. // -// CancelImageCreation cancels the creation of Image. This operation may only +// CancelImageCreation cancels the creation of Image. This operation can only // be used on images in a non-terminal state. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -82,7 +82,7 @@ func (c *Imagebuilder) CancelImageCreationRequest(input *CancelImageCreationInpu // You have made a request for an action that is not supported by the service. // // * IdempotentParameterMismatchException -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. // // * ForbiddenException @@ -93,7 +93,7 @@ func (c *Imagebuilder) CancelImageCreationRequest(input *CancelImageCreationInpu // // * ResourceInUseException // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. // // See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/CancelImageCreation func (c *Imagebuilder) CancelImageCreation(input *CancelImageCreationInput) (*CancelImageCreationOutput, error) { @@ -161,7 +161,7 @@ func (c *Imagebuilder) CreateComponentRequest(input *CreateComponentInput) (req // CreateComponent API operation for EC2 Image Builder. // -// Creates a new component that can be used to build, validate, test and assess +// Creates a new component that can be used to build, validate, test, and assess // your image. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -187,7 +187,7 @@ func (c *Imagebuilder) CreateComponentRequest(input *CreateComponentInput) (req // You have made a request for an action that is not supported by the service. // // * IdempotentParameterMismatchException -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. // // * ForbiddenException @@ -201,7 +201,7 @@ func (c *Imagebuilder) CreateComponentRequest(input *CreateComponentInput) (req // // * ResourceInUseException // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. // // * InvalidParameterCombinationException // You have specified two or more mutually exclusive parameters. Review the @@ -299,7 +299,7 @@ func (c *Imagebuilder) CreateDistributionConfigurationRequest(input *CreateDistr // You have made a request for an action that is not supported by the service. // // * IdempotentParameterMismatchException -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. // // * ForbiddenException @@ -310,7 +310,7 @@ func (c *Imagebuilder) CreateDistributionConfigurationRequest(input *CreateDistr // // * ResourceInUseException // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. // // * ResourceAlreadyExistsException // The resource that you are trying to create already exists. @@ -411,7 +411,7 @@ func (c *Imagebuilder) CreateImageRequest(input *CreateImageInput) (req *request // You have made a request for an action that is not supported by the service. // // * IdempotentParameterMismatchException -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. // // * ForbiddenException @@ -422,7 +422,7 @@ func (c *Imagebuilder) CreateImageRequest(input *CreateImageInput) (req *request // // * ResourceInUseException // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. // // See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/CreateImage func (c *Imagebuilder) CreateImage(input *CreateImageInput) (*CreateImageOutput, error) { @@ -516,7 +516,7 @@ func (c *Imagebuilder) CreateImagePipelineRequest(input *CreateImagePipelineInpu // You have made a request for an action that is not supported by the service. // // * IdempotentParameterMismatchException -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. // // * ForbiddenException @@ -527,7 +527,7 @@ func (c *Imagebuilder) CreateImagePipelineRequest(input *CreateImagePipelineInpu // // * ResourceInUseException // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. // // * ResourceAlreadyExistsException // The resource that you are trying to create already exists. @@ -598,8 +598,8 @@ func (c *Imagebuilder) CreateImageRecipeRequest(input *CreateImageRecipeInput) ( // CreateImageRecipe API operation for EC2 Image Builder. // -// Creates a new image recipe. Image Recipes defines how images are configured, -// tested and assessed. +// Creates a new image recipe. Image recipes define how images are configured, +// tested, and assessed. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -624,7 +624,7 @@ func (c *Imagebuilder) CreateImageRecipeRequest(input *CreateImageRecipeInput) ( // You have made a request for an action that is not supported by the service. // // * IdempotentParameterMismatchException -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. // // * ForbiddenException @@ -638,7 +638,7 @@ func (c *Imagebuilder) CreateImageRecipeRequest(input *CreateImageRecipeInput) ( // // * ResourceInUseException // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. // // * ResourceAlreadyExistsException // The resource that you are trying to create already exists. @@ -735,7 +735,7 @@ func (c *Imagebuilder) CreateInfrastructureConfigurationRequest(input *CreateInf // You have made a request for an action that is not supported by the service. // // * IdempotentParameterMismatchException -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. // // * ForbiddenException @@ -746,7 +746,7 @@ func (c *Imagebuilder) CreateInfrastructureConfigurationRequest(input *CreateInf // // * ResourceInUseException // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. // // * ResourceAlreadyExistsException // The resource that you are trying to create already exists. @@ -849,7 +849,7 @@ func (c *Imagebuilder) DeleteComponentRequest(input *DeleteComponentInput) (req // // * ResourceDependencyException // You have attempted to mutate or delete a resource with a dependency that -// is prohibitting this action. See the error message for more details. +// prohibits this action. See the error message for more details. // // See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DeleteComponent func (c *Imagebuilder) DeleteComponent(input *DeleteComponentInput) (*DeleteComponentOutput, error) { @@ -949,7 +949,7 @@ func (c *Imagebuilder) DeleteDistributionConfigurationRequest(input *DeleteDistr // // * ResourceDependencyException // You have attempted to mutate or delete a resource with a dependency that -// is prohibitting this action. See the error message for more details. +// prohibits this action. See the error message for more details. // // See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DeleteDistributionConfiguration func (c *Imagebuilder) DeleteDistributionConfiguration(input *DeleteDistributionConfigurationInput) (*DeleteDistributionConfigurationOutput, error) { @@ -1049,7 +1049,7 @@ func (c *Imagebuilder) DeleteImageRequest(input *DeleteImageInput) (req *request // // * ResourceDependencyException // You have attempted to mutate or delete a resource with a dependency that -// is prohibitting this action. See the error message for more details. +// prohibits this action. See the error message for more details. // // See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DeleteImage func (c *Imagebuilder) DeleteImage(input *DeleteImageInput) (*DeleteImageOutput, error) { @@ -1149,7 +1149,7 @@ func (c *Imagebuilder) DeleteImagePipelineRequest(input *DeleteImagePipelineInpu // // * ResourceDependencyException // You have attempted to mutate or delete a resource with a dependency that -// is prohibitting this action. See the error message for more details. +// prohibits this action. See the error message for more details. // // See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DeleteImagePipeline func (c *Imagebuilder) DeleteImagePipeline(input *DeleteImagePipelineInput) (*DeleteImagePipelineOutput, error) { @@ -1249,7 +1249,7 @@ func (c *Imagebuilder) DeleteImageRecipeRequest(input *DeleteImageRecipeInput) ( // // * ResourceDependencyException // You have attempted to mutate or delete a resource with a dependency that -// is prohibitting this action. See the error message for more details. +// prohibits this action. See the error message for more details. // // See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DeleteImageRecipe func (c *Imagebuilder) DeleteImageRecipe(input *DeleteImageRecipeInput) (*DeleteImageRecipeOutput, error) { @@ -1349,7 +1349,7 @@ func (c *Imagebuilder) DeleteInfrastructureConfigurationRequest(input *DeleteInf // // * ResourceDependencyException // You have attempted to mutate or delete a resource with a dependency that -// is prohibitting this action. See the error message for more details. +// prohibits this action. See the error message for more details. // // See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DeleteInfrastructureConfiguration func (c *Imagebuilder) DeleteInfrastructureConfiguration(input *DeleteInfrastructureConfigurationInput) (*DeleteInfrastructureConfigurationOutput, error) { @@ -2179,7 +2179,7 @@ func (c *Imagebuilder) GetInfrastructureConfigurationRequest(input *GetInfrastru // GetInfrastructureConfiguration API operation for EC2 Image Builder. // -// Gets a infrastructure configuration. +// Gets an infrastructure configuration. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2300,7 +2300,7 @@ func (c *Imagebuilder) ImportComponentRequest(input *ImportComponentInput) (req // You have made a request for an action that is not supported by the service. // // * IdempotentParameterMismatchException -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. // // * ForbiddenException @@ -2314,7 +2314,7 @@ func (c *Imagebuilder) ImportComponentRequest(input *ImportComponentInput) (req // // * ResourceInUseException // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. // // * InvalidParameterCombinationException // You have specified two or more mutually exclusive parameters. Review the @@ -4222,7 +4222,7 @@ func (c *Imagebuilder) StartImagePipelineExecutionRequest(input *StartImagePipel // At least one of the resources referenced by your request does not exist. // // * IdempotentParameterMismatchException -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. // // * ForbiddenException @@ -4233,7 +4233,7 @@ func (c *Imagebuilder) StartImagePipelineExecutionRequest(input *StartImagePipel // // * ResourceInUseException // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. // // See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/StartImagePipelineExecution func (c *Imagebuilder) StartImagePipelineExecution(input *StartImagePipelineExecutionInput) (*StartImagePipelineExecutionOutput, error) { @@ -4501,7 +4501,7 @@ func (c *Imagebuilder) UpdateDistributionConfigurationRequest(input *UpdateDistr // You have made a request for an action that is not supported by the service. // // * IdempotentParameterMismatchException -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. // // * ForbiddenException @@ -4512,7 +4512,7 @@ func (c *Imagebuilder) UpdateDistributionConfigurationRequest(input *UpdateDistr // // * ResourceInUseException // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. // // * InvalidParameterCombinationException // You have specified two or more mutually exclusive parameters. Review the @@ -4610,7 +4610,7 @@ func (c *Imagebuilder) UpdateImagePipelineRequest(input *UpdateImagePipelineInpu // You have made a request for an action that is not supported by the service. // // * IdempotentParameterMismatchException -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. // // * ForbiddenException @@ -4621,7 +4621,7 @@ func (c *Imagebuilder) UpdateImagePipelineRequest(input *UpdateImagePipelineInpu // // * ResourceInUseException // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. // // See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/UpdateImagePipeline func (c *Imagebuilder) UpdateImagePipeline(input *UpdateImagePipelineInput) (*UpdateImagePipelineOutput, error) { @@ -4715,7 +4715,7 @@ func (c *Imagebuilder) UpdateInfrastructureConfigurationRequest(input *UpdateInf // You have made a request for an action that is not supported by the service. // // * IdempotentParameterMismatchException -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. // // * ForbiddenException @@ -4726,7 +4726,7 @@ func (c *Imagebuilder) UpdateInfrastructureConfigurationRequest(input *UpdateInf // // * ResourceInUseException // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. // // See also, https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/UpdateInfrastructureConfiguration func (c *Imagebuilder) UpdateInfrastructureConfiguration(input *UpdateInfrastructureConfigurationInput) (*UpdateInfrastructureConfigurationOutput, error) { @@ -4763,10 +4763,10 @@ type Ami struct { // The name of the EC2 AMI. Name *string `locationName:"name" min:"1" type:"string"` - // The region of the EC2 AMI. + // The AWS Region of the EC2 AMI. Region *string `locationName:"region" min:"1" type:"string"` - // Image state shows the images status and the reason for that status. + // Image state shows the image status and the reason for that status. State *ImageState `locationName:"state" type:"structure"` } @@ -4810,11 +4810,11 @@ func (s *Ami) SetState(v *ImageState) *Ami { return s } -// Define and configure the outputs AMIs of the pipeline. +// Define and configure the output AMIs of the pipeline. type AmiDistributionConfiguration struct { _ struct{} `type:"structure"` - // The tags to apply to AMIs distributed to this region. + // The tags to apply to AMIs distributed to this Region. AmiTags map[string]*string `locationName:"amiTags" min:"1" type:"map"` // The description of the distribution configuration. @@ -4941,11 +4941,9 @@ type CancelImageCreationInput struct { _ struct{} `type:"structure"` // The idempotency token used to make this request idempotent. - // - // ClientToken is a required field - ClientToken *string `locationName:"clientToken" min:"1" type:"string" required:"true"` + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` - // The Amazon Resource Name (ARN) of the image whose creation you wish to cancel. + // The Amazon Resource Name (ARN) of the image whose creation you want to cancel. // // ImageBuildVersionArn is a required field ImageBuildVersionArn *string `locationName:"imageBuildVersionArn" type:"string" required:"true"` @@ -4964,9 +4962,6 @@ func (s CancelImageCreationInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *CancelImageCreationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelImageCreationInput"} - if s.ClientToken == nil { - invalidParams.Add(request.NewErrParamRequired("ClientToken")) - } if s.ClientToken != nil && len(*s.ClientToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) } @@ -5263,7 +5258,7 @@ func (s *ComponentConfiguration) SetComponentArn(v string) *ComponentConfigurati return s } -// A high level summary of a component. +// A high-level summary of a component. type ComponentSummary struct { _ struct{} `type:"structure"` @@ -5369,7 +5364,7 @@ func (s *ComponentSummary) SetVersion(v string) *ComponentSummary { return s } -// A high level overview of a component semantic version. +// A high-level overview of a component semantic version. type ComponentVersion struct { _ struct{} `type:"structure"` @@ -5460,18 +5455,19 @@ func (s *ComponentVersion) SetVersion(v string) *ComponentVersion { type CreateComponentInput struct { _ struct{} `type:"structure"` - // CThe change description of the component. Describes what change has been - // made in this version. In other words what makes this version different from - // other versions of this component. + // The change description of the component. Describes what change has been made + // in this version, or what makes this version different from other versions + // of this component. ChangeDescription *string `locationName:"changeDescription" min:"1" type:"string"` - // CThe idempotency token of the component. + // The idempotency token of the component. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` - // CThe data of the component. + // The data of the component. Used to specify the data inline. Either data or + // uri can be used to specify the data within the component. Data *string `locationName:"data" min:"1" type:"string"` - // CThe description of the component. Describes the contents of the component. + // The description of the component. Describes the contents of the component. Description *string `locationName:"description" min:"1" type:"string"` // The ID of the KMS key that should be used to encrypt this component. @@ -5482,22 +5478,25 @@ type CreateComponentInput struct { // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` - // CThe platform of the component. + // The platform of the component. // // Platform is a required field Platform *string `locationName:"platform" type:"string" required:"true" enum:"Platform"` - // The semantic version of the component. This version to follow the semantic - // version syntax. i.e. major.minor.patch. This could be versioned like software - // 2.0.1 or date like 2019.12.01. + // The semantic version of the component. This version follows the semantic + // version syntax. For example, major.minor.patch. This could be versioned like + // software (2.0.1) or like a date (2019.12.01). // // SemanticVersion is a required field SemanticVersion *string `locationName:"semanticVersion" type:"string" required:"true"` - // CThe tags of the component. + // The tags of the component. Tags map[string]*string `locationName:"tags" min:"1" type:"map"` - // CThe uri of the component. + // The uri of the component. Must be an S3 URL and the requester must have permission + // to access the S3 bucket. If you use S3, you can specify component content + // up to your service quota. Either data or uri can be used to specify the data + // within the component. Uri *string `locationName:"uri" type:"string"` } @@ -5611,14 +5610,14 @@ func (s *CreateComponentInput) SetUri(v string) *CreateComponentInput { type CreateComponentOutput struct { _ struct{} `type:"structure"` - // CThe idempotency token used to make this request idempotent. + // The idempotency token used to make this request idempotent. ClientToken *string `locationName:"clientToken" min:"1" type:"string"` - // CThe Amazon Resource Name (ARN) of the component that was created by this + // The Amazon Resource Name (ARN) of the component that was created by this // request. ComponentBuildVersionArn *string `locationName:"componentBuildVersionArn" type:"string"` - // CThe request ID that uniquely identifies this request. + // The request ID that uniquely identifies this request. RequestId *string `locationName:"requestId" min:"1" type:"string"` } @@ -5801,7 +5800,7 @@ type CreateImageInput struct { DistributionConfigurationArn *string `locationName:"distributionConfigurationArn" type:"string"` // The Amazon Resource Name (ARN) of the image recipe that defines how images - // are configured, tested and assessed. + // are configured, tested, and assessed. // // ImageRecipeArn is a required field ImageRecipeArn *string `locationName:"imageRecipeArn" type:"string" required:"true"` @@ -6334,13 +6333,13 @@ type CreateInfrastructureConfigurationInput struct { // InstanceProfileName is a required field InstanceProfileName *string `locationName:"instanceProfileName" min:"1" type:"string" required:"true"` - // The instance types of the infrastructure configuration. You may specify one - // or more instance types to use for this build, the service will pick one of + // The instance types of the infrastructure configuration. You can specify one + // or more instance types to use for this build. The service will pick one of // these instance types based on availability. InstanceTypes []*string `locationName:"instanceTypes" type:"list"` // The key pair of the infrastructure configuration. This can be used to log - // onto and debug the instance used to create your image. + // on to and debug the instance used to create your image. KeyPair *string `locationName:"keyPair" min:"1" type:"string"` // The logging configuration of the infrastructure configuration. @@ -6356,18 +6355,17 @@ type CreateInfrastructureConfigurationInput struct { SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` // The SNS topic on which to send image build events. - SnsTopicArn *string `locationName:"snsTopicArn" min:"1" type:"string"` + SnsTopicArn *string `locationName:"snsTopicArn" type:"string"` - // The subnet ID to place the instance used to customize your EC2 AMI in. + // The subnet ID in which to place the instance used to customize your EC2 AMI. SubnetId *string `locationName:"subnetId" min:"1" type:"string"` // The tags of the infrastructure configuration. Tags map[string]*string `locationName:"tags" min:"1" type:"map"` // The terminate instance on failure setting of the infrastructure configuration. - // Set to false if you wish for Image Builder to retain the instance used to - // configure your AMI in the event that the build or test phase of your workflow - // failed. + // Set to false if you want Image Builder to retain the instance used to configure + // your AMI if the build or test phase of your workflow fails. TerminateInstanceOnFailure *bool `locationName:"terminateInstanceOnFailure" type:"boolean"` } @@ -6402,9 +6400,6 @@ func (s *CreateInfrastructureConfigurationInput) Validate() error { if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } - if s.SnsTopicArn != nil && len(*s.SnsTopicArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("SnsTopicArn", 1)) - } if s.SubnetId != nil && len(*s.SubnetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SubnetId", 1)) } @@ -6959,14 +6954,19 @@ func (s *DeleteInfrastructureConfigurationOutput) SetRequestId(v string) *Delete return s } +// Defines the settings for a specific Region. type Distribution struct { _ struct{} `type:"structure"` - // Define and configure the outputs AMIs of the pipeline. + // The specific AMI settings (for example, launch permissions, AMI tags). AmiDistributionConfiguration *AmiDistributionConfiguration `locationName:"amiDistributionConfiguration" type:"structure"` + // The License Manager Configuration to associate with the AMI in the specified + // Region. LicenseConfigurationArns []*string `locationName:"licenseConfigurationArns" type:"list"` + // The target Region. + // // Region is a required field Region *string `locationName:"region" min:"1" type:"string" required:"true"` } @@ -7109,7 +7109,7 @@ func (s *DistributionConfiguration) SetTimeoutMinutes(v int64) *DistributionConf return s } -// A high level overview a distribution configuration. +// A high-level overview of a distribution configuration. type DistributionConfigurationSummary struct { _ struct{} `type:"structure"` @@ -7178,7 +7178,7 @@ func (s *DistributionConfigurationSummary) SetTags(v map[string]*string) *Distri return s } -// EBS specific block device mapping specifications. +// Amazon EBS-specific block device mapping specifications. type EbsInstanceBlockDeviceSpecification struct { _ struct{} `type:"structure"` @@ -7278,11 +7278,16 @@ func (s *EbsInstanceBlockDeviceSpecification) SetVolumeType(v string) *EbsInstan return s } +// A filter name and value pair that is used to return a more specific list +// of results from a list operation. Filters can be used to match a set of resources +// by specific criteria, such as tags, attributes, or IDs. type Filter struct { _ struct{} `type:"structure"` + // The name of the filter. Filter names are case-sensitive. Name *string `locationName:"name" type:"string"` + // The filter values. Filter values are case-sensitive. Values []*string `locationName:"values" min:"1" type:"list"` } @@ -7380,7 +7385,8 @@ func (s ForbiddenException) RequestID() string { type GetComponentInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the component that you wish to retrieve. + // The Amazon Resource Name (ARN) of the component that you want to retrieve. + // Regex requires "/\d+$" suffix. // // ComponentBuildVersionArn is a required field ComponentBuildVersionArn *string `location:"querystring" locationName:"componentBuildVersionArn" type:"string" required:"true"` @@ -7450,7 +7456,7 @@ func (s *GetComponentOutput) SetRequestId(v string) *GetComponentOutput { type GetComponentPolicyInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the component whose policy you wish to + // The Amazon Resource Name (ARN) of the component whose policy you want to // retrieve. // // ComponentArn is a required field @@ -7522,7 +7528,7 @@ type GetDistributionConfigurationInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the distribution configuration that you - // wish to retrieve. + // want to retrieve. // // DistributionConfigurationArn is a required field DistributionConfigurationArn *string `location:"querystring" locationName:"distributionConfigurationArn" type:"string" required:"true"` @@ -7592,7 +7598,7 @@ func (s *GetDistributionConfigurationOutput) SetRequestId(v string) *GetDistribu type GetImageInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the image that you wish to retrieve. + // The Amazon Resource Name (ARN) of the image that you want to retrieve. // // ImageBuildVersionArn is a required field ImageBuildVersionArn *string `location:"querystring" locationName:"imageBuildVersionArn" type:"string" required:"true"` @@ -7662,7 +7668,7 @@ func (s *GetImageOutput) SetRequestId(v string) *GetImageOutput { type GetImagePipelineInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the image pipeline that you wish to retrieve. + // The Amazon Resource Name (ARN) of the image pipeline that you want to retrieve. // // ImagePipelineArn is a required field ImagePipelineArn *string `location:"querystring" locationName:"imagePipelineArn" type:"string" required:"true"` @@ -7732,7 +7738,7 @@ func (s *GetImagePipelineOutput) SetRequestId(v string) *GetImagePipelineOutput type GetImagePolicyInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the image whose policy you wish to retrieve. + // The Amazon Resource Name (ARN) of the image whose policy you want to retrieve. // // ImageArn is a required field ImageArn *string `location:"querystring" locationName:"imageArn" type:"string" required:"true"` @@ -7802,7 +7808,7 @@ func (s *GetImagePolicyOutput) SetRequestId(v string) *GetImagePolicyOutput { type GetImageRecipeInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the image recipe that you wish to retrieve. + // The Amazon Resource Name (ARN) of the image recipe that you want to retrieve. // // ImageRecipeArn is a required field ImageRecipeArn *string `location:"querystring" locationName:"imageRecipeArn" type:"string" required:"true"` @@ -7872,7 +7878,7 @@ func (s *GetImageRecipeOutput) SetRequestId(v string) *GetImageRecipeOutput { type GetImageRecipePolicyInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the image recipe whose policy you wish + // The Amazon Resource Name (ARN) of the image recipe whose policy you want // to retrieve. // // ImageRecipeArn is a required field @@ -7945,7 +7951,7 @@ type GetInfrastructureConfigurationInput struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the infrastructure configuration that you - // wish to retrieve. + // want to retrieve. // // InfrastructureConfigurationArn is a required field InfrastructureConfigurationArn *string `location:"querystring" locationName:"infrastructureConfigurationArn" type:"string" required:"true"` @@ -8013,7 +8019,7 @@ func (s *GetInfrastructureConfigurationOutput) SetRequestId(v string) *GetInfras return s } -// You have specified an client token for an operation using parameter values +// You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. type IdempotentParameterMismatchException struct { _ struct{} `type:"structure"` @@ -8244,7 +8250,7 @@ type ImagePipeline struct { // The image tests configuration of the image pipeline. ImageTestsConfiguration *ImageTestsConfiguration `locationName:"imageTestsConfiguration" type:"structure"` - // The Amazon Resource Name (ARN) of the infrastruction configuration associated + // The Amazon Resource Name (ARN) of the infrastructure configuration associated // with this image pipeline. InfrastructureConfigurationArn *string `locationName:"infrastructureConfigurationArn" type:"string"` @@ -8556,7 +8562,7 @@ func (s *ImageRecipeSummary) SetTags(v map[string]*string) *ImageRecipeSummary { return s } -// Image state shows the images status and the reason for that status. +// Image state shows the image status and the reason for that status. type ImageState struct { _ struct{} `type:"structure"` @@ -8692,7 +8698,7 @@ type ImageTestsConfiguration struct { // Defines if tests should be executed when building this image. ImageTestsEnabled *bool `locationName:"imageTestsEnabled" type:"boolean"` - // The maximum time in minutes that tests are permitted to run for. + // The maximum time in minutes that tests are permitted to run. TimeoutMinutes *int64 `locationName:"timeoutMinutes" min:"60" type:"integer"` } @@ -8735,7 +8741,7 @@ func (s *ImageTestsConfiguration) SetTimeoutMinutes(v int64) *ImageTestsConfigur type ImageVersion struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the image semantic verion. + // The Amazon Resource Name (ARN) of the image semantic version. Arn *string `locationName:"arn" type:"string"` // The date at which this image semantic version was created. @@ -8804,20 +8810,21 @@ type ImportComponentInput struct { _ struct{} `type:"structure"` // The change description of the component. Describes what change has been made - // in this version. In other words what makes this version different from other - // versions of this component. + // in this version, or what makes this version different from other versions + // of this component. ChangeDescription *string `locationName:"changeDescription" min:"1" type:"string"` // The idempotency token of the component. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` - // The data of the component. + // The data of the component. Used to specify the data inline. Either data or + // uri can be used to specify the data within the component. Data *string `locationName:"data" min:"1" type:"string"` // The description of the component. Describes the contents of the component. Description *string `locationName:"description" min:"1" type:"string"` - // The format of the resource that you wish to import as a component. + // The format of the resource that you want to import as a component. // // Format is a required field Format *string `locationName:"format" type:"string" required:"true" enum:"ComponentFormat"` @@ -8835,9 +8842,9 @@ type ImportComponentInput struct { // Platform is a required field Platform *string `locationName:"platform" type:"string" required:"true" enum:"Platform"` - // The semantic version of the component. This version to follow the semantic - // version syntax. i.e. major.minor.patch. This could be versioned like software - // 2.0.1 or date like 2019.12.01. + // The semantic version of the component. This version follows the semantic + // version syntax. For example, major.minor.patch. This could be versioned like + // software (2.0.1) or like a date (2019.12.01). // // SemanticVersion is a required field SemanticVersion *string `locationName:"semanticVersion" type:"string" required:"true"` @@ -8851,7 +8858,10 @@ type ImportComponentInput struct { // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"ComponentType"` - // The uri of the component. + // The uri of the component. Must be an S3 URL and the requester must have permission + // to access the S3 bucket. If you use S3, you can specify component content + // up to your service quota. Either data or uri can be used to specify the data + // within the component. Uri *string `locationName:"uri" type:"string"` } @@ -9025,7 +9035,7 @@ func (s *ImportComponentOutput) SetRequestId(v string) *ImportComponentOutput { type InfrastructureConfiguration struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the infrastruction configuration. + // The Amazon Resource Name (ARN) of the infrastructure configuration. Arn *string `locationName:"arn" type:"string"` // The date on which the infrastructure configuration was created. @@ -9034,37 +9044,37 @@ type InfrastructureConfiguration struct { // The date on which the infrastructure configuration was last updated. DateUpdated *string `locationName:"dateUpdated" type:"string"` - // The description of the infrastruction configuration. + // The description of the infrastructure configuration. Description *string `locationName:"description" min:"1" type:"string"` - // The instance profile of the infrastruction configuration. + // The instance profile of the infrastructure configuration. InstanceProfileName *string `locationName:"instanceProfileName" min:"1" type:"string"` - // The instance types of the infrastruction configuration. + // The instance types of the infrastructure configuration. InstanceTypes []*string `locationName:"instanceTypes" type:"list"` - // The EC2 key pair of the infrastruction configuration. + // The EC2 key pair of the infrastructure configuration. KeyPair *string `locationName:"keyPair" min:"1" type:"string"` - // The logging configuration of the infrastruction configuration. + // The logging configuration of the infrastructure configuration. Logging *Logging `locationName:"logging" type:"structure"` - // The name of the infrastruction configuration. + // The name of the infrastructure configuration. Name *string `locationName:"name" type:"string"` - // The security group IDs of the infrastruction configuration. + // The security group IDs of the infrastructure configuration. SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` - // The SNS Topic Amazon Resource Name (ARN) of the infrastruction configuration. + // The SNS topic Amazon Resource Name (ARN) of the infrastructure configuration. SnsTopicArn *string `locationName:"snsTopicArn" min:"1" type:"string"` - // The subnet ID of the infrastruction configuration. + // The subnet ID of the infrastructure configuration. SubnetId *string `locationName:"subnetId" min:"1" type:"string"` - // The tags of the infrastruction configuration. + // The tags of the infrastructure configuration. Tags map[string]*string `locationName:"tags" min:"1" type:"map"` - // The terminate instance on failure configuration of the infrastruction configuration. + // The terminate instance on failure configuration of the infrastructure configuration. TerminateInstanceOnFailure *bool `locationName:"terminateInstanceOnFailure" type:"boolean"` } @@ -9238,11 +9248,11 @@ type InstanceBlockDeviceMapping struct { // The device to which these mappings apply. DeviceName *string `locationName:"deviceName" min:"1" type:"string"` - // Use to manage EBS specific configuration for this mapping. + // Use to manage Amazon EBS-specific configuration for this mapping. Ebs *EbsInstanceBlockDeviceSpecification `locationName:"ebs" type:"structure"` // Use to remove a mapping from the parent image. - NoDevice *string `locationName:"noDevice" min:"1" type:"string"` + NoDevice *string `locationName:"noDevice" type:"string"` // Use to manage instance ephemeral devices. VirtualName *string `locationName:"virtualName" min:"1" type:"string"` @@ -9264,9 +9274,6 @@ func (s *InstanceBlockDeviceMapping) Validate() error { if s.DeviceName != nil && len(*s.DeviceName) < 1 { invalidParams.Add(request.NewErrParamMinLen("DeviceName", 1)) } - if s.NoDevice != nil && len(*s.NoDevice) < 1 { - invalidParams.Add(request.NewErrParamMinLen("NoDevice", 1)) - } if s.VirtualName != nil && len(*s.VirtualName) < 1 { invalidParams.Add(request.NewErrParamMinLen("VirtualName", 1)) } @@ -9644,11 +9651,17 @@ func (s InvalidVersionNumberException) RequestID() string { return s.respMetadata.RequestID } +// Describes the configuration for a launch permission. The launch permission +// modification request is sent to the EC2 ModifyImageAttribute (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyImageAttribute.html) +// API on behalf of the user for each Region they have selected to distribute +// the AMI. type LaunchPermissionConfiguration struct { _ struct{} `type:"structure"` + // The name of the group. UserGroups []*string `locationName:"userGroups" type:"list"` + // The AWS account ID. UserIds []*string `locationName:"userIds" type:"list"` } @@ -9677,7 +9690,8 @@ func (s *LaunchPermissionConfiguration) SetUserIds(v []*string) *LaunchPermissio type ListComponentBuildVersionsInput struct { _ struct{} `type:"structure"` - // The component version arn whose versions you wish to list. + // The component version Amazon Resource Name (ARN) whose versions you want + // to list. // // ComponentVersionArn is a required field ComponentVersionArn *string `locationName:"componentVersionArn" type:"string" required:"true"` @@ -9743,9 +9757,9 @@ type ListComponentBuildVersionsOutput struct { // The list of component summaries for the specified semantic version. ComponentSummaryList []*ComponentSummary `locationName:"componentSummaryList" type:"list"` - // The next token used for paginated responses. When this is not empty then - // there are additional elements that the service that not include in this request. - // Use this token with the next request to retrieve additional object. + // The next token used for paginated responses. When this is not empty, there + // are additional elements that the service has not included in this request. + // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The request ID that uniquely identifies this request. @@ -9783,6 +9797,7 @@ func (s *ListComponentBuildVersionsOutput) SetRequestId(v string) *ListComponent type ListComponentsInput struct { _ struct{} `type:"structure"` + // The filters. Filters []*Filter `locationName:"filters" min:"1" type:"list"` // The maximum items to return in a request. @@ -9792,9 +9807,9 @@ type ListComponentsInput struct { // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` - // The owner defines whose components you wish to list. By default this request - // will only show components owned by your account. You may use this field to - // specify if you wish to view components owned by yourself, Amazon, or those + // The owner defines which components you want to list. By default, this request + // will only show components owned by your account. You can use this field to + // specify if you want to view components owned by yourself, by Amazon, or those // components that have been shared with you by other customers. Owner *string `locationName:"owner" type:"string" enum:"Ownership"` } @@ -9868,9 +9883,9 @@ type ListComponentsOutput struct { // The list of component semantic versions. ComponentVersionList []*ComponentVersion `locationName:"componentVersionList" type:"list"` - // The next token used for paginated responses. When this is not empty then - // there are additional elements that the service that not include in this request. - // Use this token with the next request to retrieve additional object. + // The next token used for paginated responses. When this is not empty, there + // are additional elements that the service has not included in this request. + // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The request ID that uniquely identifies this request. @@ -9908,6 +9923,7 @@ func (s *ListComponentsOutput) SetRequestId(v string) *ListComponentsOutput { type ListDistributionConfigurationsInput struct { _ struct{} `type:"structure"` + // The filters. Filters []*Filter `locationName:"filters" min:"1" type:"list"` // The maximum items to return in a request. @@ -9981,9 +9997,9 @@ type ListDistributionConfigurationsOutput struct { // The list of distributions. DistributionConfigurationSummaryList []*DistributionConfigurationSummary `locationName:"distributionConfigurationSummaryList" type:"list"` - // The next token used for paginated responses. When this is not empty then - // there are additional elements that the service that not include in this request. - // Use this token with the next request to retrieve additional object. + // The next token used for paginated responses. When this is not empty, there + // are additional elements that the service has not included in this request. + // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The request ID that uniquely identifies this request. @@ -10021,9 +10037,10 @@ func (s *ListDistributionConfigurationsOutput) SetRequestId(v string) *ListDistr type ListImageBuildVersionsInput struct { _ struct{} `type:"structure"` + // The filters. Filters []*Filter `locationName:"filters" min:"1" type:"list"` - // The Amazon Resource Name (ARN) of the image whose build versions you wish + // The Amazon Resource Name (ARN) of the image whose build versions you want // to retrieve. // // ImageVersionArn is a required field @@ -10109,9 +10126,9 @@ type ListImageBuildVersionsOutput struct { // The list of image build versions. ImageSummaryList []*ImageSummary `locationName:"imageSummaryList" type:"list"` - // The next token used for paginated responses. When this is not empty then - // there are additional elements that the service that not include in this request. - // Use this token with the next request to retrieve additional object. + // The next token used for paginated responses. When this is not empty, there + // are additional elements that the service has not included in this request. + // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The request ID that uniquely identifies this request. @@ -10149,11 +10166,14 @@ func (s *ListImageBuildVersionsOutput) SetRequestId(v string) *ListImageBuildVer type ListImagePipelineImagesInput struct { _ struct{} `type:"structure"` + // The filters. Filters []*Filter `locationName:"filters" min:"1" type:"list"` - // The Amazon Resource Name (ARN) of the image pipeline whose images you wish + // The Amazon Resource Name (ARN) of the image pipeline whose images you want // to view. - ImagePipelineArn *string `locationName:"imagePipelineArn" type:"string"` + // + // ImagePipelineArn is a required field + ImagePipelineArn *string `locationName:"imagePipelineArn" type:"string" required:"true"` // The maximum items to return in a request. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` @@ -10179,6 +10199,9 @@ func (s *ListImagePipelineImagesInput) Validate() error { if s.Filters != nil && len(s.Filters) < 1 { invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) } + if s.ImagePipelineArn == nil { + invalidParams.Add(request.NewErrParamRequired("ImagePipelineArn")) + } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -10232,9 +10255,9 @@ type ListImagePipelineImagesOutput struct { // The list of images built by this pipeline. ImageSummaryList []*ImageSummary `locationName:"imageSummaryList" type:"list"` - // The next token used for paginated responses. When this is not empty then - // there are additional elements that the service that not include in this request. - // Use this token with the next request to retrieve additional object. + // The next token used for paginated responses. When this is not empty, there + // are additional elements that the service has not included in this request. + // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The request ID that uniquely identifies this request. @@ -10272,6 +10295,7 @@ func (s *ListImagePipelineImagesOutput) SetRequestId(v string) *ListImagePipelin type ListImagePipelinesInput struct { _ struct{} `type:"structure"` + // The filters. Filters []*Filter `locationName:"filters" min:"1" type:"list"` // The maximum items to return in a request. @@ -10345,9 +10369,9 @@ type ListImagePipelinesOutput struct { // The list of image pipelines. ImagePipelineList []*ImagePipeline `locationName:"imagePipelineList" type:"list"` - // The next token used for paginated responses. When this is not empty then - // there are additional elements that the service that not include in this request. - // Use this token with the next request to retrieve additional object. + // The next token used for paginated responses. When this is not empty, there + // are additional elements that the service has not included in this request. + // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The request ID that uniquely identifies this request. @@ -10385,6 +10409,7 @@ func (s *ListImagePipelinesOutput) SetRequestId(v string) *ListImagePipelinesOut type ListImageRecipesInput struct { _ struct{} `type:"structure"` + // The filters. Filters []*Filter `locationName:"filters" min:"1" type:"list"` // The maximum items to return in a request. @@ -10394,10 +10419,10 @@ type ListImageRecipesInput struct { // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` - // The owner defines whose image recipes you wish to list. By default this request - // will only show image recipes owned by your account. You may use this field - // to specify if you wish to view image recipes owned by yourself, Amazon, or - // those image recipes that have been shared with you by other customers. + // The owner defines which image recipes you want to list. By default, this + // request will only show image recipes owned by your account. You can use this + // field to specify if you want to view image recipes owned by yourself, by + // Amazon, or those image recipes that have been shared with you by other customers. Owner *string `locationName:"owner" type:"string" enum:"Ownership"` } @@ -10470,9 +10495,9 @@ type ListImageRecipesOutput struct { // The list of image pipelines. ImageRecipeSummaryList []*ImageRecipeSummary `locationName:"imageRecipeSummaryList" type:"list"` - // The next token used for paginated responses. When this is not empty then - // there are additional elements that the service that not include in this request. - // Use this token with the next request to retrieve additional object. + // The next token used for paginated responses. When this is not empty, there + // are additional elements that the service has not included in this request. + // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The request ID that uniquely identifies this request. @@ -10510,6 +10535,7 @@ func (s *ListImageRecipesOutput) SetRequestId(v string) *ListImageRecipesOutput type ListImagesInput struct { _ struct{} `type:"structure"` + // The filters. Filters []*Filter `locationName:"filters" min:"1" type:"list"` // The maximum items to return in a request. @@ -10519,10 +10545,10 @@ type ListImagesInput struct { // a previously truncated response. NextToken *string `locationName:"nextToken" min:"1" type:"string"` - // The owner defines whose images you wish to list. By default this request - // will only show images owned by your account. You may use this field to specify - // if you wish to view images owned by yourself, Amazon, or those images that - // have been shared with you by other customers. + // The owner defines which images you want to list. By default, this request + // will only show images owned by your account. You can use this field to specify + // if you want to view images owned by yourself, by Amazon, or those images + // that have been shared with you by other customers. Owner *string `locationName:"owner" type:"string" enum:"Ownership"` } @@ -10595,9 +10621,9 @@ type ListImagesOutput struct { // The list of image semantic versions. ImageVersionList []*ImageVersion `locationName:"imageVersionList" type:"list"` - // The next token used for paginated responses. When this is not empty then - // there are additional elements that the service that not include in this request. - // Use this token with the next request to retrieve additional object. + // The next token used for paginated responses. When this is not empty, there + // are additional elements that the service has not included in this request. + // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The request ID that uniquely identifies this request. @@ -10635,6 +10661,7 @@ func (s *ListImagesOutput) SetRequestId(v string) *ListImagesOutput { type ListInfrastructureConfigurationsInput struct { _ struct{} `type:"structure"` + // The filters. Filters []*Filter `locationName:"filters" min:"1" type:"list"` // The maximum items to return in a request. @@ -10708,9 +10735,9 @@ type ListInfrastructureConfigurationsOutput struct { // The list of infrastructure configurations. InfrastructureConfigurationSummaryList []*InfrastructureConfigurationSummary `locationName:"infrastructureConfigurationSummaryList" type:"list"` - // The next token used for paginated responses. When this is not empty then - // there are additional elements that the service that not include in this request. - // Use this token with the next request to retrieve additional object. + // The next token used for paginated responses. When this is not empty, there + // are additional elements that the service has not included in this request. + // Use this token with the next request to retrieve additional objects. NextToken *string `locationName:"nextToken" min:"1" type:"string"` // The request ID that uniquely identifies this request. @@ -10748,7 +10775,7 @@ func (s *ListInfrastructureConfigurationsOutput) SetRequestId(v string) *ListInf type ListTagsForResourceInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource whose tags you wish to retrieve. + // The Amazon Resource Name (ARN) of the resource whose tags you want to retrieve. // // ResourceArn is a required field ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` @@ -10809,11 +10836,11 @@ func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForRe return s } -// Logging configuration defines where Image Builder uploads your logs to. +// Logging configuration defines where Image Builder uploads your logs. type Logging struct { _ struct{} `type:"structure"` - // The S3 logging configuration. + // The Amazon S3 logging configuration. S3Logs *S3Logs `locationName:"s3Logs" type:"structure"` } @@ -11196,7 +11223,7 @@ func (s ResourceAlreadyExistsException) RequestID() string { } // You have attempted to mutate or delete a resource with a dependency that -// is prohibitting this action. See the error message for more details. +// prohibits this action. See the error message for more details. type ResourceDependencyException struct { _ struct{} `type:"structure"` respMetadata protocol.ResponseMetadata @@ -11253,7 +11280,7 @@ func (s ResourceDependencyException) RequestID() string { } // The resource that you are trying to operate on is currently in use. Review -// the message details, and retry later. +// the message details and retry later. type ResourceInUseException struct { _ struct{} `type:"structure"` respMetadata protocol.ResponseMetadata @@ -11365,14 +11392,14 @@ func (s ResourceNotFoundException) RequestID() string { return s.respMetadata.RequestID } -// S3 Logging configuration. +// Amazon S3 logging configuration. type S3Logs struct { _ struct{} `type:"structure"` - // The S3 bucket in which to store the logs. + // The Amazon S3 bucket in which to store the logs. S3BucketName *string `locationName:"s3BucketName" min:"1" type:"string"` - // The S3 path in which to store the logs. + // The Amazon S3 path in which to store the logs. S3KeyPrefix *string `locationName:"s3KeyPrefix" min:"1" type:"string"` } @@ -11420,10 +11447,13 @@ type Schedule struct { _ struct{} `type:"structure"` // The condition configures when the pipeline should trigger a new image build. + // When the pipelineExecutionStartCondition is set to EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE, + // EC2 Image Builder will build a new image only when there are known changes + // pending. When it is set to EXPRESSION_MATCH_ONLY, it will build a new image + // every time the CRON expression matches the current time. PipelineExecutionStartCondition *string `locationName:"pipelineExecutionStartCondition" type:"string" enum:"PipelineExecutionStartCondition"` - // The expression determines how often a pipeline starts the creation of new - // images. + // The expression determines how often EC2 Image Builder evaluates your pipelineExecutionStartCondition. ScheduleExpression *string `locationName:"scheduleExpression" min:"1" type:"string"` } @@ -11580,7 +11610,7 @@ type StartImagePipelineExecutionInput struct { // The idempotency token used to make this request idempotent. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` - // The Amazon Resource Name (ARN) of the image pipeline that you wish to manually + // The Amazon Resource Name (ARN) of the image pipeline that you want to manually // invoke. // // ImagePipelineArn is a required field @@ -11669,7 +11699,7 @@ func (s *StartImagePipelineExecutionOutput) SetRequestId(v string) *StartImagePi type TagResourceInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource that you wish to tag. + // The Amazon Resource Name (ARN) of the resource that you want to tag. // // ResourceArn is a required field ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` @@ -11741,7 +11771,7 @@ func (s TagResourceOutput) GoString() string { type UntagResourceInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource that you wish to untag. + // The Amazon Resource Name (ARN) of the resource that you want to untag. // // ResourceArn is a required field ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` @@ -11820,13 +11850,15 @@ type UpdateDistributionConfigurationInput struct { Description *string `locationName:"description" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the distribution configuration that you - // wish to update. + // want to update. // // DistributionConfigurationArn is a required field DistributionConfigurationArn *string `locationName:"distributionConfigurationArn" type:"string" required:"true"` // The distributions of the distribution configuration. - Distributions []*Distribution `locationName:"distributions" type:"list"` + // + // Distributions is a required field + Distributions []*Distribution `locationName:"distributions" type:"list" required:"true"` } // String returns the string representation @@ -11851,6 +11883,9 @@ func (s *UpdateDistributionConfigurationInput) Validate() error { if s.DistributionConfigurationArn == nil { invalidParams.Add(request.NewErrParamRequired("DistributionConfigurationArn")) } + if s.Distributions == nil { + invalidParams.Add(request.NewErrParamRequired("Distributions")) + } if s.Distributions != nil { for i, v := range s.Distributions { if v == nil { @@ -11947,21 +11982,25 @@ type UpdateImagePipelineInput struct { // be used to configure and distribute images updated by this image pipeline. DistributionConfigurationArn *string `locationName:"distributionConfigurationArn" type:"string"` - // The Amazon Resource Name (ARN) of the image pipeline that you wish to update. + // The Amazon Resource Name (ARN) of the image pipeline that you want to update. // // ImagePipelineArn is a required field ImagePipelineArn *string `locationName:"imagePipelineArn" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the image recipe that will be used to configure // images updated by this image pipeline. - ImageRecipeArn *string `locationName:"imageRecipeArn" type:"string"` + // + // ImageRecipeArn is a required field + ImageRecipeArn *string `locationName:"imageRecipeArn" type:"string" required:"true"` // The image test configuration of the image pipeline. ImageTestsConfiguration *ImageTestsConfiguration `locationName:"imageTestsConfiguration" type:"structure"` // The Amazon Resource Name (ARN) of the infrastructure configuration that will // be used to build images updated by this image pipeline. - InfrastructureConfigurationArn *string `locationName:"infrastructureConfigurationArn" type:"string"` + // + // InfrastructureConfigurationArn is a required field + InfrastructureConfigurationArn *string `locationName:"infrastructureConfigurationArn" type:"string" required:"true"` // The schedule of the image pipeline. Schedule *Schedule `locationName:"schedule" type:"structure"` @@ -11992,6 +12031,12 @@ func (s *UpdateImagePipelineInput) Validate() error { if s.ImagePipelineArn == nil { invalidParams.Add(request.NewErrParamRequired("ImagePipelineArn")) } + if s.ImageRecipeArn == nil { + invalidParams.Add(request.NewErrParamRequired("ImageRecipeArn")) + } + if s.InfrastructureConfigurationArn == nil { + invalidParams.Add(request.NewErrParamRequired("InfrastructureConfigurationArn")) + } if s.ImageTestsConfiguration != nil { if err := s.ImageTestsConfiguration.Validate(); err != nil { invalidParams.AddNested("ImageTestsConfiguration", err.(request.ErrInvalidParams)) @@ -12115,22 +12160,24 @@ type UpdateInfrastructureConfigurationInput struct { Description *string `locationName:"description" min:"1" type:"string"` // The Amazon Resource Name (ARN) of the infrastructure configuration that you - // wish to update. + // want to update. // // InfrastructureConfigurationArn is a required field InfrastructureConfigurationArn *string `locationName:"infrastructureConfigurationArn" type:"string" required:"true"` // The instance profile to associate with the instance used to customize your // EC2 AMI. - InstanceProfileName *string `locationName:"instanceProfileName" min:"1" type:"string"` + // + // InstanceProfileName is a required field + InstanceProfileName *string `locationName:"instanceProfileName" min:"1" type:"string" required:"true"` - // The instance types of the infrastructure configuration. You may specify one - // or more instance types to use for this build, the service will pick one of + // The instance types of the infrastructure configuration. You can specify one + // or more instance types to use for this build. The service will pick one of // these instance types based on availability. InstanceTypes []*string `locationName:"instanceTypes" type:"list"` // The key pair of the infrastructure configuration. This can be used to log - // onto and debug the instance used to create your image. + // on to and debug the instance used to create your image. KeyPair *string `locationName:"keyPair" min:"1" type:"string"` // The logging configuration of the infrastructure configuration. @@ -12141,15 +12188,14 @@ type UpdateInfrastructureConfigurationInput struct { SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` // The SNS topic on which to send image build events. - SnsTopicArn *string `locationName:"snsTopicArn" min:"1" type:"string"` + SnsTopicArn *string `locationName:"snsTopicArn" type:"string"` // The subnet ID to place the instance used to customize your EC2 AMI in. SubnetId *string `locationName:"subnetId" min:"1" type:"string"` // The terminate instance on failure setting of the infrastructure configuration. - // Set to false if you wish for Image Builder to retain the instance used to - // configure your AMI in the event that the build or test phase of your workflow - // failed. + // Set to false if you want Image Builder to retain the instance used to configure + // your AMI if the build or test phase of your workflow fails. TerminateInstanceOnFailure *bool `locationName:"terminateInstanceOnFailure" type:"boolean"` } @@ -12175,15 +12221,15 @@ func (s *UpdateInfrastructureConfigurationInput) Validate() error { if s.InfrastructureConfigurationArn == nil { invalidParams.Add(request.NewErrParamRequired("InfrastructureConfigurationArn")) } + if s.InstanceProfileName == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceProfileName")) + } if s.InstanceProfileName != nil && len(*s.InstanceProfileName) < 1 { invalidParams.Add(request.NewErrParamMinLen("InstanceProfileName", 1)) } if s.KeyPair != nil && len(*s.KeyPair) < 1 { invalidParams.Add(request.NewErrParamMinLen("KeyPair", 1)) } - if s.SnsTopicArn != nil && len(*s.SnsTopicArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("SnsTopicArn", 1)) - } if s.SubnetId != nil && len(*s.SubnetId) < 1 { invalidParams.Add(request.NewErrParamMinLen("SubnetId", 1)) } diff --git a/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/doc.go b/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/doc.go index b9df8be30f9..b8fd6be903e 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/doc.go +++ b/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/doc.go @@ -3,17 +3,10 @@ // Package imagebuilder provides the client and types for making API // requests to EC2 Image Builder. // -// Amazon Elastic Compute Cloud Image Builder provides a one-stop-shop to automate -// the image management processes. You configure an automated pipeline that -// creates images for use on AWS. As software updates become available, Image -// Builder automatically produces a new image based on a customizable schedule -// and distributes it to stipulated AWS Regions after running tests on it. With -// the Image Builder, organizations can capture their internal or industry-specific -// compliance policies as a vetted template that can be consistently applied -// to every new image. Built-in integration with AWS Organizations provides -// customers with a centralized way to enforce image distribution and access -// policies across their AWS accounts and Regions. Image Builder supports multiple -// image format AMIs on AWS. +// EC2 Image Builder is a fully managed AWS service that makes it easier to +// automate the creation, management, and deployment of customized, secure, +// and up-to-date “golden” server images that are pre-installed and pre-configured +// with software and settings to meet specific IT standards. // // See https://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02 for more information on this service. // diff --git a/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/errors.go b/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/errors.go index 88ab9384c98..3f688043e53 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/errors.go +++ b/vendor/github.com/aws/aws-sdk-go/service/imagebuilder/errors.go @@ -31,7 +31,7 @@ const ( // ErrCodeIdempotentParameterMismatchException for service response error code // "IdempotentParameterMismatchException". // - // You have specified an client token for an operation using parameter values + // You have specified a client token for an operation using parameter values // that differ from a previous request that used the same client token. ErrCodeIdempotentParameterMismatchException = "IdempotentParameterMismatchException" @@ -83,14 +83,14 @@ const ( // "ResourceDependencyException". // // You have attempted to mutate or delete a resource with a dependency that - // is prohibitting this action. See the error message for more details. + // prohibits this action. See the error message for more details. ErrCodeResourceDependencyException = "ResourceDependencyException" // ErrCodeResourceInUseException for service response error code // "ResourceInUseException". // // The resource that you are trying to operate on is currently in use. Review - // the message details, and retry later. + // the message details and retry later. ErrCodeResourceInUseException = "ResourceInUseException" // ErrCodeResourceNotFoundException for service response error code diff --git a/vendor/github.com/aws/aws-sdk-go/service/kafka/api.go b/vendor/github.com/aws/aws-sdk-go/service/kafka/api.go index e0a8b715679..2e1c27624f8 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/kafka/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/kafka/api.go @@ -1352,6 +1352,152 @@ func (c *Kafka) ListConfigurationsPagesWithContext(ctx aws.Context, input *ListC return p.Err() } +const opListKafkaVersions = "ListKafkaVersions" + +// ListKafkaVersionsRequest generates a "aws/request.Request" representing the +// client's request for the ListKafkaVersions operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListKafkaVersions for more information on using the ListKafkaVersions +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListKafkaVersionsRequest method. +// req, resp := client.ListKafkaVersionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/ListKafkaVersions +func (c *Kafka) ListKafkaVersionsRequest(input *ListKafkaVersionsInput) (req *request.Request, output *ListKafkaVersionsOutput) { + op := &request.Operation{ + Name: opListKafkaVersions, + HTTPMethod: "GET", + HTTPPath: "/v1/kafka-versions", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListKafkaVersionsInput{} + } + + output = &ListKafkaVersionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListKafkaVersions API operation for Managed Streaming for Kafka. +// +// Returns a list of Kafka versions. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Managed Streaming for Kafka's +// API operation ListKafkaVersions for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// Returns information about an error. +// +// * UnauthorizedException +// Returns information about an error. +// +// * InternalServerErrorException +// Returns information about an error. +// +// * ForbiddenException +// Returns information about an error. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/ListKafkaVersions +func (c *Kafka) ListKafkaVersions(input *ListKafkaVersionsInput) (*ListKafkaVersionsOutput, error) { + req, out := c.ListKafkaVersionsRequest(input) + return out, req.Send() +} + +// ListKafkaVersionsWithContext is the same as ListKafkaVersions with the addition of +// the ability to pass a context and additional request options. +// +// See ListKafkaVersions for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Kafka) ListKafkaVersionsWithContext(ctx aws.Context, input *ListKafkaVersionsInput, opts ...request.Option) (*ListKafkaVersionsOutput, error) { + req, out := c.ListKafkaVersionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListKafkaVersionsPages iterates over the pages of a ListKafkaVersions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListKafkaVersions method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListKafkaVersions operation. +// pageNum := 0 +// err := client.ListKafkaVersionsPages(params, +// func(page *kafka.ListKafkaVersionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Kafka) ListKafkaVersionsPages(input *ListKafkaVersionsInput, fn func(*ListKafkaVersionsOutput, bool) bool) error { + return c.ListKafkaVersionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListKafkaVersionsPagesWithContext same as ListKafkaVersionsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Kafka) ListKafkaVersionsPagesWithContext(ctx aws.Context, input *ListKafkaVersionsInput, fn func(*ListKafkaVersionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListKafkaVersionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListKafkaVersionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListKafkaVersionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListNodes = "ListNodes" // ListNodesRequest generates a "aws/request.Request" representing the @@ -4202,6 +4348,39 @@ func (s *JmxExporterInfo) SetEnabledInBroker(v bool) *JmxExporterInfo { return s } +// Information about a Kafka version. +type KafkaVersion struct { + _ struct{} `type:"structure"` + + // The status of a Kafka version. + Status *string `locationName:"status" type:"string" enum:"KafkaVersionStatus"` + + // The Kafka version. + Version *string `locationName:"version" type:"string"` +} + +// String returns the string representation +func (s KafkaVersion) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s KafkaVersion) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *KafkaVersion) SetStatus(v string) *KafkaVersion { + s.Status = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *KafkaVersion) SetVersion(v string) *KafkaVersion { + s.Version = &v + return s +} + type ListClusterOperationsInput struct { _ struct{} `type:"structure"` @@ -4553,6 +4732,82 @@ func (s *ListConfigurationsOutput) SetNextToken(v string) *ListConfigurationsOut return s } +type ListKafkaVersionsInput struct { + _ struct{} `type:"structure"` + + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s ListKafkaVersionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListKafkaVersionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListKafkaVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListKafkaVersionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListKafkaVersionsInput) SetMaxResults(v int64) *ListKafkaVersionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListKafkaVersionsInput) SetNextToken(v string) *ListKafkaVersionsInput { + s.NextToken = &v + return s +} + +// Response for ListKafkaVersions. +type ListKafkaVersionsOutput struct { + _ struct{} `type:"structure"` + + // An array of Kafka version objects. + KafkaVersions []*KafkaVersion `locationName:"kafkaVersions" type:"list"` + + // Paginated results marker. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s ListKafkaVersionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListKafkaVersionsOutput) GoString() string { + return s.String() +} + +// SetKafkaVersions sets the KafkaVersions field's value. +func (s *ListKafkaVersionsOutput) SetKafkaVersions(v []*KafkaVersion) *ListKafkaVersionsOutput { + s.KafkaVersions = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListKafkaVersionsOutput) SetNextToken(v string) *ListKafkaVersionsOutput { + s.NextToken = &v + return s +} + type ListNodesInput struct { _ struct{} `type:"structure"` @@ -6043,6 +6298,15 @@ const ( EnhancedMonitoringPerTopicPerBroker = "PER_TOPIC_PER_BROKER" ) +// The status of a Kafka version. +const ( + // KafkaVersionStatusActive is a KafkaVersionStatus enum value + KafkaVersionStatusActive = "ACTIVE" + + // KafkaVersionStatusDeprecated is a KafkaVersionStatus enum value + KafkaVersionStatusDeprecated = "DEPRECATED" +) + // The broker or Zookeeper node. const ( // NodeTypeBroker is a NodeType enum value diff --git a/vendor/github.com/aws/aws-sdk-go/service/kms/api.go b/vendor/github.com/aws/aws-sdk-go/service/kms/api.go index fd6f70aa070..725da920645 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/kms/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/kms/api.go @@ -7991,6 +7991,14 @@ type CustomKeyStoresListEntry struct { // * NETWORK_ERRORS - Network errors are preventing AWS KMS from connecting // to the custom key store. // + // * SUBNET_NOT_FOUND - A subnet in the AWS CloudHSM cluster configuration + // was deleted. If AWS KMS cannot find all of the subnets that were configured + // for the cluster when the custom key store was created, attempts to connect + // fail. To fix this error, create a cluster from a backup and associate + // it with your custom key store. This process includes selecting a VPC and + // subnets. For details, see How to Fix a Connection Failure (https://docs.aws.amazon.com/kms/latest/developerguide/fix-keystore.html#fix-keystore-failed) + // in the AWS Key Management Service Developer Guide. + // // * USER_LOCKED_OUT - The kmsuser CU account is locked out of the associated // AWS CloudHSM cluster due to too many failed password attempts. Before // you can connect your custom key store to its AWS CloudHSM cluster, you @@ -10498,9 +10506,10 @@ type GetPublicKeyOutput struct { // The exported public key. // - // This value is returned as a binary Distinguished Encoding Rules (https://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf) - // (DER)-encoded object. To decode it, use an ASN.1 parsing tool, such as OpenSSL - // asn1parse (https://www.openssl.org/docs/man1.0.2/man1/asn1parse.html). + // The value is a DER-encoded X.509 public key, also known as SubjectPublicKeyInfo + // (SPKI), as defined in RFC 5280 (https://tools.ietf.org/html/rfc5280). When + // you use the HTTP API or the AWS CLI, the value is Base64-encoded. Otherwise, + // it is not Base64-encoded. // // PublicKey is automatically base64 encoded/decoded by the SDK. PublicKey []byte `min:"1" type:"blob"` @@ -13554,8 +13563,8 @@ type SignInput struct { Message []byte `min:"1" type:"blob" required:"true" sensitive:"true"` // Tells AWS KMS whether the value of the Message parameter is a message or - // message digest. To indicate a message, enter RAW. To indicate a message digest, - // enter DIGEST. + // message digest. The default value, RAW, indicates a message. To indicate + // a message digest, enter DIGEST. MessageType *string `type:"string" enum:"MessageType"` // Specifies the signing algorithm to use when signing the message. @@ -13641,6 +13650,18 @@ type SignOutput struct { // The cryptographic signature that was generated for the message. // + // * When used with the supported RSA signing algorithms, the encoding of + // this value is defined by PKCS #1 in RFC 8017 (https://tools.ietf.org/html/rfc8017). + // + // * When used with the ECDSA_SHA_256, ECDSA_SHA_384, or ECDSA_SHA_512 signing + // algorithms, this value is a DER-encoded object as defined by ANS X9.62–2005 + // and RFC 3279 Section 2.2.3 (https://tools.ietf.org/html/rfc3279#section-2.2.3). + // This is the most commonly used signature format and is appropriate for + // most uses. + // + // When you use the HTTP API or the AWS CLI, the value is Base64-encoded. Otherwise, + // it is not Base64-encoded. + // // Signature is automatically base64 encoded/decoded by the SDK. Signature []byte `min:"1" type:"blob"` @@ -14522,6 +14543,9 @@ const ( // ConnectionErrorCodeTypeUserLoggedIn is a ConnectionErrorCodeType enum value ConnectionErrorCodeTypeUserLoggedIn = "USER_LOGGED_IN" + + // ConnectionErrorCodeTypeSubnetNotFound is a ConnectionErrorCodeType enum value + ConnectionErrorCodeTypeSubnetNotFound = "SUBNET_NOT_FOUND" ) const ( diff --git a/vendor/github.com/aws/aws-sdk-go/service/lambda/api.go b/vendor/github.com/aws/aws-sdk-go/service/lambda/api.go index ff41f45abfb..13531de9260 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/lambda/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/lambda/api.go @@ -1617,8 +1617,8 @@ func (c *Lambda) GetFunctionConcurrencyRequest(input *GetFunctionConcurrencyInpu // GetFunctionConcurrency API operation for AWS Lambda. // -// Returns details about the concurrency configuration for a function. To set -// a concurrency limit for a function, use PutFunctionConcurrency. +// Returns details about the reserved concurrency configuration for a function. +// To set a concurrency limit for a function, use PutFunctionConcurrency. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3080,7 +3080,7 @@ func (c *Lambda) ListFunctionsRequest(input *ListFunctionsInput) (req *request.R // ListFunctions API operation for AWS Lambda. // // Returns a list of Lambda functions, with the version-specific configuration -// of each. +// of each. Lambda returns up to 50 functions per call. // // Set FunctionVersion to ALL to include all published versions of each function // in addition to the unpublished version. To get more information about a function @@ -3758,7 +3758,8 @@ func (c *Lambda) ListVersionsByFunctionRequest(input *ListVersionsByFunctionInpu // ListVersionsByFunction API operation for AWS Lambda. // // Returns a list of versions (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html), -// with the version-specific configuration of each. +// with the version-specific configuration of each. Lambda returns up to 50 +// versions per call. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -4206,7 +4207,10 @@ func (c *Lambda) PutFunctionEventInvokeConfigRequest(input *PutFunctionEventInvo // PutFunctionEventInvokeConfig API operation for AWS Lambda. // // Configures options for asynchronous invocation (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html) -// on a function, version, or alias. +// on a function, version, or alias. If a configuration already exists for a +// function, version, or alias, this operation overwrites it. If you exclude +// any settings, they are removed. To set one option without affecting existing +// settings for other options, use PutFunctionEventInvokeConfig. // // By default, Lambda retries an asynchronous invocation twice if the function // returns an error. It retains events in a queue for up to six hours. When @@ -4214,6 +4218,12 @@ func (c *Lambda) PutFunctionEventInvokeConfigRequest(input *PutFunctionEventInvo // queue for too long, Lambda discards it. To retain discarded events, configure // a dead-letter queue with UpdateFunctionConfiguration. // +// To send an invocation record to a queue, topic, function, or event bus, specify +// a destination (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-async-destinations). +// You can configure separate destinations for successful invocations (on-success) +// and events that fail all processing attempts (on-failure). You can configure +// destinations in addition to or instead of a dead-letter queue. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -10439,8 +10449,7 @@ type ListFunctionsInput struct { // you must set FunctionVersion to ALL. MasterRegion *string `location:"querystring" locationName:"MasterRegion" type:"string"` - // Specify a value between 1 and 50 to limit the number of functions in the - // response. + // The maximum number of functions to return. MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"` } @@ -10906,7 +10915,7 @@ type ListVersionsByFunctionInput struct { // the next page of results. Marker *string `location:"querystring" locationName:"Marker" type:"string"` - // Limit the number of versions that are returned. + // The maximum number of versions to return. MaxItems *int64 `location:"querystring" locationName:"MaxItems" min:"1" type:"integer"` } @@ -13888,6 +13897,9 @@ const ( // RuntimeRuby25 is a Runtime enum value RuntimeRuby25 = "ruby2.5" + // RuntimeRuby27 is a Runtime enum value + RuntimeRuby27 = "ruby2.7" + // RuntimeProvided is a Runtime enum value RuntimeProvided = "provided" ) diff --git a/vendor/github.com/aws/aws-sdk-go/service/lexmodelbuildingservice/api.go b/vendor/github.com/aws/aws-sdk-go/service/lexmodelbuildingservice/api.go index 6c81e2b2aa5..091401bbee8 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/lexmodelbuildingservice/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/lexmodelbuildingservice/api.go @@ -5426,7 +5426,7 @@ type CreateSlotTypeVersionOutput struct { // A list of EnumerationValue objects that defines the values that the slot // type can take. - EnumerationValues []*EnumerationValue `locationName:"enumerationValues" min:"1" type:"list"` + EnumerationValues []*EnumerationValue `locationName:"enumerationValues" type:"list"` // The date that the slot type was updated. When you create a resource, the // creation date and last update date are the same. @@ -5435,6 +5435,12 @@ type CreateSlotTypeVersionOutput struct { // The name of the slot type. Name *string `locationName:"name" min:"1" type:"string"` + // The built-in slot type used a the parent of the slot type. + ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" min:"1" type:"string"` + + // Configuration information that extends the parent built-in slot type. + SlotTypeConfigurations []*SlotTypeConfiguration `locationName:"slotTypeConfigurations" type:"list"` + // The strategy that Amazon Lex uses to determine the value of the slot. For // more information, see PutSlotType. ValueSelectionStrategy *string `locationName:"valueSelectionStrategy" type:"string" enum:"SlotValueSelectionStrategy"` @@ -5489,6 +5495,18 @@ func (s *CreateSlotTypeVersionOutput) SetName(v string) *CreateSlotTypeVersionOu return s } +// SetParentSlotTypeSignature sets the ParentSlotTypeSignature field's value. +func (s *CreateSlotTypeVersionOutput) SetParentSlotTypeSignature(v string) *CreateSlotTypeVersionOutput { + s.ParentSlotTypeSignature = &v + return s +} + +// SetSlotTypeConfigurations sets the SlotTypeConfigurations field's value. +func (s *CreateSlotTypeVersionOutput) SetSlotTypeConfigurations(v []*SlotTypeConfiguration) *CreateSlotTypeVersionOutput { + s.SlotTypeConfigurations = v + return s +} + // SetValueSelectionStrategy sets the ValueSelectionStrategy field's value. func (s *CreateSlotTypeVersionOutput) SetValueSelectionStrategy(v string) *CreateSlotTypeVersionOutput { s.ValueSelectionStrategy = &v @@ -8420,7 +8438,7 @@ type GetSlotTypeOutput struct { // A list of EnumerationValue objects that defines the values that the slot // type can take. - EnumerationValues []*EnumerationValue `locationName:"enumerationValues" min:"1" type:"list"` + EnumerationValues []*EnumerationValue `locationName:"enumerationValues" type:"list"` // The date that the slot type was updated. When you create a resource, the // creation date and last update date are the same. @@ -8429,6 +8447,12 @@ type GetSlotTypeOutput struct { // The name of the slot type. Name *string `locationName:"name" min:"1" type:"string"` + // The built-in slot type used as a parent for the slot type. + ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" min:"1" type:"string"` + + // Configuration information that extends the parent built-in slot type. + SlotTypeConfigurations []*SlotTypeConfiguration `locationName:"slotTypeConfigurations" type:"list"` + // The strategy that Amazon Lex uses to determine the value of the slot. For // more information, see PutSlotType. ValueSelectionStrategy *string `locationName:"valueSelectionStrategy" type:"string" enum:"SlotValueSelectionStrategy"` @@ -8483,6 +8507,18 @@ func (s *GetSlotTypeOutput) SetName(v string) *GetSlotTypeOutput { return s } +// SetParentSlotTypeSignature sets the ParentSlotTypeSignature field's value. +func (s *GetSlotTypeOutput) SetParentSlotTypeSignature(v string) *GetSlotTypeOutput { + s.ParentSlotTypeSignature = &v + return s +} + +// SetSlotTypeConfigurations sets the SlotTypeConfigurations field's value. +func (s *GetSlotTypeOutput) SetSlotTypeConfigurations(v []*SlotTypeConfiguration) *GetSlotTypeOutput { + s.SlotTypeConfigurations = v + return s +} + // SetValueSelectionStrategy sets the ValueSelectionStrategy field's value. func (s *GetSlotTypeOutput) SetValueSelectionStrategy(v string) *GetSlotTypeOutput { s.ValueSelectionStrategy = &v @@ -10635,7 +10671,7 @@ type PutSlotTypeInput struct { // using a Lambda function you can choose to return the value that the user // entered or the first value in the resolution list as the slot value. The // valueSelectionStrategy field indicates the option to use. - EnumerationValues []*EnumerationValue `locationName:"enumerationValues" min:"1" type:"list"` + EnumerationValues []*EnumerationValue `locationName:"enumerationValues" type:"list"` // The name of the slot type. The name is not case sensitive. // @@ -10649,6 +10685,17 @@ type PutSlotTypeInput struct { // Name is a required field Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` + // The built-in slot type used as the parent of the slot type. When you define + // a parent slot type, the new slot type has all of the same configuration as + // the parent. + // + // Only AMAZON.AlphaNumeric is supported. + ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" min:"1" type:"string"` + + // Configuration information that extends the parent built-in slot type. The + // configuration is added to the settings for the parent slot type. + SlotTypeConfigurations []*SlotTypeConfiguration `locationName:"slotTypeConfigurations" type:"list"` + // Determines the slot resolution strategy that Amazon Lex uses to return slot // type values. The field can be set to one of the following values: // @@ -10676,15 +10723,15 @@ func (s PutSlotTypeInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *PutSlotTypeInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutSlotTypeInput"} - if s.EnumerationValues != nil && len(s.EnumerationValues) < 1 { - invalidParams.Add(request.NewErrParamMinLen("EnumerationValues", 1)) - } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } if s.Name != nil && len(*s.Name) < 1 { invalidParams.Add(request.NewErrParamMinLen("Name", 1)) } + if s.ParentSlotTypeSignature != nil && len(*s.ParentSlotTypeSignature) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ParentSlotTypeSignature", 1)) + } if s.EnumerationValues != nil { for i, v := range s.EnumerationValues { if v == nil { @@ -10695,6 +10742,16 @@ func (s *PutSlotTypeInput) Validate() error { } } } + if s.SlotTypeConfigurations != nil { + for i, v := range s.SlotTypeConfigurations { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SlotTypeConfigurations", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -10732,6 +10789,18 @@ func (s *PutSlotTypeInput) SetName(v string) *PutSlotTypeInput { return s } +// SetParentSlotTypeSignature sets the ParentSlotTypeSignature field's value. +func (s *PutSlotTypeInput) SetParentSlotTypeSignature(v string) *PutSlotTypeInput { + s.ParentSlotTypeSignature = &v + return s +} + +// SetSlotTypeConfigurations sets the SlotTypeConfigurations field's value. +func (s *PutSlotTypeInput) SetSlotTypeConfigurations(v []*SlotTypeConfiguration) *PutSlotTypeInput { + s.SlotTypeConfigurations = v + return s +} + // SetValueSelectionStrategy sets the ValueSelectionStrategy field's value. func (s *PutSlotTypeInput) SetValueSelectionStrategy(v string) *PutSlotTypeInput { s.ValueSelectionStrategy = &v @@ -10757,7 +10826,7 @@ type PutSlotTypeOutput struct { // A list of EnumerationValue objects that defines the values that the slot // type can take. - EnumerationValues []*EnumerationValue `locationName:"enumerationValues" min:"1" type:"list"` + EnumerationValues []*EnumerationValue `locationName:"enumerationValues" type:"list"` // The date that the slot type was updated. When you create a slot type, the // creation date and last update date are the same. @@ -10766,6 +10835,12 @@ type PutSlotTypeOutput struct { // The name of the slot type. Name *string `locationName:"name" min:"1" type:"string"` + // The built-in slot type used as the parent of the slot type. + ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" min:"1" type:"string"` + + // Configuration information that extends the parent built-in slot type. + SlotTypeConfigurations []*SlotTypeConfiguration `locationName:"slotTypeConfigurations" type:"list"` + // The slot resolution strategy that Amazon Lex uses to determine the value // of the slot. For more information, see PutSlotType. ValueSelectionStrategy *string `locationName:"valueSelectionStrategy" type:"string" enum:"SlotValueSelectionStrategy"` @@ -10827,6 +10902,18 @@ func (s *PutSlotTypeOutput) SetName(v string) *PutSlotTypeOutput { return s } +// SetParentSlotTypeSignature sets the ParentSlotTypeSignature field's value. +func (s *PutSlotTypeOutput) SetParentSlotTypeSignature(v string) *PutSlotTypeOutput { + s.ParentSlotTypeSignature = &v + return s +} + +// SetSlotTypeConfigurations sets the SlotTypeConfigurations field's value. +func (s *PutSlotTypeOutput) SetSlotTypeConfigurations(v []*SlotTypeConfiguration) *PutSlotTypeOutput { + s.SlotTypeConfigurations = v + return s +} + // SetValueSelectionStrategy sets the ValueSelectionStrategy field's value. func (s *PutSlotTypeOutput) SetValueSelectionStrategy(v string) *PutSlotTypeOutput { s.ValueSelectionStrategy = &v @@ -11106,6 +11193,45 @@ func (s *Slot) SetValueElicitationPrompt(v *Prompt) *Slot { return s } +// Provides configuration information for a slot type. +type SlotTypeConfiguration struct { + _ struct{} `type:"structure"` + + // A regular expression used to validate the value of a slot. + RegexConfiguration *SlotTypeRegexConfiguration `locationName:"regexConfiguration" type:"structure"` +} + +// String returns the string representation +func (s SlotTypeConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s SlotTypeConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SlotTypeConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SlotTypeConfiguration"} + if s.RegexConfiguration != nil { + if err := s.RegexConfiguration.Validate(); err != nil { + invalidParams.AddNested("RegexConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRegexConfiguration sets the RegexConfiguration field's value. +func (s *SlotTypeConfiguration) SetRegexConfiguration(v *SlotTypeRegexConfiguration) *SlotTypeConfiguration { + s.RegexConfiguration = v + return s +} + // Provides information about a slot type.. type SlotTypeMetadata struct { _ struct{} `type:"structure"` @@ -11167,6 +11293,65 @@ func (s *SlotTypeMetadata) SetVersion(v string) *SlotTypeMetadata { return s } +// Provides a regular expression used to validate the value of a slot. +type SlotTypeRegexConfiguration struct { + _ struct{} `type:"structure"` + + // A regular expression used to validate the value of a slot. + // + // Use a standard regular expression. Amazon Lex supports the following characters + // in the regular expression: + // + // * A-Z, a-z + // + // * 0-9 + // + // * Unicode characters ("\ u") + // + // Represent Unicode characters with four digits, for example "\u0041" or "\u005A". + // + // The following regular expression operators are not supported: + // + // * Infinite repeaters: *, +, or {x,} with no upper bound. + // + // * Wild card (.) + // + // Pattern is a required field + Pattern *string `locationName:"pattern" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s SlotTypeRegexConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s SlotTypeRegexConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SlotTypeRegexConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SlotTypeRegexConfiguration"} + if s.Pattern == nil { + invalidParams.Add(request.NewErrParamRequired("Pattern")) + } + if s.Pattern != nil && len(*s.Pattern) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Pattern", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPattern sets the Pattern field's value. +func (s *SlotTypeRegexConfiguration) SetPattern(v string) *SlotTypeRegexConfiguration { + s.Pattern = &v + return s +} + type StartImportInput struct { _ struct{} `type:"structure"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/mediaconvert/api.go b/vendor/github.com/aws/aws-sdk-go/service/mediaconvert/api.go index 585e2d7cb11..a4f1ea3060d 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/mediaconvert/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/mediaconvert/api.go @@ -3369,8 +3369,7 @@ type AudioNormalizationSettings struct { AlgorithmControl *string `locationName:"algorithmControl" type:"string" enum:"AudioNormalizationAlgorithmControl"` // Content measuring above this level will be corrected to the target level. - // Content measuring below this level will not be corrected. Gating only applies - // when not using real_time_correction. + // Content measuring below this level will not be corrected. CorrectionGateLevel *int64 `locationName:"correctionGateLevel" type:"integer"` // If set to LOG, log each output's audio track loudness to a CSV file. @@ -8392,11 +8391,22 @@ type H264QvbrSettings struct { MaxAverageBitrate *int64 `locationName:"maxAverageBitrate" min:"1000" type:"integer"` // Required when you use QVBR rate control mode. That is, when you specify qvbrSettings - // within h264Settings. Specify the target quality level for this output, from - // 1 to 10. Use higher numbers for greater quality. Level 10 results in nearly - // lossless compression. The quality level for most broadcast-quality transcodes - // is between 6 and 9. + // within h264Settings. Specify the general target quality level for this output, + // from 1 to 10. Use higher numbers for greater quality. Level 10 results in + // nearly lossless compression. The quality level for most broadcast-quality + // transcodes is between 6 and 9. Optionally, to specify a value between whole + // numbers, also provide a value for the setting qvbrQualityLevelFineTune. For + // example, if you want your QVBR quality level to be 7.33, set qvbrQualityLevel + // to 7 and set qvbrQualityLevelFineTune to .33. QvbrQualityLevel *int64 `locationName:"qvbrQualityLevel" min:"1" type:"integer"` + + // Optional. Specify a value here to set the QVBR quality to a level that is + // between whole numbers. For example, if you want your QVBR quality level to + // be 7.33, set qvbrQualityLevel to 7 and set qvbrQualityLevelFineTune to .33. + // MediaConvert rounds your QVBR quality level to the nearest third of a whole + // number. For example, if you set qvbrQualityLevel to 7 and you set qvbrQualityLevelFineTune + // to .25, your actual QVBR quality level is 7.33. + QvbrQualityLevelFineTune *float64 `locationName:"qvbrQualityLevelFineTune" type:"double"` } // String returns the string representation @@ -8437,6 +8447,12 @@ func (s *H264QvbrSettings) SetQvbrQualityLevel(v int64) *H264QvbrSettings { return s } +// SetQvbrQualityLevelFineTune sets the QvbrQualityLevelFineTune field's value. +func (s *H264QvbrSettings) SetQvbrQualityLevelFineTune(v float64) *H264QvbrSettings { + s.QvbrQualityLevelFineTune = &v + return s +} + // Required when you set (Codec) under (VideoDescription)>(CodecSettings) to // the value H_264. type H264Settings struct { @@ -8932,11 +8948,22 @@ type H265QvbrSettings struct { MaxAverageBitrate *int64 `locationName:"maxAverageBitrate" min:"1000" type:"integer"` // Required when you use QVBR rate control mode. That is, when you specify qvbrSettings - // within h265Settings. Specify the target quality level for this output, from - // 1 to 10. Use higher numbers for greater quality. Level 10 results in nearly - // lossless compression. The quality level for most broadcast-quality transcodes - // is between 6 and 9. + // within h265Settings. Specify the general target quality level for this output, + // from 1 to 10. Use higher numbers for greater quality. Level 10 results in + // nearly lossless compression. The quality level for most broadcast-quality + // transcodes is between 6 and 9. Optionally, to specify a value between whole + // numbers, also provide a value for the setting qvbrQualityLevelFineTune. For + // example, if you want your QVBR quality level to be 7.33, set qvbrQualityLevel + // to 7 and set qvbrQualityLevelFineTune to .33. QvbrQualityLevel *int64 `locationName:"qvbrQualityLevel" min:"1" type:"integer"` + + // Optional. Specify a value here to set the QVBR quality to a level that is + // between whole numbers. For example, if you want your QVBR quality level to + // be 7.33, set qvbrQualityLevel to 7 and set qvbrQualityLevelFineTune to .33. + // MediaConvert rounds your QVBR quality level to the nearest third of a whole + // number. For example, if you set qvbrQualityLevel to 7 and you set qvbrQualityLevelFineTune + // to .25, your actual QVBR quality level is 7.33. + QvbrQualityLevelFineTune *float64 `locationName:"qvbrQualityLevelFineTune" type:"double"` } // String returns the string representation @@ -8977,6 +9004,12 @@ func (s *H265QvbrSettings) SetQvbrQualityLevel(v int64) *H265QvbrSettings { return s } +// SetQvbrQualityLevelFineTune sets the QvbrQualityLevelFineTune field's value. +func (s *H265QvbrSettings) SetQvbrQualityLevelFineTune(v float64) *H265QvbrSettings { + s.QvbrQualityLevelFineTune = &v + return s +} + // Settings for H265 codec type H265Settings struct { _ struct{} `type:"structure"` @@ -10209,7 +10242,10 @@ type HlsSettings struct { // manifest IFrameOnlyManifest *string `locationName:"iFrameOnlyManifest" type:"string" enum:"HlsIFrameOnlyManifest"` - // String concatenated to end of segment filenames. Accepts "Format Identifiers":#format_identifier_parameters. + // Use this setting to add an identifying string to the filename of each segment. + // The service adds this string between the name modifier and segment index + // number. You can use format identifiers in the string. For more information, + // see https://docs.aws.amazon.com/mediaconvert/latest/ug/using-variables-in-your-job-settings.html SegmentModifier *string `locationName:"segmentModifier" type:"string"` } diff --git a/vendor/github.com/aws/aws-sdk-go/service/neptune/api.go b/vendor/github.com/aws/aws-sdk-go/service/neptune/api.go index b4e85611687..938839b0c04 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/neptune/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/neptune/api.go @@ -491,8 +491,6 @@ func (c *Neptune) CopyDBClusterSnapshotRequest(input *CopyDBClusterSnapshotInput // To copy a DB cluster snapshot from a shared manual DB cluster snapshot, SourceDBClusterSnapshotIdentifier // must be the Amazon Resource Name (ARN) of the shared DB cluster snapshot. // -// You can't copy from one AWS Region to another. -// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -676,6 +674,11 @@ func (c *Neptune) CreateDBClusterRequest(input *CreateDBClusterInput) (req *requ // You can use the ReplicationSourceIdentifier parameter to create the DB cluster // as a Read Replica of another DB cluster or Amazon Neptune DB instance. // +// Note that when you create a new cluster using CreateDBCluster directly, deletion +// protection is disabled by default (when you create a new production cluster +// in the console, deletion protection is enabled by default). You can only +// delete a DB cluster if its DeletionProtection field is set to false. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -1459,6 +1462,9 @@ func (c *Neptune) DeleteDBClusterRequest(input *DeleteDBClusterInput) (req *requ // and can't be recovered. Manual DB cluster snapshots of the specified DB cluster // are not deleted. // +// Note that the DB Cluster cannot be deleted if deletion protection is enabled. +// To delete it, you must first set its DeletionProtection field to False. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -1733,7 +1739,8 @@ func (c *Neptune) DeleteDBInstanceRequest(input *DeleteDBInstanceInput) (req *re // incompatible-restore, or incompatible-network, you can only delete it when // the SkipFinalSnapshot parameter is set to true. // -// You can't delete a DB instance if it is the only instance in the DB cluster. +// You can't delete a DB instance if it is the only instance in the DB cluster, +// or if it has deletion protection enabled. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2411,7 +2418,10 @@ func (c *Neptune) DescribeDBClustersRequest(input *DescribeDBClustersInput) (req // DescribeDBClusters API operation for Amazon Neptune. // -// Returns information about provisioned DB clusters. This API supports pagination. +// Returns information about provisioned DB clusters, and supports pagination. +// +// This operation can also return information for Amazon RDS clusters and Amazon +// DocDB clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2628,7 +2638,10 @@ func (c *Neptune) DescribeDBInstancesRequest(input *DescribeDBInstancesInput) (r // DescribeDBInstances API operation for Amazon Neptune. // -// Returns information about provisioned instances. This API supports pagination. +// Returns information about provisioned instances, and supports pagination. +// +// This operation can also return information for Amazon RDS instances and Amazon +// DocDB instances. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -5814,6 +5827,181 @@ func (c *Neptune) RestoreDBClusterToPointInTimeWithContext(ctx aws.Context, inpu return out, req.Send() } +const opStartDBCluster = "StartDBCluster" + +// StartDBClusterRequest generates a "aws/request.Request" representing the +// client's request for the StartDBCluster operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See StartDBCluster for more information on using the StartDBCluster +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the StartDBClusterRequest method. +// req, resp := client.StartDBClusterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/neptune-2014-10-31/StartDBCluster +func (c *Neptune) StartDBClusterRequest(input *StartDBClusterInput) (req *request.Request, output *StartDBClusterOutput) { + op := &request.Operation{ + Name: opStartDBCluster, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StartDBClusterInput{} + } + + output = &StartDBClusterOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartDBCluster API operation for Amazon Neptune. +// +// Starts an Amazon Neptune DB cluster that was stopped using the AWS console, +// the AWS CLI stop-db-cluster command, or the StopDBCluster API. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Neptune's +// API operation StartDBCluster for usage and error information. +// +// Returned Error Codes: +// * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" +// DBClusterIdentifier does not refer to an existing DB cluster. +// +// * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" +// The DB cluster is not in a valid state. +// +// * ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" +// The specified DB instance is not in the available state. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/neptune-2014-10-31/StartDBCluster +func (c *Neptune) StartDBCluster(input *StartDBClusterInput) (*StartDBClusterOutput, error) { + req, out := c.StartDBClusterRequest(input) + return out, req.Send() +} + +// StartDBClusterWithContext is the same as StartDBCluster with the addition of +// the ability to pass a context and additional request options. +// +// See StartDBCluster for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Neptune) StartDBClusterWithContext(ctx aws.Context, input *StartDBClusterInput, opts ...request.Option) (*StartDBClusterOutput, error) { + req, out := c.StartDBClusterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStopDBCluster = "StopDBCluster" + +// StopDBClusterRequest generates a "aws/request.Request" representing the +// client's request for the StopDBCluster operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See StopDBCluster for more information on using the StopDBCluster +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the StopDBClusterRequest method. +// req, resp := client.StopDBClusterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/neptune-2014-10-31/StopDBCluster +func (c *Neptune) StopDBClusterRequest(input *StopDBClusterInput) (req *request.Request, output *StopDBClusterOutput) { + op := &request.Operation{ + Name: opStopDBCluster, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StopDBClusterInput{} + } + + output = &StopDBClusterOutput{} + req = c.newRequest(op, input, output) + return +} + +// StopDBCluster API operation for Amazon Neptune. +// +// Stops an Amazon Neptune DB cluster. When you stop a DB cluster, Neptune retains +// the DB cluster's metadata, including its endpoints and DB parameter groups. +// +// Neptune also retains the transaction logs so you can do a point-in-time restore +// if necessary. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Neptune's +// API operation StopDBCluster for usage and error information. +// +// Returned Error Codes: +// * ErrCodeDBClusterNotFoundFault "DBClusterNotFoundFault" +// DBClusterIdentifier does not refer to an existing DB cluster. +// +// * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" +// The DB cluster is not in a valid state. +// +// * ErrCodeInvalidDBInstanceStateFault "InvalidDBInstanceState" +// The specified DB instance is not in the available state. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/neptune-2014-10-31/StopDBCluster +func (c *Neptune) StopDBCluster(input *StopDBClusterInput) (*StopDBClusterOutput, error) { + req, out := c.StopDBClusterRequest(input) + return out, req.Send() +} + +// StopDBClusterWithContext is the same as StopDBCluster with the addition of +// the ability to pass a context and additional request options. +// +// See StopDBCluster for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Neptune) StopDBClusterWithContext(ctx aws.Context, input *StopDBClusterInput, opts ...request.Option) (*StopDBClusterOutput, error) { + req, out := c.StopDBClusterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + type AddRoleToDBClusterInput struct { _ struct{} `type:"structure"` @@ -6697,7 +6885,7 @@ type CreateDBClusterInput struct { // A value that indicates whether the DB cluster has deletion protection enabled. // The database can't be deleted when deletion protection is enabled. By default, - // deletion protection is disabled. + // deletion protection is enabled. DeletionProtection *bool `type:"boolean"` // The list of log types that need to be enabled for exporting to CloudWatch @@ -7342,11 +7530,10 @@ type CreateDBInstanceInput struct { // A value that indicates whether the DB instance has deletion protection enabled. // The database can't be deleted when deletion protection is enabled. By default, - // deletion protection is disabled. + // deletion protection is disabled. See Deleting a DB Instance (https://docs.aws.amazon.com/neptune/latest/userguide/manage-console-instances-delete.html). // - // You can enable or disable deletion protection for the DB cluster. For more - // information, see CreateDBCluster. DB instances in a DB cluster can be deleted - // even when deletion protection is enabled for the DB cluster. + // DB instances in a DB cluster can be deleted even when deletion protection + // is enabled in their parent DB cluster. DeletionProtection *bool `type:"boolean"` // Specify the Active Directory Domain to create the instance in. @@ -8265,8 +8452,8 @@ type DBCluster struct { // cluster is accessed. DbClusterResourceId *string `type:"string"` - // Indicates if the DB cluster has deletion protection enabled. The database - // can't be deleted when deletion protection is enabled. + // Indicates whether or not the DB cluster has deletion protection enabled. + // The database can't be deleted when deletion protection is enabled. DeletionProtection *bool `type:"boolean"` // Specifies the earliest time to which a database can be restored with point-in-time @@ -8796,7 +8983,20 @@ type DBClusterSnapshot struct { // The Amazon Resource Name (ARN) for the DB cluster snapshot. DBClusterSnapshotArn *string `type:"string"` - // Specifies the identifier for the DB cluster snapshot. + // Specifies the identifier for a DB cluster snapshot. Must match the identifier + // of an existing snapshot. + // + // After you restore a DB cluster using a DBClusterSnapshotIdentifier, you must + // specify the same DBClusterSnapshotIdentifier for any future updates to the + // DB cluster. When you specify this property for an update, the DB cluster + // is not restored from the snapshot again, and the data in the database is + // not changed. + // + // However, if you don't specify the DBClusterSnapshotIdentifier, an empty DB + // cluster is created, and the original DB cluster is deleted. If you specify + // a property that is different from the previous snapshot restore property, + // the DB cluster is restored from the snapshot specified by the DBClusterSnapshotIdentifier, + // and the original DB cluster is deleted. DBClusterSnapshotIdentifier *string `type:"string"` // Specifies the name of the database engine. @@ -9259,8 +9459,9 @@ type DBInstance struct { // instance is accessed. DbiResourceId *string `type:"string"` - // Indicates if the DB instance has deletion protection enabled. The database - // can't be deleted when deletion protection is enabled. + // Indicates whether or not the DB instance has deletion protection enabled. + // The instance can't be deleted when deletion protection is enabled. See Deleting + // a DB Instance (https://docs.aws.amazon.com/neptune/latest/userguide/manage-console-instances-delete.html). DeletionProtection *bool `type:"boolean"` // Not supported @@ -11027,6 +11228,12 @@ type DescribeDBClustersInput struct { // * db-cluster-id - Accepts DB cluster identifiers and DB cluster Amazon // Resource Names (ARNs). The results list will only include information // about the DB clusters identified by these ARNs. + // + // * engine - Accepts an engine name (such as neptune), and restricts the + // results list to DB clusters created by that engine. + // + // For example, to invoke this API from the AWS CLI and filter so that only + // Neptune DB clusters are returned, you could use the following command: Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeDBClusters request. @@ -11318,9 +11525,11 @@ type DescribeDBInstancesInput struct { // about the DB instances associated with the DB clusters identified by these // ARNs. // - // * db-instance-id - Accepts DB instance identifiers and DB instance Amazon - // Resource Names (ARNs). The results list will only include information - // about the DB instances identified by these ARNs. + // * engine - Accepts an engine name (such as neptune), and restricts the + // results list to DB instances created by that engine. + // + // For example, to invoke this API from the AWS CLI and filter so that only + // Neptune DB instances are returned, you could use the following command: Filters []*Filter `locationNameList:"Filter" type:"list"` // An optional pagination token provided by a previous DescribeDBInstances request. @@ -13865,7 +14074,7 @@ type ModifyDBInstanceInput struct { // A value that indicates whether the DB instance has deletion protection enabled. // The database can't be deleted when deletion protection is enabled. By default, - // deletion protection is disabled. + // deletion protection is disabled. See Deleting a DB Instance (https://docs.aws.amazon.com/neptune/latest/userguide/manage-console-instances-delete.html). DeletionProtection *bool `type:"boolean"` // Not supported. @@ -16322,6 +16531,134 @@ func (s *RestoreDBClusterToPointInTimeOutput) SetDBCluster(v *DBCluster) *Restor return s } +type StartDBClusterInput struct { + _ struct{} `type:"structure"` + + // The DB cluster identifier of the Neptune DB cluster to be started. This parameter + // is stored as a lowercase string. + // + // DBClusterIdentifier is a required field + DBClusterIdentifier *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s StartDBClusterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s StartDBClusterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartDBClusterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartDBClusterInput"} + if s.DBClusterIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DBClusterIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDBClusterIdentifier sets the DBClusterIdentifier field's value. +func (s *StartDBClusterInput) SetDBClusterIdentifier(v string) *StartDBClusterInput { + s.DBClusterIdentifier = &v + return s +} + +type StartDBClusterOutput struct { + _ struct{} `type:"structure"` + + // Contains the details of an Amazon Neptune DB cluster. + // + // This data type is used as a response element in the DescribeDBClusters action. + DBCluster *DBCluster `type:"structure"` +} + +// String returns the string representation +func (s StartDBClusterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s StartDBClusterOutput) GoString() string { + return s.String() +} + +// SetDBCluster sets the DBCluster field's value. +func (s *StartDBClusterOutput) SetDBCluster(v *DBCluster) *StartDBClusterOutput { + s.DBCluster = v + return s +} + +type StopDBClusterInput struct { + _ struct{} `type:"structure"` + + // The DB cluster identifier of the Neptune DB cluster to be stopped. This parameter + // is stored as a lowercase string. + // + // DBClusterIdentifier is a required field + DBClusterIdentifier *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s StopDBClusterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s StopDBClusterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StopDBClusterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StopDBClusterInput"} + if s.DBClusterIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DBClusterIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDBClusterIdentifier sets the DBClusterIdentifier field's value. +func (s *StopDBClusterInput) SetDBClusterIdentifier(v string) *StopDBClusterInput { + s.DBClusterIdentifier = &v + return s +} + +type StopDBClusterOutput struct { + _ struct{} `type:"structure"` + + // Contains the details of an Amazon Neptune DB cluster. + // + // This data type is used as a response element in the DescribeDBClusters action. + DBCluster *DBCluster `type:"structure"` +} + +// String returns the string representation +func (s StopDBClusterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s StopDBClusterOutput) GoString() string { + return s.String() +} + +// SetDBCluster sets the DBCluster field's value. +func (s *StopDBClusterOutput) SetDBCluster(v *DBCluster) *StopDBClusterOutput { + s.DBCluster = v + return s +} + // Specifies a subnet. // // This data type is used as a response element in the DescribeDBSubnetGroups diff --git a/vendor/github.com/aws/aws-sdk-go/service/pinpoint/api.go b/vendor/github.com/aws/aws-sdk-go/service/pinpoint/api.go index c38951a9de6..e9856621f52 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/pinpoint/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/pinpoint/api.go @@ -13159,9 +13159,7 @@ type CampaignEmailMessage struct { HtmlBody *string `type:"string"` // The subject line, or title, of the email. - // - // Title is a required field - Title *string `type:"string" required:"true"` + Title *string `type:"string"` } // String returns the string representation @@ -13174,19 +13172,6 @@ func (s CampaignEmailMessage) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *CampaignEmailMessage) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CampaignEmailMessage"} - if s.Title == nil { - invalidParams.Add(request.NewErrParamRequired("Title")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - // SetBody sets the Body field's value. func (s *CampaignEmailMessage) SetBody(v string) *CampaignEmailMessage { s.Body = &v @@ -24860,21 +24845,6 @@ func (s MessageConfiguration) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *MessageConfiguration) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "MessageConfiguration"} - if s.EmailMessage != nil { - if err := s.EmailMessage.Validate(); err != nil { - invalidParams.AddNested("EmailMessage", err.(request.ErrInvalidParams)) - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - // SetADMMessage sets the ADMMessage field's value. func (s *MessageConfiguration) SetADMMessage(v *Message) *MessageConfiguration { s.ADMMessage = v @@ -32079,11 +32049,6 @@ func (s *WriteCampaignRequest) Validate() error { } } } - if s.MessageConfiguration != nil { - if err := s.MessageConfiguration.Validate(); err != nil { - invalidParams.AddNested("MessageConfiguration", err.(request.ErrInvalidParams)) - } - } if s.Schedule != nil { if err := s.Schedule.Validate(); err != nil { invalidParams.AddNested("Schedule", err.(request.ErrInvalidParams)) @@ -32558,11 +32523,6 @@ func (s *WriteTreatmentResource) Validate() error { if s.SizePercent == nil { invalidParams.Add(request.NewErrParamRequired("SizePercent")) } - if s.MessageConfiguration != nil { - if err := s.MessageConfiguration.Validate(); err != nil { - invalidParams.AddNested("MessageConfiguration", err.(request.ErrInvalidParams)) - } - } if s.Schedule != nil { if err := s.Schedule.Validate(); err != nil { invalidParams.AddNested("Schedule", err.(request.ErrInvalidParams)) diff --git a/vendor/github.com/aws/aws-sdk-go/service/rds/api.go b/vendor/github.com/aws/aws-sdk-go/service/rds/api.go index 3657e5ea99f..b9c5f9c6beb 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/rds/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/rds/api.go @@ -2246,7 +2246,7 @@ func (c *RDS) CreateDBProxyRequest(input *CreateDBProxyInput) (req *request.Requ // The requested subnet is invalid, or multiple subnets were requested that // are not all in a common VPC. // -// * ErrCodeDBProxyAlreadyExistsFault "DBProxyAlreadyExistsFault" +// * ErrCodeDBProxyAlreadyExistsFault "DBProxyTargetExistsFault" // The specified proxy name must be unique for all proxies owned by your AWS // account in the specified AWS Region. // @@ -4340,6 +4340,9 @@ func (c *RDS) DeregisterDBProxyTargetsRequest(input *DeregisterDBProxyTargetsInp // The specified proxy name doesn't correspond to a proxy owned by your AWS // accoutn in the specified AWS Region. // +// * ErrCodeInvalidDBProxyStateFault "InvalidDBProxyStateFault" +// The requested operation can't be performed while the proxy is in this state. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DeregisterDBProxyTargets func (c *RDS) DeregisterDBProxyTargets(input *DeregisterDBProxyTargetsInput) (*DeregisterDBProxyTargetsOutput, error) { req, out := c.DeregisterDBProxyTargetsRequest(input) @@ -6359,10 +6362,17 @@ func (c *RDS) DescribeDBProxyTargetGroupsRequest(input *DescribeDBProxyTargetGro // API operation DescribeDBProxyTargetGroups for usage and error information. // // Returned Error Codes: +// * ErrCodeDBProxyNotFoundFault "DBProxyNotFoundFault" +// The specified proxy name doesn't correspond to a proxy owned by your AWS +// accoutn in the specified AWS Region. +// // * ErrCodeDBProxyTargetGroupNotFoundFault "DBProxyTargetGroupNotFoundFault" // The specified target group isn't available for a proxy owned by your AWS // account in the specified AWS Region. // +// * ErrCodeInvalidDBProxyStateFault "InvalidDBProxyStateFault" +// The requested operation can't be performed while the proxy is in this state. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DescribeDBProxyTargetGroups func (c *RDS) DescribeDBProxyTargetGroups(input *DescribeDBProxyTargetGroupsInput) (*DescribeDBProxyTargetGroupsOutput, error) { req, out := c.DescribeDBProxyTargetGroupsRequest(input) @@ -6513,6 +6523,9 @@ func (c *RDS) DescribeDBProxyTargetsRequest(input *DescribeDBProxyTargetsInput) // The specified target group isn't available for a proxy owned by your AWS // account in the specified AWS Region. // +// * ErrCodeInvalidDBProxyStateFault "InvalidDBProxyStateFault" +// The requested operation can't be performed while the proxy is in this state. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DescribeDBProxyTargets func (c *RDS) DescribeDBProxyTargets(input *DescribeDBProxyTargetsInput) (*DescribeDBProxyTargetsOutput, error) { req, out := c.DescribeDBProxyTargetsRequest(input) @@ -10348,7 +10361,7 @@ func (c *RDS) ModifyDBProxyRequest(input *ModifyDBProxyInput) (req *request.Requ // The specified proxy name doesn't correspond to a proxy owned by your AWS // accoutn in the specified AWS Region. // -// * ErrCodeDBProxyAlreadyExistsFault "DBProxyAlreadyExistsFault" +// * ErrCodeDBProxyAlreadyExistsFault "DBProxyTargetExistsFault" // The specified proxy name must be unique for all proxies owned by your AWS // account in the specified AWS Region. // @@ -10443,6 +10456,9 @@ func (c *RDS) ModifyDBProxyTargetGroupRequest(input *ModifyDBProxyTargetGroupInp // The specified target group isn't available for a proxy owned by your AWS // account in the specified AWS Region. // +// * ErrCodeInvalidDBProxyStateFault "InvalidDBProxyStateFault" +// The requested operation can't be performed while the proxy is in this state. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ModifyDBProxyTargetGroup func (c *RDS) ModifyDBProxyTargetGroup(input *ModifyDBProxyTargetGroupInput) (*ModifyDBProxyTargetGroupOutput, error) { req, out := c.ModifyDBProxyTargetGroupRequest(input) @@ -11450,6 +11466,9 @@ func (c *RDS) RegisterDBProxyTargetsRequest(input *RegisterDBProxyTargetsInput) // * ErrCodeInvalidDBClusterStateFault "InvalidDBClusterStateFault" // The requested operation can't be performed while the cluster is in this state. // +// * ErrCodeInvalidDBProxyStateFault "InvalidDBProxyStateFault" +// The requested operation can't be performed while the proxy is in this state. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/RegisterDBProxyTargets func (c *RDS) RegisterDBProxyTargets(input *RegisterDBProxyTargetsInput) (*RegisterDBProxyTargetsOutput, error) { req, out := c.RegisterDBProxyTargetsRequest(input) @@ -16502,6 +16521,18 @@ type CreateDBClusterInput struct { // DestinationRegion is used for presigning the request to a given region. DestinationRegion *string `type:"string"` + // The Active Directory directory ID to create the DB cluster in. + // + // For Amazon Aurora DB clusters, Amazon RDS can use Kerberos Authentication + // to authenticate users that connect to the DB cluster. For more information, + // see Using Kerberos Authentication for Aurora MySQL (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurmysql-kerberos.html) + // in the Amazon Aurora User Guide. + Domain *string `type:"string"` + + // Specify the name of the IAM role to be used when making API calls to the + // Directory Service. + DomainIAMRoleName *string `type:"string"` + // The list of log types that need to be enabled for exporting to CloudWatch // Logs. The values in the list depend on the DB engine being used. For more // information, see Publishing Database Logs to Amazon CloudWatch Logs (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) @@ -16818,6 +16849,18 @@ func (s *CreateDBClusterInput) SetDestinationRegion(v string) *CreateDBClusterIn return s } +// SetDomain sets the Domain field's value. +func (s *CreateDBClusterInput) SetDomain(v string) *CreateDBClusterInput { + s.Domain = &v + return s +} + +// SetDomainIAMRoleName sets the DomainIAMRoleName field's value. +func (s *CreateDBClusterInput) SetDomainIAMRoleName(v string) *CreateDBClusterInput { + s.DomainIAMRoleName = &v + return s +} + // SetEnableCloudwatchLogsExports sets the EnableCloudwatchLogsExports field's value. func (s *CreateDBClusterInput) SetEnableCloudwatchLogsExports(v []*string) *CreateDBClusterInput { s.EnableCloudwatchLogsExports = v @@ -19994,6 +20037,9 @@ type DBCluster struct { // can't be deleted when deletion protection is enabled. DeletionProtection *bool `type:"boolean"` + // The Active Directory Domain membership records associated with the DB cluster. + DomainMemberships []*DomainMembership `locationNameList:"DomainMembership" type:"list"` + // The earliest time to which a DB cluster can be backtracked. EarliestBacktrackTime *time.Time `type:"timestamp"` @@ -20272,6 +20318,12 @@ func (s *DBCluster) SetDeletionProtection(v bool) *DBCluster { return s } +// SetDomainMemberships sets the DomainMemberships field's value. +func (s *DBCluster) SetDomainMemberships(v []*DomainMembership) *DBCluster { + s.DomainMemberships = v + return s +} + // SetEarliestBacktrackTime sets the EarliestBacktrackTime field's value. func (s *DBCluster) SetEarliestBacktrackTime(v time.Time) *DBCluster { s.EarliestBacktrackTime = &v @@ -29668,7 +29720,8 @@ func (s *DescribeValidDBInstanceModificationsOutput) SetValidDBInstanceModificat return s } -// An Active Directory Domain membership record associated with the DB instance. +// An Active Directory Domain membership record associated with the DB instance +// or cluster. type DomainMembership struct { _ struct{} `type:"structure"` @@ -29682,8 +29735,8 @@ type DomainMembership struct { // Service. IAMRoleName *string `type:"string"` - // The status of the DB instance's Active Directory Domain membership, such - // as joined, pending-join, failed etc). + // The status of the Active Directory Domain membership for the DB instance + // or cluster. Values include joined, pending-join, failed, and so on. Status *string `type:"string"` } @@ -31719,6 +31772,15 @@ type ModifyDBClusterInput struct { // deletion protection is disabled. DeletionProtection *bool `type:"boolean"` + // The Active Directory directory ID to move the DB cluster to. Specify none + // to remove the cluster from its current domain. The domain must be created + // prior to this operation. + Domain *string `type:"string"` + + // Specify the name of the IAM role to be used when making API calls to the + // Directory Service. + DomainIAMRoleName *string `type:"string"` + // A value that indicates whether to enable the HTTP endpoint for an Aurora // Serverless DB cluster. By default, the HTTP endpoint is disabled. // @@ -31922,6 +31984,18 @@ func (s *ModifyDBClusterInput) SetDeletionProtection(v bool) *ModifyDBClusterInp return s } +// SetDomain sets the Domain field's value. +func (s *ModifyDBClusterInput) SetDomain(v string) *ModifyDBClusterInput { + s.Domain = &v + return s +} + +// SetDomainIAMRoleName sets the DomainIAMRoleName field's value. +func (s *ModifyDBClusterInput) SetDomainIAMRoleName(v string) *ModifyDBClusterInput { + s.DomainIAMRoleName = &v + return s +} + // SetEnableHttpEndpoint sets the EnableHttpEndpoint field's value. func (s *ModifyDBClusterInput) SetEnableHttpEndpoint(v bool) *ModifyDBClusterInput { s.EnableHttpEndpoint = &v @@ -36741,6 +36815,19 @@ type RestoreDBClusterFromS3Input struct { // deletion protection is disabled. DeletionProtection *bool `type:"boolean"` + // Specify the Active Directory directory ID to restore the DB cluster in. The + // domain must be created prior to this operation. + // + // For Amazon Aurora DB clusters, Amazon RDS can use Kerberos Authentication + // to authenticate users that connect to the DB cluster. For more information, + // see Using Kerberos Authentication for Aurora MySQL (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurmysql-kerberos.html) + // in the Amazon Aurora User Guide. + Domain *string `type:"string"` + + // Specify the name of the IAM role to be used when making API calls to the + // Directory Service. + DomainIAMRoleName *string `type:"string"` + // The list of logs that the restored DB cluster is to export to CloudWatch // Logs. The values in the list depend on the DB engine being used. For more // information, see Publishing Database Logs to Amazon CloudWatch Logs (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) @@ -37020,6 +37107,18 @@ func (s *RestoreDBClusterFromS3Input) SetDeletionProtection(v bool) *RestoreDBCl return s } +// SetDomain sets the Domain field's value. +func (s *RestoreDBClusterFromS3Input) SetDomain(v string) *RestoreDBClusterFromS3Input { + s.Domain = &v + return s +} + +// SetDomainIAMRoleName sets the DomainIAMRoleName field's value. +func (s *RestoreDBClusterFromS3Input) SetDomainIAMRoleName(v string) *RestoreDBClusterFromS3Input { + s.DomainIAMRoleName = &v + return s +} + // SetEnableCloudwatchLogsExports sets the EnableCloudwatchLogsExports field's value. func (s *RestoreDBClusterFromS3Input) SetEnableCloudwatchLogsExports(v []*string) *RestoreDBClusterFromS3Input { s.EnableCloudwatchLogsExports = v @@ -37229,6 +37328,14 @@ type RestoreDBClusterFromSnapshotInput struct { // deletion protection is disabled. DeletionProtection *bool `type:"boolean"` + // Specify the Active Directory directory ID to restore the DB cluster in. The + // domain must be created prior to this operation. + Domain *string `type:"string"` + + // Specify the name of the IAM role to be used when making API calls to the + // Directory Service. + DomainIAMRoleName *string `type:"string"` + // The list of logs that the restored DB cluster is to export to Amazon CloudWatch // Logs. The values in the list depend on the DB engine being used. For more // information, see Publishing Database Logs to Amazon CloudWatch Logs (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) @@ -37414,6 +37521,18 @@ func (s *RestoreDBClusterFromSnapshotInput) SetDeletionProtection(v bool) *Resto return s } +// SetDomain sets the Domain field's value. +func (s *RestoreDBClusterFromSnapshotInput) SetDomain(v string) *RestoreDBClusterFromSnapshotInput { + s.Domain = &v + return s +} + +// SetDomainIAMRoleName sets the DomainIAMRoleName field's value. +func (s *RestoreDBClusterFromSnapshotInput) SetDomainIAMRoleName(v string) *RestoreDBClusterFromSnapshotInput { + s.DomainIAMRoleName = &v + return s +} + // SetEnableCloudwatchLogsExports sets the EnableCloudwatchLogsExports field's value. func (s *RestoreDBClusterFromSnapshotInput) SetEnableCloudwatchLogsExports(v []*string) *RestoreDBClusterFromSnapshotInput { s.EnableCloudwatchLogsExports = v @@ -37571,6 +37690,19 @@ type RestoreDBClusterToPointInTimeInput struct { // deletion protection is disabled. DeletionProtection *bool `type:"boolean"` + // Specify the Active Directory directory ID to restore the DB cluster in. The + // domain must be created prior to this operation. + // + // For Amazon Aurora DB clusters, Amazon RDS can use Kerberos Authentication + // to authenticate users that connect to the DB cluster. For more information, + // see Using Kerberos Authentication for Aurora MySQL (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurmysql-kerberos.html) + // in the Amazon Aurora User Guide. + Domain *string `type:"string"` + + // Specify the name of the IAM role to be used when making API calls to the + // Directory Service. + DomainIAMRoleName *string `type:"string"` + // The list of logs that the restored DB cluster is to export to CloudWatch // Logs. The values in the list depend on the DB engine being used. For more // information, see Publishing Database Logs to Amazon CloudWatch Logs (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) @@ -37739,6 +37871,18 @@ func (s *RestoreDBClusterToPointInTimeInput) SetDeletionProtection(v bool) *Rest return s } +// SetDomain sets the Domain field's value. +func (s *RestoreDBClusterToPointInTimeInput) SetDomain(v string) *RestoreDBClusterToPointInTimeInput { + s.Domain = &v + return s +} + +// SetDomainIAMRoleName sets the DomainIAMRoleName field's value. +func (s *RestoreDBClusterToPointInTimeInput) SetDomainIAMRoleName(v string) *RestoreDBClusterToPointInTimeInput { + s.DomainIAMRoleName = &v + return s +} + // SetEnableCloudwatchLogsExports sets the EnableCloudwatchLogsExports field's value. func (s *RestoreDBClusterToPointInTimeInput) SetEnableCloudwatchLogsExports(v []*string) *RestoreDBClusterToPointInTimeInput { s.EnableCloudwatchLogsExports = v diff --git a/vendor/github.com/aws/aws-sdk-go/service/rds/errors.go b/vendor/github.com/aws/aws-sdk-go/service/rds/errors.go index b37ba245bbd..d1178110658 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/rds/errors.go +++ b/vendor/github.com/aws/aws-sdk-go/service/rds/errors.go @@ -213,11 +213,11 @@ const ( ErrCodeDBParameterGroupQuotaExceededFault = "DBParameterGroupQuotaExceeded" // ErrCodeDBProxyAlreadyExistsFault for service response error code - // "DBProxyAlreadyExistsFault". + // "DBProxyTargetExistsFault". // // The specified proxy name must be unique for all proxies owned by your AWS // account in the specified AWS Region. - ErrCodeDBProxyAlreadyExistsFault = "DBProxyAlreadyExistsFault" + ErrCodeDBProxyAlreadyExistsFault = "DBProxyTargetExistsFault" // ErrCodeDBProxyNotFoundFault for service response error code // "DBProxyNotFoundFault". diff --git a/vendor/github.com/aws/aws-sdk-go/service/securityhub/api.go b/vendor/github.com/aws/aws-sdk-go/service/securityhub/api.go index 91b5ea661be..627cadf48b2 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/securityhub/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/securityhub/api.go @@ -59,9 +59,10 @@ func (c *SecurityHub) AcceptInvitationRequest(input *AcceptInvitationInput) (req // AcceptInvitation API operation for AWS SecurityHub. // // Accepts the invitation to be a member account and be monitored by the Security -// Hub master account that the invitation was sent from. When the member account -// accepts the invitation, permission is granted to the master account to view -// findings generated in the member account. +// Hub master account that the invitation was sent from. +// +// When the member account accepts the invitation, permission is granted to +// the master account to view findings generated in the member account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -155,7 +156,9 @@ func (c *SecurityHub) BatchDisableStandardsRequest(input *BatchDisableStandardsI // BatchDisableStandards API operation for AWS SecurityHub. // // Disables the standards specified by the provided StandardsSubscriptionArns. -// For more information, see Standards Supported in AWS Security Hub (https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards.html). +// +// For more information, see Compliance Standards (https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards.html) +// section of the AWS Security Hub User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -245,9 +248,11 @@ func (c *SecurityHub) BatchEnableStandardsRequest(input *BatchEnableStandardsInp // BatchEnableStandards API operation for AWS SecurityHub. // -// Enables the standards specified by the provided standardsArn. In this release, -// only CIS AWS Foundations standards are supported. For more information, see -// Standards Supported in AWS Security Hub (https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards.html). +// Enables the standards specified by the provided StandardsArn. To obtain the +// ARN for a standard, use the DescribeStandards operation. +// +// For more information, see the Compliance Standards (https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards.html) +// section of the AWS Security Hub User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -339,8 +344,10 @@ func (c *SecurityHub) BatchImportFindingsRequest(input *BatchImportFindingsInput // // Imports security findings generated from an integrated third-party product // into Security Hub. This action is requested by the integrated product to -// import its findings into Security Hub. The maximum allowed size for a finding -// is 240 Kb. An error is returned for any finding larger than 240 Kb. +// import its findings into Security Hub. +// +// The maximum allowed size for a finding is 240 Kb. An error is returned for +// any finding larger than 240 Kb. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -430,9 +437,10 @@ func (c *SecurityHub) CreateActionTargetRequest(input *CreateActionTargetInput) // CreateActionTarget API operation for AWS SecurityHub. // -// Creates a custom action target in Security Hub. You can use custom actions -// on findings and insights in Security Hub to trigger target actions in Amazon -// CloudWatch Events. +// Creates a custom action target in Security Hub. +// +// You can use custom actions on findings and insights in Security Hub to trigger +// target actions in Amazon CloudWatch Events. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -527,7 +535,8 @@ func (c *SecurityHub) CreateInsightRequest(input *CreateInsightInput) (req *requ // // Creates a custom insight in Security Hub. An insight is a consolidation of // findings that relate to a security issue that requires attention or remediation. -// Use the GroupByAttribute to group the related findings in the insight. +// +// To group the related findings in the insight, use the GroupByAttribute. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -623,20 +632,21 @@ func (c *SecurityHub) CreateMembersRequest(input *CreateMembersInput) (req *requ // Creates a member association in Security Hub between the specified accounts // and the account used to make the request, which is the master account. To // successfully create a member, you must use this action from an account that -// already has Security Hub enabled. You can use the EnableSecurityHub to enable -// Security Hub. +// already has Security Hub enabled. To enable Security Hub, you can use the +// EnableSecurityHub operation. // // After you use CreateMembers to create member account associations in Security -// Hub, you need to use the InviteMembers action, which invites the accounts -// to enable Security Hub and become member accounts in Security Hub. If the -// invitation is accepted by the account owner, the account becomes a member +// Hub, you must use the InviteMembers operation to invite the accounts to enable +// Security Hub and become member accounts in Security Hub. +// +// If the account owner accepts the invitation, the account becomes a member // account in Security Hub, and a permission policy is added that permits the // master account to view the findings generated in the member account. When -// Security Hub is enabled in the invited account, findings start being sent +// Security Hub is enabled in the invited account, findings start to be sent // to both the member and master accounts. // -// You can remove the association between the master and member accounts by -// using the DisassociateFromMasterAccount or DisassociateMembers operation. +// To remove the association between the master and member accounts, use the +// DisassociateFromMasterAccount or DisassociateMembers operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -818,9 +828,10 @@ func (c *SecurityHub) DeleteActionTargetRequest(input *DeleteActionTargetInput) // DeleteActionTarget API operation for AWS SecurityHub. // -// Deletes a custom action target from Security Hub. Deleting a custom action -// target doesn't affect any findings or insights that were already sent to -// Amazon CloudWatch Events using the custom action. +// Deletes a custom action target from Security Hub. +// +// Deleting a custom action target does not affect any findings or insights +// that were already sent to Amazon CloudWatch Events using the custom action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1435,8 +1446,8 @@ func (c *SecurityHub) DescribeProductsRequest(input *DescribeProductsInput) (req // DescribeProducts API operation for AWS SecurityHub. // -// Returns information about the products available that you can subscribe to -// and integrate with Security Hub to consolidate findings. +// Returns information about the available products that you can subscribe to +// and integrate with Security Hub in order to consolidate findings. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1534,6 +1545,153 @@ func (c *SecurityHub) DescribeProductsPagesWithContext(ctx aws.Context, input *D return p.Err() } +const opDescribeStandards = "DescribeStandards" + +// DescribeStandardsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeStandards operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DescribeStandards for more information on using the DescribeStandards +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DescribeStandardsRequest method. +// req, resp := client.DescribeStandardsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DescribeStandards +func (c *SecurityHub) DescribeStandardsRequest(input *DescribeStandardsInput) (req *request.Request, output *DescribeStandardsOutput) { + op := &request.Operation{ + Name: opDescribeStandards, + HTTPMethod: "GET", + HTTPPath: "/standards", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &DescribeStandardsInput{} + } + + output = &DescribeStandardsOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeStandards API operation for AWS SecurityHub. +// +// Returns a list of the available standards in Security Hub. +// +// For each standard, the results include the standard ARN, the name, and a +// description. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation DescribeStandards for usage and error information. +// +// Returned Error Types: +// * InternalException +// Internal server error. +// +// * InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// * InvalidAccessException +// AWS Security Hub isn't enabled for the account used to make this request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DescribeStandards +func (c *SecurityHub) DescribeStandards(input *DescribeStandardsInput) (*DescribeStandardsOutput, error) { + req, out := c.DescribeStandardsRequest(input) + return out, req.Send() +} + +// DescribeStandardsWithContext is the same as DescribeStandards with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeStandards for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) DescribeStandardsWithContext(ctx aws.Context, input *DescribeStandardsInput, opts ...request.Option) (*DescribeStandardsOutput, error) { + req, out := c.DescribeStandardsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// DescribeStandardsPages iterates over the pages of a DescribeStandards operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeStandards method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a DescribeStandards operation. +// pageNum := 0 +// err := client.DescribeStandardsPages(params, +// func(page *securityhub.DescribeStandardsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *SecurityHub) DescribeStandardsPages(input *DescribeStandardsInput, fn func(*DescribeStandardsOutput, bool) bool) error { + return c.DescribeStandardsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeStandardsPagesWithContext same as DescribeStandardsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) DescribeStandardsPagesWithContext(ctx aws.Context, input *DescribeStandardsInput, fn func(*DescribeStandardsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeStandardsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeStandardsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeStandardsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDescribeStandardsControls = "DescribeStandardsControls" // DescribeStandardsControlsRequest generates a "aws/request.Request" representing the @@ -1565,6 +1723,12 @@ func (c *SecurityHub) DescribeStandardsControlsRequest(input *DescribeStandardsC Name: opDescribeStandardsControls, HTTPMethod: "GET", HTTPPath: "/standards/controls/{StandardsSubscriptionArn+}", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -1626,6 +1790,58 @@ func (c *SecurityHub) DescribeStandardsControlsWithContext(ctx aws.Context, inpu return out, req.Send() } +// DescribeStandardsControlsPages iterates over the pages of a DescribeStandardsControls operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See DescribeStandardsControls method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a DescribeStandardsControls operation. +// pageNum := 0 +// err := client.DescribeStandardsControlsPages(params, +// func(page *securityhub.DescribeStandardsControlsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *SecurityHub) DescribeStandardsControlsPages(input *DescribeStandardsControlsInput, fn func(*DescribeStandardsControlsOutput, bool) bool) error { + return c.DescribeStandardsControlsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeStandardsControlsPagesWithContext same as DescribeStandardsControlsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) DescribeStandardsControlsPagesWithContext(ctx aws.Context, input *DescribeStandardsControlsInput, fn func(*DescribeStandardsControlsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeStandardsControlsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeStandardsControlsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeStandardsControlsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opDisableImportFindingsForProduct = "DisableImportFindingsForProduct" // DisableImportFindingsForProductRequest generates a "aws/request.Request" representing the @@ -1671,9 +1887,9 @@ func (c *SecurityHub) DisableImportFindingsForProductRequest(input *DisableImpor // DisableImportFindingsForProduct API operation for AWS SecurityHub. // -// Disables the integration of the specified product with Security Hub. Findings -// from that product are no longer sent to Security Hub after the integration -// is disabled. +// Disables the integration of the specified product with Security Hub. After +// the integration is disabled, findings from that product are no longer sent +// to Security Hub. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1769,14 +1985,18 @@ func (c *SecurityHub) DisableSecurityHubRequest(input *DisableSecurityHubInput) // // Disables Security Hub in your account only in the current Region. To disable // Security Hub in all Regions, you must submit one request per Region where -// you have enabled Security Hub. When you disable Security Hub for a master -// account, it doesn't disable Security Hub for any associated member accounts. +// you have enabled Security Hub. +// +// When you disable Security Hub for a master account, it doesn't disable Security +// Hub for any associated member accounts. // // When you disable Security Hub, your existing findings and insights and any -// Security Hub configuration settings are deleted after 90 days and can't be -// recovered. Any standards that were enabled are disabled, and your master -// and member account associations are removed. If you want to save your existing -// findings, you must export them before you disable Security Hub. +// Security Hub configuration settings are deleted after 90 days and cannot +// be recovered. Any standards that were enabled are disabled, and your master +// and member account associations are removed. +// +// If you want to save your existing findings, you must export them before you +// disable Security Hub. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2055,9 +2275,10 @@ func (c *SecurityHub) EnableImportFindingsForProductRequest(input *EnableImportF // EnableImportFindingsForProduct API operation for AWS SecurityHub. // // Enables the integration of a partner product with Security Hub. Integrated -// products send findings to Security Hub. When you enable a product integration, -// a permission policy that grants permission for the product to send findings -// to Security Hub is applied. +// products send findings to Security Hub. +// +// When you enable a product integration, a permission policy that grants permission +// for the product to send findings to Security Hub is applied. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2152,11 +2373,20 @@ func (c *SecurityHub) EnableSecurityHubRequest(input *EnableSecurityHubInput) (r // EnableSecurityHub API operation for AWS SecurityHub. // // Enables Security Hub for your account in the current Region or the Region -// you specify in the request. Enabling Security Hub also enables the CIS AWS -// Foundations standard. When you enable Security Hub, you grant to Security -// Hub the permissions necessary to gather findings from AWS Config, Amazon -// GuardDuty, Amazon Inspector, and Amazon Macie. To learn more, see Setting -// Up AWS Security Hub (https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-settingup.html). +// you specify in the request. +// +// When you enable Security Hub, you grant to Security Hub the permissions necessary +// to gather findings from AWS Config, Amazon GuardDuty, Amazon Inspector, and +// Amazon Macie. +// +// When you use the EnableSecurityHub operation to enable Security Hub, you +// also automatically enable the CIS AWS Foundations standard. You do not enable +// the Payment Card Industry Data Security Standard (PCI DSS) standard. To enable +// a standard, use the BatchEnableStandards operation. To disable a standard, +// use the BatchDisableStandards operation. +// +// To learn more, see Setting Up AWS Security Hub (https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-settingup.html) +// in the AWS Security Hub User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2235,6 +2465,12 @@ func (c *SecurityHub) GetEnabledStandardsRequest(input *GetEnabledStandardsInput Name: opGetEnabledStandards, HTTPMethod: "POST", HTTPPath: "/standards/get", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -2294,6 +2530,58 @@ func (c *SecurityHub) GetEnabledStandardsWithContext(ctx aws.Context, input *Get return out, req.Send() } +// GetEnabledStandardsPages iterates over the pages of a GetEnabledStandards operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See GetEnabledStandards method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a GetEnabledStandards operation. +// pageNum := 0 +// err := client.GetEnabledStandardsPages(params, +// func(page *securityhub.GetEnabledStandardsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *SecurityHub) GetEnabledStandardsPages(input *GetEnabledStandardsInput, fn func(*GetEnabledStandardsOutput, bool) bool) error { + return c.GetEnabledStandardsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// GetEnabledStandardsPagesWithContext same as GetEnabledStandardsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) GetEnabledStandardsPagesWithContext(ctx aws.Context, input *GetEnabledStandardsInput, fn func(*GetEnabledStandardsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *GetEnabledStandardsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.GetEnabledStandardsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*GetEnabledStandardsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opGetFindings = "GetFindings" // GetFindingsRequest generates a "aws/request.Request" representing the @@ -2486,7 +2774,7 @@ func (c *SecurityHub) GetInsightResultsRequest(input *GetInsightResultsInput) (r // GetInsightResults API operation for AWS SecurityHub. // -// Lists the results of the Security Hub insight that the insight ARN specifies. +// Lists the results of the Security Hub insight specified by the insight ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2585,7 +2873,7 @@ func (c *SecurityHub) GetInsightsRequest(input *GetInsightsInput) (req *request. // GetInsights API operation for AWS SecurityHub. // -// Lists and describes insights that insight ARNs specify. +// Lists and describes insights for the specified insight ARNs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2821,8 +3109,8 @@ func (c *SecurityHub) GetMasterAccountRequest(input *GetMasterAccountInput) (req // GetMasterAccount API operation for AWS SecurityHub. // -// Provides the details for the Security Hub master account to the current member -// account. +// Provides the details for the Security Hub master account for the current +// member account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2915,8 +3203,8 @@ func (c *SecurityHub) GetMembersRequest(input *GetMembersInput) (req *request.Re // GetMembers API operation for AWS SecurityHub. // -// Returns the details on the Security Hub member accounts that the account -// IDs specify. +// Returns the details for the Security Hub member accounts for the specified +// account IDs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3010,11 +3298,14 @@ func (c *SecurityHub) InviteMembersRequest(input *InviteMembersInput) (req *requ // InviteMembers API operation for AWS SecurityHub. // // Invites other AWS accounts to become member accounts for the Security Hub -// master account that the invitation is sent from. Before you can use this -// action to invite a member, you must first create the member account in Security -// Hub by using the CreateMembers action. When the account owner accepts the -// invitation to become a member account and enables Security Hub, the master -// account can view the findings generated from member account. +// master account that the invitation is sent from. +// +// Before you can use this action to invite a member, you must first use the +// CreateMembers action to create the member account in Security Hub. +// +// When the account owner accepts the invitation to become a member account +// and enables Security Hub, the master account can view the findings generated +// from the member account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3113,8 +3404,8 @@ func (c *SecurityHub) ListEnabledProductsForImportRequest(input *ListEnabledProd // ListEnabledProductsForImport API operation for AWS SecurityHub. // -// Lists all findings-generating solutions (products) whose findings you have -// subscribed to receive in Security Hub. +// Lists all findings-generating solutions (products) that you are subscribed +// to receive findings from in Security Hub. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3239,6 +3530,12 @@ func (c *SecurityHub) ListInvitationsRequest(input *ListInvitationsInput) (req * Name: opListInvitations, HTTPMethod: "GET", HTTPPath: "/invitations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -3299,30 +3596,82 @@ func (c *SecurityHub) ListInvitationsWithContext(ctx aws.Context, input *ListInv return out, req.Send() } -const opListMembers = "ListMembers" - -// ListMembersRequest generates a "aws/request.Request" representing the -// client's request for the ListMembers operation. The "output" return -// value will be populated with the request's response once the request completes -// successfully. -// -// Use "Send" method on the returned Request to send the API call to the service. -// the "output" return value is not valid until after Send returns without error. +// ListInvitationsPages iterates over the pages of a ListInvitations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. // -// See ListMembers for more information on using the ListMembers -// API call, and error handling. +// See ListInvitations method for more information on how to use this operation. // -// This method is useful when you want to inject custom logic or configuration -// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// Note: This operation can generate multiple requests to a service. // +// // Example iterating over at most 3 pages of a ListInvitations operation. +// pageNum := 0 +// err := client.ListInvitationsPages(params, +// func(page *securityhub.ListInvitationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) // -// // Example sending a request using the ListMembersRequest method. -// req, resp := client.ListMembersRequest(params) +func (c *SecurityHub) ListInvitationsPages(input *ListInvitationsInput, fn func(*ListInvitationsOutput, bool) bool) error { + return c.ListInvitationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListInvitationsPagesWithContext same as ListInvitationsPages except +// it takes a Context and allows setting request options on the pages. // -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) ListInvitationsPagesWithContext(ctx aws.Context, input *ListInvitationsInput, fn func(*ListInvitationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListInvitationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListInvitationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListInvitationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListMembers = "ListMembers" + +// ListMembersRequest generates a "aws/request.Request" representing the +// client's request for the ListMembers operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListMembers for more information on using the ListMembers +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListMembersRequest method. +// req, resp := client.ListMembersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } // // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListMembers func (c *SecurityHub) ListMembersRequest(input *ListMembersInput) (req *request.Request, output *ListMembersOutput) { @@ -3330,6 +3679,12 @@ func (c *SecurityHub) ListMembersRequest(input *ListMembersInput) (req *request. Name: opListMembers, HTTPMethod: "GET", HTTPPath: "/members", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { @@ -3390,6 +3745,58 @@ func (c *SecurityHub) ListMembersWithContext(ctx aws.Context, input *ListMembers return out, req.Send() } +// ListMembersPages iterates over the pages of a ListMembers operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListMembers method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListMembers operation. +// pageNum := 0 +// err := client.ListMembersPages(params, +// func(page *securityhub.ListMembersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *SecurityHub) ListMembersPages(input *ListMembersInput, fn func(*ListMembersOutput, bool) bool) error { + return c.ListMembersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListMembersPagesWithContext same as ListMembersPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SecurityHub) ListMembersPagesWithContext(ctx aws.Context, input *ListMembersInput, fn func(*ListMembersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListMembersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListMembersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListMembersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the @@ -3884,7 +4291,7 @@ func (c *SecurityHub) UpdateInsightRequest(input *UpdateInsightInput) (req *requ // UpdateInsight API operation for AWS SecurityHub. // -// Updates the Security Hub insight that the insight ARN specifies. +// Updates the Security Hub insight identified by the specified insight ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -4354,8 +4761,8 @@ type AwsCloudFrontDistributionLogging struct { // Specifies whether you want CloudFront to include cookies in access logs. IncludeCookies *bool `type:"boolean"` - // An optional string that you want CloudFront to prefix to the access log filenames - // for this distribution. + // An optional string that you want CloudFront to use as a prefix to the access + // log filenames for this distribution. Prefix *string `type:"string"` } @@ -4464,860 +4871,2339 @@ func (s *AwsCloudFrontDistributionOrigins) SetItems(v []*AwsCloudFrontDistributi return s } -// The details of an Amazon EC2 instance. -type AwsEc2InstanceDetails struct { +// Information about an AWS CodeBuild project. +type AwsCodeBuildProjectDetails struct { _ struct{} `type:"structure"` - // The IAM profile ARN of the instance. - IamInstanceProfileArn *string `type:"string"` - - // The Amazon Machine Image (AMI) ID of the instance. - ImageId *string `type:"string"` - - // The IPv4 addresses associated with the instance. - IpV4Addresses []*string `type:"list"` - - // The IPv6 addresses associated with the instance. - IpV6Addresses []*string `type:"list"` + // The AWS Key Management Service (AWS KMS) customer master key (CMK) used to + // encrypt the build output artifacts. + // + // You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, + // the CMK alias (using the format alias/alias-name). + EncryptionKey *string `type:"string"` - // The key name associated with the instance. - KeyName *string `type:"string"` + // Information about the build environment for this build project. + Environment *AwsCodeBuildProjectEnvironment `type:"structure"` - // The date/time the instance was launched. - LaunchedAt *string `type:"string"` + // The name of the build project. + Name *string `type:"string"` - // The identifier of the subnet that the instance was launched in. - SubnetId *string `type:"string"` + // The ARN of the IAM role that enables AWS CodeBuild to interact with dependent + // AWS services on behalf of the AWS account. + ServiceRole *string `type:"string"` - // The instance type of the instance. - Type *string `type:"string"` + // Information about the build input source code for this build project. + Source *AwsCodeBuildProjectSource `type:"structure"` - // The identifier of the VPC that the instance was launched in. - VpcId *string `type:"string"` + // Information about the VPC configuration that AWS CodeBuild accesses. + VpcConfig *AwsCodeBuildProjectVpcConfig `type:"structure"` } // String returns the string representation -func (s AwsEc2InstanceDetails) String() string { +func (s AwsCodeBuildProjectDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsEc2InstanceDetails) GoString() string { +func (s AwsCodeBuildProjectDetails) GoString() string { return s.String() } -// SetIamInstanceProfileArn sets the IamInstanceProfileArn field's value. -func (s *AwsEc2InstanceDetails) SetIamInstanceProfileArn(v string) *AwsEc2InstanceDetails { - s.IamInstanceProfileArn = &v - return s -} - -// SetImageId sets the ImageId field's value. -func (s *AwsEc2InstanceDetails) SetImageId(v string) *AwsEc2InstanceDetails { - s.ImageId = &v - return s -} - -// SetIpV4Addresses sets the IpV4Addresses field's value. -func (s *AwsEc2InstanceDetails) SetIpV4Addresses(v []*string) *AwsEc2InstanceDetails { - s.IpV4Addresses = v - return s -} - -// SetIpV6Addresses sets the IpV6Addresses field's value. -func (s *AwsEc2InstanceDetails) SetIpV6Addresses(v []*string) *AwsEc2InstanceDetails { - s.IpV6Addresses = v +// SetEncryptionKey sets the EncryptionKey field's value. +func (s *AwsCodeBuildProjectDetails) SetEncryptionKey(v string) *AwsCodeBuildProjectDetails { + s.EncryptionKey = &v return s } -// SetKeyName sets the KeyName field's value. -func (s *AwsEc2InstanceDetails) SetKeyName(v string) *AwsEc2InstanceDetails { - s.KeyName = &v +// SetEnvironment sets the Environment field's value. +func (s *AwsCodeBuildProjectDetails) SetEnvironment(v *AwsCodeBuildProjectEnvironment) *AwsCodeBuildProjectDetails { + s.Environment = v return s } -// SetLaunchedAt sets the LaunchedAt field's value. -func (s *AwsEc2InstanceDetails) SetLaunchedAt(v string) *AwsEc2InstanceDetails { - s.LaunchedAt = &v +// SetName sets the Name field's value. +func (s *AwsCodeBuildProjectDetails) SetName(v string) *AwsCodeBuildProjectDetails { + s.Name = &v return s } -// SetSubnetId sets the SubnetId field's value. -func (s *AwsEc2InstanceDetails) SetSubnetId(v string) *AwsEc2InstanceDetails { - s.SubnetId = &v +// SetServiceRole sets the ServiceRole field's value. +func (s *AwsCodeBuildProjectDetails) SetServiceRole(v string) *AwsCodeBuildProjectDetails { + s.ServiceRole = &v return s } -// SetType sets the Type field's value. -func (s *AwsEc2InstanceDetails) SetType(v string) *AwsEc2InstanceDetails { - s.Type = &v +// SetSource sets the Source field's value. +func (s *AwsCodeBuildProjectDetails) SetSource(v *AwsCodeBuildProjectSource) *AwsCodeBuildProjectDetails { + s.Source = v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsEc2InstanceDetails) SetVpcId(v string) *AwsEc2InstanceDetails { - s.VpcId = &v +// SetVpcConfig sets the VpcConfig field's value. +func (s *AwsCodeBuildProjectDetails) SetVpcConfig(v *AwsCodeBuildProjectVpcConfig) *AwsCodeBuildProjectDetails { + s.VpcConfig = v return s } -// Information about a load balancer. -type AwsElbv2LoadBalancerDetails struct { +// Information about the build environment for this build project. +type AwsCodeBuildProjectEnvironment struct { _ struct{} `type:"structure"` - // The Availability Zones for the load balancer. - AvailabilityZones []*AvailabilityZone `type:"list"` - - // The ID of the Amazon Route 53 hosted zone associated with the load balancer. - CanonicalHostedZoneId *string `type:"string"` - - // The date and time the load balancer was created. - CreatedTime *string `type:"string"` - - // The public DNS name of the load balancer. - DNSName *string `type:"string"` - - // The type of IP addresses used by the subnets for your load balancer. The - // possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and - // IPv6 addresses). - IpAddressType *string `type:"string"` - - // The nodes of an Internet-facing load balancer have public IP addresses. - Scheme *string `type:"string"` + // The certificate to use with this build project. + Certificate *string `type:"string"` - // The IDs of the security groups for the load balancer. - SecurityGroups []*string `type:"list"` + // The type of credentials AWS CodeBuild uses to pull images in your build. + // + // Valid values: + // + // * CODEBUILD specifies that AWS CodeBuild uses its own credentials. This + // requires that you modify your ECR repository policy to trust the AWS CodeBuild + // service principal. + // + // * SERVICE_ROLE specifies that AWS CodeBuild uses your build project's + // service role. + // + // When you use a cross-account or private registry image, you must use SERVICE_ROLE + // credentials. When you use an AWS CodeBuild curated image, you must use CODEBUILD + // credentials. + ImagePullCredentialsType *string `type:"string"` - // The state of the load balancer. - State *LoadBalancerState `type:"structure"` + // The credentials for access to a private registry. + RegistryCredential *AwsCodeBuildProjectEnvironmentRegistryCredential `type:"structure"` - // The type of load balancer. + // The type of build environment to use for related builds. + // + // The environment type ARM_CONTAINER is available only in regions US East (N. + // Virginia), US East (Ohio), US West (Oregon), Europe (Ireland), Asia Pacific + // (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Sydney), and Europe (Frankfurt). + // + // The environment type LINUX_CONTAINER with compute type build.general1.2xlarge + // is available only in regions US East (N. Virginia), US East (N. Virginia), + // US West (Oregon), Canada (Central), Europe (Ireland), Europe (London), Europe + // (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific (Singapore), + // Asia Pacific (Sydney), China (Beijing), and China (Ningxia). + // + // The environment type LINUX_GPU_CONTAINER is available only in regions US + // East (N. Virginia), US East (N. Virginia), US West (Oregon), Canada (Central), + // Europe (Ireland), Europe (London), Europe (Frankfurt), Asia Pacific (Tokyo), + // Asia Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney) , China + // (Beijing), and China (Ningxia). + // + // Valid values: WINDOWS_CONTAINER | LINUX_CONTAINER | LINUX_GPU_CONTAINER | + // ARM_CONTAINER Type *string `type:"string"` - - // The ID of the VPC for the load balancer. - VpcId *string `type:"string"` } // String returns the string representation -func (s AwsElbv2LoadBalancerDetails) String() string { +func (s AwsCodeBuildProjectEnvironment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsElbv2LoadBalancerDetails) GoString() string { +func (s AwsCodeBuildProjectEnvironment) GoString() string { return s.String() } -// SetAvailabilityZones sets the AvailabilityZones field's value. -func (s *AwsElbv2LoadBalancerDetails) SetAvailabilityZones(v []*AvailabilityZone) *AwsElbv2LoadBalancerDetails { - s.AvailabilityZones = v +// SetCertificate sets the Certificate field's value. +func (s *AwsCodeBuildProjectEnvironment) SetCertificate(v string) *AwsCodeBuildProjectEnvironment { + s.Certificate = &v return s } -// SetCanonicalHostedZoneId sets the CanonicalHostedZoneId field's value. -func (s *AwsElbv2LoadBalancerDetails) SetCanonicalHostedZoneId(v string) *AwsElbv2LoadBalancerDetails { - s.CanonicalHostedZoneId = &v +// SetImagePullCredentialsType sets the ImagePullCredentialsType field's value. +func (s *AwsCodeBuildProjectEnvironment) SetImagePullCredentialsType(v string) *AwsCodeBuildProjectEnvironment { + s.ImagePullCredentialsType = &v return s } -// SetCreatedTime sets the CreatedTime field's value. -func (s *AwsElbv2LoadBalancerDetails) SetCreatedTime(v string) *AwsElbv2LoadBalancerDetails { - s.CreatedTime = &v +// SetRegistryCredential sets the RegistryCredential field's value. +func (s *AwsCodeBuildProjectEnvironment) SetRegistryCredential(v *AwsCodeBuildProjectEnvironmentRegistryCredential) *AwsCodeBuildProjectEnvironment { + s.RegistryCredential = v return s } -// SetDNSName sets the DNSName field's value. -func (s *AwsElbv2LoadBalancerDetails) SetDNSName(v string) *AwsElbv2LoadBalancerDetails { - s.DNSName = &v +// SetType sets the Type field's value. +func (s *AwsCodeBuildProjectEnvironment) SetType(v string) *AwsCodeBuildProjectEnvironment { + s.Type = &v return s } -// SetIpAddressType sets the IpAddressType field's value. -func (s *AwsElbv2LoadBalancerDetails) SetIpAddressType(v string) *AwsElbv2LoadBalancerDetails { - s.IpAddressType = &v - return s -} +// The credentials for access to a private registry. +type AwsCodeBuildProjectEnvironmentRegistryCredential struct { + _ struct{} `type:"structure"` -// SetScheme sets the Scheme field's value. -func (s *AwsElbv2LoadBalancerDetails) SetScheme(v string) *AwsElbv2LoadBalancerDetails { - s.Scheme = &v - return s + // The Amazon Resource Name (ARN) or name of credentials created using AWS Secrets + // Manager. + // + // The credential can use the name of the credentials only if they exist in + // your current AWS Region. + Credential *string `type:"string"` + + // The service that created the credentials to access a private Docker registry. + // + // The valid value,SECRETS_MANAGER, is for AWS Secrets Manager. + CredentialProvider *string `type:"string"` } -// SetSecurityGroups sets the SecurityGroups field's value. -func (s *AwsElbv2LoadBalancerDetails) SetSecurityGroups(v []*string) *AwsElbv2LoadBalancerDetails { - s.SecurityGroups = v - return s +// String returns the string representation +func (s AwsCodeBuildProjectEnvironmentRegistryCredential) String() string { + return awsutil.Prettify(s) } -// SetState sets the State field's value. -func (s *AwsElbv2LoadBalancerDetails) SetState(v *LoadBalancerState) *AwsElbv2LoadBalancerDetails { - s.State = v - return s +// GoString returns the string representation +func (s AwsCodeBuildProjectEnvironmentRegistryCredential) GoString() string { + return s.String() } -// SetType sets the Type field's value. -func (s *AwsElbv2LoadBalancerDetails) SetType(v string) *AwsElbv2LoadBalancerDetails { - s.Type = &v +// SetCredential sets the Credential field's value. +func (s *AwsCodeBuildProjectEnvironmentRegistryCredential) SetCredential(v string) *AwsCodeBuildProjectEnvironmentRegistryCredential { + s.Credential = &v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsElbv2LoadBalancerDetails) SetVpcId(v string) *AwsElbv2LoadBalancerDetails { - s.VpcId = &v +// SetCredentialProvider sets the CredentialProvider field's value. +func (s *AwsCodeBuildProjectEnvironmentRegistryCredential) SetCredentialProvider(v string) *AwsCodeBuildProjectEnvironmentRegistryCredential { + s.CredentialProvider = &v return s } -// IAM access key details related to a finding. -type AwsIamAccessKeyDetails struct { +// Information about the build input source code for this build project. +type AwsCodeBuildProjectSource struct { _ struct{} `type:"structure"` - // The creation date/time of the IAM access key related to a finding. - CreatedAt *string `type:"string"` + // Information about the Git clone depth for the build project. + GitCloneDepth *int64 `type:"integer"` - // The ID of the principal associated with an access key. - PrincipalId *string `type:"string"` + // Whether to ignore SSL warnings while connecting to the project source code. + InsecureSsl *bool `type:"boolean"` - // The name of the principal. - PrincipalName *string `type:"string"` - - // The type of principal associated with an access key. - PrincipalType *string `type:"string"` - - // The status of the IAM access key related to a finding. - Status *string `type:"string" enum:"AwsIamAccessKeyStatus"` + // Information about the location of the source code to be built. + // + // Valid values include: + // + // * For source code settings that are specified in the source action of + // a pipeline in AWS CodePipeline, location should not be specified. If it + // is specified, AWS CodePipeline ignores it. This is because AWS CodePipeline + // uses the settings in a pipeline's source action instead of this value. + // + // * For source code in an AWS CodeCommit repository, the HTTPS clone URL + // to the repository that contains the source code and the buildspec file + // (for example, https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name + // ). + // + // * For source code in an S3 input bucket, one of the following. The path + // to the ZIP file that contains the source code (for example, bucket-name/path/to/object-name.zip). + // The path to the folder that contains the source code (for example, bucket-name/path/to/source-code/folder/). + // + // * For source code in a GitHub repository, the HTTPS clone URL to the repository + // that contains the source and the buildspec file. + // + // * For source code in a Bitbucket repository, the HTTPS clone URL to the + // repository that contains the source and the buildspec file. + Location *string `type:"string"` - // The user associated with the IAM access key related to a finding. + // The type of repository that contains the source code to be built. Valid values + // are: // - // The UserName parameter has been replaced with the PrincipalName parameter - // because access keys can also be assigned to principals that are not IAM users. + // * BITBUCKET - The source code is in a Bitbucket repository. // - // Deprecated: This field is deprecated, use PrincipalName instead. - UserName *string `deprecated:"true" type:"string"` + // * CODECOMMIT - The source code is in an AWS CodeCommit repository. + // + // * CODEPIPELINE - The source code settings are specified in the source + // action of a pipeline in AWS CodePipeline. + // + // * GITHUB - The source code is in a GitHub repository. + // + // * GITHUB_ENTERPRISE - The source code is in a GitHub Enterprise repository. + // + // * NO_SOURCE - The project does not have input source code. + // + // * S3 - The source code is in an S3 input bucket. + Type *string `type:"string"` } // String returns the string representation -func (s AwsIamAccessKeyDetails) String() string { +func (s AwsCodeBuildProjectSource) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsIamAccessKeyDetails) GoString() string { +func (s AwsCodeBuildProjectSource) GoString() string { return s.String() } -// SetCreatedAt sets the CreatedAt field's value. -func (s *AwsIamAccessKeyDetails) SetCreatedAt(v string) *AwsIamAccessKeyDetails { - s.CreatedAt = &v +// SetGitCloneDepth sets the GitCloneDepth field's value. +func (s *AwsCodeBuildProjectSource) SetGitCloneDepth(v int64) *AwsCodeBuildProjectSource { + s.GitCloneDepth = &v return s } -// SetPrincipalId sets the PrincipalId field's value. -func (s *AwsIamAccessKeyDetails) SetPrincipalId(v string) *AwsIamAccessKeyDetails { - s.PrincipalId = &v +// SetInsecureSsl sets the InsecureSsl field's value. +func (s *AwsCodeBuildProjectSource) SetInsecureSsl(v bool) *AwsCodeBuildProjectSource { + s.InsecureSsl = &v return s } -// SetPrincipalName sets the PrincipalName field's value. -func (s *AwsIamAccessKeyDetails) SetPrincipalName(v string) *AwsIamAccessKeyDetails { - s.PrincipalName = &v +// SetLocation sets the Location field's value. +func (s *AwsCodeBuildProjectSource) SetLocation(v string) *AwsCodeBuildProjectSource { + s.Location = &v return s } -// SetPrincipalType sets the PrincipalType field's value. -func (s *AwsIamAccessKeyDetails) SetPrincipalType(v string) *AwsIamAccessKeyDetails { - s.PrincipalType = &v +// SetType sets the Type field's value. +func (s *AwsCodeBuildProjectSource) SetType(v string) *AwsCodeBuildProjectSource { + s.Type = &v return s } -// SetStatus sets the Status field's value. -func (s *AwsIamAccessKeyDetails) SetStatus(v string) *AwsIamAccessKeyDetails { - s.Status = &v +// Information about the VPC configuration that AWS CodeBuild accesses. +type AwsCodeBuildProjectVpcConfig struct { + _ struct{} `type:"structure"` + + // A list of one or more security group IDs in your Amazon VPC. + SecurityGroupIds []*string `type:"list"` + + // A list of one or more subnet IDs in your Amazon VPC. + Subnets []*string `type:"list"` + + // The ID of the VPC. + VpcId *string `type:"string"` +} + +// String returns the string representation +func (s AwsCodeBuildProjectVpcConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsCodeBuildProjectVpcConfig) GoString() string { + return s.String() +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *AwsCodeBuildProjectVpcConfig) SetSecurityGroupIds(v []*string) *AwsCodeBuildProjectVpcConfig { + s.SecurityGroupIds = v return s } -// SetUserName sets the UserName field's value. -func (s *AwsIamAccessKeyDetails) SetUserName(v string) *AwsIamAccessKeyDetails { - s.UserName = &v +// SetSubnets sets the Subnets field's value. +func (s *AwsCodeBuildProjectVpcConfig) SetSubnets(v []*string) *AwsCodeBuildProjectVpcConfig { + s.Subnets = v return s } -// Contains information about an IAM role, including all of the role's policies. -type AwsIamRoleDetails struct { +// SetVpcId sets the VpcId field's value. +func (s *AwsCodeBuildProjectVpcConfig) SetVpcId(v string) *AwsCodeBuildProjectVpcConfig { + s.VpcId = &v + return s +} + +// The details of an Amazon EC2 instance. +type AwsEc2InstanceDetails struct { _ struct{} `type:"structure"` - // The trust policy that grants permission to assume the role. - AssumeRolePolicyDocument *string `min:"1" type:"string"` + // The IAM profile ARN of the instance. + IamInstanceProfileArn *string `type:"string"` - // The date and time, in ISO 8601 date-time format, when the role was created. - CreateDate *string `type:"string"` + // The Amazon Machine Image (AMI) ID of the instance. + ImageId *string `type:"string"` - // The maximum session duration (in seconds) that you want to set for the specified - // role. - MaxSessionDuration *int64 `type:"integer"` + // The IPv4 addresses associated with the instance. + IpV4Addresses []*string `type:"list"` - // The path to the role. - Path *string `type:"string"` + // The IPv6 addresses associated with the instance. + IpV6Addresses []*string `type:"list"` - // The stable and unique string identifying the role. - RoleId *string `type:"string"` + // The key name associated with the instance. + KeyName *string `type:"string"` - // The friendly name that identifies the role. - RoleName *string `type:"string"` + // The date/time the instance was launched. + LaunchedAt *string `type:"string"` + + // The identifier of the subnet that the instance was launched in. + SubnetId *string `type:"string"` + + // The instance type of the instance. + Type *string `type:"string"` + + // The identifier of the VPC that the instance was launched in. + VpcId *string `type:"string"` } // String returns the string representation -func (s AwsIamRoleDetails) String() string { +func (s AwsEc2InstanceDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsIamRoleDetails) GoString() string { +func (s AwsEc2InstanceDetails) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *AwsIamRoleDetails) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AwsIamRoleDetails"} - if s.AssumeRolePolicyDocument != nil && len(*s.AssumeRolePolicyDocument) < 1 { - invalidParams.Add(request.NewErrParamMinLen("AssumeRolePolicyDocument", 1)) - } +// SetIamInstanceProfileArn sets the IamInstanceProfileArn field's value. +func (s *AwsEc2InstanceDetails) SetIamInstanceProfileArn(v string) *AwsEc2InstanceDetails { + s.IamInstanceProfileArn = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetImageId sets the ImageId field's value. +func (s *AwsEc2InstanceDetails) SetImageId(v string) *AwsEc2InstanceDetails { + s.ImageId = &v + return s } -// SetAssumeRolePolicyDocument sets the AssumeRolePolicyDocument field's value. -func (s *AwsIamRoleDetails) SetAssumeRolePolicyDocument(v string) *AwsIamRoleDetails { - s.AssumeRolePolicyDocument = &v +// SetIpV4Addresses sets the IpV4Addresses field's value. +func (s *AwsEc2InstanceDetails) SetIpV4Addresses(v []*string) *AwsEc2InstanceDetails { + s.IpV4Addresses = v return s } -// SetCreateDate sets the CreateDate field's value. -func (s *AwsIamRoleDetails) SetCreateDate(v string) *AwsIamRoleDetails { - s.CreateDate = &v +// SetIpV6Addresses sets the IpV6Addresses field's value. +func (s *AwsEc2InstanceDetails) SetIpV6Addresses(v []*string) *AwsEc2InstanceDetails { + s.IpV6Addresses = v return s } -// SetMaxSessionDuration sets the MaxSessionDuration field's value. -func (s *AwsIamRoleDetails) SetMaxSessionDuration(v int64) *AwsIamRoleDetails { - s.MaxSessionDuration = &v +// SetKeyName sets the KeyName field's value. +func (s *AwsEc2InstanceDetails) SetKeyName(v string) *AwsEc2InstanceDetails { + s.KeyName = &v return s } -// SetPath sets the Path field's value. -func (s *AwsIamRoleDetails) SetPath(v string) *AwsIamRoleDetails { - s.Path = &v +// SetLaunchedAt sets the LaunchedAt field's value. +func (s *AwsEc2InstanceDetails) SetLaunchedAt(v string) *AwsEc2InstanceDetails { + s.LaunchedAt = &v return s } -// SetRoleId sets the RoleId field's value. -func (s *AwsIamRoleDetails) SetRoleId(v string) *AwsIamRoleDetails { - s.RoleId = &v +// SetSubnetId sets the SubnetId field's value. +func (s *AwsEc2InstanceDetails) SetSubnetId(v string) *AwsEc2InstanceDetails { + s.SubnetId = &v return s } -// SetRoleName sets the RoleName field's value. -func (s *AwsIamRoleDetails) SetRoleName(v string) *AwsIamRoleDetails { - s.RoleName = &v +// SetType sets the Type field's value. +func (s *AwsEc2InstanceDetails) SetType(v string) *AwsEc2InstanceDetails { + s.Type = &v return s } -// Contains metadata about a customer master key (CMK). -type AwsKmsKeyDetails struct { +// SetVpcId sets the VpcId field's value. +func (s *AwsEc2InstanceDetails) SetVpcId(v string) *AwsEc2InstanceDetails { + s.VpcId = &v + return s +} + +// Information about the network interface attachment. +type AwsEc2NetworkInterfaceAttachment struct { _ struct{} `type:"structure"` - // The twelve-digit account ID of the AWS account that owns the CMK. - AWSAccountId *string `type:"string"` + // The timestamp indicating when the attachment initiated. + AttachTime *string `type:"string"` - // The date and time when the CMK was created. - CreationDate *float64 `type:"double"` + // The identifier of the network interface attachment + AttachmentId *string `type:"string"` - // The globally unique identifier for the CMK. - KeyId *string `type:"string"` + // Indicates whether the network interface is deleted when the instance is terminated. + DeleteOnTermination *bool `type:"boolean"` - // The manager of the CMK. CMKs in your AWS account are either customer managed - // or AWS managed. - KeyManager *string `type:"string"` + // The device index of the network interface attachment on the instance. + DeviceIndex *int64 `type:"integer"` - // The state of the CMK. - KeyState *string `type:"string"` + // The ID of the instance. + InstanceId *string `type:"string"` - // The source of the CMK's key material. When this value is AWS_KMS, AWS KMS - // created the key material. When this value is EXTERNAL, the key material was - // imported from your existing key management infrastructure or the CMK lacks - // key material. When this value is AWS_CLOUDHSM, the key material was created - // in the AWS CloudHSM cluster associated with a custom key store. - Origin *string `type:"string"` + // The AWS account ID of the owner of the instance. + InstanceOwnerId *string `type:"string"` + + // The attachment state. + // + // Valid values: attaching | attached | detaching | detached + Status *string `type:"string"` } // String returns the string representation -func (s AwsKmsKeyDetails) String() string { +func (s AwsEc2NetworkInterfaceAttachment) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsKmsKeyDetails) GoString() string { +func (s AwsEc2NetworkInterfaceAttachment) GoString() string { return s.String() } -// SetAWSAccountId sets the AWSAccountId field's value. -func (s *AwsKmsKeyDetails) SetAWSAccountId(v string) *AwsKmsKeyDetails { - s.AWSAccountId = &v +// SetAttachTime sets the AttachTime field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetAttachTime(v string) *AwsEc2NetworkInterfaceAttachment { + s.AttachTime = &v return s } -// SetCreationDate sets the CreationDate field's value. -func (s *AwsKmsKeyDetails) SetCreationDate(v float64) *AwsKmsKeyDetails { - s.CreationDate = &v +// SetAttachmentId sets the AttachmentId field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetAttachmentId(v string) *AwsEc2NetworkInterfaceAttachment { + s.AttachmentId = &v return s } -// SetKeyId sets the KeyId field's value. -func (s *AwsKmsKeyDetails) SetKeyId(v string) *AwsKmsKeyDetails { - s.KeyId = &v +// SetDeleteOnTermination sets the DeleteOnTermination field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetDeleteOnTermination(v bool) *AwsEc2NetworkInterfaceAttachment { + s.DeleteOnTermination = &v return s } -// SetKeyManager sets the KeyManager field's value. -func (s *AwsKmsKeyDetails) SetKeyManager(v string) *AwsKmsKeyDetails { - s.KeyManager = &v +// SetDeviceIndex sets the DeviceIndex field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetDeviceIndex(v int64) *AwsEc2NetworkInterfaceAttachment { + s.DeviceIndex = &v return s } -// SetKeyState sets the KeyState field's value. -func (s *AwsKmsKeyDetails) SetKeyState(v string) *AwsKmsKeyDetails { - s.KeyState = &v +// SetInstanceId sets the InstanceId field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetInstanceId(v string) *AwsEc2NetworkInterfaceAttachment { + s.InstanceId = &v return s } -// SetOrigin sets the Origin field's value. -func (s *AwsKmsKeyDetails) SetOrigin(v string) *AwsKmsKeyDetails { - s.Origin = &v +// SetInstanceOwnerId sets the InstanceOwnerId field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetInstanceOwnerId(v string) *AwsEc2NetworkInterfaceAttachment { + s.InstanceOwnerId = &v return s } -// The code for the Lambda function. You can specify either an object in Amazon -// S3, or upload a deployment package directly. -type AwsLambdaFunctionCode struct { +// SetStatus sets the Status field's value. +func (s *AwsEc2NetworkInterfaceAttachment) SetStatus(v string) *AwsEc2NetworkInterfaceAttachment { + s.Status = &v + return s +} + +// Details about the network interface +type AwsEc2NetworkInterfaceDetails struct { _ struct{} `type:"structure"` - // An Amazon S3 bucket in the same AWS Region as your function. The bucket can - // be in a different AWS account. - S3Bucket *string `type:"string"` + // The network interface attachment. + Attachment *AwsEc2NetworkInterfaceAttachment `type:"structure"` - // The Amazon S3 key of the deployment package. - S3Key *string `type:"string"` + // The ID of the network interface. + NetworkInterfaceId *string `type:"string"` - // For versioned objects, the version of the deployment package object to use. - S3ObjectVersion *string `type:"string"` + // Security groups for the network interface. + SecurityGroups []*AwsEc2NetworkInterfaceSecurityGroup `type:"list"` - // The base64-encoded contents of the deployment package. AWS SDK and AWS CLI - // clients handle the encoding for you. - ZipFile *string `type:"string"` + // Indicates whether traffic to or from the instance is validated. + SourceDestCheck *bool `type:"boolean"` } // String returns the string representation -func (s AwsLambdaFunctionCode) String() string { +func (s AwsEc2NetworkInterfaceDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsLambdaFunctionCode) GoString() string { +func (s AwsEc2NetworkInterfaceDetails) GoString() string { return s.String() } -// SetS3Bucket sets the S3Bucket field's value. -func (s *AwsLambdaFunctionCode) SetS3Bucket(v string) *AwsLambdaFunctionCode { - s.S3Bucket = &v +// SetAttachment sets the Attachment field's value. +func (s *AwsEc2NetworkInterfaceDetails) SetAttachment(v *AwsEc2NetworkInterfaceAttachment) *AwsEc2NetworkInterfaceDetails { + s.Attachment = v return s } -// SetS3Key sets the S3Key field's value. -func (s *AwsLambdaFunctionCode) SetS3Key(v string) *AwsLambdaFunctionCode { - s.S3Key = &v +// SetNetworkInterfaceId sets the NetworkInterfaceId field's value. +func (s *AwsEc2NetworkInterfaceDetails) SetNetworkInterfaceId(v string) *AwsEc2NetworkInterfaceDetails { + s.NetworkInterfaceId = &v return s } -// SetS3ObjectVersion sets the S3ObjectVersion field's value. -func (s *AwsLambdaFunctionCode) SetS3ObjectVersion(v string) *AwsLambdaFunctionCode { - s.S3ObjectVersion = &v +// SetSecurityGroups sets the SecurityGroups field's value. +func (s *AwsEc2NetworkInterfaceDetails) SetSecurityGroups(v []*AwsEc2NetworkInterfaceSecurityGroup) *AwsEc2NetworkInterfaceDetails { + s.SecurityGroups = v return s } -// SetZipFile sets the ZipFile field's value. -func (s *AwsLambdaFunctionCode) SetZipFile(v string) *AwsLambdaFunctionCode { - s.ZipFile = &v +// SetSourceDestCheck sets the SourceDestCheck field's value. +func (s *AwsEc2NetworkInterfaceDetails) SetSourceDestCheck(v bool) *AwsEc2NetworkInterfaceDetails { + s.SourceDestCheck = &v return s } -// The dead-letter queue for failed asynchronous invocations. -type AwsLambdaFunctionDeadLetterConfig struct { +// A security group associated with the network interface. +type AwsEc2NetworkInterfaceSecurityGroup struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic. - TargetArn *string `type:"string"` + // The ID of the security group. + GroupId *string `type:"string"` + + // The name of the security group. + GroupName *string `type:"string"` } // String returns the string representation -func (s AwsLambdaFunctionDeadLetterConfig) String() string { +func (s AwsEc2NetworkInterfaceSecurityGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsLambdaFunctionDeadLetterConfig) GoString() string { +func (s AwsEc2NetworkInterfaceSecurityGroup) GoString() string { return s.String() } -// SetTargetArn sets the TargetArn field's value. -func (s *AwsLambdaFunctionDeadLetterConfig) SetTargetArn(v string) *AwsLambdaFunctionDeadLetterConfig { - s.TargetArn = &v +// SetGroupId sets the GroupId field's value. +func (s *AwsEc2NetworkInterfaceSecurityGroup) SetGroupId(v string) *AwsEc2NetworkInterfaceSecurityGroup { + s.GroupId = &v return s } -// Details about a function's configuration. -type AwsLambdaFunctionDetails struct { - _ struct{} `type:"structure"` +// SetGroupName sets the GroupName field's value. +func (s *AwsEc2NetworkInterfaceSecurityGroup) SetGroupName(v string) *AwsEc2NetworkInterfaceSecurityGroup { + s.GroupName = &v + return s +} + +// Details about an EC2 security group. +type AwsEc2SecurityGroupDetails struct { + _ struct{} `type:"structure"` + + // The ID of the security group. + GroupId *string `type:"string"` + + // The name of the security group. + GroupName *string `type:"string"` + + // The inbound rules associated with the security group. + IpPermissions []*AwsEc2SecurityGroupIpPermission `type:"list"` + + // [VPC only] The outbound rules associated with the security group. + IpPermissionsEgress []*AwsEc2SecurityGroupIpPermission `type:"list"` + + // The AWS account ID of the owner of the security group. + OwnerId *string `type:"string"` + + // [VPC only] The ID of the VPC for the security group. + VpcId *string `type:"string"` +} + +// String returns the string representation +func (s AwsEc2SecurityGroupDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsEc2SecurityGroupDetails) GoString() string { + return s.String() +} + +// SetGroupId sets the GroupId field's value. +func (s *AwsEc2SecurityGroupDetails) SetGroupId(v string) *AwsEc2SecurityGroupDetails { + s.GroupId = &v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *AwsEc2SecurityGroupDetails) SetGroupName(v string) *AwsEc2SecurityGroupDetails { + s.GroupName = &v + return s +} + +// SetIpPermissions sets the IpPermissions field's value. +func (s *AwsEc2SecurityGroupDetails) SetIpPermissions(v []*AwsEc2SecurityGroupIpPermission) *AwsEc2SecurityGroupDetails { + s.IpPermissions = v + return s +} + +// SetIpPermissionsEgress sets the IpPermissionsEgress field's value. +func (s *AwsEc2SecurityGroupDetails) SetIpPermissionsEgress(v []*AwsEc2SecurityGroupIpPermission) *AwsEc2SecurityGroupDetails { + s.IpPermissionsEgress = v + return s +} + +// SetOwnerId sets the OwnerId field's value. +func (s *AwsEc2SecurityGroupDetails) SetOwnerId(v string) *AwsEc2SecurityGroupDetails { + s.OwnerId = &v + return s +} + +// SetVpcId sets the VpcId field's value. +func (s *AwsEc2SecurityGroupDetails) SetVpcId(v string) *AwsEc2SecurityGroupDetails { + s.VpcId = &v + return s +} + +// An IP permission for an EC2 security group. +type AwsEc2SecurityGroupIpPermission struct { + _ struct{} `type:"structure"` + + // The start of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 + // type number. + // + // A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 + // types, you must specify all codes. + FromPort *int64 `type:"integer"` + + // The IP protocol name (tcp, udp, icmp, icmpv6) or number. + // + // [VPC only] Use -1 to specify all protocols. + // + // When authorizing security group rules, specifying -1 or a protocol number + // other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless + // of any port range you specify. + // + // For tcp, udp, and icmp, you must specify a port range. + // + // For icmpv6, the port range is optional. If you omit the port range, traffic + // for all types and codes is allowed. + IpProtocol *string `type:"string"` + + // The IPv4 ranges. + IpRanges []*AwsEc2SecurityGroupIpRange `type:"list"` + + // The IPv6 ranges. + Ipv6Ranges []*AwsEc2SecurityGroupIpv6Range `type:"list"` + + // [VPC only] The prefix list IDs for an AWS service. With outbound rules, this + // is the AWS service to access through a VPC endpoint from instances associated + // with the security group. + PrefixListIds []*AwsEc2SecurityGroupPrefixListId `type:"list"` + + // The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 + // code. + // + // A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 + // types, you must specify all codes. + ToPort *int64 `type:"integer"` + + // The security group and AWS account ID pairs. + UserIdGroupPairs []*AwsEc2SecurityGroupUserIdGroupPair `type:"list"` +} + +// String returns the string representation +func (s AwsEc2SecurityGroupIpPermission) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsEc2SecurityGroupIpPermission) GoString() string { + return s.String() +} + +// SetFromPort sets the FromPort field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetFromPort(v int64) *AwsEc2SecurityGroupIpPermission { + s.FromPort = &v + return s +} + +// SetIpProtocol sets the IpProtocol field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetIpProtocol(v string) *AwsEc2SecurityGroupIpPermission { + s.IpProtocol = &v + return s +} + +// SetIpRanges sets the IpRanges field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetIpRanges(v []*AwsEc2SecurityGroupIpRange) *AwsEc2SecurityGroupIpPermission { + s.IpRanges = v + return s +} + +// SetIpv6Ranges sets the Ipv6Ranges field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetIpv6Ranges(v []*AwsEc2SecurityGroupIpv6Range) *AwsEc2SecurityGroupIpPermission { + s.Ipv6Ranges = v + return s +} + +// SetPrefixListIds sets the PrefixListIds field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetPrefixListIds(v []*AwsEc2SecurityGroupPrefixListId) *AwsEc2SecurityGroupIpPermission { + s.PrefixListIds = v + return s +} + +// SetToPort sets the ToPort field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetToPort(v int64) *AwsEc2SecurityGroupIpPermission { + s.ToPort = &v + return s +} + +// SetUserIdGroupPairs sets the UserIdGroupPairs field's value. +func (s *AwsEc2SecurityGroupIpPermission) SetUserIdGroupPairs(v []*AwsEc2SecurityGroupUserIdGroupPair) *AwsEc2SecurityGroupIpPermission { + s.UserIdGroupPairs = v + return s +} + +// A range of IPv4 addresses. +type AwsEc2SecurityGroupIpRange struct { + _ struct{} `type:"structure"` + + // The IPv4 CIDR range. You can either specify either a CIDR range or a source + // security group, but not both. To specify a single IPv4 address, use the /32 + // prefix length. + CidrIp *string `type:"string"` +} + +// String returns the string representation +func (s AwsEc2SecurityGroupIpRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsEc2SecurityGroupIpRange) GoString() string { + return s.String() +} + +// SetCidrIp sets the CidrIp field's value. +func (s *AwsEc2SecurityGroupIpRange) SetCidrIp(v string) *AwsEc2SecurityGroupIpRange { + s.CidrIp = &v + return s +} + +// A range of IPv6 addresses. +type AwsEc2SecurityGroupIpv6Range struct { + _ struct{} `type:"structure"` + + // The IPv6 CIDR range. You can either specify either a CIDR range or a source + // security group, but not both. To specify a single IPv6 address, use the /128 + // prefix length. + CidrIpv6 *string `type:"string"` +} + +// String returns the string representation +func (s AwsEc2SecurityGroupIpv6Range) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsEc2SecurityGroupIpv6Range) GoString() string { + return s.String() +} + +// SetCidrIpv6 sets the CidrIpv6 field's value. +func (s *AwsEc2SecurityGroupIpv6Range) SetCidrIpv6(v string) *AwsEc2SecurityGroupIpv6Range { + s.CidrIpv6 = &v + return s +} + +// A prefix list ID. +type AwsEc2SecurityGroupPrefixListId struct { + _ struct{} `type:"structure"` + + // The ID of the prefix. + PrefixListId *string `type:"string"` +} + +// String returns the string representation +func (s AwsEc2SecurityGroupPrefixListId) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsEc2SecurityGroupPrefixListId) GoString() string { + return s.String() +} + +// SetPrefixListId sets the PrefixListId field's value. +func (s *AwsEc2SecurityGroupPrefixListId) SetPrefixListId(v string) *AwsEc2SecurityGroupPrefixListId { + s.PrefixListId = &v + return s +} + +// A relationship between a security group and a user. +type AwsEc2SecurityGroupUserIdGroupPair struct { + _ struct{} `type:"structure"` + + // The ID of the security group. + GroupId *string `type:"string"` + + // The name of the security group. + GroupName *string `type:"string"` + + // The status of a VPC peering connection, if applicable. + PeeringStatus *string `type:"string"` + + // The ID of an AWS account. + // + // For a referenced security group in another VPC, the account ID of the referenced + // security group is returned in the response. If the referenced security group + // is deleted, this value is not returned. + // + // [EC2-Classic] Required when adding or removing rules that reference a security + // group in another AWS. + UserId *string `type:"string"` + + // The ID of the VPC for the referenced security group, if applicable. + VpcId *string `type:"string"` + + // The ID of the VPC peering connection, if applicable. + VpcPeeringConnectionId *string `type:"string"` +} + +// String returns the string representation +func (s AwsEc2SecurityGroupUserIdGroupPair) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsEc2SecurityGroupUserIdGroupPair) GoString() string { + return s.String() +} + +// SetGroupId sets the GroupId field's value. +func (s *AwsEc2SecurityGroupUserIdGroupPair) SetGroupId(v string) *AwsEc2SecurityGroupUserIdGroupPair { + s.GroupId = &v + return s +} + +// SetGroupName sets the GroupName field's value. +func (s *AwsEc2SecurityGroupUserIdGroupPair) SetGroupName(v string) *AwsEc2SecurityGroupUserIdGroupPair { + s.GroupName = &v + return s +} + +// SetPeeringStatus sets the PeeringStatus field's value. +func (s *AwsEc2SecurityGroupUserIdGroupPair) SetPeeringStatus(v string) *AwsEc2SecurityGroupUserIdGroupPair { + s.PeeringStatus = &v + return s +} + +// SetUserId sets the UserId field's value. +func (s *AwsEc2SecurityGroupUserIdGroupPair) SetUserId(v string) *AwsEc2SecurityGroupUserIdGroupPair { + s.UserId = &v + return s +} + +// SetVpcId sets the VpcId field's value. +func (s *AwsEc2SecurityGroupUserIdGroupPair) SetVpcId(v string) *AwsEc2SecurityGroupUserIdGroupPair { + s.VpcId = &v + return s +} + +// SetVpcPeeringConnectionId sets the VpcPeeringConnectionId field's value. +func (s *AwsEc2SecurityGroupUserIdGroupPair) SetVpcPeeringConnectionId(v string) *AwsEc2SecurityGroupUserIdGroupPair { + s.VpcPeeringConnectionId = &v + return s +} + +// Information about an Elasticsearch domain. +type AwsElasticsearchDomainDetails struct { + _ struct{} `type:"structure"` + + // IAM policy document specifying the access policies for the new Amazon ES + // domain. + AccessPolicies *string `type:"string"` + + // Additional options for the domain endpoint. + DomainEndpointOptions *AwsElasticsearchDomainDomainEndpointOptions `type:"structure"` + + // Unique identifier for an Amazon ES domain. + DomainId *string `type:"string"` + + // Name of an Amazon ES domain. + // + // Domain names are unique across all domains owned by the same account within + // an AWS Region. + // + // Domain names must start with a lowercase letter and must be between 3 and + // 28 characters. + // + // Valid characters are a-z (lowercase only), 0-9, and – (hyphen). + DomainName *string `type:"string"` + + // Elasticsearch version. + ElasticsearchVersion *string `type:"string"` + + // Details about the configuration for encryption at rest. + EncryptionAtRestOptions *AwsElasticsearchDomainEncryptionAtRestOptions `type:"structure"` + + // Domain-specific endpoint used to submit index, search, and data upload requests + // to an Amazon ES domain. + // + // The endpoint is a service URL. + Endpoint *string `type:"string"` + + // The key-value pair that exists if the Amazon ES domain uses VPC endpoints. + Endpoints map[string]*string `type:"map"` + + // Details about the configuration for node-to-node encryption. + NodeToNodeEncryptionOptions *AwsElasticsearchDomainNodeToNodeEncryptionOptions `type:"structure"` + + // Information that Amazon ES derives based on VPCOptions for the domain. + VPCOptions *AwsElasticsearchDomainVPCOptions `type:"structure"` +} + +// String returns the string representation +func (s AwsElasticsearchDomainDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsElasticsearchDomainDetails) GoString() string { + return s.String() +} + +// SetAccessPolicies sets the AccessPolicies field's value. +func (s *AwsElasticsearchDomainDetails) SetAccessPolicies(v string) *AwsElasticsearchDomainDetails { + s.AccessPolicies = &v + return s +} + +// SetDomainEndpointOptions sets the DomainEndpointOptions field's value. +func (s *AwsElasticsearchDomainDetails) SetDomainEndpointOptions(v *AwsElasticsearchDomainDomainEndpointOptions) *AwsElasticsearchDomainDetails { + s.DomainEndpointOptions = v + return s +} + +// SetDomainId sets the DomainId field's value. +func (s *AwsElasticsearchDomainDetails) SetDomainId(v string) *AwsElasticsearchDomainDetails { + s.DomainId = &v + return s +} + +// SetDomainName sets the DomainName field's value. +func (s *AwsElasticsearchDomainDetails) SetDomainName(v string) *AwsElasticsearchDomainDetails { + s.DomainName = &v + return s +} + +// SetElasticsearchVersion sets the ElasticsearchVersion field's value. +func (s *AwsElasticsearchDomainDetails) SetElasticsearchVersion(v string) *AwsElasticsearchDomainDetails { + s.ElasticsearchVersion = &v + return s +} + +// SetEncryptionAtRestOptions sets the EncryptionAtRestOptions field's value. +func (s *AwsElasticsearchDomainDetails) SetEncryptionAtRestOptions(v *AwsElasticsearchDomainEncryptionAtRestOptions) *AwsElasticsearchDomainDetails { + s.EncryptionAtRestOptions = v + return s +} + +// SetEndpoint sets the Endpoint field's value. +func (s *AwsElasticsearchDomainDetails) SetEndpoint(v string) *AwsElasticsearchDomainDetails { + s.Endpoint = &v + return s +} + +// SetEndpoints sets the Endpoints field's value. +func (s *AwsElasticsearchDomainDetails) SetEndpoints(v map[string]*string) *AwsElasticsearchDomainDetails { + s.Endpoints = v + return s +} + +// SetNodeToNodeEncryptionOptions sets the NodeToNodeEncryptionOptions field's value. +func (s *AwsElasticsearchDomainDetails) SetNodeToNodeEncryptionOptions(v *AwsElasticsearchDomainNodeToNodeEncryptionOptions) *AwsElasticsearchDomainDetails { + s.NodeToNodeEncryptionOptions = v + return s +} + +// SetVPCOptions sets the VPCOptions field's value. +func (s *AwsElasticsearchDomainDetails) SetVPCOptions(v *AwsElasticsearchDomainVPCOptions) *AwsElasticsearchDomainDetails { + s.VPCOptions = v + return s +} + +// Additional options for the domain endpoint, such as whether to require HTTPS +// for all traffic. +type AwsElasticsearchDomainDomainEndpointOptions struct { + _ struct{} `type:"structure"` + + // Whether to require that all traffic to the domain arrive over HTTPS. + EnforceHTTPS *bool `type:"boolean"` + + // The TLS security policy to apply to the HTTPS endpoint of the Elasticsearch + // domain. + // + // Valid values: + // + // * Policy-Min-TLS-1-0-2019-07, which supports TLSv1.0 and higher + // + // * Policy-Min-TLS-1-2-2019-07, which only supports TLSv1.2 + TLSSecurityPolicy *string `type:"string"` +} + +// String returns the string representation +func (s AwsElasticsearchDomainDomainEndpointOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsElasticsearchDomainDomainEndpointOptions) GoString() string { + return s.String() +} + +// SetEnforceHTTPS sets the EnforceHTTPS field's value. +func (s *AwsElasticsearchDomainDomainEndpointOptions) SetEnforceHTTPS(v bool) *AwsElasticsearchDomainDomainEndpointOptions { + s.EnforceHTTPS = &v + return s +} + +// SetTLSSecurityPolicy sets the TLSSecurityPolicy field's value. +func (s *AwsElasticsearchDomainDomainEndpointOptions) SetTLSSecurityPolicy(v string) *AwsElasticsearchDomainDomainEndpointOptions { + s.TLSSecurityPolicy = &v + return s +} + +// Details about the configuration for encryption at rest. +type AwsElasticsearchDomainEncryptionAtRestOptions struct { + _ struct{} `type:"structure"` + + // Whether encryption at rest is enabled. + Enabled *bool `type:"boolean"` + + // The KMS key ID. Takes the form 1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a. + KmsKeyId *string `type:"string"` +} + +// String returns the string representation +func (s AwsElasticsearchDomainEncryptionAtRestOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsElasticsearchDomainEncryptionAtRestOptions) GoString() string { + return s.String() +} + +// SetEnabled sets the Enabled field's value. +func (s *AwsElasticsearchDomainEncryptionAtRestOptions) SetEnabled(v bool) *AwsElasticsearchDomainEncryptionAtRestOptions { + s.Enabled = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsElasticsearchDomainEncryptionAtRestOptions) SetKmsKeyId(v string) *AwsElasticsearchDomainEncryptionAtRestOptions { + s.KmsKeyId = &v + return s +} + +// Details about the configuration for node-to-node encryption. +type AwsElasticsearchDomainNodeToNodeEncryptionOptions struct { + _ struct{} `type:"structure"` + + // Whether node-to-node encryption is enabled. + Enabled *bool `type:"boolean"` +} + +// String returns the string representation +func (s AwsElasticsearchDomainNodeToNodeEncryptionOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsElasticsearchDomainNodeToNodeEncryptionOptions) GoString() string { + return s.String() +} + +// SetEnabled sets the Enabled field's value. +func (s *AwsElasticsearchDomainNodeToNodeEncryptionOptions) SetEnabled(v bool) *AwsElasticsearchDomainNodeToNodeEncryptionOptions { + s.Enabled = &v + return s +} + +// Information that Amazon ES derives based on VPCOptions for the domain. +type AwsElasticsearchDomainVPCOptions struct { + _ struct{} `type:"structure"` + + // The list of Availability Zones associated with the VPC subnets. + AvailabilityZones []*string `type:"list"` + + // The list of security group IDs associated with the VPC endpoints for the + // domain. + SecurityGroupIds []*string `type:"list"` + + // A list of subnet IDs associated with the VPC endpoints for the domain. + SubnetIds []*string `type:"list"` + + // ID for the VPC. + VPCId *string `type:"string"` +} + +// String returns the string representation +func (s AwsElasticsearchDomainVPCOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsElasticsearchDomainVPCOptions) GoString() string { + return s.String() +} + +// SetAvailabilityZones sets the AvailabilityZones field's value. +func (s *AwsElasticsearchDomainVPCOptions) SetAvailabilityZones(v []*string) *AwsElasticsearchDomainVPCOptions { + s.AvailabilityZones = v + return s +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *AwsElasticsearchDomainVPCOptions) SetSecurityGroupIds(v []*string) *AwsElasticsearchDomainVPCOptions { + s.SecurityGroupIds = v + return s +} + +// SetSubnetIds sets the SubnetIds field's value. +func (s *AwsElasticsearchDomainVPCOptions) SetSubnetIds(v []*string) *AwsElasticsearchDomainVPCOptions { + s.SubnetIds = v + return s +} + +// SetVPCId sets the VPCId field's value. +func (s *AwsElasticsearchDomainVPCOptions) SetVPCId(v string) *AwsElasticsearchDomainVPCOptions { + s.VPCId = &v + return s +} + +// Information about a load balancer. +type AwsElbv2LoadBalancerDetails struct { + _ struct{} `type:"structure"` + + // The Availability Zones for the load balancer. + AvailabilityZones []*AvailabilityZone `type:"list"` + + // The ID of the Amazon Route 53 hosted zone associated with the load balancer. + CanonicalHostedZoneId *string `type:"string"` + + // The date and time the load balancer was created. + CreatedTime *string `type:"string"` + + // The public DNS name of the load balancer. + DNSName *string `type:"string"` + + // The type of IP addresses used by the subnets for your load balancer. The + // possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and + // IPv6 addresses). + IpAddressType *string `type:"string"` + + // The nodes of an Internet-facing load balancer have public IP addresses. + Scheme *string `type:"string"` + + // The IDs of the security groups for the load balancer. + SecurityGroups []*string `type:"list"` + + // The state of the load balancer. + State *LoadBalancerState `type:"structure"` + + // The type of load balancer. + Type *string `type:"string"` + + // The ID of the VPC for the load balancer. + VpcId *string `type:"string"` +} + +// String returns the string representation +func (s AwsElbv2LoadBalancerDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsElbv2LoadBalancerDetails) GoString() string { + return s.String() +} + +// SetAvailabilityZones sets the AvailabilityZones field's value. +func (s *AwsElbv2LoadBalancerDetails) SetAvailabilityZones(v []*AvailabilityZone) *AwsElbv2LoadBalancerDetails { + s.AvailabilityZones = v + return s +} + +// SetCanonicalHostedZoneId sets the CanonicalHostedZoneId field's value. +func (s *AwsElbv2LoadBalancerDetails) SetCanonicalHostedZoneId(v string) *AwsElbv2LoadBalancerDetails { + s.CanonicalHostedZoneId = &v + return s +} + +// SetCreatedTime sets the CreatedTime field's value. +func (s *AwsElbv2LoadBalancerDetails) SetCreatedTime(v string) *AwsElbv2LoadBalancerDetails { + s.CreatedTime = &v + return s +} + +// SetDNSName sets the DNSName field's value. +func (s *AwsElbv2LoadBalancerDetails) SetDNSName(v string) *AwsElbv2LoadBalancerDetails { + s.DNSName = &v + return s +} + +// SetIpAddressType sets the IpAddressType field's value. +func (s *AwsElbv2LoadBalancerDetails) SetIpAddressType(v string) *AwsElbv2LoadBalancerDetails { + s.IpAddressType = &v + return s +} + +// SetScheme sets the Scheme field's value. +func (s *AwsElbv2LoadBalancerDetails) SetScheme(v string) *AwsElbv2LoadBalancerDetails { + s.Scheme = &v + return s +} + +// SetSecurityGroups sets the SecurityGroups field's value. +func (s *AwsElbv2LoadBalancerDetails) SetSecurityGroups(v []*string) *AwsElbv2LoadBalancerDetails { + s.SecurityGroups = v + return s +} + +// SetState sets the State field's value. +func (s *AwsElbv2LoadBalancerDetails) SetState(v *LoadBalancerState) *AwsElbv2LoadBalancerDetails { + s.State = v + return s +} + +// SetType sets the Type field's value. +func (s *AwsElbv2LoadBalancerDetails) SetType(v string) *AwsElbv2LoadBalancerDetails { + s.Type = &v + return s +} + +// SetVpcId sets the VpcId field's value. +func (s *AwsElbv2LoadBalancerDetails) SetVpcId(v string) *AwsElbv2LoadBalancerDetails { + s.VpcId = &v + return s +} + +// IAM access key details related to a finding. +type AwsIamAccessKeyDetails struct { + _ struct{} `type:"structure"` + + // The creation date/time of the IAM access key related to a finding. + CreatedAt *string `type:"string"` + + // The ID of the principal associated with an access key. + PrincipalId *string `type:"string"` + + // The name of the principal. + PrincipalName *string `type:"string"` + + // The type of principal associated with an access key. + PrincipalType *string `type:"string"` + + // The status of the IAM access key related to a finding. + Status *string `type:"string" enum:"AwsIamAccessKeyStatus"` + + // The user associated with the IAM access key related to a finding. + // + // The UserName parameter has been replaced with the PrincipalName parameter + // because access keys can also be assigned to principals that are not IAM users. + // + // Deprecated: This field is deprecated, use PrincipalName instead. + UserName *string `deprecated:"true" type:"string"` +} + +// String returns the string representation +func (s AwsIamAccessKeyDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsIamAccessKeyDetails) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AwsIamAccessKeyDetails) SetCreatedAt(v string) *AwsIamAccessKeyDetails { + s.CreatedAt = &v + return s +} + +// SetPrincipalId sets the PrincipalId field's value. +func (s *AwsIamAccessKeyDetails) SetPrincipalId(v string) *AwsIamAccessKeyDetails { + s.PrincipalId = &v + return s +} + +// SetPrincipalName sets the PrincipalName field's value. +func (s *AwsIamAccessKeyDetails) SetPrincipalName(v string) *AwsIamAccessKeyDetails { + s.PrincipalName = &v + return s +} + +// SetPrincipalType sets the PrincipalType field's value. +func (s *AwsIamAccessKeyDetails) SetPrincipalType(v string) *AwsIamAccessKeyDetails { + s.PrincipalType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AwsIamAccessKeyDetails) SetStatus(v string) *AwsIamAccessKeyDetails { + s.Status = &v + return s +} + +// SetUserName sets the UserName field's value. +func (s *AwsIamAccessKeyDetails) SetUserName(v string) *AwsIamAccessKeyDetails { + s.UserName = &v + return s +} + +// Contains information about an IAM role, including all of the role's policies. +type AwsIamRoleDetails struct { + _ struct{} `type:"structure"` + + // The trust policy that grants permission to assume the role. + AssumeRolePolicyDocument *string `min:"1" type:"string"` + + // The date and time, in ISO 8601 date-time format, when the role was created. + CreateDate *string `type:"string"` + + // The maximum session duration (in seconds) that you want to set for the specified + // role. + MaxSessionDuration *int64 `type:"integer"` + + // The path to the role. + Path *string `type:"string"` + + // The stable and unique string identifying the role. + RoleId *string `type:"string"` + + // The friendly name that identifies the role. + RoleName *string `type:"string"` +} + +// String returns the string representation +func (s AwsIamRoleDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsIamRoleDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AwsIamRoleDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AwsIamRoleDetails"} + if s.AssumeRolePolicyDocument != nil && len(*s.AssumeRolePolicyDocument) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AssumeRolePolicyDocument", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssumeRolePolicyDocument sets the AssumeRolePolicyDocument field's value. +func (s *AwsIamRoleDetails) SetAssumeRolePolicyDocument(v string) *AwsIamRoleDetails { + s.AssumeRolePolicyDocument = &v + return s +} + +// SetCreateDate sets the CreateDate field's value. +func (s *AwsIamRoleDetails) SetCreateDate(v string) *AwsIamRoleDetails { + s.CreateDate = &v + return s +} + +// SetMaxSessionDuration sets the MaxSessionDuration field's value. +func (s *AwsIamRoleDetails) SetMaxSessionDuration(v int64) *AwsIamRoleDetails { + s.MaxSessionDuration = &v + return s +} + +// SetPath sets the Path field's value. +func (s *AwsIamRoleDetails) SetPath(v string) *AwsIamRoleDetails { + s.Path = &v + return s +} + +// SetRoleId sets the RoleId field's value. +func (s *AwsIamRoleDetails) SetRoleId(v string) *AwsIamRoleDetails { + s.RoleId = &v + return s +} + +// SetRoleName sets the RoleName field's value. +func (s *AwsIamRoleDetails) SetRoleName(v string) *AwsIamRoleDetails { + s.RoleName = &v + return s +} + +// Contains metadata about a customer master key (CMK). +type AwsKmsKeyDetails struct { + _ struct{} `type:"structure"` + + // The twelve-digit account ID of the AWS account that owns the CMK. + AWSAccountId *string `type:"string"` + + // The date and time when the CMK was created. + CreationDate *float64 `type:"double"` + + // The globally unique identifier for the CMK. + KeyId *string `type:"string"` + + // The manager of the CMK. CMKs in your AWS account are either customer managed + // or AWS managed. + KeyManager *string `type:"string"` + + // The state of the CMK. + KeyState *string `type:"string"` + + // The source of the CMK's key material. + // + // When this value is AWS_KMS, AWS KMS created the key material. + // + // When this value is EXTERNAL, the key material was imported from your existing + // key management infrastructure or the CMK lacks key material. + // + // When this value is AWS_CLOUDHSM, the key material was created in the AWS + // CloudHSM cluster associated with a custom key store. + Origin *string `type:"string"` +} + +// String returns the string representation +func (s AwsKmsKeyDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsKmsKeyDetails) GoString() string { + return s.String() +} + +// SetAWSAccountId sets the AWSAccountId field's value. +func (s *AwsKmsKeyDetails) SetAWSAccountId(v string) *AwsKmsKeyDetails { + s.AWSAccountId = &v + return s +} + +// SetCreationDate sets the CreationDate field's value. +func (s *AwsKmsKeyDetails) SetCreationDate(v float64) *AwsKmsKeyDetails { + s.CreationDate = &v + return s +} + +// SetKeyId sets the KeyId field's value. +func (s *AwsKmsKeyDetails) SetKeyId(v string) *AwsKmsKeyDetails { + s.KeyId = &v + return s +} + +// SetKeyManager sets the KeyManager field's value. +func (s *AwsKmsKeyDetails) SetKeyManager(v string) *AwsKmsKeyDetails { + s.KeyManager = &v + return s +} + +// SetKeyState sets the KeyState field's value. +func (s *AwsKmsKeyDetails) SetKeyState(v string) *AwsKmsKeyDetails { + s.KeyState = &v + return s +} + +// SetOrigin sets the Origin field's value. +func (s *AwsKmsKeyDetails) SetOrigin(v string) *AwsKmsKeyDetails { + s.Origin = &v + return s +} + +// The code for the Lambda function. You can specify either an object in Amazon +// S3, or upload a deployment package directly. +type AwsLambdaFunctionCode struct { + _ struct{} `type:"structure"` + + // An Amazon S3 bucket in the same AWS Region as your function. The bucket can + // be in a different AWS account. + S3Bucket *string `type:"string"` + + // The Amazon S3 key of the deployment package. + S3Key *string `type:"string"` + + // For versioned objects, the version of the deployment package object to use. + S3ObjectVersion *string `type:"string"` + + // The base64-encoded contents of the deployment package. AWS SDK and AWS CLI + // clients handle the encoding for you. + ZipFile *string `type:"string"` +} + +// String returns the string representation +func (s AwsLambdaFunctionCode) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsLambdaFunctionCode) GoString() string { + return s.String() +} + +// SetS3Bucket sets the S3Bucket field's value. +func (s *AwsLambdaFunctionCode) SetS3Bucket(v string) *AwsLambdaFunctionCode { + s.S3Bucket = &v + return s +} + +// SetS3Key sets the S3Key field's value. +func (s *AwsLambdaFunctionCode) SetS3Key(v string) *AwsLambdaFunctionCode { + s.S3Key = &v + return s +} + +// SetS3ObjectVersion sets the S3ObjectVersion field's value. +func (s *AwsLambdaFunctionCode) SetS3ObjectVersion(v string) *AwsLambdaFunctionCode { + s.S3ObjectVersion = &v + return s +} + +// SetZipFile sets the ZipFile field's value. +func (s *AwsLambdaFunctionCode) SetZipFile(v string) *AwsLambdaFunctionCode { + s.ZipFile = &v + return s +} + +// The dead-letter queue for failed asynchronous invocations. +type AwsLambdaFunctionDeadLetterConfig struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic. + TargetArn *string `type:"string"` +} + +// String returns the string representation +func (s AwsLambdaFunctionDeadLetterConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsLambdaFunctionDeadLetterConfig) GoString() string { + return s.String() +} + +// SetTargetArn sets the TargetArn field's value. +func (s *AwsLambdaFunctionDeadLetterConfig) SetTargetArn(v string) *AwsLambdaFunctionDeadLetterConfig { + s.TargetArn = &v + return s +} + +// Details about a function's configuration. +type AwsLambdaFunctionDetails struct { + _ struct{} `type:"structure"` + + // An AwsLambdaFunctionCode object. + Code *AwsLambdaFunctionCode `type:"structure"` + + // The SHA256 hash of the function's deployment package. + CodeSha256 *string `type:"string"` + + // The function's dead letter queue. + DeadLetterConfig *AwsLambdaFunctionDeadLetterConfig `type:"structure"` + + // The function's environment variables. + Environment *AwsLambdaFunctionEnvironment `type:"structure"` + + // The name of the function. + FunctionName *string `type:"string"` + + // The function that Lambda calls to begin executing your function. + Handler *string `type:"string"` + + // The KMS key that's used to encrypt the function's environment variables. + // This key is only returned if you've configured a customer managed CMK. + KmsKeyArn *string `type:"string"` + + // The date and time that the function was last updated, in ISO-8601 format + // (YYYY-MM-DDThh:mm:ss.sTZD). + LastModified *string `type:"string"` + + // The function's layers. + Layers []*AwsLambdaFunctionLayer `type:"list"` + + // For Lambda@Edge functions, the ARN of the master function. + MasterArn *string `type:"string"` + + // The memory that's allocated to the function. + MemorySize *int64 `type:"integer"` + + // The latest updated revision of the function or alias. + RevisionId *string `type:"string"` + + // The function's execution role. + Role *string `type:"string"` + + // The runtime environment for the Lambda function. + Runtime *string `type:"string"` + + // The amount of time that Lambda allows a function to run before stopping it. + Timeout *int64 `type:"integer"` + + // The function's AWS X-Ray tracing configuration. + TracingConfig *AwsLambdaFunctionTracingConfig `type:"structure"` + + // The version of the Lambda function. + Version *string `type:"string"` + + // The function's networking configuration. + VpcConfig *AwsLambdaFunctionVpcConfig `type:"structure"` +} + +// String returns the string representation +func (s AwsLambdaFunctionDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsLambdaFunctionDetails) GoString() string { + return s.String() +} + +// SetCode sets the Code field's value. +func (s *AwsLambdaFunctionDetails) SetCode(v *AwsLambdaFunctionCode) *AwsLambdaFunctionDetails { + s.Code = v + return s +} + +// SetCodeSha256 sets the CodeSha256 field's value. +func (s *AwsLambdaFunctionDetails) SetCodeSha256(v string) *AwsLambdaFunctionDetails { + s.CodeSha256 = &v + return s +} + +// SetDeadLetterConfig sets the DeadLetterConfig field's value. +func (s *AwsLambdaFunctionDetails) SetDeadLetterConfig(v *AwsLambdaFunctionDeadLetterConfig) *AwsLambdaFunctionDetails { + s.DeadLetterConfig = v + return s +} + +// SetEnvironment sets the Environment field's value. +func (s *AwsLambdaFunctionDetails) SetEnvironment(v *AwsLambdaFunctionEnvironment) *AwsLambdaFunctionDetails { + s.Environment = v + return s +} + +// SetFunctionName sets the FunctionName field's value. +func (s *AwsLambdaFunctionDetails) SetFunctionName(v string) *AwsLambdaFunctionDetails { + s.FunctionName = &v + return s +} + +// SetHandler sets the Handler field's value. +func (s *AwsLambdaFunctionDetails) SetHandler(v string) *AwsLambdaFunctionDetails { + s.Handler = &v + return s +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *AwsLambdaFunctionDetails) SetKmsKeyArn(v string) *AwsLambdaFunctionDetails { + s.KmsKeyArn = &v + return s +} + +// SetLastModified sets the LastModified field's value. +func (s *AwsLambdaFunctionDetails) SetLastModified(v string) *AwsLambdaFunctionDetails { + s.LastModified = &v + return s +} + +// SetLayers sets the Layers field's value. +func (s *AwsLambdaFunctionDetails) SetLayers(v []*AwsLambdaFunctionLayer) *AwsLambdaFunctionDetails { + s.Layers = v + return s +} + +// SetMasterArn sets the MasterArn field's value. +func (s *AwsLambdaFunctionDetails) SetMasterArn(v string) *AwsLambdaFunctionDetails { + s.MasterArn = &v + return s +} + +// SetMemorySize sets the MemorySize field's value. +func (s *AwsLambdaFunctionDetails) SetMemorySize(v int64) *AwsLambdaFunctionDetails { + s.MemorySize = &v + return s +} + +// SetRevisionId sets the RevisionId field's value. +func (s *AwsLambdaFunctionDetails) SetRevisionId(v string) *AwsLambdaFunctionDetails { + s.RevisionId = &v + return s +} + +// SetRole sets the Role field's value. +func (s *AwsLambdaFunctionDetails) SetRole(v string) *AwsLambdaFunctionDetails { + s.Role = &v + return s +} + +// SetRuntime sets the Runtime field's value. +func (s *AwsLambdaFunctionDetails) SetRuntime(v string) *AwsLambdaFunctionDetails { + s.Runtime = &v + return s +} + +// SetTimeout sets the Timeout field's value. +func (s *AwsLambdaFunctionDetails) SetTimeout(v int64) *AwsLambdaFunctionDetails { + s.Timeout = &v + return s +} + +// SetTracingConfig sets the TracingConfig field's value. +func (s *AwsLambdaFunctionDetails) SetTracingConfig(v *AwsLambdaFunctionTracingConfig) *AwsLambdaFunctionDetails { + s.TracingConfig = v + return s +} + +// SetVersion sets the Version field's value. +func (s *AwsLambdaFunctionDetails) SetVersion(v string) *AwsLambdaFunctionDetails { + s.Version = &v + return s +} + +// SetVpcConfig sets the VpcConfig field's value. +func (s *AwsLambdaFunctionDetails) SetVpcConfig(v *AwsLambdaFunctionVpcConfig) *AwsLambdaFunctionDetails { + s.VpcConfig = v + return s +} + +// A function's environment variable settings. +type AwsLambdaFunctionEnvironment struct { + _ struct{} `type:"structure"` + + // An AwsLambdaFunctionEnvironmentError object. + Error *AwsLambdaFunctionEnvironmentError `type:"structure"` + + // Environment variable key-value pairs. + Variables map[string]*string `type:"map"` +} - // An AwsLambdaFunctionCode object. - Code *AwsLambdaFunctionCode `type:"structure"` +// String returns the string representation +func (s AwsLambdaFunctionEnvironment) String() string { + return awsutil.Prettify(s) +} - // The SHA256 hash of the function's deployment package. - CodeSha256 *string `type:"string"` +// GoString returns the string representation +func (s AwsLambdaFunctionEnvironment) GoString() string { + return s.String() +} - // The function's dead letter queue. - DeadLetterConfig *AwsLambdaFunctionDeadLetterConfig `type:"structure"` +// SetError sets the Error field's value. +func (s *AwsLambdaFunctionEnvironment) SetError(v *AwsLambdaFunctionEnvironmentError) *AwsLambdaFunctionEnvironment { + s.Error = v + return s +} - // The function's environment variables. - Environment *AwsLambdaFunctionEnvironment `type:"structure"` +// SetVariables sets the Variables field's value. +func (s *AwsLambdaFunctionEnvironment) SetVariables(v map[string]*string) *AwsLambdaFunctionEnvironment { + s.Variables = v + return s +} - // The name of the function. - FunctionName *string `type:"string"` +// Error messages for environment variables that couldn't be applied. +type AwsLambdaFunctionEnvironmentError struct { + _ struct{} `type:"structure"` - // The function that Lambda calls to begin executing your function. - Handler *string `type:"string"` + // The error code. + ErrorCode *string `type:"string"` - // The KMS key that's used to encrypt the function's environment variables. - // This key is only returned if you've configured a customer managed CMK. - KmsKeyArn *string `type:"string"` + // The error message. + Message *string `type:"string"` +} - // The date and time that the function was last updated, in ISO-8601 format - // (YYYY-MM-DDThh:mm:ss.sTZD). - LastModified *string `type:"string"` +// String returns the string representation +func (s AwsLambdaFunctionEnvironmentError) String() string { + return awsutil.Prettify(s) +} - // The function's layers. - Layers []*AwsLambdaFunctionLayer `type:"list"` +// GoString returns the string representation +func (s AwsLambdaFunctionEnvironmentError) GoString() string { + return s.String() +} - // For Lambda@Edge functions, the ARN of the master function. - MasterArn *string `type:"string"` +// SetErrorCode sets the ErrorCode field's value. +func (s *AwsLambdaFunctionEnvironmentError) SetErrorCode(v string) *AwsLambdaFunctionEnvironmentError { + s.ErrorCode = &v + return s +} - // The memory that's allocated to the function. - MemorySize *int64 `type:"integer"` +// SetMessage sets the Message field's value. +func (s *AwsLambdaFunctionEnvironmentError) SetMessage(v string) *AwsLambdaFunctionEnvironmentError { + s.Message = &v + return s +} - // The latest updated revision of the function or alias. - RevisionId *string `type:"string"` +// An AWS Lambda layer. +type AwsLambdaFunctionLayer struct { + _ struct{} `type:"structure"` - // The function's execution role. - Role *string `type:"string"` + // The Amazon Resource Name (ARN) of the function layer. + Arn *string `type:"string"` - // The runtime environment for the Lambda function. - Runtime *string `type:"string"` + // The size of the layer archive in bytes. + CodeSize *int64 `type:"integer"` +} - // The amount of time that Lambda allows a function to run before stopping it. - Timeout *int64 `type:"integer"` +// String returns the string representation +func (s AwsLambdaFunctionLayer) String() string { + return awsutil.Prettify(s) +} - // The function's AWS X-Ray tracing configuration. - TracingConfig *AwsLambdaFunctionTracingConfig `type:"structure"` +// GoString returns the string representation +func (s AwsLambdaFunctionLayer) GoString() string { + return s.String() +} - // The version of the Lambda function. - Version *string `type:"string"` +// SetArn sets the Arn field's value. +func (s *AwsLambdaFunctionLayer) SetArn(v string) *AwsLambdaFunctionLayer { + s.Arn = &v + return s +} - // The function's networking configuration. - VpcConfig *AwsLambdaFunctionVpcConfig `type:"structure"` +// SetCodeSize sets the CodeSize field's value. +func (s *AwsLambdaFunctionLayer) SetCodeSize(v int64) *AwsLambdaFunctionLayer { + s.CodeSize = &v + return s +} + +// The function's AWS X-Ray tracing configuration. +type AwsLambdaFunctionTracingConfig struct { + _ struct{} `type:"structure"` + + // The tracing mode. + Mode *string `type:"string"` } // String returns the string representation -func (s AwsLambdaFunctionDetails) String() string { +func (s AwsLambdaFunctionTracingConfig) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsLambdaFunctionDetails) GoString() string { +func (s AwsLambdaFunctionTracingConfig) GoString() string { return s.String() } -// SetCode sets the Code field's value. -func (s *AwsLambdaFunctionDetails) SetCode(v *AwsLambdaFunctionCode) *AwsLambdaFunctionDetails { - s.Code = v +// SetMode sets the Mode field's value. +func (s *AwsLambdaFunctionTracingConfig) SetMode(v string) *AwsLambdaFunctionTracingConfig { + s.Mode = &v return s } -// SetCodeSha256 sets the CodeSha256 field's value. -func (s *AwsLambdaFunctionDetails) SetCodeSha256(v string) *AwsLambdaFunctionDetails { - s.CodeSha256 = &v +// The VPC security groups and subnets that are attached to a Lambda function. +// For more information, see VPC Settings. +type AwsLambdaFunctionVpcConfig struct { + _ struct{} `type:"structure"` + + // A list of VPC security groups IDs. + SecurityGroupIds []*string `type:"list"` + + // A list of VPC subnet IDs. + SubnetIds []*string `type:"list"` + + // The ID of the VPC. + VpcId *string `type:"string"` +} + +// String returns the string representation +func (s AwsLambdaFunctionVpcConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsLambdaFunctionVpcConfig) GoString() string { + return s.String() +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *AwsLambdaFunctionVpcConfig) SetSecurityGroupIds(v []*string) *AwsLambdaFunctionVpcConfig { + s.SecurityGroupIds = v return s } -// SetDeadLetterConfig sets the DeadLetterConfig field's value. -func (s *AwsLambdaFunctionDetails) SetDeadLetterConfig(v *AwsLambdaFunctionDeadLetterConfig) *AwsLambdaFunctionDetails { - s.DeadLetterConfig = v +// SetSubnetIds sets the SubnetIds field's value. +func (s *AwsLambdaFunctionVpcConfig) SetSubnetIds(v []*string) *AwsLambdaFunctionVpcConfig { + s.SubnetIds = v + return s +} + +// SetVpcId sets the VpcId field's value. +func (s *AwsLambdaFunctionVpcConfig) SetVpcId(v string) *AwsLambdaFunctionVpcConfig { + s.VpcId = &v + return s +} + +// Details about a Lambda layer version. +type AwsLambdaLayerVersionDetails struct { + _ struct{} `type:"structure"` + + // The layer's compatible runtimes. Maximum number of 5 items. + // + // Valid values: nodejs8.10 | nodejs10.x | nodejs12.x | java8 | java11 | python2.7 + // | python3.6 | python3.7 | python3.8 | dotnetcore1.0 | dotnetcore2.1 | go1.x + // | ruby2.5 | provided + CompatibleRuntimes []*string `type:"list"` + + // The date that the version was created, in ISO 8601 format. For example, 2018-11-27T15:10:45.123+0000. + CreatedDate *string `type:"string"` + + // The version number. + Version *int64 `type:"long"` +} + +// String returns the string representation +func (s AwsLambdaLayerVersionDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsLambdaLayerVersionDetails) GoString() string { + return s.String() +} + +// SetCompatibleRuntimes sets the CompatibleRuntimes field's value. +func (s *AwsLambdaLayerVersionDetails) SetCompatibleRuntimes(v []*string) *AwsLambdaLayerVersionDetails { + s.CompatibleRuntimes = v + return s +} + +// SetCreatedDate sets the CreatedDate field's value. +func (s *AwsLambdaLayerVersionDetails) SetCreatedDate(v string) *AwsLambdaLayerVersionDetails { + s.CreatedDate = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *AwsLambdaLayerVersionDetails) SetVersion(v int64) *AwsLambdaLayerVersionDetails { + s.Version = &v + return s +} + +// An AWS Identity and Access Management (IAM) role associated with the DB instance. +type AwsRdsDbInstanceAssociatedRole struct { + _ struct{} `type:"structure"` + + // The name of the feature associated with the IAM)role. + FeatureName *string `type:"string"` + + // The Amazon Resource Name (ARN) of the IAM role that is associated with the + // DB instance. + RoleArn *string `type:"string"` + + // Describes the state of the association between the IAM role and the DB instance. + // The Status property returns one of the following values: + // + // * ACTIVE - the IAM role ARN is associated with the DB instance and can + // be used to access other AWS services on your behalf. + // + // * PENDING - the IAM role ARN is being associated with the DB instance. + // + // * INVALID - the IAM role ARN is associated with the DB instance, but the + // DB instance is unable to assume the IAM role in order to access other + // AWS services on your behalf. + Status *string `type:"string"` +} + +// String returns the string representation +func (s AwsRdsDbInstanceAssociatedRole) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsRdsDbInstanceAssociatedRole) GoString() string { + return s.String() +} + +// SetFeatureName sets the FeatureName field's value. +func (s *AwsRdsDbInstanceAssociatedRole) SetFeatureName(v string) *AwsRdsDbInstanceAssociatedRole { + s.FeatureName = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *AwsRdsDbInstanceAssociatedRole) SetRoleArn(v string) *AwsRdsDbInstanceAssociatedRole { + s.RoleArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AwsRdsDbInstanceAssociatedRole) SetStatus(v string) *AwsRdsDbInstanceAssociatedRole { + s.Status = &v return s } -// SetEnvironment sets the Environment field's value. -func (s *AwsLambdaFunctionDetails) SetEnvironment(v *AwsLambdaFunctionEnvironment) *AwsLambdaFunctionDetails { - s.Environment = v - return s +// Contains the details of an Amazon RDS DB instance. +type AwsRdsDbInstanceDetails struct { + _ struct{} `type:"structure"` + + // The AWS Identity and Access Management (IAM) roles associated with the DB + // instance. + AssociatedRoles []*AwsRdsDbInstanceAssociatedRole `type:"list"` + + // The identifier of the CA certificate for this DB instance. + CACertificateIdentifier *string `type:"string"` + + // If the DB instance is a member of a DB cluster, contains the name of the + // DB cluster that the DB instance is a member of. + DBClusterIdentifier *string `type:"string"` + + // Contains the name of the compute and memory capacity class of the DB instance. + DBInstanceClass *string `type:"string"` + + // Contains a user-supplied database identifier. This identifier is the unique + // key that identifies a DB instance. + DBInstanceIdentifier *string `type:"string"` + + // The meaning of this parameter differs according to the database engine you + // use. + // + // MySQL, MariaDB, SQL Server, PostgreSQL + // + // Contains the name of the initial database of this instance that was provided + // at create time, if one was specified when the DB instance was created. This + // same name is returned for the life of the DB instance. + // + // Oracle + // + // Contains the Oracle System ID (SID) of the created DB instance. Not shown + // when the returned parameters do not apply to an Oracle DB instance. + DBName *string `type:"string"` + + // Specifies the port that the DB instance listens on. If the DB instance is + // part of a DB cluster, this can be a different port than the DB cluster port. + DbInstancePort *int64 `type:"integer"` + + // The AWS Region-unique, immutable identifier for the DB instance. This identifier + // is found in AWS CloudTrail log entries whenever the AWS KMS key for the DB + // instance is accessed. + DbiResourceId *string `type:"string"` + + // Indicates whether the DB instance has deletion protection enabled. + // + // When deletion protection is enabled, the database cannot be deleted. + DeletionProtection *bool `type:"boolean"` + + // Specifies the connection endpoint. + Endpoint *AwsRdsDbInstanceEndpoint `type:"structure"` + + // Provides the name of the database engine to use for this DB instance. + Engine *string `type:"string"` + + // Indicates the database engine version. + EngineVersion *string `type:"string"` + + // True if mapping of AWS Identity and Access Management (IAM) accounts to database + // accounts is enabled, and otherwise false. + // + // IAM database authentication can be enabled for the following database engines. + // + // * For MySQL 5.6, minor version 5.6.34 or higher + // + // * For MySQL 5.7, minor version 5.7.16 or higher + // + // * Aurora 5.6 or higher + IAMDatabaseAuthenticationEnabled *bool `type:"boolean"` + + // Provides the date and time the DB instance was created. + InstanceCreateTime *string `type:"string"` + + // If StorageEncrypted is true, the AWS KMS key identifier for the encrypted + // DB instance. + KmsKeyId *string `type:"string"` + + // Specifies the accessibility options for the DB instance. + // + // A value of true specifies an Internet-facing instance with a publicly resolvable + // DNS name, which resolves to a public IP address. + // + // A value of false specifies an internal instance with a DNS name that resolves + // to a private IP address. + PubliclyAccessible *bool `type:"boolean"` + + // Specifies whether the DB instance is encrypted. + StorageEncrypted *bool `type:"boolean"` + + // The ARN from the key store with which the instance is associated for TDE + // encryption. + TdeCredentialArn *string `type:"string"` + + // A list of VPC security groups that the DB instance belongs to. + VpcSecurityGroups []*AwsRdsDbInstanceVpcSecurityGroup `type:"list"` } -// SetFunctionName sets the FunctionName field's value. -func (s *AwsLambdaFunctionDetails) SetFunctionName(v string) *AwsLambdaFunctionDetails { - s.FunctionName = &v - return s +// String returns the string representation +func (s AwsRdsDbInstanceDetails) String() string { + return awsutil.Prettify(s) } -// SetHandler sets the Handler field's value. -func (s *AwsLambdaFunctionDetails) SetHandler(v string) *AwsLambdaFunctionDetails { - s.Handler = &v - return s +// GoString returns the string representation +func (s AwsRdsDbInstanceDetails) GoString() string { + return s.String() } -// SetKmsKeyArn sets the KmsKeyArn field's value. -func (s *AwsLambdaFunctionDetails) SetKmsKeyArn(v string) *AwsLambdaFunctionDetails { - s.KmsKeyArn = &v +// SetAssociatedRoles sets the AssociatedRoles field's value. +func (s *AwsRdsDbInstanceDetails) SetAssociatedRoles(v []*AwsRdsDbInstanceAssociatedRole) *AwsRdsDbInstanceDetails { + s.AssociatedRoles = v return s } -// SetLastModified sets the LastModified field's value. -func (s *AwsLambdaFunctionDetails) SetLastModified(v string) *AwsLambdaFunctionDetails { - s.LastModified = &v +// SetCACertificateIdentifier sets the CACertificateIdentifier field's value. +func (s *AwsRdsDbInstanceDetails) SetCACertificateIdentifier(v string) *AwsRdsDbInstanceDetails { + s.CACertificateIdentifier = &v return s } -// SetLayers sets the Layers field's value. -func (s *AwsLambdaFunctionDetails) SetLayers(v []*AwsLambdaFunctionLayer) *AwsLambdaFunctionDetails { - s.Layers = v +// SetDBClusterIdentifier sets the DBClusterIdentifier field's value. +func (s *AwsRdsDbInstanceDetails) SetDBClusterIdentifier(v string) *AwsRdsDbInstanceDetails { + s.DBClusterIdentifier = &v return s } -// SetMasterArn sets the MasterArn field's value. -func (s *AwsLambdaFunctionDetails) SetMasterArn(v string) *AwsLambdaFunctionDetails { - s.MasterArn = &v +// SetDBInstanceClass sets the DBInstanceClass field's value. +func (s *AwsRdsDbInstanceDetails) SetDBInstanceClass(v string) *AwsRdsDbInstanceDetails { + s.DBInstanceClass = &v return s } -// SetMemorySize sets the MemorySize field's value. -func (s *AwsLambdaFunctionDetails) SetMemorySize(v int64) *AwsLambdaFunctionDetails { - s.MemorySize = &v +// SetDBInstanceIdentifier sets the DBInstanceIdentifier field's value. +func (s *AwsRdsDbInstanceDetails) SetDBInstanceIdentifier(v string) *AwsRdsDbInstanceDetails { + s.DBInstanceIdentifier = &v return s } -// SetRevisionId sets the RevisionId field's value. -func (s *AwsLambdaFunctionDetails) SetRevisionId(v string) *AwsLambdaFunctionDetails { - s.RevisionId = &v +// SetDBName sets the DBName field's value. +func (s *AwsRdsDbInstanceDetails) SetDBName(v string) *AwsRdsDbInstanceDetails { + s.DBName = &v return s } -// SetRole sets the Role field's value. -func (s *AwsLambdaFunctionDetails) SetRole(v string) *AwsLambdaFunctionDetails { - s.Role = &v +// SetDbInstancePort sets the DbInstancePort field's value. +func (s *AwsRdsDbInstanceDetails) SetDbInstancePort(v int64) *AwsRdsDbInstanceDetails { + s.DbInstancePort = &v return s } -// SetRuntime sets the Runtime field's value. -func (s *AwsLambdaFunctionDetails) SetRuntime(v string) *AwsLambdaFunctionDetails { - s.Runtime = &v +// SetDbiResourceId sets the DbiResourceId field's value. +func (s *AwsRdsDbInstanceDetails) SetDbiResourceId(v string) *AwsRdsDbInstanceDetails { + s.DbiResourceId = &v return s } -// SetTimeout sets the Timeout field's value. -func (s *AwsLambdaFunctionDetails) SetTimeout(v int64) *AwsLambdaFunctionDetails { - s.Timeout = &v +// SetDeletionProtection sets the DeletionProtection field's value. +func (s *AwsRdsDbInstanceDetails) SetDeletionProtection(v bool) *AwsRdsDbInstanceDetails { + s.DeletionProtection = &v return s } -// SetTracingConfig sets the TracingConfig field's value. -func (s *AwsLambdaFunctionDetails) SetTracingConfig(v *AwsLambdaFunctionTracingConfig) *AwsLambdaFunctionDetails { - s.TracingConfig = v +// SetEndpoint sets the Endpoint field's value. +func (s *AwsRdsDbInstanceDetails) SetEndpoint(v *AwsRdsDbInstanceEndpoint) *AwsRdsDbInstanceDetails { + s.Endpoint = v return s } -// SetVersion sets the Version field's value. -func (s *AwsLambdaFunctionDetails) SetVersion(v string) *AwsLambdaFunctionDetails { - s.Version = &v +// SetEngine sets the Engine field's value. +func (s *AwsRdsDbInstanceDetails) SetEngine(v string) *AwsRdsDbInstanceDetails { + s.Engine = &v return s } -// SetVpcConfig sets the VpcConfig field's value. -func (s *AwsLambdaFunctionDetails) SetVpcConfig(v *AwsLambdaFunctionVpcConfig) *AwsLambdaFunctionDetails { - s.VpcConfig = v +// SetEngineVersion sets the EngineVersion field's value. +func (s *AwsRdsDbInstanceDetails) SetEngineVersion(v string) *AwsRdsDbInstanceDetails { + s.EngineVersion = &v return s } -// A function's environment variable settings. -type AwsLambdaFunctionEnvironment struct { - _ struct{} `type:"structure"` - - // An AwsLambdaFunctionEnvironmentError object. - Error *AwsLambdaFunctionEnvironmentError `type:"structure"` - - // Environment variable key-value pairs. - Variables map[string]*string `type:"map"` -} - -// String returns the string representation -func (s AwsLambdaFunctionEnvironment) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s AwsLambdaFunctionEnvironment) GoString() string { - return s.String() -} - -// SetError sets the Error field's value. -func (s *AwsLambdaFunctionEnvironment) SetError(v *AwsLambdaFunctionEnvironmentError) *AwsLambdaFunctionEnvironment { - s.Error = v +// SetIAMDatabaseAuthenticationEnabled sets the IAMDatabaseAuthenticationEnabled field's value. +func (s *AwsRdsDbInstanceDetails) SetIAMDatabaseAuthenticationEnabled(v bool) *AwsRdsDbInstanceDetails { + s.IAMDatabaseAuthenticationEnabled = &v return s } -// SetVariables sets the Variables field's value. -func (s *AwsLambdaFunctionEnvironment) SetVariables(v map[string]*string) *AwsLambdaFunctionEnvironment { - s.Variables = v +// SetInstanceCreateTime sets the InstanceCreateTime field's value. +func (s *AwsRdsDbInstanceDetails) SetInstanceCreateTime(v string) *AwsRdsDbInstanceDetails { + s.InstanceCreateTime = &v return s } -// Error messages for environment variables that couldn't be applied. -type AwsLambdaFunctionEnvironmentError struct { - _ struct{} `type:"structure"` - - // The error code. - ErrorCode *string `type:"string"` - - // The error message. - Message *string `type:"string"` +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *AwsRdsDbInstanceDetails) SetKmsKeyId(v string) *AwsRdsDbInstanceDetails { + s.KmsKeyId = &v + return s } -// String returns the string representation -func (s AwsLambdaFunctionEnvironmentError) String() string { - return awsutil.Prettify(s) +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *AwsRdsDbInstanceDetails) SetPubliclyAccessible(v bool) *AwsRdsDbInstanceDetails { + s.PubliclyAccessible = &v + return s } -// GoString returns the string representation -func (s AwsLambdaFunctionEnvironmentError) GoString() string { - return s.String() +// SetStorageEncrypted sets the StorageEncrypted field's value. +func (s *AwsRdsDbInstanceDetails) SetStorageEncrypted(v bool) *AwsRdsDbInstanceDetails { + s.StorageEncrypted = &v + return s } -// SetErrorCode sets the ErrorCode field's value. -func (s *AwsLambdaFunctionEnvironmentError) SetErrorCode(v string) *AwsLambdaFunctionEnvironmentError { - s.ErrorCode = &v +// SetTdeCredentialArn sets the TdeCredentialArn field's value. +func (s *AwsRdsDbInstanceDetails) SetTdeCredentialArn(v string) *AwsRdsDbInstanceDetails { + s.TdeCredentialArn = &v return s } -// SetMessage sets the Message field's value. -func (s *AwsLambdaFunctionEnvironmentError) SetMessage(v string) *AwsLambdaFunctionEnvironmentError { - s.Message = &v +// SetVpcSecurityGroups sets the VpcSecurityGroups field's value. +func (s *AwsRdsDbInstanceDetails) SetVpcSecurityGroups(v []*AwsRdsDbInstanceVpcSecurityGroup) *AwsRdsDbInstanceDetails { + s.VpcSecurityGroups = v return s } -// An AWS Lambda layer. -type AwsLambdaFunctionLayer struct { +// Specifies the connection endpoint. +type AwsRdsDbInstanceEndpoint struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the function layer. - Arn *string `type:"string"` + // Specifies the DNS address of the DB instance. + Address *string `type:"string"` - // The size of the layer archive in bytes. - CodeSize *int64 `type:"integer"` + // Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. + HostedZoneId *string `type:"string"` + + // Specifies the port that the database engine is listening on. + Port *int64 `type:"integer"` } // String returns the string representation -func (s AwsLambdaFunctionLayer) String() string { +func (s AwsRdsDbInstanceEndpoint) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsLambdaFunctionLayer) GoString() string { +func (s AwsRdsDbInstanceEndpoint) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *AwsLambdaFunctionLayer) SetArn(v string) *AwsLambdaFunctionLayer { - s.Arn = &v +// SetAddress sets the Address field's value. +func (s *AwsRdsDbInstanceEndpoint) SetAddress(v string) *AwsRdsDbInstanceEndpoint { + s.Address = &v return s } -// SetCodeSize sets the CodeSize field's value. -func (s *AwsLambdaFunctionLayer) SetCodeSize(v int64) *AwsLambdaFunctionLayer { - s.CodeSize = &v +// SetHostedZoneId sets the HostedZoneId field's value. +func (s *AwsRdsDbInstanceEndpoint) SetHostedZoneId(v string) *AwsRdsDbInstanceEndpoint { + s.HostedZoneId = &v return s } -// The function's AWS X-Ray tracing configuration. -type AwsLambdaFunctionTracingConfig struct { - _ struct{} `type:"structure"` - - // The tracing mode. - Mode *string `type:"string"` -} - -// String returns the string representation -func (s AwsLambdaFunctionTracingConfig) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation -func (s AwsLambdaFunctionTracingConfig) GoString() string { - return s.String() -} - -// SetMode sets the Mode field's value. -func (s *AwsLambdaFunctionTracingConfig) SetMode(v string) *AwsLambdaFunctionTracingConfig { - s.Mode = &v +// SetPort sets the Port field's value. +func (s *AwsRdsDbInstanceEndpoint) SetPort(v int64) *AwsRdsDbInstanceEndpoint { + s.Port = &v return s } -// The VPC security groups and subnets that are attached to a Lambda function. -// For more information, see VPC Settings. -type AwsLambdaFunctionVpcConfig struct { +// A VPC security groups that the DB instance belongs to. +type AwsRdsDbInstanceVpcSecurityGroup struct { _ struct{} `type:"structure"` - // A list of VPC security groups IDs. - SecurityGroupIds []*string `type:"list"` - - // A list of VPC subnet IDs. - SubnetIds []*string `type:"list"` + // The status of the VPC security group. + Status *string `type:"string"` - // The ID of the VPC. - VpcId *string `type:"string"` + // The name of the VPC security group. + VpcSecurityGroupId *string `type:"string"` } // String returns the string representation -func (s AwsLambdaFunctionVpcConfig) String() string { +func (s AwsRdsDbInstanceVpcSecurityGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsLambdaFunctionVpcConfig) GoString() string { +func (s AwsRdsDbInstanceVpcSecurityGroup) GoString() string { return s.String() } -// SetSecurityGroupIds sets the SecurityGroupIds field's value. -func (s *AwsLambdaFunctionVpcConfig) SetSecurityGroupIds(v []*string) *AwsLambdaFunctionVpcConfig { - s.SecurityGroupIds = v - return s -} - -// SetSubnetIds sets the SubnetIds field's value. -func (s *AwsLambdaFunctionVpcConfig) SetSubnetIds(v []*string) *AwsLambdaFunctionVpcConfig { - s.SubnetIds = v +// SetStatus sets the Status field's value. +func (s *AwsRdsDbInstanceVpcSecurityGroup) SetStatus(v string) *AwsRdsDbInstanceVpcSecurityGroup { + s.Status = &v return s } -// SetVpcId sets the VpcId field's value. -func (s *AwsLambdaFunctionVpcConfig) SetVpcId(v string) *AwsLambdaFunctionVpcConfig { - s.VpcId = &v +// SetVpcSecurityGroupId sets the VpcSecurityGroupId field's value. +func (s *AwsRdsDbInstanceVpcSecurityGroup) SetVpcSecurityGroupId(v string) *AwsRdsDbInstanceVpcSecurityGroup { + s.VpcSecurityGroupId = &v return s } @@ -5370,12 +7256,13 @@ type AwsSecurityFinding struct { AwsAccountId *string `type:"string" required:"true"` // This data type is exclusive to findings that are generated as the result - // of a check run against a specific rule in a supported standard (for example, - // CIS AWS Foundations). Contains compliance-related finding details. + // of a check run against a specific rule in a supported standard, such as CIS + // AWS Foundations. Contains compliance-related finding details. Compliance *Compliance `type:"structure"` // A finding's confidence. Confidence is defined as the likelihood that a finding // accurately identifies the behavior or issue that it was intended to identify. + // // Confidence is scored on a 0-100 basis using a ratio scale, where 0 means // zero percent confidence and 100 means 100 percent confidence. Confidence *int64 `type:"integer"` @@ -5387,6 +7274,7 @@ type AwsSecurityFinding struct { CreatedAt *string `type:"string" required:"true"` // The level of importance assigned to the resources associated with the finding. + // // A score of 0 means that the underlying resources have no criticality, and // a score of 100 is reserved for the most critical resources. Criticality *int64 `type:"integer"` @@ -5471,7 +7359,7 @@ type AwsSecurityFinding struct { // provider's solution. SourceUrl *string `type:"string"` - // Threat intel details related to a finding. + // Threat intelligence details related to a finding. ThreatIntelIndicators []*ThreatIntelIndicator `type:"list"` // A finding's title. @@ -5797,12 +7685,13 @@ type AwsSecurityFindingFilters struct { CompanyName []*StringFilter `type:"list"` // Exclusive to findings that are generated as the result of a check run against - // a specific rule in a supported standard (for example, CIS AWS Foundations). - // Contains compliance-related finding details. + // a specific rule in a supported standard, such as CIS AWS Foundations. Contains + // compliance-related finding details. ComplianceStatus []*StringFilter `type:"list"` // A finding's confidence. Confidence is defined as the likelihood that a finding // accurately identifies the behavior or issue that it was intended to identify. + // // Confidence is scored on a 0-100 basis using a ratio scale, where 0 means // zero percent confidence and 100 means 100 percent confidence. Confidence []*NumberFilter `type:"list"` @@ -5812,6 +7701,7 @@ type AwsSecurityFindingFilters struct { CreatedAt []*DateFilter `type:"list"` // The level of importance assigned to the resources associated with the finding. + // // A score of 0 means that the underlying resources have no criticality, and // a score of 100 is reserved for the most critical resources. Criticality []*NumberFilter `type:"list"` @@ -5951,7 +7841,7 @@ type AwsSecurityFindingFilters struct { // The key name associated with the instance. ResourceAwsEc2InstanceKeyName []*StringFilter `type:"list"` - // The date/time the instance was launched. + // The date and time the instance was launched. ResourceAwsEc2InstanceLaunchedAt []*DateFilter `type:"list"` // The identifier of the subnet that the instance was launched in. @@ -6024,22 +7914,22 @@ type AwsSecurityFindingFilters struct { // provider's solution. SourceUrl []*StringFilter `type:"list"` - // The category of a threat intel indicator. + // The category of a threat intelligence indicator. ThreatIntelIndicatorCategory []*StringFilter `type:"list"` - // The date/time of the last observation of a threat intel indicator. + // The date/time of the last observation of a threat intelligence indicator. ThreatIntelIndicatorLastObservedAt []*DateFilter `type:"list"` - // The source of the threat intel. + // The source of the threat intelligence. ThreatIntelIndicatorSource []*StringFilter `type:"list"` - // The URL for more details from the source of the threat intel. + // The URL for more details from the source of the threat intelligence. ThreatIntelIndicatorSourceUrl []*StringFilter `type:"list"` - // The type of a threat intel indicator. + // The type of a threat intelligence indicator. ThreatIntelIndicatorType []*StringFilter `type:"list"` - // The value of a threat intel indicator. + // The value of a threat intelligence indicator. ThreatIntelIndicatorValue []*StringFilter `type:"list"` // A finding's title. @@ -6658,57 +8548,200 @@ func (s *AwsSnsTopicSubscription) SetProtocol(v string) *AwsSnsTopicSubscription return s } -// Data about a queue. -type AwsSqsQueueDetails struct { +// Data about a queue. +type AwsSqsQueueDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the dead-letter queue to which Amazon SQS + // moves messages after the value of maxReceiveCount is exceeded. + DeadLetterTargetArn *string `type:"string"` + + // The length of time, in seconds, for which Amazon SQS can reuse a data key + // to encrypt or decrypt messages before calling AWS KMS again. + KmsDataKeyReusePeriodSeconds *int64 `type:"integer"` + + // The ID of an AWS-managed customer master key (CMK) for Amazon SQS or a custom + // CMK. + KmsMasterKeyId *string `type:"string"` + + // The name of the new queue. + QueueName *string `type:"string"` +} + +// String returns the string representation +func (s AwsSqsQueueDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsSqsQueueDetails) GoString() string { + return s.String() +} + +// SetDeadLetterTargetArn sets the DeadLetterTargetArn field's value. +func (s *AwsSqsQueueDetails) SetDeadLetterTargetArn(v string) *AwsSqsQueueDetails { + s.DeadLetterTargetArn = &v + return s +} + +// SetKmsDataKeyReusePeriodSeconds sets the KmsDataKeyReusePeriodSeconds field's value. +func (s *AwsSqsQueueDetails) SetKmsDataKeyReusePeriodSeconds(v int64) *AwsSqsQueueDetails { + s.KmsDataKeyReusePeriodSeconds = &v + return s +} + +// SetKmsMasterKeyId sets the KmsMasterKeyId field's value. +func (s *AwsSqsQueueDetails) SetKmsMasterKeyId(v string) *AwsSqsQueueDetails { + s.KmsMasterKeyId = &v + return s +} + +// SetQueueName sets the QueueName field's value. +func (s *AwsSqsQueueDetails) SetQueueName(v string) *AwsSqsQueueDetails { + s.QueueName = &v + return s +} + +// Details about a WAF WebACL. +type AwsWafWebAclDetails struct { + _ struct{} `type:"structure"` + + // The action to perform if none of the Rules contained in the WebACL match. + DefaultAction *string `type:"string"` + + // A friendly name or description of the WebACL. You can't change the name of + // a WebACL after you create it. + Name *string `type:"string"` + + // An array that contains the action for each rule in a WebACL, the priority + // of the rule, and the ID of the rule. + Rules []*AwsWafWebAclRule `type:"list"` + + // A unique identifier for a WebACL. + WebAclId *string `type:"string"` +} + +// String returns the string representation +func (s AwsWafWebAclDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AwsWafWebAclDetails) GoString() string { + return s.String() +} + +// SetDefaultAction sets the DefaultAction field's value. +func (s *AwsWafWebAclDetails) SetDefaultAction(v string) *AwsWafWebAclDetails { + s.DefaultAction = &v + return s +} + +// SetName sets the Name field's value. +func (s *AwsWafWebAclDetails) SetName(v string) *AwsWafWebAclDetails { + s.Name = &v + return s +} + +// SetRules sets the Rules field's value. +func (s *AwsWafWebAclDetails) SetRules(v []*AwsWafWebAclRule) *AwsWafWebAclDetails { + s.Rules = v + return s +} + +// SetWebAclId sets the WebAclId field's value. +func (s *AwsWafWebAclDetails) SetWebAclId(v string) *AwsWafWebAclDetails { + s.WebAclId = &v + return s +} + +// Details for a rule in a WAF WebACL. +type AwsWafWebAclRule struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the dead-letter queue to which Amazon SQS - // moves messages after the value of maxReceiveCount is exceeded. - DeadLetterTargetArn *string `type:"string"` + // Specifies the action that CloudFront or AWS WAF takes when a web request + // matches the conditions in the Rule. + Action *WafAction `type:"structure"` - // The length of time, in seconds, for which Amazon SQS can reuse a data key - // to encrypt or decrypt messages before calling AWS KMS again. - KmsDataKeyReusePeriodSeconds *int64 `type:"integer"` + // Rules to exclude from a rule group. + ExcludedRules []*WafExcludedRule `type:"list"` - // The ID of an AWS-managed customer master key (CMK) for Amazon SQS or a custom - // CMK. - KmsMasterKeyId *string `type:"string"` + // Use the OverrideAction to test your RuleGroup. + // + // Any rule in a RuleGroup can potentially block a request. If you set the OverrideAction + // to None, the RuleGroup blocks a request if any individual rule in the RuleGroup + // matches the request and is configured to block that request. + // + // However, if you first want to test the RuleGroup, set the OverrideAction + // to Count. The RuleGroup then overrides any block action specified by individual + // rules contained within the group. Instead of blocking matching requests, + // those requests are counted. + // + // ActivatedRule|OverrideAction applies only when updating or adding a RuleGroup + // to a WebACL. In this case you do not use ActivatedRule|Action. For all other + // update requests, ActivatedRule|Action is used instead of ActivatedRule|OverrideAction. + OverrideAction *WafOverrideAction `type:"structure"` - // The name of the new queue. - QueueName *string `type:"string"` + // Specifies the order in which the Rules in a WebACL are evaluated. Rules with + // a lower value for Priority are evaluated before Rules with a higher value. + // The value must be a unique integer. If you add multiple Rules to a WebACL, + // the values do not need to be consecutive. + Priority *int64 `type:"integer"` + + // The identifier for a Rule. + RuleId *string `type:"string"` + + // The rule type. + // + // Valid values: REGULAR | RATE_BASED | GROUP + // + // The default is REGULAR. + Type *string `type:"string"` } // String returns the string representation -func (s AwsSqsQueueDetails) String() string { +func (s AwsWafWebAclRule) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AwsSqsQueueDetails) GoString() string { +func (s AwsWafWebAclRule) GoString() string { return s.String() } -// SetDeadLetterTargetArn sets the DeadLetterTargetArn field's value. -func (s *AwsSqsQueueDetails) SetDeadLetterTargetArn(v string) *AwsSqsQueueDetails { - s.DeadLetterTargetArn = &v +// SetAction sets the Action field's value. +func (s *AwsWafWebAclRule) SetAction(v *WafAction) *AwsWafWebAclRule { + s.Action = v return s } -// SetKmsDataKeyReusePeriodSeconds sets the KmsDataKeyReusePeriodSeconds field's value. -func (s *AwsSqsQueueDetails) SetKmsDataKeyReusePeriodSeconds(v int64) *AwsSqsQueueDetails { - s.KmsDataKeyReusePeriodSeconds = &v +// SetExcludedRules sets the ExcludedRules field's value. +func (s *AwsWafWebAclRule) SetExcludedRules(v []*WafExcludedRule) *AwsWafWebAclRule { + s.ExcludedRules = v return s } -// SetKmsMasterKeyId sets the KmsMasterKeyId field's value. -func (s *AwsSqsQueueDetails) SetKmsMasterKeyId(v string) *AwsSqsQueueDetails { - s.KmsMasterKeyId = &v +// SetOverrideAction sets the OverrideAction field's value. +func (s *AwsWafWebAclRule) SetOverrideAction(v *WafOverrideAction) *AwsWafWebAclRule { + s.OverrideAction = v return s } -// SetQueueName sets the QueueName field's value. -func (s *AwsSqsQueueDetails) SetQueueName(v string) *AwsSqsQueueDetails { - s.QueueName = &v +// SetPriority sets the Priority field's value. +func (s *AwsWafWebAclRule) SetPriority(v int64) *AwsWafWebAclRule { + s.Priority = &v + return s +} + +// SetRuleId sets the RuleId field's value. +func (s *AwsWafWebAclRule) SetRuleId(v string) *AwsWafWebAclRule { + s.RuleId = &v + return s +} + +// SetType sets the Type field's value. +func (s *AwsWafWebAclRule) SetType(v string) *AwsWafWebAclRule { + s.Type = &v return s } @@ -6781,10 +8814,6 @@ type BatchEnableStandardsInput struct { // The list of standards compliance checks to enable. // - // In this release, Security Hub supports only the CIS AWS Foundations standard. - // - // The ARN for the standard is arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0. - // // StandardsSubscriptionRequests is a required field StandardsSubscriptionRequests []*StandardsSubscriptionRequest `min:"1" type:"list" required:"true"` } @@ -6912,7 +8941,7 @@ type BatchImportFindingsOutput struct { // FailedCount is a required field FailedCount *int64 `type:"integer" required:"true"` - // The list of the findings that failed to import. + // The list of findings that failed to import. FailedFindings []*ImportFindingsError `type:"list"` // The number of findings that were successfully imported. @@ -6950,8 +8979,8 @@ func (s *BatchImportFindingsOutput) SetSuccessCount(v int64) *BatchImportFinding } // Exclusive to findings that are generated as the result of a check run against -// a specific rule in a supported standard (for example, CIS AWS Foundations). -// Contains compliance-related finding details. +// a specific rule in a supported standard, such as CIS AWS Foundations. Contains +// compliance-related finding details. // // Values include the following: // @@ -6959,10 +8988,16 @@ func (s *BatchImportFindingsOutput) SetSuccessCount(v int64) *BatchImportFinding // all evaluated resources. WARNING - Some information is missing or this // check is not supported given your configuration. FAILED - Compliance check // failed for at least one evaluated resource. NOT_AVAILABLE - Check could -// not be performed due to a service outage or API error. +// not be performed due to a service outage, API error, or because the result +// of the AWS Config evaluation was NOT_APPLICABLE. If the AWS Config evaluation +// result was NOT_APPLICABLE, then after 3 days, Security Hub automatically +// archives the finding. type Compliance struct { _ struct{} `type:"structure"` + // List of requirements that are related to a standards control. + RelatedRequirements []*string `type:"list"` + // The result of a compliance check. Status *string `type:"string" enum:"ComplianceStatus"` } @@ -6977,6 +9012,12 @@ func (s Compliance) GoString() string { return s.String() } +// SetRelatedRequirements sets the RelatedRequirements field's value. +func (s *Compliance) SetRelatedRequirements(v []*string) *Compliance { + s.RelatedRequirements = v + return s +} + // SetStatus sets the Status field's value. func (s *Compliance) SetStatus(v string) *Compliance { s.Status = &v @@ -7129,8 +9170,8 @@ type CreateInsightInput struct { _ struct{} `type:"structure"` // One or more attributes used to filter the findings included in the insight. - // Only findings that match the criteria defined in the filters are included - // in the insight. + // The insight only includes findings that match the criteria defined in the + // filters. // // Filters is a required field Filters *AwsSecurityFindingFilters `type:"structure" required:"true"` @@ -7221,8 +9262,8 @@ func (s *CreateInsightOutput) SetInsightArn(v string) *CreateInsightOutput { type CreateMembersInput struct { _ struct{} `type:"structure"` - // A list of account ID and email address pairs of the accounts to associate - // with the Security Hub master account. + // The list of accounts to associate with the Security Hub master account. For + // each account, the list includes the account ID and the email address. AccountDetails []*AccountDetails `type:"list"` } @@ -7245,8 +9286,8 @@ func (s *CreateMembersInput) SetAccountDetails(v []*AccountDetails) *CreateMembe type CreateMembersOutput struct { _ struct{} `type:"structure"` - // A list of account ID and email address pairs of the AWS accounts that weren't - // processed. + // The list of AWS accounts that were not processed. For each account, the list + // includes the account ID and the email address. UnprocessedAccounts []*Result `type:"list"` } @@ -7344,8 +9385,8 @@ func (s *DateRange) SetValue(v int64) *DateRange { type DeclineInvitationsInput struct { _ struct{} `type:"structure"` - // A list of account IDs that specify the accounts that invitations to Security - // Hub are declined from. + // The list of account IDs for the accounts from which to decline the invitations + // to Security Hub. // // AccountIds is a required field AccountIds []*string `type:"list" required:"true"` @@ -7383,8 +9424,8 @@ func (s *DeclineInvitationsInput) SetAccountIds(v []*string) *DeclineInvitations type DeclineInvitationsOutput struct { _ struct{} `type:"structure"` - // A list of account ID and email address pairs of the AWS accounts that weren't - // processed. + // The list of AWS accounts that were not processed. For each account, the list + // includes the account ID and the email address. UnprocessedAccounts []*Result `type:"list"` } @@ -7539,7 +9580,7 @@ func (s *DeleteInsightOutput) SetInsightArn(v string) *DeleteInsightOutput { type DeleteInvitationsInput struct { _ struct{} `type:"structure"` - // A list of the account IDs that sent the invitations to delete. + // The list of the account IDs that sent the invitations to delete. // // AccountIds is a required field AccountIds []*string `type:"list" required:"true"` @@ -7577,8 +9618,8 @@ func (s *DeleteInvitationsInput) SetAccountIds(v []*string) *DeleteInvitationsIn type DeleteInvitationsOutput struct { _ struct{} `type:"structure"` - // A list of account ID and email address pairs of the AWS accounts that invitations - // weren't deleted for. + // The list of AWS accounts for which the invitations were not deleted. For + // each account, the list includes the account ID and the email address. UnprocessedAccounts []*Result `type:"list"` } @@ -7601,7 +9642,7 @@ func (s *DeleteInvitationsOutput) SetUnprocessedAccounts(v []*Result) *DeleteInv type DeleteMembersInput struct { _ struct{} `type:"structure"` - // A list of account IDs of the member accounts to delete. + // The list of account IDs for the member accounts to delete. AccountIds []*string `type:"list"` } @@ -7624,8 +9665,8 @@ func (s *DeleteMembersInput) SetAccountIds(v []*string) *DeleteMembersInput { type DeleteMembersOutput struct { _ struct{} `type:"structure"` - // A list of account ID and email address pairs of the AWS accounts that weren't - // deleted. + // The list of AWS accounts that were not deleted. For each account, the list + // includes the account ID and the email address. UnprocessedAccounts []*Result `type:"list"` } @@ -7654,7 +9695,11 @@ type DescribeActionTargetsInput struct { // The maximum number of results to return. MaxResults *int64 `min:"1" type:"integer"` - // The token that is required for pagination. + // The token that is required for pagination. On your first call to the DescribeActionTargets + // operation, set the value of this parameter to NULL. + // + // For subsequent calls to the operation, to continue listing data, set the + // value of this parameter to the value returned from the previous response. NextToken *string `type:"string"` } @@ -7708,7 +9753,7 @@ type DescribeActionTargetsOutput struct { // ActionTargets is a required field ActionTargets []*ActionTarget `type:"list" required:"true"` - // The token that is required for pagination. + // The pagination token to use to request the next page of results. NextToken *string `type:"string"` } @@ -7760,7 +9805,7 @@ func (s *DescribeHubInput) SetHubArn(v string) *DescribeHubInput { type DescribeHubOutput struct { _ struct{} `type:"structure"` - // The ARN of the Hub resource retrieved. + // The ARN of the Hub resource that was retrieved. HubArn *string `type:"string"` // The date and time when Security Hub was enabled in the account. @@ -7795,7 +9840,11 @@ type DescribeProductsInput struct { // The maximum number of results to return. MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // The token that is required for pagination. + // The token that is required for pagination. On your first call to the DescribeProducts + // operation, set the value of this parameter to NULL. + // + // For subsequent calls to the operation, to continue listing data, set the + // value of this parameter to the value returned from the previous response. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` } @@ -7837,7 +9886,7 @@ func (s *DescribeProductsInput) SetNextToken(v string) *DescribeProductsInput { type DescribeProductsOutput struct { _ struct{} `type:"structure"` - // The token that is required for pagination. + // The pagination token to use to request the next page of results. NextToken *string `type:"string"` // A list of products, including details for each product. @@ -7874,9 +9923,11 @@ type DescribeStandardsControlsInput struct { // The maximum number of compliance standard controls to return. MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // For requests to get the next page of results, the pagination token that was - // returned with the previous set of results. The initial request does not include - // a pagination token. + // The token that is required for pagination. On your first call to the DescribeStandardsControls + // operation, set the value of this parameter to NULL. + // + // For subsequent calls to the operation, to continue listing data, set the + // value of this parameter to the value returned from the previous response. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` // The ARN of a resource that represents your subscription to a supported standard. @@ -7938,9 +9989,7 @@ type DescribeStandardsControlsOutput struct { // A list of compliance standards controls. Controls []*StandardsControl `type:"list"` - // If there are more compliance standards control remaining in the results, - // then this is the pagination token to use to request the next page of compliance - // standard controls. + // The pagination token to use to request the next page of results. NextToken *string `type:"string"` } @@ -7966,6 +10015,87 @@ func (s *DescribeStandardsControlsOutput) SetNextToken(v string) *DescribeStanda return s } +type DescribeStandardsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of standards to return. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The token that is required for pagination. On your first call to the DescribeStandards + // operation, set the value of this parameter to NULL. + // + // For subsequent calls to the operation, to continue listing data, set the + // value of this parameter to the value returned from the previous response. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +} + +// String returns the string representation +func (s DescribeStandardsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeStandardsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeStandardsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeStandardsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeStandardsInput) SetMaxResults(v int64) *DescribeStandardsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeStandardsInput) SetNextToken(v string) *DescribeStandardsInput { + s.NextToken = &v + return s +} + +type DescribeStandardsOutput struct { + _ struct{} `type:"structure"` + + // The pagination token to use to request the next page of results. + NextToken *string `type:"string"` + + // A list of available standards. + Standards []*Standard `type:"list"` +} + +// String returns the string representation +func (s DescribeStandardsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeStandardsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeStandardsOutput) SetNextToken(v string) *DescribeStandardsOutput { + s.NextToken = &v + return s +} + +// SetStandards sets the Standards field's value. +func (s *DescribeStandardsOutput) SetStandards(v []*Standard) *DescribeStandardsOutput { + s.Standards = v + return s +} + type DisableImportFindingsForProductInput struct { _ struct{} `type:"structure"` @@ -8231,13 +10361,14 @@ type GetEnabledStandardsInput struct { // The maximum number of results to return in the response. MaxResults *int64 `min:"1" type:"integer"` - // Paginates results. On your first call to the GetEnabledStandards operation, - // set the value of this parameter to NULL. For subsequent calls to the operation, - // fill nextToken in the request with the value of nextToken from the previous - // response to continue listing data. + // The token that is required for pagination. On your first call to the GetEnabledStandards + // operation, set the value of this parameter to NULL. + // + // For subsequent calls to the operation, to continue listing data, set the + // value of this parameter to the value returned from the previous response. NextToken *string `type:"string"` - // A list of the standards subscription ARNs for the standards to retrieve. + // The list of the standards subscription ARNs for the standards to retrieve. StandardsSubscriptionArns []*string `min:"1" type:"list"` } @@ -8288,11 +10419,11 @@ func (s *GetEnabledStandardsInput) SetStandardsSubscriptionArns(v []*string) *Ge type GetEnabledStandardsOutput struct { _ struct{} `type:"structure"` - // The token that is required for pagination. + // The pagination token to use to request the next page of results. NextToken *string `type:"string"` - // A list of StandardsSubscriptions objects that include information about the - // enabled standards. + // The list of StandardsSubscriptions objects that include information about + // the enabled standards. StandardsSubscriptions []*StandardsSubscription `type:"list"` } @@ -8321,20 +10452,21 @@ func (s *GetEnabledStandardsOutput) SetStandardsSubscriptions(v []*StandardsSubs type GetFindingsInput struct { _ struct{} `type:"structure"` - // The findings attributes used to define a condition to filter the findings - // returned. + // The finding attributes used to define a condition to filter the returned + // findings. Filters *AwsSecurityFindingFilters `type:"structure"` // The maximum number of findings to return. MaxResults *int64 `min:"1" type:"integer"` - // Paginates results. On your first call to the GetFindings operation, set the - // value of this parameter to NULL. For subsequent calls to the operation, fill - // nextToken in the request with the value of nextToken from the previous response - // to continue listing data. + // The token that is required for pagination. On your first call to the GetFindings + // operation, set the value of this parameter to NULL. + // + // For subsequent calls to the operation, to continue listing data, set the + // value of this parameter to the value returned from the previous response. NextToken *string `type:"string"` - // Findings attributes used to sort the list of findings returned. + // The finding attributes used to sort the list of returned findings. SortCriteria []*SortCriterion `type:"list"` } @@ -8393,7 +10525,7 @@ type GetFindingsOutput struct { // Findings is a required field Findings []*AwsSecurityFinding `type:"list" required:"true"` - // The token that is required for pagination. + // The pagination token to use to request the next page of results. NextToken *string `type:"string"` } @@ -8422,7 +10554,7 @@ func (s *GetFindingsOutput) SetNextToken(v string) *GetFindingsOutput { type GetInsightResultsInput struct { _ struct{} `type:"structure"` - // The ARN of the insight whose results you want to see. + // The ARN of the insight for which to return results. // // InsightArn is a required field InsightArn *string `location:"uri" locationName:"InsightArn" type:"string" required:"true"` @@ -8488,16 +10620,17 @@ func (s *GetInsightResultsOutput) SetInsightResults(v *InsightResults) *GetInsig type GetInsightsInput struct { _ struct{} `type:"structure"` - // The ARNs of the insights that you want to describe. + // The ARNs of the insights to describe. InsightArns []*string `type:"list"` - // The maximum number of items that you want in the response. + // The maximum number of items to return in the response. MaxResults *int64 `min:"1" type:"integer"` - // Paginates results. On your first call to the GetInsights operation, set the - // value of this parameter to NULL. For subsequent calls to the operation, fill - // nextToken in the request with the value of nextToken from the previous response - // to continue listing data. + // The token that is required for pagination. On your first call to the GetInsights + // operation, set the value of this parameter to NULL. + // + // For subsequent calls to the operation, to continue listing data, set the + // value of this parameter to the value returned from the previous response. NextToken *string `type:"string"` } @@ -8550,7 +10683,7 @@ type GetInsightsOutput struct { // Insights is a required field Insights []*Insight `type:"list" required:"true"` - // The token that is required for pagination. + // The pagination token to use to request the next page of results. NextToken *string `type:"string"` } @@ -8655,8 +10788,8 @@ func (s *GetMasterAccountOutput) SetMaster(v *Invitation) *GetMasterAccountOutpu type GetMembersInput struct { _ struct{} `type:"structure"` - // A list of account IDs for the Security Hub member accounts that you want - // to return the details for. + // The list of account IDs for the Security Hub member accounts to return the + // details for. // // AccountIds is a required field AccountIds []*string `type:"list" required:"true"` @@ -8694,11 +10827,11 @@ func (s *GetMembersInput) SetAccountIds(v []*string) *GetMembersInput { type GetMembersOutput struct { _ struct{} `type:"structure"` - // A list of details about the Security Hub member accounts. + // The list of details about the Security Hub member accounts. Members []*Member `type:"list"` - // A list of account ID and email address pairs of the AWS accounts that couldn't - // be processed. + // The list of AWS accounts that could not be processed. For each account, the + // list includes the account ID and the email address. UnprocessedAccounts []*Result `type:"list"` } @@ -8724,7 +10857,7 @@ func (s *GetMembersOutput) SetUnprocessedAccounts(v []*Result) *GetMembersOutput return s } -// Includes details of the list of the findings that can't be imported. +// Includes details of the list of the findings that cannot be imported. type ImportFindingsError struct { _ struct{} `type:"structure"` @@ -8777,8 +10910,8 @@ type Insight struct { _ struct{} `type:"structure"` // One or more attributes used to filter the findings included in the insight. - // Only findings that match the criteria defined in the filters are included - // in the insight. + // The insight only includes findings that match the criteria defined in the + // filters. // // Filters is a required field Filters *AwsSecurityFindingFilters `type:"structure" required:"true"` @@ -9112,7 +11245,7 @@ type Invitation struct { // The timestamp of when the invitation was sent. InvitedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` - // The current status of the association between member and master accounts. + // The current status of the association between the member and master accounts. MemberStatus *string `type:"string"` } @@ -9153,8 +11286,8 @@ func (s *Invitation) SetMemberStatus(v string) *Invitation { type InviteMembersInput struct { _ struct{} `type:"structure"` - // A list of IDs of the AWS accounts that you want to invite to Security Hub - // as members. + // The list of account IDs of the AWS accounts to invite to Security Hub as + // members. AccountIds []*string `type:"list"` } @@ -9177,8 +11310,8 @@ func (s *InviteMembersInput) SetAccountIds(v []*string) *InviteMembersInput { type InviteMembersOutput struct { _ struct{} `type:"structure"` - // A list of account ID and email address pairs of the AWS accounts that couldn't - // be processed. + // The list of AWS accounts that could not be processed. For each account, the + // list includes the account ID and the email address. UnprocessedAccounts []*Result `type:"list"` } @@ -9308,13 +11441,14 @@ func (s LimitExceededException) RequestID() string { type ListEnabledProductsForImportInput struct { _ struct{} `type:"structure"` - // The maximum number of items that you want in the response. + // The maximum number of items to return in the response. MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // Paginates results. On your first call to the ListEnabledProductsForImport - // operation, set the value of this parameter to NULL. For subsequent calls - // to the operation, fill nextToken in the request with the value of NextToken - // from the previous response to continue listing data. + // The token that is required for pagination. On your first call to the ListEnabledProductsForImport + // operation, set the value of this parameter to NULL. + // + // For subsequent calls to the operation, to continue listing data, set the + // value of this parameter to the value returned from the previous response. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` } @@ -9356,10 +11490,10 @@ func (s *ListEnabledProductsForImportInput) SetNextToken(v string) *ListEnabledP type ListEnabledProductsForImportOutput struct { _ struct{} `type:"structure"` - // The token that is required for pagination. + // The pagination token to use to request the next page of results. NextToken *string `type:"string"` - // A list of ARNs for the resources that represent your subscriptions to products. + // The list of ARNs for the resources that represent your subscriptions to products. ProductSubscriptions []*string `type:"list"` } @@ -9388,13 +11522,14 @@ func (s *ListEnabledProductsForImportOutput) SetProductSubscriptions(v []*string type ListInvitationsInput struct { _ struct{} `type:"structure"` - // The maximum number of items that you want in the response. + // The maximum number of items to return in the response. MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // Paginates results. On your first call to the ListInvitations operation, set - // the value of this parameter to NULL. For subsequent calls to the operation, - // fill nextToken in the request with the value of NextToken from the previous - // response to continue listing data. + // The token that is required for pagination. On your first call to the ListInvitations + // operation, set the value of this parameter to NULL. + // + // For subsequent calls to the operation, to continue listing data, set the + // value of this parameter to the value returned from the previous response. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` } @@ -9439,7 +11574,7 @@ type ListInvitationsOutput struct { // The details of the invitations returned by the operation. Invitations []*Invitation `type:"list"` - // The token that is required for pagination. + // The pagination token to use to request the next page of results. NextToken *string `type:"string"` } @@ -9468,20 +11603,24 @@ func (s *ListInvitationsOutput) SetNextToken(v string) *ListInvitationsOutput { type ListMembersInput struct { _ struct{} `type:"structure"` - // The maximum number of items that you want in the response. + // The maximum number of items to return in the response. MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // Paginates results. Set the value of this parameter to NULL on your first - // call to the ListMembers operation. For subsequent calls to the operation, - // fill nextToken in the request with the value of nextToken from the previous - // response to continue listing data. + // The token that is required for pagination. On your first call to the ListMembers + // operation, set the value of this parameter to NULL. + // + // For subsequent calls to the operation, to continue listing data, set the + // value of this parameter to the value returned from the previous response. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - // Specifies which member accounts the response includes based on their relationship - // status with the master account. The default value is TRUE. If onlyAssociated - // is set to TRUE, the response includes member accounts whose relationship - // status with the master is set to ENABLED or DISABLED. If onlyAssociated is - // set to FALSE, the response includes all existing member accounts. + // Specifies which member accounts to include in the response based on their + // relationship status with the master account. The default value is TRUE. + // + // If OnlyAssociated is set to TRUE, the response includes member accounts whose + // relationship status with the master is set to ENABLED or DISABLED. + // + // If OnlyAssociated is set to FALSE, the response includes all existing member + // accounts. OnlyAssociated *bool `location:"querystring" locationName:"OnlyAssociated" type:"boolean"` } @@ -9532,7 +11671,7 @@ type ListMembersOutput struct { // Member details returned by the operation. Members []*Member `type:"list"` - // The token that is required for pagination. + // The pagination token to use to request the next page of results. NextToken *string `type:"string"` } @@ -9626,9 +11765,12 @@ func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForRe type LoadBalancerState struct { _ struct{} `type:"structure"` - // The state code. The initial state of the load balancer is provisioning. After - // the load balancer is fully set up and ready to route traffic, its state is - // active. If the load balancer could not be set up, its state is failed. + // The state code. The initial state of the load balancer is provisioning. + // + // After the load balancer is fully set up and ready to route traffic, its state + // is active. + // + // If the load balancer could not be set up, its state is failed. Code *string `type:"string"` // A description of the state. @@ -10411,7 +12553,12 @@ type Resource struct { // processed. Tags map[string]*string `type:"map"` - // The type of the resource that details are provided for. + // The type of the resource that details are provided for. If possible, set + // Type to one of the supported resource types. For example, if the resource + // is an EC2 instance, then set Type to AwsEc2Instance. + // + // If the resource does not match any of the provided types, then set Type to + // Other. // // Type is a required field Type *string `type:"string" required:"true"` @@ -10543,15 +12690,37 @@ func (s ResourceConflictException) RequestID() string { } // Additional details about a resource related to a finding. +// +// To provide the details, use the object that corresponds to the resource type. +// For example, if the resource type is AwsEc2Instance, then you use the AwsEc2Instance +// object to provide the details. +// +// If the type-specific object does not contain all of the fields you want to +// populate, then you use the Other object to populate those additional fields. +// +// You also use the Other object to populate the details when the selected type +// does not have a corresponding object. type ResourceDetails struct { _ struct{} `type:"structure"` // Details about a CloudFront distribution. AwsCloudFrontDistribution *AwsCloudFrontDistributionDetails `type:"structure"` + // Details for an AWS CodeBuild project. + AwsCodeBuildProject *AwsCodeBuildProjectDetails `type:"structure"` + // Details about an Amazon EC2 instance related to a finding. AwsEc2Instance *AwsEc2InstanceDetails `type:"structure"` + // Details for an AWS EC2 network interface. + AwsEc2NetworkInterface *AwsEc2NetworkInterfaceDetails `type:"structure"` + + // Details for an EC2 security group. + AwsEc2SecurityGroup *AwsEc2SecurityGroupDetails `type:"structure"` + + // Details for an Elasticsearch domain. + AwsElasticsearchDomain *AwsElasticsearchDomainDetails `type:"structure"` + // Details about a load balancer. AwsElbv2LoadBalancer *AwsElbv2LoadBalancerDetails `type:"structure"` @@ -10567,6 +12736,12 @@ type ResourceDetails struct { // Details about a Lambda function. AwsLambdaFunction *AwsLambdaFunctionDetails `type:"structure"` + // Details for a Lambda layer version. + AwsLambdaLayerVersion *AwsLambdaLayerVersionDetails `type:"structure"` + + // Details for an RDS database instance. + AwsRdsDbInstance *AwsRdsDbInstanceDetails `type:"structure"` + // Details about an Amazon S3 Bucket related to a finding. AwsS3Bucket *AwsS3BucketDetails `type:"structure"` @@ -10576,10 +12751,22 @@ type ResourceDetails struct { // Details about an SQS queue. AwsSqsQueue *AwsSqsQueueDetails `type:"structure"` + // Details for a WAF WebACL. + AwsWafWebAcl *AwsWafWebAclDetails `type:"structure"` + // Details about a container resource related to a finding. Container *ContainerDetails `type:"structure"` - // Details about a resource that doesn't have a specific type defined. + // Details about a resource that are not available in a type-specific details + // object. Use the Other object in the following cases. + // + // * The type-specific object does not contain all of the fields that you + // want to populate. In this case, first use the type-specific object to + // populate those fields. Use the Other object to populate the fields that + // are missing from the type-specific object. + // + // * The resource type does not have a corresponding object. This includes + // resources for which the type is Other. Other map[string]*string `type:"map"` } @@ -10614,12 +12801,36 @@ func (s *ResourceDetails) SetAwsCloudFrontDistribution(v *AwsCloudFrontDistribut return s } +// SetAwsCodeBuildProject sets the AwsCodeBuildProject field's value. +func (s *ResourceDetails) SetAwsCodeBuildProject(v *AwsCodeBuildProjectDetails) *ResourceDetails { + s.AwsCodeBuildProject = v + return s +} + // SetAwsEc2Instance sets the AwsEc2Instance field's value. func (s *ResourceDetails) SetAwsEc2Instance(v *AwsEc2InstanceDetails) *ResourceDetails { s.AwsEc2Instance = v return s } +// SetAwsEc2NetworkInterface sets the AwsEc2NetworkInterface field's value. +func (s *ResourceDetails) SetAwsEc2NetworkInterface(v *AwsEc2NetworkInterfaceDetails) *ResourceDetails { + s.AwsEc2NetworkInterface = v + return s +} + +// SetAwsEc2SecurityGroup sets the AwsEc2SecurityGroup field's value. +func (s *ResourceDetails) SetAwsEc2SecurityGroup(v *AwsEc2SecurityGroupDetails) *ResourceDetails { + s.AwsEc2SecurityGroup = v + return s +} + +// SetAwsElasticsearchDomain sets the AwsElasticsearchDomain field's value. +func (s *ResourceDetails) SetAwsElasticsearchDomain(v *AwsElasticsearchDomainDetails) *ResourceDetails { + s.AwsElasticsearchDomain = v + return s +} + // SetAwsElbv2LoadBalancer sets the AwsElbv2LoadBalancer field's value. func (s *ResourceDetails) SetAwsElbv2LoadBalancer(v *AwsElbv2LoadBalancerDetails) *ResourceDetails { s.AwsElbv2LoadBalancer = v @@ -10650,6 +12861,18 @@ func (s *ResourceDetails) SetAwsLambdaFunction(v *AwsLambdaFunctionDetails) *Res return s } +// SetAwsLambdaLayerVersion sets the AwsLambdaLayerVersion field's value. +func (s *ResourceDetails) SetAwsLambdaLayerVersion(v *AwsLambdaLayerVersionDetails) *ResourceDetails { + s.AwsLambdaLayerVersion = v + return s +} + +// SetAwsRdsDbInstance sets the AwsRdsDbInstance field's value. +func (s *ResourceDetails) SetAwsRdsDbInstance(v *AwsRdsDbInstanceDetails) *ResourceDetails { + s.AwsRdsDbInstance = v + return s +} + // SetAwsS3Bucket sets the AwsS3Bucket field's value. func (s *ResourceDetails) SetAwsS3Bucket(v *AwsS3BucketDetails) *ResourceDetails { s.AwsS3Bucket = v @@ -10668,6 +12891,12 @@ func (s *ResourceDetails) SetAwsSqsQueue(v *AwsSqsQueueDetails) *ResourceDetails return s } +// SetAwsWafWebAcl sets the AwsWafWebAcl field's value. +func (s *ResourceDetails) SetAwsWafWebAcl(v *AwsWafWebAclDetails) *ResourceDetails { + s.AwsWafWebAcl = v + return s +} + // SetContainer sets the Container field's value. func (s *ResourceDetails) SetContainer(v *ContainerDetails) *ResourceDetails { s.Container = v @@ -10738,14 +12967,14 @@ func (s ResourceNotFoundException) RequestID() string { return s.respMetadata.RequestID } -// Details about the account that wasn't processed. +// Details about the account that was not processed. type Result struct { _ struct{} `type:"structure"` - // An AWS account ID of the account that wasn't be processed. + // An AWS account ID of the account that was not processed. AccountId *string `type:"string"` - // The reason that the account wasn't be processed. + // The reason that the account was not processed. ProcessingResult *string `type:"string"` } @@ -10853,6 +13082,48 @@ func (s *SortCriterion) SetSortOrder(v string) *SortCriterion { return s } +// Provides information about a specific standard. +type Standard struct { + _ struct{} `type:"structure"` + + // A description of the standard. + Description *string `type:"string"` + + // The name of the standard. + Name *string `type:"string"` + + // The ARN of a standard. + StandardsArn *string `type:"string"` +} + +// String returns the string representation +func (s Standard) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Standard) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *Standard) SetDescription(v string) *Standard { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *Standard) SetName(v string) *Standard { + s.Name = &v + return s +} + +// SetStandardsArn sets the StandardsArn field's value. +func (s *Standard) SetStandardsArn(v string) *Standard { + s.StandardsArn = &v + return s +} + // Details for an individual compliance standard control. type StandardsControl struct { _ struct{} `type:"structure"` @@ -10876,8 +13147,11 @@ type StandardsControl struct { // The reason provided for the most recent change in status for the control. DisabledReason *string `type:"string"` + // The list of requirements that are related to this control. + RelatedRequirements []*string `type:"list"` + // A link to remediation information for the control in the Security Hub user - // documentation + // documentation. RemediationUrl *string `type:"string"` // The severity of findings generated from this compliance standard control. @@ -10933,6 +13207,12 @@ func (s *StandardsControl) SetDisabledReason(v string) *StandardsControl { return s } +// SetRelatedRequirements sets the RelatedRequirements field's value. +func (s *StandardsControl) SetRelatedRequirements(v []*string) *StandardsControl { + s.RelatedRequirements = v + return s +} + // SetRemediationUrl sets the RemediationUrl field's value. func (s *StandardsControl) SetRemediationUrl(v string) *StandardsControl { s.RemediationUrl = &v @@ -10963,9 +13243,6 @@ type StandardsSubscription struct { // The ARN of a standard. // - // In this release, Security Hub supports only the CIS AWS Foundations standard, - // which uses the following ARN: arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0. - // // StandardsArn is a required field StandardsArn *string `type:"string" required:"true"` @@ -11023,11 +13300,8 @@ func (s *StandardsSubscription) SetStandardsSubscriptionArn(v string) *Standards type StandardsSubscriptionRequest struct { _ struct{} `type:"structure"` - // The ARN of the standard that you want to enable. - // - // In this release, Security Hub only supports the CIS AWS Foundations standard. - // - // Its ARN is arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0. + // The ARN of the standard that you want to enable. To view the list of available + // standards and their ARNs, use the DescribeStandards operation. // // StandardsArn is a required field StandardsArn *string `type:"string" required:"true"` @@ -11176,28 +13450,28 @@ func (s TagResourceOutput) GoString() string { return s.String() } -// Details about the threat intel related to a finding. +// Details about the threat intelligence related to a finding. type ThreatIntelIndicator struct { _ struct{} `type:"structure"` - // The category of a threat intel indicator. + // The category of a threat intelligence indicator. Category *string `type:"string" enum:"ThreatIntelIndicatorCategory"` - // The date and time when the most recent instance of a threat intel indicator - // was observed. + // The date and time when the most recent instance of a threat intelligence + // indicator was observed. LastObservedAt *string `type:"string"` - // The source of the threat intel indicator. + // The source of the threat intelligence indicator. Source *string `type:"string"` // The URL to the page or site where you can get more information about the - // threat intel indicator. + // threat intelligence indicator. SourceUrl *string `type:"string"` - // The type of a threat intel indicator. + // The type of threat intelligence indicator. Type *string `type:"string" enum:"ThreatIntelIndicatorType"` - // The value of a threat intel indicator. + // The value of a threat intelligence indicator. Value *string `type:"string"` } @@ -11622,6 +13896,93 @@ func (s UpdateStandardsControlOutput) GoString() string { return s.String() } +// Details about the action that CloudFront or AWS WAF takes when a web request +// matches the conditions in the Rule. +type WafAction struct { + _ struct{} `type:"structure"` + + // Specifies how you want AWS WAF to respond to requests that match the settings + // in a Rule. + // + // Valid settings include the following: + // + // * ALLOW - AWS WAF allows requests + // + // * BLOCK - AWS WAF blocks requests + // + // * COUNT - AWS WAF increments a counter of the requests that match all + // of the conditions in the rule. AWS WAF then continues to inspect the web + // request based on the remaining rules in the web ACL. You can't specify + // COUNT for the default action for a WebACL. + Type *string `type:"string"` +} + +// String returns the string representation +func (s WafAction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s WafAction) GoString() string { + return s.String() +} + +// SetType sets the Type field's value. +func (s *WafAction) SetType(v string) *WafAction { + s.Type = &v + return s +} + +// Details about a rule to exclude from a rule group. +type WafExcludedRule struct { + _ struct{} `type:"structure"` + + // The unique identifier for the rule to exclude from the rule group. + RuleId *string `type:"string"` +} + +// String returns the string representation +func (s WafExcludedRule) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s WafExcludedRule) GoString() string { + return s.String() +} + +// SetRuleId sets the RuleId field's value. +func (s *WafExcludedRule) SetRuleId(v string) *WafExcludedRule { + s.RuleId = &v + return s +} + +// Details about an override action for a rule. +type WafOverrideAction struct { + _ struct{} `type:"structure"` + + // COUNT overrides the action specified by the individual rule within a RuleGroup . + // + // If set to NONE, the rule's action takes place. + Type *string `type:"string"` +} + +// String returns the string representation +func (s WafOverrideAction) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s WafOverrideAction) GoString() string { + return s.String() +} + +// SetType sets the Type field's value. +func (s *WafOverrideAction) SetType(v string) *WafOverrideAction { + s.Type = &v + return s +} + const ( // AwsIamAccessKeyStatusActive is a AwsIamAccessKeyStatus enum value AwsIamAccessKeyStatusActive = "Active" diff --git a/vendor/github.com/aws/aws-sdk-go/service/securityhub/doc.go b/vendor/github.com/aws/aws-sdk-go/service/securityhub/doc.go index 114301371d9..dc49d8c86b5 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/securityhub/doc.go +++ b/vendor/github.com/aws/aws-sdk-go/service/securityhub/doc.go @@ -5,32 +5,34 @@ // // Security Hub provides you with a comprehensive view of the security state // of your AWS environment and resources. It also provides you with the compliance -// status of your environment based on CIS AWS Foundations compliance checks. -// Security Hub collects security data from AWS accounts, services, and integrated -// third-party products and helps you analyze security trends in your environment -// to identify the highest priority security issues. For more information about -// Security Hub, see the AWS Security Hub User Guide (https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html) . +// status of your environment based on controls from supported standards. Security +// Hub collects security data from AWS accounts, services, and integrated third-party +// products and helps you analyze security trends in your environment to identify +// the highest priority security issues. For more information about Security +// Hub, see the AWS Security Hub User Guide (https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html) . // // When you use operations in the Security Hub API, the requests are executed // only in the AWS Region that is currently active or in the specific AWS Region // that you specify in your request. Any configuration or settings change that // results from the operation is applied only to that Region. To make the same // change in other Regions, execute the same command for each Region to apply -// the change to. For example, if your Region is set to us-west-2, when you -// use CreateMembers to add a member account to Security Hub, the association -// of the member account with the master account is created only in the us-west-2 -// Region. Security Hub must be enabled for the member account in the same Region -// that the invite was sent from. +// the change to. // -// The following throttling limits apply to using Security Hub API operations: +// For example, if your Region is set to us-west-2, when you use CreateMembers +// to add a member account to Security Hub, the association of the member account +// with the master account is created only in the us-west-2 Region. Security +// Hub must be enabled for the member account in the same Region that the invitation +// was sent from. // -// * GetFindings - RateLimit of 3 requests per second, and a BurstLimit of -// 6 requests per second. +// The following throttling limits apply to using Security Hub API operations. // -// * UpdateFindings - RateLimit of 1 request per second, and a BurstLimit -// of 5 requests per second. +// * GetFindings - RateLimit of 3 requests per second. BurstLimit of 6 requests +// per second. // -// * All other operations - RateLimit of 10 request per second, and a BurstLimit +// * UpdateFindings - RateLimit of 1 request per second. BurstLimit of 5 +// requests per second. +// +// * All other operations - RateLimit of 10 requests per second. BurstLimit // of 30 requests per second. // // See https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26 for more information on this service. diff --git a/vendor/github.com/aws/aws-sdk-go/service/servicecatalog/api.go b/vendor/github.com/aws/aws-sdk-go/service/servicecatalog/api.go index 469e14910b5..4644fc01373 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/servicecatalog/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/servicecatalog/api.go @@ -3354,6 +3354,9 @@ func (c *ServiceCatalog) DescribeServiceActionExecutionParametersRequest(input * // DescribeServiceActionExecutionParameters API operation for AWS Service Catalog. // +// Finds the default parameters for a specific self-service action on a specific +// provisioned product and returns a map of the results to the user. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -5072,6 +5075,12 @@ func (c *ServiceCatalog) ListPortfolioAccessRequest(input *ListPortfolioAccessIn Name: opListPortfolioAccess, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"PageToken"}, + OutputTokens: []string{"NextPageToken"}, + LimitToken: "PageSize", + TruncationToken: "", + }, } if input == nil { @@ -5098,6 +5107,9 @@ func (c *ServiceCatalog) ListPortfolioAccessRequest(input *ListPortfolioAccessIn // * ResourceNotFoundException // The specified resource was not found. // +// * InvalidParametersException +// One or more parameters provided to the operation are not valid. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/servicecatalog-2015-12-10/ListPortfolioAccess func (c *ServiceCatalog) ListPortfolioAccess(input *ListPortfolioAccessInput) (*ListPortfolioAccessOutput, error) { req, out := c.ListPortfolioAccessRequest(input) @@ -5120,6 +5132,58 @@ func (c *ServiceCatalog) ListPortfolioAccessWithContext(ctx aws.Context, input * return out, req.Send() } +// ListPortfolioAccessPages iterates over the pages of a ListPortfolioAccess operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListPortfolioAccess method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListPortfolioAccess operation. +// pageNum := 0 +// err := client.ListPortfolioAccessPages(params, +// func(page *servicecatalog.ListPortfolioAccessOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *ServiceCatalog) ListPortfolioAccessPages(input *ListPortfolioAccessInput, fn func(*ListPortfolioAccessOutput, bool) bool) error { + return c.ListPortfolioAccessPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListPortfolioAccessPagesWithContext same as ListPortfolioAccessPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ServiceCatalog) ListPortfolioAccessPagesWithContext(ctx aws.Context, input *ListPortfolioAccessInput, fn func(*ListPortfolioAccessOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListPortfolioAccessInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListPortfolioAccessRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListPortfolioAccessOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListPortfolios = "ListPortfolios" // ListPortfoliosRequest generates a "aws/request.Request" representing the @@ -10175,7 +10239,7 @@ type CreateServiceActionInput struct { // // The list of parameters in JSON format. // - // For example: [{\"Name\":\"InstanceId\",\"Type\":\"TARGET\"}]. + // For example: [{\"Name\":\"InstanceId\",\"Type\":\"TARGET\"}] or [{\"Name\":\"InstanceId\",\"Type\":\"TEXT_VALUE\"}]. // // Definition is a required field Definition map[string]*string `min:"1" type:"map" required:"true"` @@ -12279,11 +12343,22 @@ func (s *DescribeRecordOutput) SetRecordOutputs(v []*RecordOutput) *DescribeReco type DescribeServiceActionExecutionParametersInput struct { _ struct{} `type:"structure"` + // The language code. + // + // * en - English (default) + // + // * jp - Japanese + // + // * zh - Chinese AcceptLanguage *string `type:"string"` + // The identifier of the provisioned product. + // // ProvisionedProductId is a required field ProvisionedProductId *string `min:"1" type:"string" required:"true"` + // The self-service action identifier. + // // ServiceActionId is a required field ServiceActionId *string `min:"1" type:"string" required:"true"` } @@ -12341,6 +12416,7 @@ func (s *DescribeServiceActionExecutionParametersInput) SetServiceActionId(v str type DescribeServiceActionExecutionParametersOutput struct { _ struct{} `type:"structure"` + // The parameters of the self-service action. ServiceActionParameters []*ExecutionParameter `type:"list"` } @@ -13143,6 +13219,11 @@ type ExecuteProvisionedProductServiceActionInput struct { // An idempotency token that uniquely identifies the execute request. ExecuteToken *string `min:"1" type:"string" idempotencyToken:"true"` + // A map of all self-service action parameters and their values. If a provided + // parameter is of a special type, such as TARGET, the provided value will override + // the default value generated by AWS Service Catalog. If the parameters field + // is not provided, no additional parameters are passed and default values will + // be used for any special parameters such as TARGET. Parameters map[string][]*string `min:"1" type:"map"` // The identifier of the provisioned product. @@ -13248,13 +13329,18 @@ func (s *ExecuteProvisionedProductServiceActionOutput) SetRecordDetail(v *Record return s } +// Details of an execution parameter value that is passed to a self-service +// action when executed on a provisioned product. type ExecutionParameter struct { _ struct{} `type:"structure"` + // The default values for the execution parameter. DefaultValues []*string `type:"list"` + // The name of the execution parameter. Name *string `min:"1" type:"string"` + // The execution parameter type. Type *string `min:"1" type:"string"` } @@ -14181,6 +14267,17 @@ type ListPortfolioAccessInput struct { // * zh - Chinese AcceptLanguage *string `type:"string"` + // The ID of an organization node the portfolio is shared with. All children + // of this node with an inherited portfolio share will be returned. + OrganizationParentId *string `min:"1" type:"string"` + + // The maximum number of items to return with this call. + PageSize *int64 `type:"integer"` + + // The page token for the next set of results. To retrieve the first set of + // results, use null. + PageToken *string `type:"string"` + // The portfolio identifier. // // PortfolioId is a required field @@ -14200,6 +14297,9 @@ func (s ListPortfolioAccessInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *ListPortfolioAccessInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListPortfolioAccessInput"} + if s.OrganizationParentId != nil && len(*s.OrganizationParentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OrganizationParentId", 1)) + } if s.PortfolioId == nil { invalidParams.Add(request.NewErrParamRequired("PortfolioId")) } @@ -14219,6 +14319,24 @@ func (s *ListPortfolioAccessInput) SetAcceptLanguage(v string) *ListPortfolioAcc return s } +// SetOrganizationParentId sets the OrganizationParentId field's value. +func (s *ListPortfolioAccessInput) SetOrganizationParentId(v string) *ListPortfolioAccessInput { + s.OrganizationParentId = &v + return s +} + +// SetPageSize sets the PageSize field's value. +func (s *ListPortfolioAccessInput) SetPageSize(v int64) *ListPortfolioAccessInput { + s.PageSize = &v + return s +} + +// SetPageToken sets the PageToken field's value. +func (s *ListPortfolioAccessInput) SetPageToken(v string) *ListPortfolioAccessInput { + s.PageToken = &v + return s +} + // SetPortfolioId sets the PortfolioId field's value. func (s *ListPortfolioAccessInput) SetPortfolioId(v string) *ListPortfolioAccessInput { s.PortfolioId = &v @@ -20019,6 +20137,9 @@ type UpdateProvisioningArtifactInput struct { AcceptLanguage *string `type:"string"` // Indicates whether the product version is active. + // + // Inactive provisioning artifacts are invisible to end users. End users cannot + // launch or update a provisioned product from an inactive provisioning artifact. Active *bool `type:"boolean"` // The updated description of the provisioning artifact. diff --git a/vendor/github.com/aws/aws-sdk-go/service/shield/api.go b/vendor/github.com/aws/aws-sdk-go/service/shield/api.go index dc532852620..3155bfa30ac 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/shield/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/shield/api.go @@ -97,7 +97,7 @@ func (c *Shield) AssociateDRTLogBucketRequest(input *AssociateDRTLogBucketInput) // // * AccessDeniedForDependencyException // In order to grant the necessary access to the DDoS Response Team, the user -// submitting AssociateDRTRole must have the iam:PassRole permission. This error +// submitting the request must have the iam:PassRole permission. This error // indicates the user did not have the appropriate permissions. For more information, // see Granting a User Permissions to Pass a Role to an AWS Service (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html). // @@ -225,7 +225,7 @@ func (c *Shield) AssociateDRTRoleRequest(input *AssociateDRTRoleInput) (req *req // // * AccessDeniedForDependencyException // In order to grant the necessary access to the DDoS Response Team, the user -// submitting AssociateDRTRole must have the iam:PassRole permission. This error +// submitting the request must have the iam:PassRole permission. This error // indicates the user did not have the appropriate permissions. For more information, // see Granting a User Permissions to Pass a Role to an AWS Service (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html). // @@ -258,6 +258,111 @@ func (c *Shield) AssociateDRTRoleWithContext(ctx aws.Context, input *AssociateDR return out, req.Send() } +const opAssociateHealthCheck = "AssociateHealthCheck" + +// AssociateHealthCheckRequest generates a "aws/request.Request" representing the +// client's request for the AssociateHealthCheck operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See AssociateHealthCheck for more information on using the AssociateHealthCheck +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the AssociateHealthCheckRequest method. +// req, resp := client.AssociateHealthCheckRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateHealthCheck +func (c *Shield) AssociateHealthCheckRequest(input *AssociateHealthCheckInput) (req *request.Request, output *AssociateHealthCheckOutput) { + op := &request.Operation{ + Name: opAssociateHealthCheck, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &AssociateHealthCheckInput{} + } + + output = &AssociateHealthCheckOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// AssociateHealthCheck API operation for AWS Shield. +// +// Adds health-based detection to the Shield Advanced protection for a resource. +// Shield Advanced health-based detection uses the health of your AWS resource +// to improve responsiveness and accuracy in attack detection and mitigation. +// +// You define the health check in Route 53 and then associate it with your Shield +// Advanced protection. For more information, see Shield Advanced Health-Based +// Detection (https://docs.aws.amazon.com/waf/latest/developerguide/ddos-overview.html#ddos-advanced-health-check-option) +// in the AWS WAF and AWS Shield Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Shield's +// API operation AssociateHealthCheck for usage and error information. +// +// Returned Error Types: +// * InternalErrorException +// Exception that indicates that a problem occurred with the service infrastructure. +// You can retry the request. +// +// * LimitsExceededException +// Exception that indicates that the operation would exceed a limit. +// +// Type is the type of limit that would be exceeded. +// +// Limit is the threshold that would be exceeded. +// +// * ResourceNotFoundException +// Exception indicating the specified resource does not exist. +// +// * InvalidParameterException +// Exception that indicates that the parameters passed to the API are invalid. +// +// * OptimisticLockException +// Exception that indicates that the protection state has been modified by another +// client. You can retry the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/AssociateHealthCheck +func (c *Shield) AssociateHealthCheck(input *AssociateHealthCheckInput) (*AssociateHealthCheckOutput, error) { + req, out := c.AssociateHealthCheckRequest(input) + return out, req.Send() +} + +// AssociateHealthCheckWithContext is the same as AssociateHealthCheck with the addition of +// the ability to pass a context and additional request options. +// +// See AssociateHealthCheck for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Shield) AssociateHealthCheckWithContext(ctx aws.Context, input *AssociateHealthCheckInput, opts ...request.Option) (*AssociateHealthCheckOutput, error) { + req, out := c.AssociateHealthCheckRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateProtection = "CreateProtection" // CreateProtectionRequest generates a "aws/request.Request" representing the @@ -1156,7 +1261,7 @@ func (c *Shield) DisassociateDRTLogBucketRequest(input *DisassociateDRTLogBucket // // * AccessDeniedForDependencyException // In order to grant the necessary access to the DDoS Response Team, the user -// submitting AssociateDRTRole must have the iam:PassRole permission. This error +// submitting the request must have the iam:PassRole permission. This error // indicates the user did not have the appropriate permissions. For more information, // see Granting a User Permissions to Pass a Role to an AWS Service (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html). // @@ -1288,6 +1393,105 @@ func (c *Shield) DisassociateDRTRoleWithContext(ctx aws.Context, input *Disassoc return out, req.Send() } +const opDisassociateHealthCheck = "DisassociateHealthCheck" + +// DisassociateHealthCheckRequest generates a "aws/request.Request" representing the +// client's request for the DisassociateHealthCheck operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DisassociateHealthCheck for more information on using the DisassociateHealthCheck +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DisassociateHealthCheckRequest method. +// req, resp := client.DisassociateHealthCheckRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateHealthCheck +func (c *Shield) DisassociateHealthCheckRequest(input *DisassociateHealthCheckInput) (req *request.Request, output *DisassociateHealthCheckOutput) { + op := &request.Operation{ + Name: opDisassociateHealthCheck, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DisassociateHealthCheckInput{} + } + + output = &DisassociateHealthCheckOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DisassociateHealthCheck API operation for AWS Shield. +// +// Removes health-based detection from the Shield Advanced protection for a +// resource. Shield Advanced health-based detection uses the health of your +// AWS resource to improve responsiveness and accuracy in attack detection and +// mitigation. +// +// You define the health check in Route 53 and then associate or disassociate +// it with your Shield Advanced protection. For more information, see Shield +// Advanced Health-Based Detection (https://docs.aws.amazon.com/waf/latest/developerguide/ddos-overview.html#ddos-advanced-health-check-option) +// in the AWS WAF and AWS Shield Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Shield's +// API operation DisassociateHealthCheck for usage and error information. +// +// Returned Error Types: +// * InternalErrorException +// Exception that indicates that a problem occurred with the service infrastructure. +// You can retry the request. +// +// * InvalidParameterException +// Exception that indicates that the parameters passed to the API are invalid. +// +// * ResourceNotFoundException +// Exception indicating the specified resource does not exist. +// +// * OptimisticLockException +// Exception that indicates that the protection state has been modified by another +// client. You can retry the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/shield-2016-06-02/DisassociateHealthCheck +func (c *Shield) DisassociateHealthCheck(input *DisassociateHealthCheckInput) (*DisassociateHealthCheckOutput, error) { + req, out := c.DisassociateHealthCheckRequest(input) + return out, req.Send() +} + +// DisassociateHealthCheckWithContext is the same as DisassociateHealthCheck with the addition of +// the ability to pass a context and additional request options. +// +// See DisassociateHealthCheck for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Shield) DisassociateHealthCheckWithContext(ctx aws.Context, input *DisassociateHealthCheckInput, opts ...request.Option) (*DisassociateHealthCheckOutput, error) { + req, out := c.DisassociateHealthCheckRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetSubscriptionState = "GetSubscriptionState" // GetSubscriptionStateRequest generates a "aws/request.Request" representing the @@ -1791,7 +1995,7 @@ func (s AccessDeniedException) RequestID() string { } // In order to grant the necessary access to the DDoS Response Team, the user -// submitting AssociateDRTRole must have the iam:PassRole permission. This error +// submitting the request must have the iam:PassRole permission. This error // indicates the user did not have the appropriate permissions. For more information, // see Granting a User Permissions to Pass a Role to an AWS Service (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html). type AccessDeniedForDependencyException struct { @@ -1965,6 +2169,80 @@ func (s AssociateDRTRoleOutput) GoString() string { return s.String() } +type AssociateHealthCheckInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the health check to associate with the + // protection. + // + // HealthCheckArn is a required field + HealthCheckArn *string `min:"1" type:"string" required:"true"` + + // The unique identifier (ID) for the Protection object to add the health check + // association to. + // + // ProtectionId is a required field + ProtectionId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s AssociateHealthCheckInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AssociateHealthCheckInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssociateHealthCheckInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssociateHealthCheckInput"} + if s.HealthCheckArn == nil { + invalidParams.Add(request.NewErrParamRequired("HealthCheckArn")) + } + if s.HealthCheckArn != nil && len(*s.HealthCheckArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("HealthCheckArn", 1)) + } + if s.ProtectionId == nil { + invalidParams.Add(request.NewErrParamRequired("ProtectionId")) + } + if s.ProtectionId != nil && len(*s.ProtectionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProtectionId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetHealthCheckArn sets the HealthCheckArn field's value. +func (s *AssociateHealthCheckInput) SetHealthCheckArn(v string) *AssociateHealthCheckInput { + s.HealthCheckArn = &v + return s +} + +// SetProtectionId sets the ProtectionId field's value. +func (s *AssociateHealthCheckInput) SetProtectionId(v string) *AssociateHealthCheckInput { + s.ProtectionId = &v + return s +} + +type AssociateHealthCheckOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s AssociateHealthCheckOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AssociateHealthCheckOutput) GoString() string { + return s.String() +} + // The details of a DDoS attack. type AttackDetail struct { _ struct{} `type:"structure"` @@ -2833,6 +3111,80 @@ func (s DisassociateDRTRoleOutput) GoString() string { return s.String() } +type DisassociateHealthCheckInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the health check that is associated with + // the protection. + // + // HealthCheckArn is a required field + HealthCheckArn *string `min:"1" type:"string" required:"true"` + + // The unique identifier (ID) for the Protection object to remove the health + // check association from. + // + // ProtectionId is a required field + ProtectionId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DisassociateHealthCheckInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DisassociateHealthCheckInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisassociateHealthCheckInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateHealthCheckInput"} + if s.HealthCheckArn == nil { + invalidParams.Add(request.NewErrParamRequired("HealthCheckArn")) + } + if s.HealthCheckArn != nil && len(*s.HealthCheckArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("HealthCheckArn", 1)) + } + if s.ProtectionId == nil { + invalidParams.Add(request.NewErrParamRequired("ProtectionId")) + } + if s.ProtectionId != nil && len(*s.ProtectionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProtectionId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetHealthCheckArn sets the HealthCheckArn field's value. +func (s *DisassociateHealthCheckInput) SetHealthCheckArn(v string) *DisassociateHealthCheckInput { + s.HealthCheckArn = &v + return s +} + +// SetProtectionId sets the ProtectionId field's value. +func (s *DisassociateHealthCheckInput) SetProtectionId(v string) *DisassociateHealthCheckInput { + s.ProtectionId = &v + return s +} + +type DisassociateHealthCheckOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s DisassociateHealthCheckOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DisassociateHealthCheckOutput) GoString() string { + return s.String() +} + // Contact information that the DRT can use to contact you during a suspected // attack. type EmergencyContact struct { @@ -3715,6 +4067,10 @@ func (s OptimisticLockException) RequestID() string { type Protection struct { _ struct{} `type:"structure"` + // The unique identifier (ID) for the Route 53 health check that's associated + // with the protection. + HealthCheckIds []*string `type:"list"` + // The unique identifier (ID) of the protection. Id *string `min:"1" type:"string"` @@ -3735,6 +4091,12 @@ func (s Protection) GoString() string { return s.String() } +// SetHealthCheckIds sets the HealthCheckIds field's value. +func (s *Protection) SetHealthCheckIds(v []*string) *Protection { + s.HealthCheckIds = v + return s +} + // SetId sets the Id field's value. func (s *Protection) SetId(v string) *Protection { s.Id = &v diff --git a/vendor/github.com/aws/aws-sdk-go/service/shield/errors.go b/vendor/github.com/aws/aws-sdk-go/service/shield/errors.go index 51626321758..a0af389f673 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/shield/errors.go +++ b/vendor/github.com/aws/aws-sdk-go/service/shield/errors.go @@ -19,7 +19,7 @@ const ( // "AccessDeniedForDependencyException". // // In order to grant the necessary access to the DDoS Response Team, the user - // submitting AssociateDRTRole must have the iam:PassRole permission. This error + // submitting the request must have the iam:PassRole permission. This error // indicates the user did not have the appropriate permissions. For more information, // see Granting a User Permissions to Pass a Role to an AWS Service (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html). ErrCodeAccessDeniedForDependencyException = "AccessDeniedForDependencyException" diff --git a/vendor/github.com/aws/aws-sdk-go/service/ssm/api.go b/vendor/github.com/aws/aws-sdk-go/service/ssm/api.go index 03cb2c8961f..989c4580f17 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ssm/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ssm/api.go @@ -1108,13 +1108,12 @@ func (c *SSM) CreateResourceDataSyncRequest(input *CreateResourceDataSyncInput) // for Inventory (http://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-inventory-datasync.html) // in the AWS Systems Manager User Guide. // -// You can configure Systems Manager Explorer to use the SyncToDestination type +// You can configure Systems Manager Explorer to use the SyncFromSource type // to synchronize operational work items (OpsItems) and operational data (OpsData) -// from multiple AWS Regions to a single Amazon S3 bucket. You can also configure -// Explorer to use the SyncFromSource type. This type synchronizes OpsItems -// and OpsData from multiple AWS accounts and Regions by using AWS Organizations. -// For more information, see Setting Up Explorer to Display Data from Multiple -// Accounts and Regions (http://docs.aws.amazon.com/systems-manager/latest/userguide/Explorer-resource-data-sync.html) +// from multiple AWS Regions to a single Amazon S3 bucket. This type can synchronize +// OpsItems and OpsData from multiple AWS accounts and Regions or EntireOrganization +// by using AWS Organizations. For more information, see Setting Up Explorer +// to Display Data from Multiple Accounts and Regions (http://docs.aws.amazon.com/systems-manager/latest/userguide/Explorer-resource-data-sync.html) // in the AWS Systems Manager User Guide. // // A resource data sync is an asynchronous operation that returns immediately. @@ -36892,9 +36891,11 @@ type PatchRule struct { // The number of days after the release date of each patch matched by the rule // that the patch is marked as approved in the patch baseline. For example, // a value of 7 means that patches are approved seven days after they are released. - // - // ApproveAfterDays is a required field - ApproveAfterDays *int64 `type:"integer" required:"true"` + ApproveAfterDays *int64 `type:"integer"` + + // The cutoff date for auto approval of released patches. Any patches released + // on or before this date will be installed automatically + ApproveUntilDate *string `min:"1" type:"string"` // A compliance severity level for all approved patches in a patch baseline. // Valid compliance severity levels include the following: Unspecified, Critical, @@ -36925,8 +36926,8 @@ func (s PatchRule) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *PatchRule) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PatchRule"} - if s.ApproveAfterDays == nil { - invalidParams.Add(request.NewErrParamRequired("ApproveAfterDays")) + if s.ApproveUntilDate != nil && len(*s.ApproveUntilDate) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ApproveUntilDate", 1)) } if s.PatchFilterGroup == nil { invalidParams.Add(request.NewErrParamRequired("PatchFilterGroup")) @@ -36949,6 +36950,12 @@ func (s *PatchRule) SetApproveAfterDays(v int64) *PatchRule { return s } +// SetApproveUntilDate sets the ApproveUntilDate field's value. +func (s *PatchRule) SetApproveUntilDate(v string) *PatchRule { + s.ApproveUntilDate = &v + return s +} + // SetComplianceLevel sets the ComplianceLevel field's value. func (s *PatchRule) SetComplianceLevel(v string) *PatchRule { s.ComplianceLevel = &v @@ -37536,7 +37543,9 @@ type PutParameterInput struct { // The fully qualified name of the parameter that you want to add to the system. // The fully qualified name includes the complete hierarchy of the parameter - // path and name. For example: /Dev/DBServer/MySQL/db-string13 + // path and name. For parameters in a hierarchy, you must include a leading + // forward slash character (/) when you create or reference a parameter. For + // example: /Dev/DBServer/MySQL/db-string13 // // Naming Constraints: // @@ -37558,10 +37567,10 @@ type PutParameterInput struct { // in the AWS Systems Manager User Guide. // // The maximum length constraint listed below includes capacity for additional - // system attributes that are not part of the name. The maximum length for the - // fully qualified parameter name is 1011 characters, including the full length - // of the parameter ARN. For example, the following fully qualified parameter - // name is 65 characters, not 20 characters: + // system attributes that are not part of the name. The maximum length for a + // parameter name, including the full length of the parameter ARN, is 1011 characters. + // For example, the length of the following parameter name is 65 characters, + // not 20 characters: // // arn:aws:ssm:us-east-2:111122223333:parameter/ExampleParameterName // @@ -39385,8 +39394,8 @@ func (s *ResourceDataSyncS3Destination) SetSyncFormat(v string) *ResourceDataSyn type ResourceDataSyncSource struct { _ struct{} `type:"structure"` - // The field name in SyncSource for the ResourceDataSyncAwsOrganizationsSource - // type. + // Information about the AwsOrganizationsSource resource data sync source. A + // sync source of this type can synchronize data from AWS Organizations. AwsOrganizationsSource *ResourceDataSyncAwsOrganizationsSource `type:"structure"` // Whether to automatically synchronize and aggregate data from new AWS Regions diff --git a/vendor/github.com/aws/aws-sdk-go/service/storagegateway/api.go b/vendor/github.com/aws/aws-sdk-go/service/storagegateway/api.go index 52480a1ba5a..43fe01b36fe 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/storagegateway/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/storagegateway/api.go @@ -18207,6 +18207,9 @@ const ( // HostEnvironmentEc2 is a HostEnvironment enum value HostEnvironmentEc2 = "EC2" + // HostEnvironmentKvm is a HostEnvironment enum value + HostEnvironmentKvm = "KVM" + // HostEnvironmentOther is a HostEnvironment enum value HostEnvironmentOther = "OTHER" ) diff --git a/vendor/github.com/aws/aws-sdk-go/service/workmail/api.go b/vendor/github.com/aws/aws-sdk-go/service/workmail/api.go index 66f8604284f..8d0f2473292 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/workmail/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/workmail/api.go @@ -300,6 +300,9 @@ func (c *WorkMail) CreateAliasRequest(input *CreateAliasInput) (req *request.Req // The organization must have a valid state (Active or Synchronizing) to perform // certain operations on the organization or its members. // +// * LimitExceededException +// The request exceeds the limit of the resource. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/CreateAlias func (c *WorkMail) CreateAlias(input *CreateAliasInput) (*CreateAliasOutput, error) { req, out := c.CreateAliasRequest(input) @@ -631,6 +634,91 @@ func (c *WorkMail) CreateUserWithContext(ctx aws.Context, input *CreateUserInput return out, req.Send() } +const opDeleteAccessControlRule = "DeleteAccessControlRule" + +// DeleteAccessControlRuleRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAccessControlRule operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteAccessControlRule for more information on using the DeleteAccessControlRule +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteAccessControlRuleRequest method. +// req, resp := client.DeleteAccessControlRuleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteAccessControlRule +func (c *WorkMail) DeleteAccessControlRuleRequest(input *DeleteAccessControlRuleInput) (req *request.Request, output *DeleteAccessControlRuleOutput) { + op := &request.Operation{ + Name: opDeleteAccessControlRule, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteAccessControlRuleInput{} + } + + output = &DeleteAccessControlRuleOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteAccessControlRule API operation for Amazon WorkMail. +// +// Deletes an access control rule for the specified WorkMail organization. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkMail's +// API operation DeleteAccessControlRule for usage and error information. +// +// Returned Error Types: +// * OrganizationNotFoundException +// An operation received a valid organization identifier that either doesn't +// belong or exist in the system. +// +// * OrganizationStateException +// The organization must have a valid state (Active or Synchronizing) to perform +// certain operations on the organization or its members. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/DeleteAccessControlRule +func (c *WorkMail) DeleteAccessControlRule(input *DeleteAccessControlRuleInput) (*DeleteAccessControlRuleOutput, error) { + req, out := c.DeleteAccessControlRuleRequest(input) + return out, req.Send() +} + +// DeleteAccessControlRuleWithContext is the same as DeleteAccessControlRule with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAccessControlRule for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WorkMail) DeleteAccessControlRuleWithContext(ctx aws.Context, input *DeleteAccessControlRuleInput, opts ...request.Option) (*DeleteAccessControlRuleOutput, error) { + req, out := c.DeleteAccessControlRuleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteAlias = "DeleteAlias" // DeleteAliasRequest generates a "aws/request.Request" representing the @@ -1778,6 +1866,98 @@ func (c *WorkMail) DisassociateMemberFromGroupWithContext(ctx aws.Context, input return out, req.Send() } +const opGetAccessControlEffect = "GetAccessControlEffect" + +// GetAccessControlEffectRequest generates a "aws/request.Request" representing the +// client's request for the GetAccessControlEffect operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetAccessControlEffect for more information on using the GetAccessControlEffect +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetAccessControlEffectRequest method. +// req, resp := client.GetAccessControlEffectRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetAccessControlEffect +func (c *WorkMail) GetAccessControlEffectRequest(input *GetAccessControlEffectInput) (req *request.Request, output *GetAccessControlEffectOutput) { + op := &request.Operation{ + Name: opGetAccessControlEffect, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetAccessControlEffectInput{} + } + + output = &GetAccessControlEffectOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAccessControlEffect API operation for Amazon WorkMail. +// +// Gets the effects of an organization's access control rules as they apply +// to a specified IPv4 address, access protocol action, or user ID. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkMail's +// API operation GetAccessControlEffect for usage and error information. +// +// Returned Error Types: +// * EntityNotFoundException +// The identifier supplied for the user, group, or resource does not exist in +// your organization. +// +// * InvalidParameterException +// One or more of the input parameters don't match the service's restrictions. +// +// * OrganizationNotFoundException +// An operation received a valid organization identifier that either doesn't +// belong or exist in the system. +// +// * OrganizationStateException +// The organization must have a valid state (Active or Synchronizing) to perform +// certain operations on the organization or its members. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/GetAccessControlEffect +func (c *WorkMail) GetAccessControlEffect(input *GetAccessControlEffectInput) (*GetAccessControlEffectOutput, error) { + req, out := c.GetAccessControlEffectRequest(input) + return out, req.Send() +} + +// GetAccessControlEffectWithContext is the same as GetAccessControlEffect with the addition of +// the ability to pass a context and additional request options. +// +// See GetAccessControlEffect for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WorkMail) GetAccessControlEffectWithContext(ctx aws.Context, input *GetAccessControlEffectInput, opts ...request.Option) (*GetAccessControlEffectOutput, error) { + req, out := c.GetAccessControlEffectRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetMailboxDetails = "GetMailboxDetails" // GetMailboxDetailsRequest generates a "aws/request.Request" representing the @@ -1866,6 +2046,90 @@ func (c *WorkMail) GetMailboxDetailsWithContext(ctx aws.Context, input *GetMailb return out, req.Send() } +const opListAccessControlRules = "ListAccessControlRules" + +// ListAccessControlRulesRequest generates a "aws/request.Request" representing the +// client's request for the ListAccessControlRules operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListAccessControlRules for more information on using the ListAccessControlRules +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListAccessControlRulesRequest method. +// req, resp := client.ListAccessControlRulesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListAccessControlRules +func (c *WorkMail) ListAccessControlRulesRequest(input *ListAccessControlRulesInput) (req *request.Request, output *ListAccessControlRulesOutput) { + op := &request.Operation{ + Name: opListAccessControlRules, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListAccessControlRulesInput{} + } + + output = &ListAccessControlRulesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAccessControlRules API operation for Amazon WorkMail. +// +// Lists the access control rules for the specified organization. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkMail's +// API operation ListAccessControlRules for usage and error information. +// +// Returned Error Types: +// * OrganizationNotFoundException +// An operation received a valid organization identifier that either doesn't +// belong or exist in the system. +// +// * OrganizationStateException +// The organization must have a valid state (Active or Synchronizing) to perform +// certain operations on the organization or its members. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListAccessControlRules +func (c *WorkMail) ListAccessControlRules(input *ListAccessControlRulesInput) (*ListAccessControlRulesOutput, error) { + req, out := c.ListAccessControlRulesRequest(input) + return out, req.Send() +} + +// ListAccessControlRulesWithContext is the same as ListAccessControlRules with the addition of +// the ability to pass a context and additional request options. +// +// See ListAccessControlRules for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WorkMail) ListAccessControlRulesWithContext(ctx aws.Context, input *ListAccessControlRulesInput, opts ...request.Option) (*ListAccessControlRulesOutput, error) { + req, out := c.ListAccessControlRulesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListAliases = "ListAliases" // ListAliasesRequest generates a "aws/request.Request" representing the @@ -2908,6 +3172,85 @@ func (c *WorkMail) ListResourcesPagesWithContext(ctx aws.Context, input *ListRes return p.Err() } +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTagsForResource for more information on using the ListTagsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListTagsForResource +func (c *WorkMail) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for Amazon WorkMail. +// +// Lists the tags applied to an Amazon WorkMail organization resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkMail's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// The resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/ListTagsForResource +func (c *WorkMail) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WorkMail) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListUsers = "ListUsers" // ListUsersRequest generates a "aws/request.Request" representing the @@ -3053,9 +3396,107 @@ func (c *WorkMail) ListUsersPagesWithContext(ctx aws.Context, input *ListUsersIn return p.Err() } -const opPutMailboxPermissions = "PutMailboxPermissions" +const opPutAccessControlRule = "PutAccessControlRule" -// PutMailboxPermissionsRequest generates a "aws/request.Request" representing the +// PutAccessControlRuleRequest generates a "aws/request.Request" representing the +// client's request for the PutAccessControlRule operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See PutAccessControlRule for more information on using the PutAccessControlRule +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the PutAccessControlRuleRequest method. +// req, resp := client.PutAccessControlRuleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/PutAccessControlRule +func (c *WorkMail) PutAccessControlRuleRequest(input *PutAccessControlRuleInput) (req *request.Request, output *PutAccessControlRuleOutput) { + op := &request.Operation{ + Name: opPutAccessControlRule, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutAccessControlRuleInput{} + } + + output = &PutAccessControlRuleOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutAccessControlRule API operation for Amazon WorkMail. +// +// Adds a new access control rule for the specified organization. The rule allows +// or denies access to the organization for the specified IPv4 addresses, access +// protocol actions, and user IDs. Adding a new rule with the same name as an +// existing rule replaces the older rule. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkMail's +// API operation PutAccessControlRule for usage and error information. +// +// Returned Error Types: +// * LimitExceededException +// The request exceeds the limit of the resource. +// +// * InvalidParameterException +// One or more of the input parameters don't match the service's restrictions. +// +// * EntityNotFoundException +// The identifier supplied for the user, group, or resource does not exist in +// your organization. +// +// * OrganizationNotFoundException +// An operation received a valid organization identifier that either doesn't +// belong or exist in the system. +// +// * OrganizationStateException +// The organization must have a valid state (Active or Synchronizing) to perform +// certain operations on the organization or its members. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/PutAccessControlRule +func (c *WorkMail) PutAccessControlRule(input *PutAccessControlRuleInput) (*PutAccessControlRuleOutput, error) { + req, out := c.PutAccessControlRuleRequest(input) + return out, req.Send() +} + +// PutAccessControlRuleWithContext is the same as PutAccessControlRule with the addition of +// the ability to pass a context and additional request options. +// +// See PutAccessControlRule for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WorkMail) PutAccessControlRuleWithContext(ctx aws.Context, input *PutAccessControlRuleInput, opts ...request.Option) (*PutAccessControlRuleOutput, error) { + req, out := c.PutAccessControlRuleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opPutMailboxPermissions = "PutMailboxPermissions" + +// PutMailboxPermissionsRequest generates a "aws/request.Request" representing the // client's request for the PutMailboxPermissions operation. The "output" return // value will be populated with the request's response once the request completes // successfully. @@ -3199,7 +3640,7 @@ func (c *WorkMail) RegisterToWorkMailRequest(input *RegisterToWorkMailInput) (re // use by associating a mailbox and calendaring capabilities. It performs no // change if the user, group, or resource is enabled and fails if the user, // group, or resource is deleted. This operation results in the accumulation -// of costs. For more information, see Pricing (https://aws.amazon.com//workmail/pricing). +// of costs. For more information, see Pricing (https://aws.amazon.com/workmail/pricing). // The equivalent console functionality for this operation is Enable. // // Users can either be created by calling the CreateUser API operation or they @@ -3384,6 +3825,175 @@ func (c *WorkMail) ResetPasswordWithContext(ctx aws.Context, input *ResetPasswor return out, req.Send() } +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/TagResource +func (c *WorkMail) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for Amazon WorkMail. +// +// Applies the specified tags to the specified Amazon WorkMail organization +// resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkMail's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// The resource cannot be found. +// +// * TooManyTagsException +// The resource can have up to 50 user-applied tags. +// +// * OrganizationStateException +// The organization must have a valid state (Active or Synchronizing) to perform +// certain operations on the organization or its members. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/TagResource +func (c *WorkMail) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WorkMail) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/UntagResource +func (c *WorkMail) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for Amazon WorkMail. +// +// Untags the specified tags from the specified Amazon WorkMail organization +// resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon WorkMail's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// The resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/workmail-2017-10-01/UntagResource +func (c *WorkMail) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *WorkMail) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateMailboxQuota = "UpdateMailboxQuota" // UpdateMailboxQuotaRequest generates a "aws/request.Request" representing the @@ -3721,6 +4331,122 @@ func (c *WorkMail) UpdateResourceWithContext(ctx aws.Context, input *UpdateResou return out, req.Send() } +// A rule that controls access to an Amazon WorkMail organization. +type AccessControlRule struct { + _ struct{} `type:"structure"` + + // Access protocol actions to include in the rule. Valid values include ActiveSync, + // AutoDiscover, EWS, IMAP, SMTP, WindowsOutlook, and WebMail. + Actions []*string `type:"list"` + + // The date that the rule was created. + DateCreated *time.Time `type:"timestamp"` + + // The date that the rule was modified. + DateModified *time.Time `type:"timestamp"` + + // The rule description. + Description *string `type:"string"` + + // The rule effect. + Effect *string `type:"string" enum:"AccessControlRuleEffect"` + + // IPv4 CIDR ranges to include in the rule. + IpRanges []*string `type:"list"` + + // The rule name. + Name *string `min:"1" type:"string"` + + // Access protocol actions to exclude from the rule. Valid values include ActiveSync, + // AutoDiscover, EWS, IMAP, SMTP, WindowsOutlook, and WebMail. + NotActions []*string `type:"list"` + + // IPv4 CIDR ranges to exclude from the rule. + NotIpRanges []*string `type:"list"` + + // User IDs to exclude from the rule. + NotUserIds []*string `type:"list"` + + // User IDs to include in the rule. + UserIds []*string `type:"list"` +} + +// String returns the string representation +func (s AccessControlRule) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AccessControlRule) GoString() string { + return s.String() +} + +// SetActions sets the Actions field's value. +func (s *AccessControlRule) SetActions(v []*string) *AccessControlRule { + s.Actions = v + return s +} + +// SetDateCreated sets the DateCreated field's value. +func (s *AccessControlRule) SetDateCreated(v time.Time) *AccessControlRule { + s.DateCreated = &v + return s +} + +// SetDateModified sets the DateModified field's value. +func (s *AccessControlRule) SetDateModified(v time.Time) *AccessControlRule { + s.DateModified = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AccessControlRule) SetDescription(v string) *AccessControlRule { + s.Description = &v + return s +} + +// SetEffect sets the Effect field's value. +func (s *AccessControlRule) SetEffect(v string) *AccessControlRule { + s.Effect = &v + return s +} + +// SetIpRanges sets the IpRanges field's value. +func (s *AccessControlRule) SetIpRanges(v []*string) *AccessControlRule { + s.IpRanges = v + return s +} + +// SetName sets the Name field's value. +func (s *AccessControlRule) SetName(v string) *AccessControlRule { + s.Name = &v + return s +} + +// SetNotActions sets the NotActions field's value. +func (s *AccessControlRule) SetNotActions(v []*string) *AccessControlRule { + s.NotActions = v + return s +} + +// SetNotIpRanges sets the NotIpRanges field's value. +func (s *AccessControlRule) SetNotIpRanges(v []*string) *AccessControlRule { + s.NotIpRanges = v + return s +} + +// SetNotUserIds sets the NotUserIds field's value. +func (s *AccessControlRule) SetNotUserIds(v []*string) *AccessControlRule { + s.NotUserIds = v + return s +} + +// SetUserIds sets the UserIds field's value. +func (s *AccessControlRule) SetUserIds(v []*string) *AccessControlRule { + s.UserIds = v + return s +} + type AssociateDelegateToResourceInput struct { _ struct{} `type:"structure"` @@ -4336,14 +5062,78 @@ func (s *Delegate) SetType(v string) *Delegate { return s } -type DeleteAliasInput struct { +type DeleteAccessControlRuleInput struct { _ struct{} `type:"structure"` - // The aliases to be removed from the user's set of aliases. Duplicate entries - // in the list are collapsed into single entries (the list is transformed into - // a set). + // The name of the access control rule. // - // Alias is a required field + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // The identifier for the organization. + OrganizationId *string `type:"string"` +} + +// String returns the string representation +func (s DeleteAccessControlRuleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteAccessControlRuleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAccessControlRuleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAccessControlRuleInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeleteAccessControlRuleInput) SetName(v string) *DeleteAccessControlRuleInput { + s.Name = &v + return s +} + +// SetOrganizationId sets the OrganizationId field's value. +func (s *DeleteAccessControlRuleInput) SetOrganizationId(v string) *DeleteAccessControlRuleInput { + s.OrganizationId = &v + return s +} + +type DeleteAccessControlRuleOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s DeleteAccessControlRuleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteAccessControlRuleOutput) GoString() string { + return s.String() +} + +type DeleteAliasInput struct { + _ struct{} `type:"structure"` + + // The aliases to be removed from the user's set of aliases. Duplicate entries + // in the list are collapsed into single entries (the list is transformed into + // a set). + // + // Alias is a required field Alias *string `min:"1" type:"string" required:"true"` // The identifier for the member (user or group) from which to have the aliases @@ -4955,6 +5745,9 @@ func (s *DescribeOrganizationInput) SetOrganizationId(v string) *DescribeOrganiz type DescribeOrganizationOutput struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the organization. + ARN *string `min:"1" type:"string"` + // The alias for an organization. Alias *string `min:"1" type:"string"` @@ -4992,6 +5785,12 @@ func (s DescribeOrganizationOutput) GoString() string { return s.String() } +// SetARN sets the ARN field's value. +func (s *DescribeOrganizationOutput) SetARN(v string) *DescribeOrganizationOutput { + s.ARN = &v + return s +} + // SetAlias sets the Alias field's value. func (s *DescribeOrganizationOutput) SetAlias(v string) *DescribeOrganizationOutput { s.Alias = &v @@ -5116,8 +5915,8 @@ type DescribeResourceOutput struct { // The identifier of the described resource. ResourceId *string `type:"string"` - // The state of the resource: enabled (registered to Amazon WorkMail) or disabled - // (deregistered or never registered to WorkMail). + // The state of the resource: enabled (registered to Amazon WorkMail), disabled + // (deregistered or never registered to WorkMail), or deleted. State *string `type:"string" enum:"EntityState"` // The type of the described resource. @@ -5840,6 +6639,128 @@ func (s EntityStateException) RequestID() string { return s.respMetadata.RequestID } +type GetAccessControlEffectInput struct { + _ struct{} `type:"structure"` + + // The access protocol action. Valid values include ActiveSync, AutoDiscover, + // EWS, IMAP, SMTP, WindowsOutlook, and WebMail. + // + // Action is a required field + Action *string `min:"1" type:"string" required:"true"` + + // The IPv4 address. + // + // IpAddress is a required field + IpAddress *string `min:"1" type:"string" required:"true"` + + // The identifier for the organization. + // + // OrganizationId is a required field + OrganizationId *string `type:"string" required:"true"` + + // The user ID. + // + // UserId is a required field + UserId *string `min:"12" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetAccessControlEffectInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetAccessControlEffectInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAccessControlEffectInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAccessControlEffectInput"} + if s.Action == nil { + invalidParams.Add(request.NewErrParamRequired("Action")) + } + if s.Action != nil && len(*s.Action) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Action", 1)) + } + if s.IpAddress == nil { + invalidParams.Add(request.NewErrParamRequired("IpAddress")) + } + if s.IpAddress != nil && len(*s.IpAddress) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IpAddress", 1)) + } + if s.OrganizationId == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationId")) + } + if s.UserId == nil { + invalidParams.Add(request.NewErrParamRequired("UserId")) + } + if s.UserId != nil && len(*s.UserId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("UserId", 12)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAction sets the Action field's value. +func (s *GetAccessControlEffectInput) SetAction(v string) *GetAccessControlEffectInput { + s.Action = &v + return s +} + +// SetIpAddress sets the IpAddress field's value. +func (s *GetAccessControlEffectInput) SetIpAddress(v string) *GetAccessControlEffectInput { + s.IpAddress = &v + return s +} + +// SetOrganizationId sets the OrganizationId field's value. +func (s *GetAccessControlEffectInput) SetOrganizationId(v string) *GetAccessControlEffectInput { + s.OrganizationId = &v + return s +} + +// SetUserId sets the UserId field's value. +func (s *GetAccessControlEffectInput) SetUserId(v string) *GetAccessControlEffectInput { + s.UserId = &v + return s +} + +type GetAccessControlEffectOutput struct { + _ struct{} `type:"structure"` + + // The rule effect. + Effect *string `type:"string" enum:"AccessControlRuleEffect"` + + // The rules that match the given parameters, resulting in an effect. + MatchedRules []*string `type:"list"` +} + +// String returns the string representation +func (s GetAccessControlEffectOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetAccessControlEffectOutput) GoString() string { + return s.String() +} + +// SetEffect sets the Effect field's value. +func (s *GetAccessControlEffectOutput) SetEffect(v string) *GetAccessControlEffectOutput { + s.Effect = &v + return s +} + +// SetMatchedRules sets the MatchedRules field's value. +func (s *GetAccessControlEffectOutput) SetMatchedRules(v []*string) *GetAccessControlEffectOutput { + s.MatchedRules = v + return s +} + type GetMailboxDetailsInput struct { _ struct{} `type:"structure"` @@ -6168,6 +7089,123 @@ func (s InvalidPasswordException) RequestID() string { return s.respMetadata.RequestID } +// The request exceeds the limit of the resource. +type LimitExceededException struct { + _ struct{} `type:"structure"` + respMetadata protocol.ResponseMetadata + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s LimitExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s LimitExceededException) GoString() string { + return s.String() +} + +func newErrorLimitExceededException(v protocol.ResponseMetadata) error { + return &LimitExceededException{ + respMetadata: v, + } +} + +// Code returns the exception type name. +func (s LimitExceededException) Code() string { + return "LimitExceededException" +} + +// Message returns the exception's message. +func (s LimitExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s LimitExceededException) OrigErr() error { + return nil +} + +func (s LimitExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s LimitExceededException) StatusCode() int { + return s.respMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s LimitExceededException) RequestID() string { + return s.respMetadata.RequestID +} + +type ListAccessControlRulesInput struct { + _ struct{} `type:"structure"` + + // The identifier for the organization. + // + // OrganizationId is a required field + OrganizationId *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s ListAccessControlRulesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListAccessControlRulesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAccessControlRulesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAccessControlRulesInput"} + if s.OrganizationId == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOrganizationId sets the OrganizationId field's value. +func (s *ListAccessControlRulesInput) SetOrganizationId(v string) *ListAccessControlRulesInput { + s.OrganizationId = &v + return s +} + +type ListAccessControlRulesOutput struct { + _ struct{} `type:"structure"` + + // The access control rules. + Rules []*AccessControlRule `type:"list"` +} + +// String returns the string representation +func (s ListAccessControlRulesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListAccessControlRulesOutput) GoString() string { + return s.String() +} + +// SetRules sets the Rules field's value. +func (s *ListAccessControlRulesOutput) SetRules(v []*AccessControlRule) *ListAccessControlRulesOutput { + s.Rules = v + return s +} + type ListAliasesInput struct { _ struct{} `type:"structure"` @@ -6898,43 +7936,33 @@ func (s *ListResourcesOutput) SetResources(v []*Resource) *ListResourcesOutput { return s } -type ListUsersInput struct { +type ListTagsForResourceInput struct { _ struct{} `type:"structure"` - // The maximum number of results to return in a single call. - MaxResults *int64 `min:"1" type:"integer"` - - // The token to use to retrieve the next page of results. The first call does - // not contain any tokens. - NextToken *string `min:"1" type:"string"` - - // The identifier for the organization under which the users exist. + // The resource ARN. // - // OrganizationId is a required field - OrganizationId *string `type:"string" required:"true"` + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` } // String returns the string representation -func (s ListUsersInput) String() string { +func (s ListTagsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListUsersInput) GoString() string { +func (s ListTagsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListUsersInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListUsersInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } - if s.NextToken != nil && len(*s.NextToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) } - if s.OrganizationId == nil { - invalidParams.Add(request.NewErrParamRequired("OrganizationId")) + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) } if invalidParams.Len() > 0 { @@ -6943,13 +7971,87 @@ func (s *ListUsersInput) Validate() error { return nil } -// SetMaxResults sets the MaxResults field's value. -func (s *ListUsersInput) SetMaxResults(v int64) *ListUsersInput { - s.MaxResults = &v +// SetResourceARN sets the ResourceARN field's value. +func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { + s.ResourceARN = &v return s } -// SetNextToken sets the NextToken field's value. +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // A list of tag key-value pairs. + Tags []*Tag `type:"list"` +} + +// String returns the string representation +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +type ListUsersInput struct { + _ struct{} `type:"structure"` + + // The maximum number of results to return in a single call. + MaxResults *int64 `min:"1" type:"integer"` + + // The token to use to retrieve the next page of results. The first call does + // not contain any tokens. + NextToken *string `min:"1" type:"string"` + + // The identifier for the organization under which the users exist. + // + // OrganizationId is a required field + OrganizationId *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s ListUsersInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListUsersInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListUsersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListUsersInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.OrganizationId == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListUsersInput) SetMaxResults(v int64) *ListUsersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. func (s *ListUsersInput) SetNextToken(v string) *ListUsersInput { s.NextToken = &v return s @@ -7455,6 +8557,159 @@ func (s *Permission) SetPermissionValues(v []*string) *Permission { return s } +type PutAccessControlRuleInput struct { + _ struct{} `type:"structure"` + + // Access protocol actions to include in the rule. Valid values include ActiveSync, + // AutoDiscover, EWS, IMAP, SMTP, WindowsOutlook, and WebMail. + Actions []*string `type:"list"` + + // The rule description. + // + // Description is a required field + Description *string `type:"string" required:"true"` + + // The rule effect. + // + // Effect is a required field + Effect *string `type:"string" required:"true" enum:"AccessControlRuleEffect"` + + // IPv4 CIDR ranges to include in the rule. + IpRanges []*string `type:"list"` + + // The rule name. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // Access protocol actions to exclude from the rule. Valid values include ActiveSync, + // AutoDiscover, EWS, IMAP, SMTP, WindowsOutlook, and WebMail. + NotActions []*string `type:"list"` + + // IPv4 CIDR ranges to exclude from the rule. + NotIpRanges []*string `type:"list"` + + // User IDs to exclude from the rule. + NotUserIds []*string `type:"list"` + + // The identifier of the organization. + // + // OrganizationId is a required field + OrganizationId *string `type:"string" required:"true"` + + // User IDs to include in the rule. + UserIds []*string `type:"list"` +} + +// String returns the string representation +func (s PutAccessControlRuleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s PutAccessControlRuleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutAccessControlRuleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutAccessControlRuleInput"} + if s.Description == nil { + invalidParams.Add(request.NewErrParamRequired("Description")) + } + if s.Effect == nil { + invalidParams.Add(request.NewErrParamRequired("Effect")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.OrganizationId == nil { + invalidParams.Add(request.NewErrParamRequired("OrganizationId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActions sets the Actions field's value. +func (s *PutAccessControlRuleInput) SetActions(v []*string) *PutAccessControlRuleInput { + s.Actions = v + return s +} + +// SetDescription sets the Description field's value. +func (s *PutAccessControlRuleInput) SetDescription(v string) *PutAccessControlRuleInput { + s.Description = &v + return s +} + +// SetEffect sets the Effect field's value. +func (s *PutAccessControlRuleInput) SetEffect(v string) *PutAccessControlRuleInput { + s.Effect = &v + return s +} + +// SetIpRanges sets the IpRanges field's value. +func (s *PutAccessControlRuleInput) SetIpRanges(v []*string) *PutAccessControlRuleInput { + s.IpRanges = v + return s +} + +// SetName sets the Name field's value. +func (s *PutAccessControlRuleInput) SetName(v string) *PutAccessControlRuleInput { + s.Name = &v + return s +} + +// SetNotActions sets the NotActions field's value. +func (s *PutAccessControlRuleInput) SetNotActions(v []*string) *PutAccessControlRuleInput { + s.NotActions = v + return s +} + +// SetNotIpRanges sets the NotIpRanges field's value. +func (s *PutAccessControlRuleInput) SetNotIpRanges(v []*string) *PutAccessControlRuleInput { + s.NotIpRanges = v + return s +} + +// SetNotUserIds sets the NotUserIds field's value. +func (s *PutAccessControlRuleInput) SetNotUserIds(v []*string) *PutAccessControlRuleInput { + s.NotUserIds = v + return s +} + +// SetOrganizationId sets the OrganizationId field's value. +func (s *PutAccessControlRuleInput) SetOrganizationId(v string) *PutAccessControlRuleInput { + s.OrganizationId = &v + return s +} + +// SetUserIds sets the UserIds field's value. +func (s *PutAccessControlRuleInput) SetUserIds(v []*string) *PutAccessControlRuleInput { + s.UserIds = v + return s +} + +type PutAccessControlRuleOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s PutAccessControlRuleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s PutAccessControlRuleOutput) GoString() string { + return s.String() +} + type PutMailboxPermissionsInput struct { _ struct{} `type:"structure"` @@ -7867,6 +9122,253 @@ func (s *Resource) SetType(v string) *Resource { return s } +// The resource cannot be found. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + respMetadata protocol.ResponseMetadata + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + respMetadata: v, + } +} + +// Code returns the exception type name. +func (s ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s ResourceNotFoundException) StatusCode() int { + return s.respMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s ResourceNotFoundException) RequestID() string { + return s.respMetadata.RequestID +} + +// Describes a tag applied to a resource. +type Tag struct { + _ struct{} `type:"structure"` + + // The key of the tag. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // The value of the tag. + // + // Value is a required field + Value *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s Tag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Tag) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *Tag) SetKey(v string) *Tag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Tag) SetValue(v string) *Tag { + s.Value = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The resource ARN. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` + + // The tag key-value pairs. + // + // Tags is a required field + Tags []*Tag `type:"list" required:"true"` +} + +// String returns the string representation +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// The resource can have up to 50 user-applied tags. +type TooManyTagsException struct { + _ struct{} `type:"structure"` + respMetadata protocol.ResponseMetadata + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s TooManyTagsException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TooManyTagsException) GoString() string { + return s.String() +} + +func newErrorTooManyTagsException(v protocol.ResponseMetadata) error { + return &TooManyTagsException{ + respMetadata: v, + } +} + +// Code returns the exception type name. +func (s TooManyTagsException) Code() string { + return "TooManyTagsException" +} + +// Message returns the exception's message. +func (s TooManyTagsException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s TooManyTagsException) OrigErr() error { + return nil +} + +func (s TooManyTagsException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s TooManyTagsException) StatusCode() int { + return s.respMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s TooManyTagsException) RequestID() string { + return s.respMetadata.RequestID +} + // You can't perform a write operation against a read-only directory. type UnsupportedOperationException struct { _ struct{} `type:"structure"` @@ -7923,6 +9425,75 @@ func (s UnsupportedOperationException) RequestID() string { return s.respMetadata.RequestID } +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The resource ARN. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` + + // The tag keys. + // + // TagKeys is a required field + TagKeys []*string `type:"list" required:"true"` +} + +// String returns the string representation +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UntagResourceOutput) GoString() string { + return s.String() +} + type UpdateMailboxQuotaInput struct { _ struct{} `type:"structure"` @@ -8271,6 +9842,14 @@ func (s *User) SetUserRole(v string) *User { return s } +const ( + // AccessControlRuleEffectAllow is a AccessControlRuleEffect enum value + AccessControlRuleEffectAllow = "ALLOW" + + // AccessControlRuleEffectDeny is a AccessControlRuleEffect enum value + AccessControlRuleEffectDeny = "DENY" +) + const ( // EntityStateEnabled is a EntityState enum value EntityStateEnabled = "ENABLED" diff --git a/vendor/github.com/aws/aws-sdk-go/service/workmail/errors.go b/vendor/github.com/aws/aws-sdk-go/service/workmail/errors.go index 56f4bff4693..1008704cc58 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/workmail/errors.go +++ b/vendor/github.com/aws/aws-sdk-go/service/workmail/errors.go @@ -68,6 +68,12 @@ const ( // as length or use of special characters. ErrCodeInvalidPasswordException = "InvalidPasswordException" + // ErrCodeLimitExceededException for service response error code + // "LimitExceededException". + // + // The request exceeds the limit of the resource. + ErrCodeLimitExceededException = "LimitExceededException" + // ErrCodeMailDomainNotFoundException for service response error code // "MailDomainNotFoundException". // @@ -108,6 +114,18 @@ const ( // This user, group, or resource name is not allowed in Amazon WorkMail. ErrCodeReservedNameException = "ReservedNameException" + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The resource cannot be found. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeTooManyTagsException for service response error code + // "TooManyTagsException". + // + // The resource can have up to 50 user-applied tags. + ErrCodeTooManyTagsException = "TooManyTagsException" + // ErrCodeUnsupportedOperationException for service response error code // "UnsupportedOperationException". // @@ -125,11 +143,14 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "InvalidConfigurationException": newErrorInvalidConfigurationException, "InvalidParameterException": newErrorInvalidParameterException, "InvalidPasswordException": newErrorInvalidPasswordException, + "LimitExceededException": newErrorLimitExceededException, "MailDomainNotFoundException": newErrorMailDomainNotFoundException, "MailDomainStateException": newErrorMailDomainStateException, "NameAvailabilityException": newErrorNameAvailabilityException, "OrganizationNotFoundException": newErrorOrganizationNotFoundException, "OrganizationStateException": newErrorOrganizationStateException, "ReservedNameException": newErrorReservedNameException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "TooManyTagsException": newErrorTooManyTagsException, "UnsupportedOperationException": newErrorUnsupportedOperationException, } diff --git a/vendor/github.com/pkg/errors/.travis.yml b/vendor/github.com/pkg/errors/.travis.yml index d4b92663bac..9159de03e03 100644 --- a/vendor/github.com/pkg/errors/.travis.yml +++ b/vendor/github.com/pkg/errors/.travis.yml @@ -1,15 +1,10 @@ language: go go_import_path: github.com/pkg/errors go: - - 1.4.x - - 1.5.x - - 1.6.x - - 1.7.x - - 1.8.x - - 1.9.x - - 1.10.x - 1.11.x + - 1.12.x + - 1.13.x - tip script: - - go test -v ./... + - make check diff --git a/vendor/github.com/pkg/errors/Makefile b/vendor/github.com/pkg/errors/Makefile new file mode 100644 index 00000000000..ce9d7cded64 --- /dev/null +++ b/vendor/github.com/pkg/errors/Makefile @@ -0,0 +1,44 @@ +PKGS := github.com/pkg/errors +SRCDIRS := $(shell go list -f '{{.Dir}}' $(PKGS)) +GO := go + +check: test vet gofmt misspell unconvert staticcheck ineffassign unparam + +test: + $(GO) test $(PKGS) + +vet: | test + $(GO) vet $(PKGS) + +staticcheck: + $(GO) get honnef.co/go/tools/cmd/staticcheck + staticcheck -checks all $(PKGS) + +misspell: + $(GO) get github.com/client9/misspell/cmd/misspell + misspell \ + -locale GB \ + -error \ + *.md *.go + +unconvert: + $(GO) get github.com/mdempsky/unconvert + unconvert -v $(PKGS) + +ineffassign: + $(GO) get github.com/gordonklaus/ineffassign + find $(SRCDIRS) -name '*.go' | xargs ineffassign + +pedantic: check errcheck + +unparam: + $(GO) get mvdan.cc/unparam + unparam ./... + +errcheck: + $(GO) get github.com/kisielk/errcheck + errcheck $(PKGS) + +gofmt: + @echo Checking code is gofmted + @test -z "$(shell gofmt -s -l -d -e $(SRCDIRS) | tee /dev/stderr)" diff --git a/vendor/github.com/pkg/errors/README.md b/vendor/github.com/pkg/errors/README.md index 6483ba2afb5..54dfdcb12ea 100644 --- a/vendor/github.com/pkg/errors/README.md +++ b/vendor/github.com/pkg/errors/README.md @@ -41,11 +41,18 @@ default: [Read the package documentation for more information](https://godoc.org/github.com/pkg/errors). +## Roadmap + +With the upcoming [Go2 error proposals](https://go.googlesource.com/proposal/+/master/design/go2draft.md) this package is moving into maintenance mode. The roadmap for a 1.0 release is as follows: + +- 0.9. Remove pre Go 1.9 and Go 1.10 support, address outstanding pull requests (if possible) +- 1.0. Final release. + ## Contributing -We welcome pull requests, bug fixes and issue reports. With that said, the bar for adding new symbols to this package is intentionally set high. +Because of the Go2 errors changes, this package is not accepting proposals for new functionality. With that said, we welcome pull requests, bug fixes and issue reports. -Before proposing a change, please discuss your change by raising an issue. +Before sending a PR, please discuss your change by raising an issue. ## License diff --git a/vendor/github.com/pkg/errors/errors.go b/vendor/github.com/pkg/errors/errors.go index 7421f326ffe..161aea25829 100644 --- a/vendor/github.com/pkg/errors/errors.go +++ b/vendor/github.com/pkg/errors/errors.go @@ -82,7 +82,7 @@ // // if err, ok := err.(stackTracer); ok { // for _, f := range err.StackTrace() { -// fmt.Printf("%+s:%d", f) +// fmt.Printf("%+s:%d\n", f, f) // } // } // @@ -159,6 +159,9 @@ type withStack struct { func (w *withStack) Cause() error { return w.error } +// Unwrap provides compatibility for Go 1.13 error chains. +func (w *withStack) Unwrap() error { return w.error } + func (w *withStack) Format(s fmt.State, verb rune) { switch verb { case 'v': @@ -241,6 +244,9 @@ type withMessage struct { func (w *withMessage) Error() string { return w.msg + ": " + w.cause.Error() } func (w *withMessage) Cause() error { return w.cause } +// Unwrap provides compatibility for Go 1.13 error chains. +func (w *withMessage) Unwrap() error { return w.cause } + func (w *withMessage) Format(s fmt.State, verb rune) { switch verb { case 'v': diff --git a/vendor/github.com/pkg/errors/go113.go b/vendor/github.com/pkg/errors/go113.go new file mode 100644 index 00000000000..be0d10d0c79 --- /dev/null +++ b/vendor/github.com/pkg/errors/go113.go @@ -0,0 +1,38 @@ +// +build go1.13 + +package errors + +import ( + stderrors "errors" +) + +// Is reports whether any error in err's chain matches target. +// +// The chain consists of err itself followed by the sequence of errors obtained by +// repeatedly calling Unwrap. +// +// An error is considered to match a target if it is equal to that target or if +// it implements a method Is(error) bool such that Is(target) returns true. +func Is(err, target error) bool { return stderrors.Is(err, target) } + +// As finds the first error in err's chain that matches target, and if so, sets +// target to that error value and returns true. +// +// The chain consists of err itself followed by the sequence of errors obtained by +// repeatedly calling Unwrap. +// +// An error matches target if the error's concrete value is assignable to the value +// pointed to by target, or if the error has a method As(interface{}) bool such that +// As(target) returns true. In the latter case, the As method is responsible for +// setting target. +// +// As will panic if target is not a non-nil pointer to either a type that implements +// error, or to any interface type. As returns false if err is nil. +func As(err error, target interface{}) bool { return stderrors.As(err, target) } + +// Unwrap returns the result of calling the Unwrap method on err, if err's +// type contains an Unwrap method returning error. +// Otherwise, Unwrap returns nil. +func Unwrap(err error) error { + return stderrors.Unwrap(err) +} diff --git a/vendor/github.com/pkg/errors/stack.go b/vendor/github.com/pkg/errors/stack.go index 2874a048cf3..779a8348fb9 100644 --- a/vendor/github.com/pkg/errors/stack.go +++ b/vendor/github.com/pkg/errors/stack.go @@ -5,10 +5,13 @@ import ( "io" "path" "runtime" + "strconv" "strings" ) // Frame represents a program counter inside a stack frame. +// For historical reasons if Frame is interpreted as a uintptr +// its value represents the program counter + 1. type Frame uintptr // pc returns the program counter for this frame; @@ -37,6 +40,15 @@ func (f Frame) line() int { return line } +// name returns the name of this function, if known. +func (f Frame) name() string { + fn := runtime.FuncForPC(f.pc()) + if fn == nil { + return "unknown" + } + return fn.Name() +} + // Format formats the frame according to the fmt.Formatter interface. // // %s source file @@ -54,22 +66,16 @@ func (f Frame) Format(s fmt.State, verb rune) { case 's': switch { case s.Flag('+'): - pc := f.pc() - fn := runtime.FuncForPC(pc) - if fn == nil { - io.WriteString(s, "unknown") - } else { - file, _ := fn.FileLine(pc) - fmt.Fprintf(s, "%s\n\t%s", fn.Name(), file) - } + io.WriteString(s, f.name()) + io.WriteString(s, "\n\t") + io.WriteString(s, f.file()) default: io.WriteString(s, path.Base(f.file())) } case 'd': - fmt.Fprintf(s, "%d", f.line()) + io.WriteString(s, strconv.Itoa(f.line())) case 'n': - name := runtime.FuncForPC(f.pc()).Name() - io.WriteString(s, funcname(name)) + io.WriteString(s, funcname(f.name())) case 'v': f.Format(s, 's') io.WriteString(s, ":") @@ -77,6 +83,16 @@ func (f Frame) Format(s fmt.State, verb rune) { } } +// MarshalText formats a stacktrace Frame as a text string. The output is the +// same as that of fmt.Sprintf("%+v", f), but without newlines or tabs. +func (f Frame) MarshalText() ([]byte, error) { + name := f.name() + if name == "unknown" { + return []byte(name), nil + } + return []byte(fmt.Sprintf("%s %s:%d", name, f.file(), f.line())), nil +} + // StackTrace is stack of Frames from innermost (newest) to outermost (oldest). type StackTrace []Frame @@ -94,16 +110,30 @@ func (st StackTrace) Format(s fmt.State, verb rune) { switch { case s.Flag('+'): for _, f := range st { - fmt.Fprintf(s, "\n%+v", f) + io.WriteString(s, "\n") + f.Format(s, verb) } case s.Flag('#'): fmt.Fprintf(s, "%#v", []Frame(st)) default: - fmt.Fprintf(s, "%v", []Frame(st)) + st.formatSlice(s, verb) } case 's': - fmt.Fprintf(s, "%s", []Frame(st)) + st.formatSlice(s, verb) + } +} + +// formatSlice will format this StackTrace into the given buffer as a slice of +// Frame, only valid when called with '%s' or '%v'. +func (st StackTrace) formatSlice(s fmt.State, verb rune) { + io.WriteString(s, "[") + for i, f := range st { + if i > 0 { + io.WriteString(s, " ") + } + f.Format(s, verb) } + io.WriteString(s, "]") } // stack represents a stack of program counters. diff --git a/vendor/golang.org/x/net/html/const.go b/vendor/golang.org/x/net/html/const.go index a3a918f0b38..73804d3472c 100644 --- a/vendor/golang.org/x/net/html/const.go +++ b/vendor/golang.org/x/net/html/const.go @@ -52,7 +52,6 @@ var isSpecialElementMap = map[string]bool{ "iframe": true, "img": true, "input": true, - "isindex": true, // The 'isindex' element has been removed, but keep it for backwards compatibility. "keygen": true, "li": true, "link": true, diff --git a/vendor/golang.org/x/net/html/foreign.go b/vendor/golang.org/x/net/html/foreign.go index 01477a96397..74774c458ae 100644 --- a/vendor/golang.org/x/net/html/foreign.go +++ b/vendor/golang.org/x/net/html/foreign.go @@ -172,7 +172,6 @@ var svgAttributeAdjustments = map[string]string{ "diffuseconstant": "diffuseConstant", "edgemode": "edgeMode", "externalresourcesrequired": "externalResourcesRequired", - "filterres": "filterRes", "filterunits": "filterUnits", "glyphref": "glyphRef", "gradienttransform": "gradientTransform", diff --git a/vendor/golang.org/x/net/html/node.go b/vendor/golang.org/x/net/html/node.go index 633ee15dc55..1350eef22c3 100644 --- a/vendor/golang.org/x/net/html/node.go +++ b/vendor/golang.org/x/net/html/node.go @@ -18,6 +18,11 @@ const ( ElementNode CommentNode DoctypeNode + // RawNode nodes are not returned by the parser, but can be part of the + // Node tree passed to func Render to insert raw HTML (without escaping). + // If so, this package makes no guarantee that the rendered HTML is secure + // (from e.g. Cross Site Scripting attacks) or well-formed. + RawNode scopeMarkerNode ) diff --git a/vendor/golang.org/x/net/html/parse.go b/vendor/golang.org/x/net/html/parse.go index 992cff2a33a..2cd12fc816e 100644 --- a/vendor/golang.org/x/net/html/parse.go +++ b/vendor/golang.org/x/net/html/parse.go @@ -184,6 +184,17 @@ func (p *parser) clearStackToContext(s scope) { } } +// parseGenericRawTextElements implements the generic raw text element parsing +// algorithm defined in 12.2.6.2. +// https://html.spec.whatwg.org/multipage/parsing.html#parsing-elements-that-contain-only-text +// TODO: Since both RAWTEXT and RCDATA states are treated as tokenizer's part +// officially, need to make tokenizer consider both states. +func (p *parser) parseGenericRawTextElement() { + p.addElement() + p.originalIM = p.im + p.im = textIM +} + // generateImpliedEndTags pops nodes off the stack of open elements as long as // the top node has a tag name of dd, dt, li, optgroup, option, p, rb, rp, rt or rtc. // If exceptions are specified, nodes with that name will not be popped off. @@ -192,16 +203,17 @@ func (p *parser) generateImpliedEndTags(exceptions ...string) { loop: for i = len(p.oe) - 1; i >= 0; i-- { n := p.oe[i] - if n.Type == ElementNode { - switch n.DataAtom { - case a.Dd, a.Dt, a.Li, a.Optgroup, a.Option, a.P, a.Rb, a.Rp, a.Rt, a.Rtc: - for _, except := range exceptions { - if n.Data == except { - break loop - } + if n.Type != ElementNode { + break + } + switch n.DataAtom { + case a.Dd, a.Dt, a.Li, a.Optgroup, a.Option, a.P, a.Rb, a.Rp, a.Rt, a.Rtc: + for _, except := range exceptions { + if n.Data == except { + break loop } - continue } + continue } break } @@ -369,8 +381,7 @@ findIdenticalElements: // Section 12.2.4.3. func (p *parser) clearActiveFormattingElements() { for { - n := p.afe.pop() - if len(p.afe) == 0 || n.Type == scopeMarkerNode { + if n := p.afe.pop(); len(p.afe) == 0 || n.Type == scopeMarkerNode { return } } @@ -625,25 +636,29 @@ func inHeadIM(p *parser) bool { switch p.tok.DataAtom { case a.Html: return inBodyIM(p) - case a.Base, a.Basefont, a.Bgsound, a.Command, a.Link, a.Meta: + case a.Base, a.Basefont, a.Bgsound, a.Link, a.Meta: p.addElement() p.oe.pop() p.acknowledgeSelfClosingTag() return true case a.Noscript: - p.addElement() if p.scripting { - p.setOriginalIM() - p.im = textIM - } else { - p.im = inHeadNoscriptIM + p.parseGenericRawTextElement() + return true } + p.addElement() + p.im = inHeadNoscriptIM + // Don't let the tokenizer go into raw text mode when scripting is disabled. + p.tokenizer.NextIsNotRawText() return true - case a.Script, a.Title, a.Noframes, a.Style: + case a.Script, a.Title: p.addElement() p.setOriginalIM() p.im = textIM return true + case a.Noframes, a.Style: + p.parseGenericRawTextElement() + return true case a.Head: // Ignore the token. return true @@ -855,7 +870,7 @@ func inBodyIM(p *parser) bool { return true } copyAttributes(p.oe[0], p.tok) - case a.Base, a.Basefont, a.Bgsound, a.Command, a.Link, a.Meta, a.Noframes, a.Script, a.Style, a.Template, a.Title: + case a.Base, a.Basefont, a.Bgsound, a.Link, a.Meta, a.Noframes, a.Script, a.Style, a.Template, a.Title: return inHeadIM(p) case a.Body: if p.oe.contains(a.Template) { @@ -881,7 +896,7 @@ func inBodyIM(p *parser) bool { p.addElement() p.im = inFramesetIM return true - case a.Address, a.Article, a.Aside, a.Blockquote, a.Center, a.Details, a.Dir, a.Div, a.Dl, a.Fieldset, a.Figcaption, a.Figure, a.Footer, a.Header, a.Hgroup, a.Menu, a.Nav, a.Ol, a.P, a.Section, a.Summary, a.Ul: + case a.Address, a.Article, a.Aside, a.Blockquote, a.Center, a.Details, a.Dialog, a.Dir, a.Div, a.Dl, a.Fieldset, a.Figcaption, a.Figure, a.Footer, a.Header, a.Hgroup, a.Main, a.Menu, a.Nav, a.Ol, a.P, a.Section, a.Summary, a.Ul: p.popUntil(buttonScope, a.P) p.addElement() case a.H1, a.H2, a.H3, a.H4, a.H5, a.H6: @@ -1014,53 +1029,6 @@ func inBodyIM(p *parser) bool { p.tok.DataAtom = a.Img p.tok.Data = a.Img.String() return false - case a.Isindex: - if p.form != nil { - // Ignore the token. - return true - } - action := "" - prompt := "This is a searchable index. Enter search keywords: " - attr := []Attribute{{Key: "name", Val: "isindex"}} - for _, t := range p.tok.Attr { - switch t.Key { - case "action": - action = t.Val - case "name": - // Ignore the attribute. - case "prompt": - prompt = t.Val - default: - attr = append(attr, t) - } - } - p.acknowledgeSelfClosingTag() - p.popUntil(buttonScope, a.P) - p.parseImpliedToken(StartTagToken, a.Form, a.Form.String()) - if p.form == nil { - // NOTE: The 'isindex' element has been removed, - // and the 'template' element has not been designed to be - // collaborative with the index element. - // - // Ignore the token. - return true - } - if action != "" { - p.form.Attr = []Attribute{{Key: "action", Val: action}} - } - p.parseImpliedToken(StartTagToken, a.Hr, a.Hr.String()) - p.parseImpliedToken(StartTagToken, a.Label, a.Label.String()) - p.addText(prompt) - p.addChild(&Node{ - Type: ElementNode, - DataAtom: a.Input, - Data: a.Input.String(), - Attr: attr, - }) - p.oe.pop() - p.parseImpliedToken(EndTagToken, a.Label, a.Label.String()) - p.parseImpliedToken(StartTagToken, a.Hr, a.Hr.String()) - p.parseImpliedToken(EndTagToken, a.Form, a.Form.String()) case a.Textarea: p.addElement() p.setOriginalIM() @@ -1070,18 +1038,21 @@ func inBodyIM(p *parser) bool { p.popUntil(buttonScope, a.P) p.reconstructActiveFormattingElements() p.framesetOK = false - p.addElement() - p.setOriginalIM() - p.im = textIM + p.parseGenericRawTextElement() case a.Iframe: p.framesetOK = false + p.parseGenericRawTextElement() + case a.Noembed: + p.parseGenericRawTextElement() + case a.Noscript: + if p.scripting { + p.parseGenericRawTextElement() + return true + } + p.reconstructActiveFormattingElements() p.addElement() - p.setOriginalIM() - p.im = textIM - case a.Noembed, a.Noscript: - p.addElement() - p.setOriginalIM() - p.im = textIM + // Don't let the tokenizer go into raw text mode when scripting is disabled. + p.tokenizer.NextIsNotRawText() case a.Select: p.reconstructActiveFormattingElements() p.addElement() @@ -1137,7 +1108,7 @@ func inBodyIM(p *parser) bool { return false } return true - case a.Address, a.Article, a.Aside, a.Blockquote, a.Button, a.Center, a.Details, a.Dir, a.Div, a.Dl, a.Fieldset, a.Figcaption, a.Figure, a.Footer, a.Header, a.Hgroup, a.Listing, a.Menu, a.Nav, a.Ol, a.Pre, a.Section, a.Summary, a.Ul: + case a.Address, a.Article, a.Aside, a.Blockquote, a.Button, a.Center, a.Details, a.Dialog, a.Dir, a.Div, a.Dl, a.Fieldset, a.Figcaption, a.Figure, a.Footer, a.Header, a.Hgroup, a.Listing, a.Main, a.Menu, a.Nav, a.Ol, a.Pre, a.Section, a.Summary, a.Ul: p.popUntil(defaultScope, p.tok.DataAtom) case a.Form: if p.oe.contains(a.Template) { @@ -1198,14 +1169,13 @@ func inBodyIM(p *parser) bool { if len(p.templateStack) > 0 { p.im = inTemplateIM return false - } else { - for _, e := range p.oe { - switch e.DataAtom { - case a.Dd, a.Dt, a.Li, a.Optgroup, a.Option, a.P, a.Rb, a.Rp, a.Rt, a.Rtc, a.Tbody, a.Td, a.Tfoot, a.Th, - a.Thead, a.Tr, a.Body, a.Html: - default: - return true - } + } + for _, e := range p.oe { + switch e.DataAtom { + case a.Dd, a.Dt, a.Li, a.Optgroup, a.Option, a.P, a.Rb, a.Rp, a.Rt, a.Rtc, a.Tbody, a.Td, a.Tfoot, a.Th, + a.Thead, a.Tr, a.Body, a.Html: + default: + return true } } } @@ -1221,9 +1191,15 @@ func (p *parser) inBodyEndTagFormatting(tagAtom a.Atom, tagName string) { // Once the code successfully parses the comprehensive test suite, we should // refactor this code to be more idiomatic. - // Steps 1-4. The outer loop. + // Steps 1-2 + if current := p.oe.top(); current.Data == tagName && p.afe.index(current) == -1 { + p.oe.pop() + return + } + + // Steps 3-5. The outer loop. for i := 0; i < 8; i++ { - // Step 5. Find the formatting element. + // Step 6. Find the formatting element. var formattingElement *Node for j := len(p.afe) - 1; j >= 0; j-- { if p.afe[j].Type == scopeMarkerNode { @@ -1238,17 +1214,22 @@ func (p *parser) inBodyEndTagFormatting(tagAtom a.Atom, tagName string) { p.inBodyEndTagOther(tagAtom, tagName) return } + + // Step 7. Ignore the tag if formatting element is not in the stack of open elements. feIndex := p.oe.index(formattingElement) if feIndex == -1 { p.afe.remove(formattingElement) return } + // Step 8. Ignore the tag if formatting element is not in the scope. if !p.elementInScope(defaultScope, tagAtom) { // Ignore the tag. return } - // Steps 9-10. Find the furthest block. + // Step 9. This step is omitted because it's just a parse error but no need to return. + + // Steps 10-11. Find the furthest block. var furthestBlock *Node for _, e := range p.oe[feIndex:] { if isSpecialElement(e) { @@ -1265,47 +1246,65 @@ func (p *parser) inBodyEndTagFormatting(tagAtom a.Atom, tagName string) { return } - // Steps 11-12. Find the common ancestor and bookmark node. + // Steps 12-13. Find the common ancestor and bookmark node. commonAncestor := p.oe[feIndex-1] bookmark := p.afe.index(formattingElement) - // Step 13. The inner loop. Find the lastNode to reparent. + // Step 14. The inner loop. Find the lastNode to reparent. lastNode := furthestBlock node := furthestBlock x := p.oe.index(node) - // Steps 13.1-13.2 - for j := 0; j < 3; j++ { - // Step 13.3. + // Step 14.1. + j := 0 + for { + // Step 14.2. + j++ + // Step. 14.3. x-- node = p.oe[x] - // Step 13.4 - 13.5. + // Step 14.4. Go to the next step if node is formatting element. + if node == formattingElement { + break + } + // Step 14.5. Remove node from the list of active formatting elements if + // inner loop counter is greater than three and node is in the list of + // active formatting elements. + if ni := p.afe.index(node); j > 3 && ni > -1 { + p.afe.remove(node) + // If any element of the list of active formatting elements is removed, + // we need to take care whether bookmark should be decremented or not. + // This is because the value of bookmark may exceed the size of the + // list by removing elements from the list. + if ni <= bookmark { + bookmark-- + } + continue + } + // Step 14.6. Continue the next inner loop if node is not in the list of + // active formatting elements. if p.afe.index(node) == -1 { p.oe.remove(node) continue } - // Step 13.6. - if node == formattingElement { - break - } - // Step 13.7. + // Step 14.7. clone := node.clone() p.afe[p.afe.index(node)] = clone p.oe[p.oe.index(node)] = clone node = clone - // Step 13.8. + // Step 14.8. if lastNode == furthestBlock { bookmark = p.afe.index(node) + 1 } - // Step 13.9. + // Step 14.9. if lastNode.Parent != nil { lastNode.Parent.RemoveChild(lastNode) } node.AppendChild(lastNode) - // Step 13.10. + // Step 14.10. lastNode = node } - // Step 14. Reparent lastNode to the common ancestor, + // Step 15. Reparent lastNode to the common ancestor, // or for misnested table nodes, to the foster parent. if lastNode.Parent != nil { lastNode.Parent.RemoveChild(lastNode) @@ -1317,13 +1316,13 @@ func (p *parser) inBodyEndTagFormatting(tagAtom a.Atom, tagName string) { commonAncestor.AppendChild(lastNode) } - // Steps 15-17. Reparent nodes from the furthest block's children + // Steps 16-18. Reparent nodes from the furthest block's children // to a clone of the formatting element. clone := formattingElement.clone() reparentChildren(clone, furthestBlock) furthestBlock.AppendChild(clone) - // Step 18. Fix up the list of active formatting elements. + // Step 19. Fix up the list of active formatting elements. if oldLoc := p.afe.index(formattingElement); oldLoc != -1 && oldLoc < bookmark { // Move the bookmark with the rest of the list. bookmark-- @@ -1331,7 +1330,7 @@ func (p *parser) inBodyEndTagFormatting(tagAtom a.Atom, tagName string) { p.afe.remove(formattingElement) p.afe.insert(bookmark, clone) - // Step 19. Fix up the stack of open elements. + // Step 20. Fix up the stack of open elements. p.oe.remove(formattingElement) p.oe.insert(p.oe.index(furthestBlock)+1, clone) } @@ -1502,14 +1501,13 @@ func inCaptionIM(p *parser) bool { case StartTagToken: switch p.tok.DataAtom { case a.Caption, a.Col, a.Colgroup, a.Tbody, a.Td, a.Tfoot, a.Thead, a.Tr: - if p.popUntil(tableScope, a.Caption) { - p.clearActiveFormattingElements() - p.im = inTableIM - return false - } else { + if !p.popUntil(tableScope, a.Caption) { // Ignore the token. return true } + p.clearActiveFormattingElements() + p.im = inTableIM + return false case a.Select: p.reconstructActiveFormattingElements() p.addElement() @@ -1526,14 +1524,13 @@ func inCaptionIM(p *parser) bool { } return true case a.Table: - if p.popUntil(tableScope, a.Caption) { - p.clearActiveFormattingElements() - p.im = inTableIM - return false - } else { + if !p.popUntil(tableScope, a.Caption) { // Ignore the token. return true } + p.clearActiveFormattingElements() + p.im = inTableIM + return false case a.Body, a.Col, a.Colgroup, a.Html, a.Tbody, a.Td, a.Tfoot, a.Th, a.Thead, a.Tr: // Ignore the token. return true @@ -1777,12 +1774,11 @@ func inSelectIM(p *parser) bool { } p.addElement() case a.Select: - if p.popUntil(selectScope, a.Select) { - p.resetInsertionMode() - } else { + if !p.popUntil(selectScope, a.Select) { // Ignore the token. return true } + p.resetInsertionMode() case a.Input, a.Keygen, a.Textarea: if p.elementInScope(selectScope, a.Select) { p.parseImpliedToken(EndTagToken, a.Select, a.Select.String()) @@ -1810,12 +1806,11 @@ func inSelectIM(p *parser) bool { p.oe = p.oe[:i] } case a.Select: - if p.popUntil(selectScope, a.Select) { - p.resetInsertionMode() - } else { + if !p.popUntil(selectScope, a.Select) { // Ignore the token. return true } + p.resetInsertionMode() case a.Template: return inHeadIM(p) } @@ -2136,28 +2131,31 @@ func parseForeignContent(p *parser) bool { Data: p.tok.Data, }) case StartTagToken: - b := breakout[p.tok.Data] - if p.tok.DataAtom == a.Font { - loop: - for _, attr := range p.tok.Attr { - switch attr.Key { - case "color", "face", "size": - b = true - break loop + if !p.fragment { + b := breakout[p.tok.Data] + if p.tok.DataAtom == a.Font { + loop: + for _, attr := range p.tok.Attr { + switch attr.Key { + case "color", "face", "size": + b = true + break loop + } } } - } - if b { - for i := len(p.oe) - 1; i >= 0; i-- { - n := p.oe[i] - if n.Namespace == "" || htmlIntegrationPoint(n) || mathMLTextIntegrationPoint(n) { - p.oe = p.oe[:i+1] - break + if b { + for i := len(p.oe) - 1; i >= 0; i-- { + n := p.oe[i] + if n.Namespace == "" || htmlIntegrationPoint(n) || mathMLTextIntegrationPoint(n) { + p.oe = p.oe[:i+1] + break + } } + return false } - return false } - switch p.top().Namespace { + current := p.adjustedCurrentNode() + switch current.Namespace { case "math": adjustAttributeNames(p.tok.Attr, mathMLAttributeAdjustments) case "svg": @@ -2172,7 +2170,7 @@ func parseForeignContent(p *parser) bool { panic("html: bad parser state: unexpected namespace") } adjustForeignAttributes(p.tok.Attr) - namespace := p.top().Namespace + namespace := current.Namespace p.addElement() p.top().Namespace = namespace if namespace != "" { @@ -2201,12 +2199,20 @@ func parseForeignContent(p *parser) bool { return true } +// Section 12.2.4.2. +func (p *parser) adjustedCurrentNode() *Node { + if len(p.oe) == 1 && p.fragment && p.context != nil { + return p.context + } + return p.oe.top() +} + // Section 12.2.6. func (p *parser) inForeignContent() bool { if len(p.oe) == 0 { return false } - n := p.oe[len(p.oe)-1] + n := p.adjustedCurrentNode() if n.Namespace == "" { return false } @@ -2341,8 +2347,7 @@ func ParseWithOptions(r io.Reader, opts ...ParseOption) (*Node, error) { f(p) } - err := p.parse() - if err != nil { + if err := p.parse(); err != nil { return nil, err } return p.doc, nil @@ -2364,7 +2369,6 @@ func ParseFragmentWithOptions(r io.Reader, context *Node, opts ...ParseOption) ( contextTag = context.DataAtom.String() } p := &parser{ - tokenizer: NewTokenizerFragment(r, contextTag), doc: &Node{ Type: DocumentNode, }, @@ -2372,6 +2376,11 @@ func ParseFragmentWithOptions(r io.Reader, context *Node, opts ...ParseOption) ( fragment: true, context: context, } + if context != nil && context.Namespace != "" { + p.tokenizer = NewTokenizer(r) + } else { + p.tokenizer = NewTokenizerFragment(r, contextTag) + } for _, f := range opts { f(p) @@ -2396,8 +2405,7 @@ func ParseFragmentWithOptions(r io.Reader, context *Node, opts ...ParseOption) ( } } - err := p.parse() - if err != nil { + if err := p.parse(); err != nil { return nil, err } diff --git a/vendor/golang.org/x/net/html/render.go b/vendor/golang.org/x/net/html/render.go index d34564f49dd..46879c08325 100644 --- a/vendor/golang.org/x/net/html/render.go +++ b/vendor/golang.org/x/net/html/render.go @@ -134,6 +134,9 @@ func render1(w writer, n *Node) error { } } return w.WriteByte('>') + case RawNode: + _, err := w.WriteString(n.Data) + return err default: return errors.New("html: unknown node type") } @@ -252,20 +255,19 @@ func writeQuoted(w writer, s string) error { // Section 12.1.2, "Elements", gives this list of void elements. Void elements // are those that can't have any contents. var voidElements = map[string]bool{ - "area": true, - "base": true, - "br": true, - "col": true, - "command": true, - "embed": true, - "hr": true, - "img": true, - "input": true, - "keygen": true, - "link": true, - "meta": true, - "param": true, - "source": true, - "track": true, - "wbr": true, + "area": true, + "base": true, + "br": true, + "col": true, + "embed": true, + "hr": true, + "img": true, + "input": true, + "keygen": true, + "link": true, + "meta": true, + "param": true, + "source": true, + "track": true, + "wbr": true, } diff --git a/vendor/golang.org/x/net/html/token.go b/vendor/golang.org/x/net/html/token.go index ae0d1b05cd3..877709f991b 100644 --- a/vendor/golang.org/x/net/html/token.go +++ b/vendor/golang.org/x/net/html/token.go @@ -296,8 +296,7 @@ func (z *Tokenizer) Buffered() []byte { // too many times in succession. func readAtLeastOneByte(r io.Reader, b []byte) (int, error) { for i := 0; i < 100; i++ { - n, err := r.Read(b) - if n != 0 || err != nil { + if n, err := r.Read(b); n != 0 || err != nil { return n, err } } diff --git a/vendor/golang.org/x/net/http2/pipe.go b/vendor/golang.org/x/net/http2/pipe.go index a6140099cb3..2a5399ec4a0 100644 --- a/vendor/golang.org/x/net/http2/pipe.go +++ b/vendor/golang.org/x/net/http2/pipe.go @@ -17,6 +17,7 @@ type pipe struct { mu sync.Mutex c sync.Cond // c.L lazily initialized to &p.mu b pipeBuffer // nil when done reading + unread int // bytes unread when done err error // read error once empty. non-nil means closed. breakErr error // immediate read error (caller doesn't see rest of b) donec chan struct{} // closed on error @@ -33,7 +34,7 @@ func (p *pipe) Len() int { p.mu.Lock() defer p.mu.Unlock() if p.b == nil { - return 0 + return p.unread } return p.b.Len() } @@ -80,6 +81,7 @@ func (p *pipe) Write(d []byte) (n int, err error) { return 0, errClosedPipeWrite } if p.breakErr != nil { + p.unread += len(d) return len(d), nil // discard when there is no reader } return p.b.Write(d) @@ -117,6 +119,9 @@ func (p *pipe) closeWithError(dst *error, err error, fn func()) { } p.readFn = fn if dst == &p.breakErr { + if p.b != nil { + p.unread += p.b.Len() + } p.b = nil } *dst = err diff --git a/vendor/golang.org/x/net/http2/server.go b/vendor/golang.org/x/net/http2/server.go index d2ba820c70f..de31d72b2c3 100644 --- a/vendor/golang.org/x/net/http2/server.go +++ b/vendor/golang.org/x/net/http2/server.go @@ -252,7 +252,7 @@ func ConfigureServer(s *http.Server, conf *Server) error { } } if !haveRequired { - return fmt.Errorf("http2: TLSConfig.CipherSuites is missing an HTTP/2-required AES_128_GCM_SHA256 cipher.") + return fmt.Errorf("http2: TLSConfig.CipherSuites is missing an HTTP/2-required AES_128_GCM_SHA256 cipher (need at least one of TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 or TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256).") } } diff --git a/vendor/golang.org/x/net/http2/transport.go b/vendor/golang.org/x/net/http2/transport.go index c51a73c0696..d948e96eec2 100644 --- a/vendor/golang.org/x/net/http2/transport.go +++ b/vendor/golang.org/x/net/http2/transport.go @@ -93,7 +93,7 @@ type Transport struct { // send in the initial settings frame. It is how many bytes // of response headers are allowed. Unlike the http2 spec, zero here // means to use a default limit (currently 10MB). If you actually - // want to advertise an ulimited value to the peer, Transport + // want to advertise an unlimited value to the peer, Transport // interprets the highest possible value here (0xffffffff or 1<<32-1) // to mean no limit. MaxHeaderListSize uint32 @@ -227,6 +227,7 @@ type ClientConn struct { br *bufio.Reader fr *Framer lastActive time.Time + lastIdle time.Time // time last idle // Settings from peer: (also guarded by mu) maxFrameSize uint32 maxConcurrentStreams uint32 @@ -603,7 +604,7 @@ func (t *Transport) expectContinueTimeout() time.Duration { } func (t *Transport) NewClientConn(c net.Conn) (*ClientConn, error) { - return t.newClientConn(c, false) + return t.newClientConn(c, t.disableKeepAlives()) } func (t *Transport) newClientConn(c net.Conn, singleUse bool) (*ClientConn, error) { @@ -736,7 +737,8 @@ func (cc *ClientConn) idleStateLocked() (st clientConnIdleState) { } st.canTakeNewRequest = cc.goAway == nil && !cc.closed && !cc.closing && maxConcurrentOkay && - int64(cc.nextStreamID)+2*int64(cc.pendingRequests) < math.MaxInt32 + int64(cc.nextStreamID)+2*int64(cc.pendingRequests) < math.MaxInt32 && + !cc.tooIdleLocked() st.freshConn = cc.nextStreamID == 1 && st.canTakeNewRequest return } @@ -746,6 +748,16 @@ func (cc *ClientConn) canTakeNewRequestLocked() bool { return st.canTakeNewRequest } +// tooIdleLocked reports whether this connection has been been sitting idle +// for too much wall time. +func (cc *ClientConn) tooIdleLocked() bool { + // The Round(0) strips the monontonic clock reading so the + // times are compared based on their wall time. We don't want + // to reuse a connection that's been sitting idle during + // VM/laptop suspend if monotonic time was also frozen. + return cc.idleTimeout != 0 && !cc.lastIdle.IsZero() && time.Since(cc.lastIdle.Round(0)) > cc.idleTimeout +} + // onIdleTimeout is called from a time.AfterFunc goroutine. It will // only be called when we're idle, but because we're coming from a new // goroutine, there could be a new request coming in at the same time, @@ -1150,6 +1162,7 @@ func (cc *ClientConn) awaitOpenSlotForRequest(req *http.Request) error { } return errClientConnUnusable } + cc.lastIdle = time.Time{} if int64(len(cc.streams))+1 <= int64(cc.maxConcurrentStreams) { if waitingForConn != nil { close(waitingForConn) @@ -1478,7 +1491,29 @@ func (cc *ClientConn) encodeHeaders(req *http.Request, addGzipHeader bool, trail if vv[0] == "" { continue } - + } else if strings.EqualFold(k, "cookie") { + // Per 8.1.2.5 To allow for better compression efficiency, the + // Cookie header field MAY be split into separate header fields, + // each with one or more cookie-pairs. + for _, v := range vv { + for { + p := strings.IndexByte(v, ';') + if p < 0 { + break + } + f("cookie", v[:p]) + p++ + // strip space after semicolon if any. + for p+1 <= len(v) && v[p] == ' ' { + p++ + } + v = v[p:] + } + if len(v) > 0 { + f("cookie", v) + } + } + continue } for _, v := range vv { @@ -1616,6 +1651,7 @@ func (cc *ClientConn) streamByID(id uint32, andRemove bool) *clientStream { delete(cc.streams, id) if len(cc.streams) == 0 && cc.idleTimer != nil { cc.idleTimer.Reset(cc.idleTimeout) + cc.lastIdle = time.Now() } close(cs.done) // Wake up checkResetOrDone via clientStream.awaitFlowControl and diff --git a/vendor/golang.org/x/net/idna/tables11.0.0.go b/vendor/golang.org/x/net/idna/tables11.0.0.go index c515d7ad2a2..8ce0811fdf3 100644 --- a/vendor/golang.org/x/net/idna/tables11.0.0.go +++ b/vendor/golang.org/x/net/idna/tables11.0.0.go @@ -1,6 +1,6 @@ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. -// +build go1.13 +// +build go1.13,!go1.14 package idna diff --git a/vendor/golang.org/x/net/idna/tables12.00.go b/vendor/golang.org/x/net/idna/tables12.00.go new file mode 100644 index 00000000000..f4b8ea3638e --- /dev/null +++ b/vendor/golang.org/x/net/idna/tables12.00.go @@ -0,0 +1,4733 @@ +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. + +// +build go1.14 + +package idna + +// UnicodeVersion is the Unicode version from which the tables in this package are derived. +const UnicodeVersion = "12.0.0" + +var mappings string = "" + // Size: 8178 bytes + "\x00\x01 \x03 ̈\x01a\x03 ̄\x012\x013\x03 ́\x03 ̧\x011\x01o\x051⁄4\x051⁄2" + + "\x053⁄4\x03i̇\x03l·\x03ʼn\x01s\x03dž\x03ⱥ\x03ⱦ\x01h\x01j\x01r\x01w\x01y" + + "\x03 ̆\x03 ̇\x03 ̊\x03 ̨\x03 ̃\x03 ̋\x01l\x01x\x04̈́\x03 ι\x01;\x05 ̈́" + + "\x04եւ\x04اٴ\x04وٴ\x04ۇٴ\x04يٴ\x06क़\x06ख़\x06ग़\x06ज़\x06ड़\x06ढ़\x06फ़" + + "\x06य़\x06ড়\x06ঢ়\x06য়\x06ਲ਼\x06ਸ਼\x06ਖ਼\x06ਗ਼\x06ਜ਼\x06ਫ਼\x06ଡ଼\x06ଢ଼" + + "\x06ํา\x06ໍາ\x06ຫນ\x06ຫມ\x06གྷ\x06ཌྷ\x06དྷ\x06བྷ\x06ཛྷ\x06ཀྵ\x06ཱི\x06ཱུ" + + "\x06ྲྀ\x09ྲཱྀ\x06ླྀ\x09ླཱྀ\x06ཱྀ\x06ྒྷ\x06ྜྷ\x06ྡྷ\x06ྦྷ\x06ྫྷ\x06ྐྵ\x02" + + "в\x02д\x02о\x02с\x02т\x02ъ\x02ѣ\x02æ\x01b\x01d\x01e\x02ǝ\x01g\x01i\x01k" + + "\x01m\x01n\x02ȣ\x01p\x01t\x01u\x02ɐ\x02ɑ\x02ə\x02ɛ\x02ɜ\x02ŋ\x02ɔ\x02ɯ" + + "\x01v\x02β\x02γ\x02δ\x02φ\x02χ\x02ρ\x02н\x02ɒ\x01c\x02ɕ\x02ð\x01f\x02ɟ" + + "\x02ɡ\x02ɥ\x02ɨ\x02ɩ\x02ɪ\x02ʝ\x02ɭ\x02ʟ\x02ɱ\x02ɰ\x02ɲ\x02ɳ\x02ɴ\x02ɵ" + + "\x02ɸ\x02ʂ\x02ʃ\x02ƫ\x02ʉ\x02ʊ\x02ʋ\x02ʌ\x01z\x02ʐ\x02ʑ\x02ʒ\x02θ\x02ss" + + "\x02ά\x02έ\x02ή\x02ί\x02ό\x02ύ\x02ώ\x05ἀι\x05ἁι\x05ἂι\x05ἃι\x05ἄι\x05ἅι" + + "\x05ἆι\x05ἇι\x05ἠι\x05ἡι\x05ἢι\x05ἣι\x05ἤι\x05ἥι\x05ἦι\x05ἧι\x05ὠι\x05ὡι" + + "\x05ὢι\x05ὣι\x05ὤι\x05ὥι\x05ὦι\x05ὧι\x05ὰι\x04αι\x04άι\x05ᾶι\x02ι\x05 ̈͂" + + "\x05ὴι\x04ηι\x04ήι\x05ῆι\x05 ̓̀\x05 ̓́\x05 ̓͂\x02ΐ\x05 ̔̀\x05 ̔́\x05 ̔͂" + + "\x02ΰ\x05 ̈̀\x01`\x05ὼι\x04ωι\x04ώι\x05ῶι\x06′′\x09′′′\x06‵‵\x09‵‵‵\x02!" + + "!\x02??\x02?!\x02!?\x0c′′′′\x010\x014\x015\x016\x017\x018\x019\x01+\x01=" + + "\x01(\x01)\x02rs\x02ħ\x02no\x01q\x02sm\x02tm\x02ω\x02å\x02א\x02ב\x02ג" + + "\x02ד\x02π\x051⁄7\x051⁄9\x061⁄10\x051⁄3\x052⁄3\x051⁄5\x052⁄5\x053⁄5\x054" + + "⁄5\x051⁄6\x055⁄6\x051⁄8\x053⁄8\x055⁄8\x057⁄8\x041⁄\x02ii\x02iv\x02vi" + + "\x04viii\x02ix\x02xi\x050⁄3\x06∫∫\x09∫∫∫\x06∮∮\x09∮∮∮\x0210\x0211\x0212" + + "\x0213\x0214\x0215\x0216\x0217\x0218\x0219\x0220\x04(10)\x04(11)\x04(12)" + + "\x04(13)\x04(14)\x04(15)\x04(16)\x04(17)\x04(18)\x04(19)\x04(20)\x0c∫∫∫∫" + + "\x02==\x05⫝̸\x02ɫ\x02ɽ\x02ȿ\x02ɀ\x01.\x04 ゙\x04 ゚\x06より\x06コト\x05(ᄀ)\x05" + + "(ᄂ)\x05(ᄃ)\x05(ᄅ)\x05(ᄆ)\x05(ᄇ)\x05(ᄉ)\x05(ᄋ)\x05(ᄌ)\x05(ᄎ)\x05(ᄏ)\x05(ᄐ" + + ")\x05(ᄑ)\x05(ᄒ)\x05(가)\x05(나)\x05(다)\x05(라)\x05(마)\x05(바)\x05(사)\x05(아)" + + "\x05(자)\x05(차)\x05(카)\x05(타)\x05(파)\x05(하)\x05(주)\x08(오전)\x08(오후)\x05(一)" + + "\x05(二)\x05(三)\x05(四)\x05(五)\x05(六)\x05(七)\x05(八)\x05(九)\x05(十)\x05(月)" + + "\x05(火)\x05(水)\x05(木)\x05(金)\x05(土)\x05(日)\x05(株)\x05(有)\x05(社)\x05(名)" + + "\x05(特)\x05(財)\x05(祝)\x05(労)\x05(代)\x05(呼)\x05(学)\x05(監)\x05(企)\x05(資)" + + "\x05(協)\x05(祭)\x05(休)\x05(自)\x05(至)\x0221\x0222\x0223\x0224\x0225\x0226" + + "\x0227\x0228\x0229\x0230\x0231\x0232\x0233\x0234\x0235\x06참고\x06주의\x0236" + + "\x0237\x0238\x0239\x0240\x0241\x0242\x0243\x0244\x0245\x0246\x0247\x0248" + + "\x0249\x0250\x041月\x042月\x043月\x044月\x045月\x046月\x047月\x048月\x049月\x0510" + + "月\x0511月\x0512月\x02hg\x02ev\x0cアパート\x0cアルファ\x0cアンペア\x09アール\x0cイニング\x09" + + "インチ\x09ウォン\x0fエスクード\x0cエーカー\x09オンス\x09オーム\x09カイリ\x0cカラット\x0cカロリー\x09ガロ" + + "ン\x09ガンマ\x06ギガ\x09ギニー\x0cキュリー\x0cギルダー\x06キロ\x0fキログラム\x12キロメートル\x0fキロワッ" + + "ト\x09グラム\x0fグラムトン\x0fクルゼイロ\x0cクローネ\x09ケース\x09コルナ\x09コーポ\x0cサイクル\x0fサンチ" + + "ーム\x0cシリング\x09センチ\x09セント\x09ダース\x06デシ\x06ドル\x06トン\x06ナノ\x09ノット\x09ハイツ" + + "\x0fパーセント\x09パーツ\x0cバーレル\x0fピアストル\x09ピクル\x06ピコ\x06ビル\x0fファラッド\x0cフィート" + + "\x0fブッシェル\x09フラン\x0fヘクタール\x06ペソ\x09ペニヒ\x09ヘルツ\x09ペンス\x09ページ\x09ベータ\x0cポイ" + + "ント\x09ボルト\x06ホン\x09ポンド\x09ホール\x09ホーン\x0cマイクロ\x09マイル\x09マッハ\x09マルク\x0fマ" + + "ンション\x0cミクロン\x06ミリ\x0fミリバール\x06メガ\x0cメガトン\x0cメートル\x09ヤード\x09ヤール\x09ユアン" + + "\x0cリットル\x06リラ\x09ルピー\x0cルーブル\x06レム\x0fレントゲン\x09ワット\x040点\x041点\x042点" + + "\x043点\x044点\x045点\x046点\x047点\x048点\x049点\x0510点\x0511点\x0512点\x0513点" + + "\x0514点\x0515点\x0516点\x0517点\x0518点\x0519点\x0520点\x0521点\x0522点\x0523点" + + "\x0524点\x02da\x02au\x02ov\x02pc\x02dm\x02iu\x06平成\x06昭和\x06大正\x06明治\x0c株" + + "式会社\x02pa\x02na\x02ma\x02ka\x02kb\x02mb\x02gb\x04kcal\x02pf\x02nf\x02m" + + "g\x02kg\x02hz\x02ml\x02dl\x02kl\x02fm\x02nm\x02mm\x02cm\x02km\x02m2\x02m" + + "3\x05m∕s\x06m∕s2\x07rad∕s\x08rad∕s2\x02ps\x02ns\x02ms\x02pv\x02nv\x02mv" + + "\x02kv\x02pw\x02nw\x02mw\x02kw\x02bq\x02cc\x02cd\x06c∕kg\x02db\x02gy\x02" + + "ha\x02hp\x02in\x02kk\x02kt\x02lm\x02ln\x02lx\x02ph\x02pr\x02sr\x02sv\x02" + + "wb\x05v∕m\x05a∕m\x041日\x042日\x043日\x044日\x045日\x046日\x047日\x048日\x049日" + + "\x0510日\x0511日\x0512日\x0513日\x0514日\x0515日\x0516日\x0517日\x0518日\x0519日" + + "\x0520日\x0521日\x0522日\x0523日\x0524日\x0525日\x0526日\x0527日\x0528日\x0529日" + + "\x0530日\x0531日\x02ь\x02ɦ\x02ɬ\x02ʞ\x02ʇ\x02œ\x04𤋮\x04𢡊\x04𢡄\x04𣏕\x04𥉉" + + "\x04𥳐\x04𧻓\x02ff\x02fi\x02fl\x02st\x04մն\x04մե\x04մի\x04վն\x04մխ\x04יִ" + + "\x04ײַ\x02ע\x02ה\x02כ\x02ל\x02ם\x02ר\x02ת\x04שׁ\x04שׂ\x06שּׁ\x06שּׂ\x04א" + + "ַ\x04אָ\x04אּ\x04בּ\x04גּ\x04דּ\x04הּ\x04וּ\x04זּ\x04טּ\x04יּ\x04ךּ\x04" + + "כּ\x04לּ\x04מּ\x04נּ\x04סּ\x04ףּ\x04פּ\x04צּ\x04קּ\x04רּ\x04שּ\x04תּ" + + "\x04וֹ\x04בֿ\x04כֿ\x04פֿ\x04אל\x02ٱ\x02ٻ\x02پ\x02ڀ\x02ٺ\x02ٿ\x02ٹ\x02ڤ" + + "\x02ڦ\x02ڄ\x02ڃ\x02چ\x02ڇ\x02ڍ\x02ڌ\x02ڎ\x02ڈ\x02ژ\x02ڑ\x02ک\x02گ\x02ڳ" + + "\x02ڱ\x02ں\x02ڻ\x02ۀ\x02ہ\x02ھ\x02ے\x02ۓ\x02ڭ\x02ۇ\x02ۆ\x02ۈ\x02ۋ\x02ۅ" + + "\x02ۉ\x02ې\x02ى\x04ئا\x04ئە\x04ئو\x04ئۇ\x04ئۆ\x04ئۈ\x04ئې\x04ئى\x02ی\x04" + + "ئج\x04ئح\x04ئم\x04ئي\x04بج\x04بح\x04بخ\x04بم\x04بى\x04بي\x04تج\x04تح" + + "\x04تخ\x04تم\x04تى\x04تي\x04ثج\x04ثم\x04ثى\x04ثي\x04جح\x04جم\x04حج\x04حم" + + "\x04خج\x04خح\x04خم\x04سج\x04سح\x04سخ\x04سم\x04صح\x04صم\x04ضج\x04ضح\x04ضخ" + + "\x04ضم\x04طح\x04طم\x04ظم\x04عج\x04عم\x04غج\x04غم\x04فج\x04فح\x04فخ\x04فم" + + "\x04فى\x04في\x04قح\x04قم\x04قى\x04قي\x04كا\x04كج\x04كح\x04كخ\x04كل\x04كم" + + "\x04كى\x04كي\x04لج\x04لح\x04لخ\x04لم\x04لى\x04لي\x04مج\x04مح\x04مخ\x04مم" + + "\x04مى\x04مي\x04نج\x04نح\x04نخ\x04نم\x04نى\x04ني\x04هج\x04هم\x04هى\x04هي" + + "\x04يج\x04يح\x04يخ\x04يم\x04يى\x04يي\x04ذٰ\x04رٰ\x04ىٰ\x05 ٌّ\x05 ٍّ\x05" + + " َّ\x05 ُّ\x05 ِّ\x05 ّٰ\x04ئر\x04ئز\x04ئن\x04بر\x04بز\x04بن\x04تر\x04تز" + + "\x04تن\x04ثر\x04ثز\x04ثن\x04ما\x04نر\x04نز\x04نن\x04ير\x04يز\x04ين\x04ئخ" + + "\x04ئه\x04به\x04ته\x04صخ\x04له\x04نه\x04هٰ\x04يه\x04ثه\x04سه\x04شم\x04شه" + + "\x06ـَّ\x06ـُّ\x06ـِّ\x04طى\x04طي\x04عى\x04عي\x04غى\x04غي\x04سى\x04سي" + + "\x04شى\x04شي\x04حى\x04حي\x04جى\x04جي\x04خى\x04خي\x04صى\x04صي\x04ضى\x04ضي" + + "\x04شج\x04شح\x04شخ\x04شر\x04سر\x04صر\x04ضر\x04اً\x06تجم\x06تحج\x06تحم" + + "\x06تخم\x06تمج\x06تمح\x06تمخ\x06جمح\x06حمي\x06حمى\x06سحج\x06سجح\x06سجى" + + "\x06سمح\x06سمج\x06سمم\x06صحح\x06صمم\x06شحم\x06شجي\x06شمخ\x06شمم\x06ضحى" + + "\x06ضخم\x06طمح\x06طمم\x06طمي\x06عجم\x06عمم\x06عمى\x06غمم\x06غمي\x06غمى" + + "\x06فخم\x06قمح\x06قمم\x06لحم\x06لحي\x06لحى\x06لجج\x06لخم\x06لمح\x06محج" + + "\x06محم\x06محي\x06مجح\x06مجم\x06مخج\x06مخم\x06مجخ\x06همج\x06همم\x06نحم" + + "\x06نحى\x06نجم\x06نجى\x06نمي\x06نمى\x06يمم\x06بخي\x06تجي\x06تجى\x06تخي" + + "\x06تخى\x06تمي\x06تمى\x06جمي\x06جحى\x06جمى\x06سخى\x06صحي\x06شحي\x06ضحي" + + "\x06لجي\x06لمي\x06يحي\x06يجي\x06يمي\x06ممي\x06قمي\x06نحي\x06عمي\x06كمي" + + "\x06نجح\x06مخي\x06لجم\x06كمم\x06جحي\x06حجي\x06مجي\x06فمي\x06بحي\x06سخي" + + "\x06نجي\x06صلے\x06قلے\x08الله\x08اكبر\x08محمد\x08صلعم\x08رسول\x08عليه" + + "\x08وسلم\x06صلى!صلى الله عليه وسلم\x0fجل جلاله\x08ریال\x01,\x01:\x01!" + + "\x01?\x01_\x01{\x01}\x01[\x01]\x01#\x01&\x01*\x01-\x01<\x01>\x01\\\x01$" + + "\x01%\x01@\x04ـً\x04ـَ\x04ـُ\x04ـِ\x04ـّ\x04ـْ\x02ء\x02آ\x02أ\x02ؤ\x02إ" + + "\x02ئ\x02ا\x02ب\x02ة\x02ت\x02ث\x02ج\x02ح\x02خ\x02د\x02ذ\x02ر\x02ز\x02س" + + "\x02ش\x02ص\x02ض\x02ط\x02ظ\x02ع\x02غ\x02ف\x02ق\x02ك\x02ل\x02م\x02ن\x02ه" + + "\x02و\x02ي\x04لآ\x04لأ\x04لإ\x04لا\x01\x22\x01'\x01/\x01^\x01|\x01~\x02¢" + + "\x02£\x02¬\x02¦\x02¥\x08𝅗𝅥\x08𝅘𝅥\x0c𝅘𝅥𝅮\x0c𝅘𝅥𝅯\x0c𝅘𝅥𝅰\x0c𝅘𝅥𝅱\x0c𝅘𝅥𝅲\x08𝆹" + + "𝅥\x08𝆺𝅥\x0c𝆹𝅥𝅮\x0c𝆺𝅥𝅮\x0c𝆹𝅥𝅯\x0c𝆺𝅥𝅯\x02ı\x02ȷ\x02α\x02ε\x02ζ\x02η\x02" + + "κ\x02λ\x02μ\x02ν\x02ξ\x02ο\x02σ\x02τ\x02υ\x02ψ\x03∇\x03∂\x02ϝ\x02ٮ\x02ڡ" + + "\x02ٯ\x020,\x021,\x022,\x023,\x024,\x025,\x026,\x027,\x028,\x029,\x03(a)" + + "\x03(b)\x03(c)\x03(d)\x03(e)\x03(f)\x03(g)\x03(h)\x03(i)\x03(j)\x03(k)" + + "\x03(l)\x03(m)\x03(n)\x03(o)\x03(p)\x03(q)\x03(r)\x03(s)\x03(t)\x03(u)" + + "\x03(v)\x03(w)\x03(x)\x03(y)\x03(z)\x07〔s〕\x02wz\x02hv\x02sd\x03ppv\x02w" + + "c\x02mc\x02md\x02mr\x02dj\x06ほか\x06ココ\x03サ\x03手\x03字\x03双\x03デ\x03二\x03多" + + "\x03解\x03天\x03交\x03映\x03無\x03料\x03前\x03後\x03再\x03新\x03初\x03終\x03生\x03販" + + "\x03声\x03吹\x03演\x03投\x03捕\x03一\x03三\x03遊\x03左\x03中\x03右\x03指\x03走\x03打" + + "\x03禁\x03空\x03合\x03満\x03有\x03月\x03申\x03割\x03営\x03配\x09〔本〕\x09〔三〕\x09〔二〕" + + "\x09〔安〕\x09〔点〕\x09〔打〕\x09〔盗〕\x09〔勝〕\x09〔敗〕\x03得\x03可\x03丽\x03丸\x03乁\x03你" + + "\x03侮\x03侻\x03倂\x03偺\x03備\x03僧\x03像\x03㒞\x03免\x03兔\x03兤\x03具\x03㒹\x03內" + + "\x03冗\x03冤\x03仌\x03冬\x03况\x03凵\x03刃\x03㓟\x03刻\x03剆\x03剷\x03㔕\x03勇\x03勉" + + "\x03勤\x03勺\x03包\x03匆\x03北\x03卉\x03卑\x03博\x03即\x03卽\x03卿\x03灰\x03及\x03叟" + + "\x03叫\x03叱\x03吆\x03咞\x03吸\x03呈\x03周\x03咢\x03哶\x03唐\x03啓\x03啣\x03善\x03喙" + + "\x03喫\x03喳\x03嗂\x03圖\x03嘆\x03圗\x03噑\x03噴\x03切\x03壮\x03城\x03埴\x03堍\x03型" + + "\x03堲\x03報\x03墬\x03売\x03壷\x03夆\x03夢\x03奢\x03姬\x03娛\x03娧\x03姘\x03婦\x03㛮" + + "\x03嬈\x03嬾\x03寃\x03寘\x03寧\x03寳\x03寿\x03将\x03尢\x03㞁\x03屠\x03屮\x03峀\x03岍" + + "\x03嵃\x03嵮\x03嵫\x03嵼\x03巡\x03巢\x03㠯\x03巽\x03帨\x03帽\x03幩\x03㡢\x03㡼\x03庰" + + "\x03庳\x03庶\x03廊\x03廾\x03舁\x03弢\x03㣇\x03形\x03彫\x03㣣\x03徚\x03忍\x03志\x03忹" + + "\x03悁\x03㤺\x03㤜\x03悔\x03惇\x03慈\x03慌\x03慎\x03慺\x03憎\x03憲\x03憤\x03憯\x03懞" + + "\x03懲\x03懶\x03成\x03戛\x03扝\x03抱\x03拔\x03捐\x03挽\x03拼\x03捨\x03掃\x03揤\x03搢" + + "\x03揅\x03掩\x03㨮\x03摩\x03摾\x03撝\x03摷\x03㩬\x03敏\x03敬\x03旣\x03書\x03晉\x03㬙" + + "\x03暑\x03㬈\x03㫤\x03冒\x03冕\x03最\x03暜\x03肭\x03䏙\x03朗\x03望\x03朡\x03杞\x03杓" + + "\x03㭉\x03柺\x03枅\x03桒\x03梅\x03梎\x03栟\x03椔\x03㮝\x03楂\x03榣\x03槪\x03檨\x03櫛" + + "\x03㰘\x03次\x03歔\x03㱎\x03歲\x03殟\x03殺\x03殻\x03汎\x03沿\x03泍\x03汧\x03洖\x03派" + + "\x03海\x03流\x03浩\x03浸\x03涅\x03洴\x03港\x03湮\x03㴳\x03滋\x03滇\x03淹\x03潮\x03濆" + + "\x03瀹\x03瀞\x03瀛\x03㶖\x03灊\x03災\x03灷\x03炭\x03煅\x03熜\x03爨\x03爵\x03牐\x03犀" + + "\x03犕\x03獺\x03王\x03㺬\x03玥\x03㺸\x03瑇\x03瑜\x03瑱\x03璅\x03瓊\x03㼛\x03甤\x03甾" + + "\x03異\x03瘐\x03㿼\x03䀈\x03直\x03眞\x03真\x03睊\x03䀹\x03瞋\x03䁆\x03䂖\x03硎\x03碌" + + "\x03磌\x03䃣\x03祖\x03福\x03秫\x03䄯\x03穀\x03穊\x03穏\x03䈂\x03篆\x03築\x03䈧\x03糒" + + "\x03䊠\x03糨\x03糣\x03紀\x03絣\x03䌁\x03緇\x03縂\x03繅\x03䌴\x03䍙\x03罺\x03羕\x03翺" + + "\x03者\x03聠\x03聰\x03䏕\x03育\x03脃\x03䐋\x03脾\x03媵\x03舄\x03辞\x03䑫\x03芑\x03芋" + + "\x03芝\x03劳\x03花\x03芳\x03芽\x03苦\x03若\x03茝\x03荣\x03莭\x03茣\x03莽\x03菧\x03著" + + "\x03荓\x03菊\x03菌\x03菜\x03䔫\x03蓱\x03蓳\x03蔖\x03蕤\x03䕝\x03䕡\x03䕫\x03虐\x03虜" + + "\x03虧\x03虩\x03蚩\x03蚈\x03蜎\x03蛢\x03蝹\x03蜨\x03蝫\x03螆\x03蟡\x03蠁\x03䗹\x03衠" + + "\x03衣\x03裗\x03裞\x03䘵\x03裺\x03㒻\x03䚾\x03䛇\x03誠\x03諭\x03變\x03豕\x03貫\x03賁" + + "\x03贛\x03起\x03跋\x03趼\x03跰\x03軔\x03輸\x03邔\x03郱\x03鄑\x03鄛\x03鈸\x03鋗\x03鋘" + + "\x03鉼\x03鏹\x03鐕\x03開\x03䦕\x03閷\x03䧦\x03雃\x03嶲\x03霣\x03䩮\x03䩶\x03韠\x03䪲" + + "\x03頋\x03頩\x03飢\x03䬳\x03餩\x03馧\x03駂\x03駾\x03䯎\x03鬒\x03鱀\x03鳽\x03䳎\x03䳭" + + "\x03鵧\x03䳸\x03麻\x03䵖\x03黹\x03黾\x03鼅\x03鼏\x03鼖\x03鼻" + +var xorData string = "" + // Size: 4862 bytes + "\x02\x0c\x09\x02\xb0\xec\x02\xad\xd8\x02\xad\xd9\x02\x06\x07\x02\x0f\x12" + + "\x02\x0f\x1f\x02\x0f\x1d\x02\x01\x13\x02\x0f\x16\x02\x0f\x0b\x02\x0f3" + + "\x02\x0f7\x02\x0f?\x02\x0f/\x02\x0f*\x02\x0c&\x02\x0c*\x02\x0c;\x02\x0c9" + + "\x02\x0c%\x02\xab\xed\x02\xab\xe2\x02\xab\xe3\x02\xa9\xe0\x02\xa9\xe1" + + "\x02\xa9\xe6\x02\xa3\xcb\x02\xa3\xc8\x02\xa3\xc9\x02\x01#\x02\x01\x08" + + "\x02\x0e>\x02\x0e'\x02\x0f\x03\x02\x03\x0d\x02\x03\x09\x02\x03\x17\x02" + + "\x03\x0e\x02\x02\x03\x02\x011\x02\x01\x00\x02\x01\x10\x02\x03<\x02\x07" + + "\x0d\x02\x02\x0c\x02\x0c0\x02\x01\x03\x02\x01\x01\x02\x01 \x02\x01\x22" + + "\x02\x01)\x02\x01\x0a\x02\x01\x0c\x02\x02\x06\x02\x02\x02\x02\x03\x10" + + "\x03\x037 \x03\x0b+\x03\x021\x00\x02\x01\x04\x02\x01\x02\x02\x019\x02" + + "\x03\x1c\x02\x02$\x03\x80p$\x02\x03:\x02\x03\x0a\x03\xc1r.\x03\xc1r,\x03" + + "\xc1r\x02\x02\x02:\x02\x02>\x02\x02,\x02\x02\x10\x02\x02\x00\x03\xc1s<" + + "\x03\xc1s*\x03\xc2L$\x03\xc2L;\x02\x09)\x02\x0a\x19\x03\x83\xab\xe3\x03" + + "\x83\xab\xf2\x03 4\xe0\x03\x81\xab\xea\x03\x81\xab\xf3\x03 4\xef\x03\x96" + + "\xe1\xcd\x03\x84\xe5\xc3\x02\x0d\x11\x03\x8b\xec\xcb\x03\x94\xec\xcf\x03" + + "\x9a\xec\xc2\x03\x8b\xec\xdb\x03\x94\xec\xdf\x03\x9a\xec\xd2\x03\x01\x0c" + + "!\x03\x01\x0c#\x03ʠ\x9d\x03ʣ\x9c\x03ʢ\x9f\x03ʥ\x9e\x03ʤ\x91\x03ʧ\x90\x03" + + "ʦ\x93\x03ʩ\x92\x03ʨ\x95\x03\xca\xf3\xb5\x03\xca\xf0\xb4\x03\xca\xf1\xb7" + + "\x03\xca\xf6\xb6\x03\xca\xf7\x89\x03\xca\xf4\x88\x03\xca\xf5\x8b\x03\xca" + + "\xfa\x8a\x03\xca\xfb\x8d\x03\xca\xf8\x8c\x03\xca\xf9\x8f\x03\xca\xfe\x8e" + + "\x03\xca\xff\x81\x03\xca\xfc\x80\x03\xca\xfd\x83\x03\xca\xe2\x82\x03\xca" + + "\xe3\x85\x03\xca\xe0\x84\x03\xca\xe1\x87\x03\xca\xe6\x86\x03\xca\xe7\x99" + + "\x03\xca\xe4\x98\x03\xca\xe5\x9b\x03\xca\xea\x9a\x03\xca\xeb\x9d\x03\xca" + + "\xe8\x9c\x03ؓ\x89\x03ߔ\x8b\x02\x010\x03\x03\x04\x1e\x03\x04\x15\x12\x03" + + "\x0b\x05,\x03\x06\x04\x00\x03\x06\x04)\x03\x06\x044\x03\x06\x04<\x03\x06" + + "\x05\x1d\x03\x06\x06\x00\x03\x06\x06\x0a\x03\x06\x06'\x03\x06\x062\x03" + + "\x0786\x03\x079/\x03\x079 \x03\x07:\x0e\x03\x07:\x1b\x03\x07:%\x03\x07;/" + + "\x03\x07;%\x03\x074\x11\x03\x076\x09\x03\x077*\x03\x070\x01\x03\x070\x0f" + + "\x03\x070.\x03\x071\x16\x03\x071\x04\x03\x0710\x03\x072\x18\x03\x072-" + + "\x03\x073\x14\x03\x073>\x03\x07'\x09\x03\x07 \x00\x03\x07\x1f\x0b\x03" + + "\x07\x18#\x03\x07\x18(\x03\x07\x186\x03\x07\x18\x03\x03\x07\x19\x16\x03" + + "\x07\x116\x03\x07\x12'\x03\x07\x13\x10\x03\x07\x0c&\x03\x07\x0c\x08\x03" + + "\x07\x0c\x13\x03\x07\x0d\x02\x03\x07\x0d\x1c\x03\x07\x0b5\x03\x07\x0b" + + "\x0a\x03\x07\x0b\x01\x03\x07\x0b\x0f\x03\x07\x05\x00\x03\x07\x05\x09\x03" + + "\x07\x05\x0b\x03\x07\x07\x01\x03\x07\x07\x08\x03\x07\x00<\x03\x07\x00+" + + "\x03\x07\x01)\x03\x07\x01\x1b\x03\x07\x01\x08\x03\x07\x03?\x03\x0445\x03" + + "\x044\x08\x03\x0454\x03\x04)/\x03\x04)5\x03\x04+\x05\x03\x04+\x14\x03" + + "\x04+ \x03\x04+<\x03\x04*&\x03\x04*\x22\x03\x04&8\x03\x04!\x01\x03\x04!" + + "\x22\x03\x04\x11+\x03\x04\x10.\x03\x04\x104\x03\x04\x13=\x03\x04\x12\x04" + + "\x03\x04\x12\x0a\x03\x04\x0d\x1d\x03\x04\x0d\x07\x03\x04\x0d \x03\x05<>" + + "\x03\x055<\x03\x055!\x03\x055#\x03\x055&\x03\x054\x1d\x03\x054\x02\x03" + + "\x054\x07\x03\x0571\x03\x053\x1a\x03\x053\x16\x03\x05.<\x03\x05.\x07\x03" + + "\x05):\x03\x05)<\x03\x05)\x0c\x03\x05)\x15\x03\x05+-\x03\x05+5\x03\x05$" + + "\x1e\x03\x05$\x14\x03\x05'\x04\x03\x05'\x14\x03\x05&\x02\x03\x05\x226" + + "\x03\x05\x22\x0c\x03\x05\x22\x1c\x03\x05\x19\x0a\x03\x05\x1b\x09\x03\x05" + + "\x1b\x0c\x03\x05\x14\x07\x03\x05\x16?\x03\x05\x16\x0c\x03\x05\x0c\x05" + + "\x03\x05\x0e\x0f\x03\x05\x01\x0e\x03\x05\x00(\x03\x05\x030\x03\x05\x03" + + "\x06\x03\x0a==\x03\x0a=1\x03\x0a=,\x03\x0a=\x0c\x03\x0a??\x03\x0a<\x08" + + "\x03\x0a9!\x03\x0a9)\x03\x0a97\x03\x0a99\x03\x0a6\x0a\x03\x0a6\x1c\x03" + + "\x0a6\x17\x03\x0a7'\x03\x0a78\x03\x0a73\x03\x0a'\x01\x03\x0a'&\x03\x0a" + + "\x1f\x0e\x03\x0a\x1f\x03\x03\x0a\x1f3\x03\x0a\x1b/\x03\x0a\x18\x19\x03" + + "\x0a\x19\x01\x03\x0a\x16\x14\x03\x0a\x0e\x22\x03\x0a\x0f\x10\x03\x0a\x0f" + + "\x02\x03\x0a\x0f \x03\x0a\x0c\x04\x03\x0a\x0b>\x03\x0a\x0b+\x03\x0a\x08/" + + "\x03\x0a\x046\x03\x0a\x05\x14\x03\x0a\x00\x04\x03\x0a\x00\x10\x03\x0a" + + "\x00\x14\x03\x0b<3\x03\x0b;*\x03\x0b9\x22\x03\x0b9)\x03\x0b97\x03\x0b+" + + "\x10\x03\x0b((\x03\x0b&5\x03\x0b$\x1c\x03\x0b$\x12\x03\x0b%\x04\x03\x0b#" + + "<\x03\x0b#0\x03\x0b#\x0d\x03\x0b#\x19\x03\x0b!:\x03\x0b!\x1f\x03\x0b!" + + "\x00\x03\x0b\x1e5\x03\x0b\x1c\x1d\x03\x0b\x1d-\x03\x0b\x1d(\x03\x0b\x18." + + "\x03\x0b\x18 \x03\x0b\x18\x16\x03\x0b\x14\x13\x03\x0b\x15$\x03\x0b\x15" + + "\x22\x03\x0b\x12\x1b\x03\x0b\x12\x10\x03\x0b\x132\x03\x0b\x13=\x03\x0b" + + "\x12\x18\x03\x0b\x0c&\x03\x0b\x061\x03\x0b\x06:\x03\x0b\x05#\x03\x0b\x05" + + "<\x03\x0b\x04\x0b\x03\x0b\x04\x04\x03\x0b\x04\x1b\x03\x0b\x042\x03\x0b" + + "\x041\x03\x0b\x03\x03\x03\x0b\x03\x1d\x03\x0b\x03/\x03\x0b\x03+\x03\x0b" + + "\x02\x1b\x03\x0b\x02\x00\x03\x0b\x01\x1e\x03\x0b\x01\x08\x03\x0b\x015" + + "\x03\x06\x0d9\x03\x06\x0d=\x03\x06\x0d?\x03\x02\x001\x03\x02\x003\x03" + + "\x02\x02\x19\x03\x02\x006\x03\x02\x02\x1b\x03\x02\x004\x03\x02\x00<\x03" + + "\x02\x02\x0a\x03\x02\x02\x0e\x03\x02\x01\x1a\x03\x02\x01\x07\x03\x02\x01" + + "\x05\x03\x02\x01\x0b\x03\x02\x01%\x03\x02\x01\x0c\x03\x02\x01\x04\x03" + + "\x02\x01\x1c\x03\x02\x00.\x03\x02\x002\x03\x02\x00>\x03\x02\x00\x12\x03" + + "\x02\x00\x16\x03\x02\x011\x03\x02\x013\x03\x02\x02 \x03\x02\x02%\x03\x02" + + "\x02$\x03\x02\x028\x03\x02\x02;\x03\x02\x024\x03\x02\x012\x03\x02\x022" + + "\x03\x02\x02/\x03\x02\x01,\x03\x02\x01\x13\x03\x02\x01\x16\x03\x02\x01" + + "\x11\x03\x02\x01\x1e\x03\x02\x01\x15\x03\x02\x01\x17\x03\x02\x01\x0f\x03" + + "\x02\x01\x08\x03\x02\x00?\x03\x02\x03\x07\x03\x02\x03\x0d\x03\x02\x03" + + "\x13\x03\x02\x03\x1d\x03\x02\x03\x1f\x03\x02\x00\x03\x03\x02\x00\x0d\x03" + + "\x02\x00\x01\x03\x02\x00\x1b\x03\x02\x00\x19\x03\x02\x00\x18\x03\x02\x00" + + "\x13\x03\x02\x00/\x03\x07>\x12\x03\x07<\x1f\x03\x07>\x1d\x03\x06\x1d\x0e" + + "\x03\x07>\x1c\x03\x07>:\x03\x07>\x13\x03\x04\x12+\x03\x07?\x03\x03\x07>" + + "\x02\x03\x06\x224\x03\x06\x1a.\x03\x07<%\x03\x06\x1c\x0b\x03\x0609\x03" + + "\x05\x1f\x01\x03\x04'\x08\x03\x93\xfd\xf5\x03\x02\x0d \x03\x02\x0d#\x03" + + "\x02\x0d!\x03\x02\x0d&\x03\x02\x0d\x22\x03\x02\x0d/\x03\x02\x0d,\x03\x02" + + "\x0d$\x03\x02\x0d'\x03\x02\x0d%\x03\x02\x0d;\x03\x02\x0d=\x03\x02\x0d?" + + "\x03\x099.\x03\x08\x0b7\x03\x08\x02\x14\x03\x08\x14\x0d\x03\x08.:\x03" + + "\x089'\x03\x0f\x0b\x18\x03\x0f\x1c1\x03\x0f\x17&\x03\x0f9\x1f\x03\x0f0" + + "\x0c\x03\x0e\x0a9\x03\x0e\x056\x03\x0e\x1c#\x03\x0f\x13\x0e\x03\x072\x00" + + "\x03\x070\x0d\x03\x072\x0b\x03\x06\x11\x18\x03\x070\x10\x03\x06\x0f(\x03" + + "\x072\x05\x03\x06\x0f,\x03\x073\x15\x03\x06\x07\x08\x03\x05\x16\x02\x03" + + "\x04\x0b \x03\x05:8\x03\x05\x16%\x03\x0a\x0d\x1f\x03\x06\x16\x10\x03\x05" + + "\x1d5\x03\x05*;\x03\x05\x16\x1b\x03\x04.-\x03\x06\x1a\x19\x03\x04\x03," + + "\x03\x0b87\x03\x04/\x0a\x03\x06\x00,\x03\x04-\x01\x03\x04\x1e-\x03\x06/(" + + "\x03\x0a\x0b5\x03\x06\x0e7\x03\x06\x07.\x03\x0597\x03\x0a*%\x03\x0760" + + "\x03\x06\x0c;\x03\x05'\x00\x03\x072.\x03\x072\x08\x03\x06=\x01\x03\x06" + + "\x05\x1b\x03\x06\x06\x12\x03\x06$=\x03\x06'\x0d\x03\x04\x11\x0f\x03\x076" + + ",\x03\x06\x07;\x03\x06.,\x03\x86\xf9\xea\x03\x8f\xff\xeb\x02\x092\x02" + + "\x095\x02\x094\x02\x09;\x02\x09>\x02\x098\x02\x09*\x02\x09/\x02\x09,\x02" + + "\x09%\x02\x09&\x02\x09#\x02\x09 \x02\x08!\x02\x08%\x02\x08$\x02\x08+\x02" + + "\x08.\x02\x08*\x02\x08&\x02\x088\x02\x08>\x02\x084\x02\x086\x02\x080\x02" + + "\x08\x10\x02\x08\x17\x02\x08\x12\x02\x08\x1d\x02\x08\x1f\x02\x08\x13\x02" + + "\x08\x15\x02\x08\x14\x02\x08\x0c\x03\x8b\xfd\xd0\x03\x81\xec\xc6\x03\x87" + + "\xe0\x8a\x03-2\xe3\x03\x80\xef\xe4\x03-2\xea\x03\x88\xe6\xeb\x03\x8e\xe6" + + "\xe8\x03\x84\xe6\xe9\x03\x97\xe6\xee\x03-2\xf9\x03-2\xf6\x03\x8e\xe3\xad" + + "\x03\x80\xe3\x92\x03\x88\xe3\x90\x03\x8e\xe3\x90\x03\x80\xe3\x97\x03\x88" + + "\xe3\x95\x03\x88\xfe\xcb\x03\x8e\xfe\xca\x03\x84\xfe\xcd\x03\x91\xef\xc9" + + "\x03-2\xc1\x03-2\xc0\x03-2\xcb\x03\x88@\x09\x03\x8e@\x08\x03\x8f\xe0\xf5" + + "\x03\x8e\xe6\xf9\x03\x8e\xe0\xfa\x03\x93\xff\xf4\x03\x84\xee\xd3\x03\x0b" + + "(\x04\x023 \x03\x0b)\x08\x021;\x02\x01*\x03\x0b#\x10\x03\x0b 0\x03\x0b!" + + "\x10\x03\x0b!0\x03\x07\x15\x08\x03\x09?5\x03\x07\x1f\x08\x03\x07\x17\x0b" + + "\x03\x09\x1f\x15\x03\x0b\x1c7\x03\x0a+#\x03\x06\x1a\x1b\x03\x06\x1a\x14" + + "\x03\x0a\x01\x18\x03\x06#\x1b\x03\x0a2\x0c\x03\x0a\x01\x04\x03\x09#;\x03" + + "\x08='\x03\x08\x1a\x0a\x03\x07\x03\x0a\x111\x03\x09\x1b\x09\x03\x073.\x03\x07" + + "\x01\x00\x03\x09/,\x03\x07#>\x03\x07\x048\x03\x0a\x1f\x22\x03\x098>\x03" + + "\x09\x11\x00\x03\x08/\x17\x03\x06'\x22\x03\x0b\x1a+\x03\x0a\x22\x19\x03" + + "\x0a/1\x03\x0974\x03\x09\x0f\x22\x03\x08,\x22\x03\x08?\x14\x03\x07$5\x03" + + "\x07<3\x03\x07=*\x03\x07\x13\x18\x03\x068\x0a\x03\x06\x09\x16\x03\x06" + + "\x13\x00\x03\x08\x067\x03\x08\x01\x03\x03\x08\x12\x1d\x03\x07+7\x03\x06(" + + ";\x03\x06\x1c?\x03\x07\x0e\x17\x03\x0a\x06\x1d\x03\x0a\x19\x07\x03\x08" + + "\x14$\x03\x07$;\x03\x08,$\x03\x08\x06\x0d\x03\x07\x16\x0a\x03\x06>>\x03" + + "\x0a\x06\x12\x03\x0a\x14)\x03\x09\x0d\x1f\x03\x09\x12\x17\x03\x09\x19" + + "\x01\x03\x08\x11 \x03\x08\x1d'\x03\x06<\x1a\x03\x0a.\x00\x03\x07'\x18" + + "\x03\x0a\x22\x08\x03\x08\x0d\x0a\x03\x08\x13)\x03\x07*)\x03\x06<,\x03" + + "\x07\x0b\x1a\x03\x09.\x14\x03\x09\x0d\x1e\x03\x07\x0e#\x03\x0b\x1d'\x03" + + "\x0a\x0a8\x03\x09%2\x03\x08+&\x03\x080\x12\x03\x0a)4\x03\x08\x06\x1f\x03" + + "\x0b\x1b\x1a\x03\x0a\x1b\x0f\x03\x0b\x1d*\x03\x09\x16$\x03\x090\x11\x03" + + "\x08\x11\x08\x03\x0a*(\x03\x0a\x042\x03\x089,\x03\x074'\x03\x07\x0f\x05" + + "\x03\x09\x0b\x0a\x03\x07\x1b\x01\x03\x09\x17:\x03\x09.\x0d\x03\x07.\x11" + + "\x03\x09+\x15\x03\x080\x13\x03\x0b\x1f\x19\x03\x0a \x11\x03\x0a\x220\x03" + + "\x09\x07;\x03\x08\x16\x1c\x03\x07,\x13\x03\x07\x0e/\x03\x06\x221\x03\x0a" + + ".\x0a\x03\x0a7\x02\x03\x0a\x032\x03\x0a\x1d.\x03\x091\x06\x03\x09\x19:" + + "\x03\x08\x02/\x03\x060+\x03\x06\x0f-\x03\x06\x1c\x1f\x03\x06\x1d\x07\x03" + + "\x0a,\x11\x03\x09=\x0d\x03\x09\x0b;\x03\x07\x1b/\x03\x0a\x1f:\x03\x09 " + + "\x1f\x03\x09.\x10\x03\x094\x0b\x03\x09\x1a1\x03\x08#\x1a\x03\x084\x1d" + + "\x03\x08\x01\x1f\x03\x08\x11\x22\x03\x07'8\x03\x07\x1a>\x03\x0757\x03" + + "\x06&9\x03\x06+\x11\x03\x0a.\x0b\x03\x0a,>\x03\x0a4#\x03\x08%\x17\x03" + + "\x07\x05\x22\x03\x07\x0c\x0b\x03\x0a\x1d+\x03\x0a\x19\x16\x03\x09+\x1f" + + "\x03\x09\x08\x0b\x03\x08\x16\x18\x03\x08+\x12\x03\x0b\x1d\x0c\x03\x0a=" + + "\x10\x03\x0a\x09\x0d\x03\x0a\x10\x11\x03\x09&0\x03\x08(\x1f\x03\x087\x07" + + "\x03\x08\x185\x03\x07'6\x03\x06.\x05\x03\x06=\x04\x03\x06;;\x03\x06\x06," + + "\x03\x0b\x18>\x03\x08\x00\x18\x03\x06 \x03\x03\x06<\x00\x03\x09%\x18\x03" + + "\x0b\x1c<\x03\x0a%!\x03\x0a\x09\x12\x03\x0a\x16\x02\x03\x090'\x03\x09" + + "\x0e=\x03\x08 \x0e\x03\x08>\x03\x03\x074>\x03\x06&?\x03\x06\x19\x09\x03" + + "\x06?(\x03\x0a-\x0e\x03\x09:3\x03\x098:\x03\x09\x12\x0b\x03\x09\x1d\x17" + + "\x03\x087\x05\x03\x082\x14\x03\x08\x06%\x03\x08\x13\x1f\x03\x06\x06\x0e" + + "\x03\x0a\x22<\x03\x09/<\x03\x06>+\x03\x0a'?\x03\x0a\x13\x0c\x03\x09\x10<" + + "\x03\x07\x1b=\x03\x0a\x19\x13\x03\x09\x22\x1d\x03\x09\x07\x0d\x03\x08)" + + "\x1c\x03\x06=\x1a\x03\x0a/4\x03\x0a7\x11\x03\x0a\x16:\x03\x09?3\x03\x09:" + + "/\x03\x09\x05\x0a\x03\x09\x14\x06\x03\x087\x22\x03\x080\x07\x03\x08\x1a" + + "\x1f\x03\x07\x04(\x03\x07\x04\x09\x03\x06 %\x03\x06<\x08\x03\x0a+\x14" + + "\x03\x09\x1d\x16\x03\x0a70\x03\x08 >\x03\x0857\x03\x070\x0a\x03\x06=\x12" + + "\x03\x06\x16%\x03\x06\x1d,\x03\x099#\x03\x09\x10>\x03\x07 \x1e\x03\x08" + + "\x0c<\x03\x08\x0b\x18\x03\x08\x15+\x03\x08,:\x03\x08%\x22\x03\x07\x0a$" + + "\x03\x0b\x1c=\x03\x07+\x08\x03\x0a/\x05\x03\x0a \x07\x03\x0a\x12'\x03" + + "\x09#\x11\x03\x08\x1b\x15\x03\x0a\x06\x01\x03\x09\x1c\x1b\x03\x0922\x03" + + "\x07\x14<\x03\x07\x09\x04\x03\x061\x04\x03\x07\x0e\x01\x03\x0a\x13\x18" + + "\x03\x0a-\x0c\x03\x0a?\x0d\x03\x0a\x09\x0a\x03\x091&\x03\x0a/\x0b\x03" + + "\x08$<\x03\x083\x1d\x03\x08\x0c$\x03\x08\x0d\x07\x03\x08\x0d?\x03\x08" + + "\x0e\x14\x03\x065\x0a\x03\x08\x1a#\x03\x08\x16#\x03\x0702\x03\x07\x03" + + "\x1a\x03\x06(\x1d\x03\x06+\x1b\x03\x06\x0b\x05\x03\x06\x0b\x17\x03\x06" + + "\x0c\x04\x03\x06\x1e\x19\x03\x06+0\x03\x062\x18\x03\x0b\x16\x1e\x03\x0a+" + + "\x16\x03\x0a-?\x03\x0a#:\x03\x0a#\x10\x03\x0a%$\x03\x0a>+\x03\x0a01\x03" + + "\x0a1\x10\x03\x0a\x099\x03\x0a\x0a\x12\x03\x0a\x19\x1f\x03\x0a\x19\x12" + + "\x03\x09*)\x03\x09-\x16\x03\x09.1\x03\x09.2\x03\x09<\x0e\x03\x09> \x03" + + "\x093\x12\x03\x09\x0b\x01\x03\x09\x1c2\x03\x09\x11\x1c\x03\x09\x15%\x03" + + "\x08,&\x03\x08!\x22\x03\x089(\x03\x08\x0b\x1a\x03\x08\x0d2\x03\x08\x0c" + + "\x04\x03\x08\x0c\x06\x03\x08\x0c\x1f\x03\x08\x0c\x0c\x03\x08\x0f\x1f\x03" + + "\x08\x0f\x1d\x03\x08\x00\x14\x03\x08\x03\x14\x03\x08\x06\x16\x03\x08\x1e" + + "#\x03\x08\x11\x11\x03\x08\x10\x18\x03\x08\x14(\x03\x07)\x1e\x03\x07.1" + + "\x03\x07 $\x03\x07 '\x03\x078\x08\x03\x07\x0d0\x03\x07\x0f7\x03\x07\x05#" + + "\x03\x07\x05\x1a\x03\x07\x1a7\x03\x07\x1d-\x03\x07\x17\x10\x03\x06)\x1f" + + "\x03\x062\x0b\x03\x066\x16\x03\x06\x09\x11\x03\x09(\x1e\x03\x07!5\x03" + + "\x0b\x11\x16\x03\x0a/\x04\x03\x0a,\x1a\x03\x0b\x173\x03\x0a,1\x03\x0a/5" + + "\x03\x0a\x221\x03\x0a\x22\x0d\x03\x0a?%\x03\x0a<,\x03\x0a?#\x03\x0a>\x19" + + "\x03\x0a\x08&\x03\x0a\x0b\x0e\x03\x0a\x0c:\x03\x0a\x0c+\x03\x0a\x03\x22" + + "\x03\x0a\x06)\x03\x0a\x11\x10\x03\x0a\x11\x1a\x03\x0a\x17-\x03\x0a\x14(" + + "\x03\x09)\x1e\x03\x09/\x09\x03\x09.\x00\x03\x09,\x07\x03\x09/*\x03\x09-9" + + "\x03\x09\x228\x03\x09%\x09\x03\x09:\x12\x03\x09;\x1d\x03\x09?\x06\x03" + + "\x093%\x03\x096\x05\x03\x096\x08\x03\x097\x02\x03\x09\x07,\x03\x09\x04," + + "\x03\x09\x1f\x16\x03\x09\x11\x03\x03\x09\x11\x12\x03\x09\x168\x03\x08*" + + "\x05\x03\x08/2\x03\x084:\x03\x08\x22+\x03\x08 0\x03\x08&\x0a\x03\x08;" + + "\x10\x03\x08>$\x03\x08>\x18\x03\x0829\x03\x082:\x03\x081,\x03\x081<\x03" + + "\x081\x1c\x03\x087#\x03\x087*\x03\x08\x09'\x03\x08\x00\x1d\x03\x08\x05-" + + "\x03\x08\x1f4\x03\x08\x1d\x04\x03\x08\x16\x0f\x03\x07*7\x03\x07'!\x03" + + "\x07%\x1b\x03\x077\x0c\x03\x07\x0c1\x03\x07\x0c.\x03\x07\x00\x06\x03\x07" + + "\x01\x02\x03\x07\x010\x03\x07\x06=\x03\x07\x01\x03\x03\x07\x01\x13\x03" + + "\x07\x06\x06\x03\x07\x05\x0a\x03\x07\x1f\x09\x03\x07\x17:\x03\x06*1\x03" + + "\x06-\x1d\x03\x06\x223\x03\x062:\x03\x060$\x03\x066\x1e\x03\x064\x12\x03" + + "\x0645\x03\x06\x0b\x00\x03\x06\x0b7\x03\x06\x07\x1f\x03\x06\x15\x12\x03" + + "\x0c\x05\x0f\x03\x0b+\x0b\x03\x0b+-\x03\x06\x16\x1b\x03\x06\x15\x17\x03" + + "\x89\xca\xea\x03\x89\xca\xe8\x03\x0c8\x10\x03\x0c8\x01\x03\x0c8\x0f\x03" + + "\x0d8%\x03\x0d8!\x03\x0c8-\x03\x0c8/\x03\x0c8+\x03\x0c87\x03\x0c85\x03" + + "\x0c9\x09\x03\x0c9\x0d\x03\x0c9\x0f\x03\x0c9\x0b\x03\xcfu\x0c\x03\xcfu" + + "\x0f\x03\xcfu\x0e\x03\xcfu\x09\x03\x0c9\x10\x03\x0d9\x0c\x03\xcf`;\x03" + + "\xcf`>\x03\xcf`9\x03\xcf`8\x03\xcf`7\x03\xcf`*\x03\xcf`-\x03\xcf`,\x03" + + "\x0d\x1b\x1a\x03\x0d\x1b&\x03\x0c=.\x03\x0c=%\x03\x0c>\x1e\x03\x0c>\x14" + + "\x03\x0c?\x06\x03\x0c?\x0b\x03\x0c?\x0c\x03\x0c?\x0d\x03\x0c?\x02\x03" + + "\x0c>\x0f\x03\x0c>\x08\x03\x0c>\x09\x03\x0c>,\x03\x0c>\x0c\x03\x0c?\x13" + + "\x03\x0c?\x16\x03\x0c?\x15\x03\x0c?\x1c\x03\x0c?\x1f\x03\x0c?\x1d\x03" + + "\x0c?\x1a\x03\x0c?\x17\x03\x0c?\x08\x03\x0c?\x09\x03\x0c?\x0e\x03\x0c?" + + "\x04\x03\x0c?\x05\x03\x0c" + + "\x03\x0c=2\x03\x0c=6\x03\x0c<\x07\x03\x0c<\x05\x03\x0e:!\x03\x0e:#\x03" + + "\x0e8\x09\x03\x0e:&\x03\x0e8\x0b\x03\x0e:$\x03\x0e:,\x03\x0e8\x1a\x03" + + "\x0e8\x1e\x03\x0e:*\x03\x0e:7\x03\x0e:5\x03\x0e:;\x03\x0e:\x15\x03\x0e:<" + + "\x03\x0e:4\x03\x0e:'\x03\x0e:-\x03\x0e:%\x03\x0e:?\x03\x0e:=\x03\x0e:)" + + "\x03\x0e:/\x03\xcfs'\x03\x0d=\x0f\x03\x0d+*\x03\x0d99\x03\x0d9;\x03\x0d9" + + "?\x03\x0d)\x0d\x03\x0d(%\x02\x01\x18\x02\x01(\x02\x01\x1e\x03\x0f$!\x03" + + "\x0f87\x03\x0f4\x0e\x03\x0f5\x1d\x03\x06'\x03\x03\x0f\x08\x18\x03\x0f" + + "\x0d\x1b\x03\x0e2=\x03\x0e;\x08\x03\x0e:\x0b\x03\x0e\x06$\x03\x0e\x0d)" + + "\x03\x0e\x16\x1f\x03\x0e\x16\x1b\x03\x0d$\x0a\x03\x05,\x1d\x03\x0d. \x03" + + "\x0d.#\x03\x0c(/\x03\x09%\x02\x03\x0d90\x03\x0d\x0e4\x03\x0d\x0d\x0f\x03" + + "\x0c#\x00\x03\x0c,\x1e\x03\x0c2\x0e\x03\x0c\x01\x17\x03\x0c\x09:\x03\x0e" + + "\x173\x03\x0c\x08\x03\x03\x0c\x11\x07\x03\x0c\x10\x18\x03\x0c\x1f\x1c" + + "\x03\x0c\x19\x0e\x03\x0c\x1a\x1f\x03\x0f0>\x03\x0b->\x03\x0b<+\x03\x0b8" + + "\x13\x03\x0b\x043\x03\x0b\x14\x03\x03\x0b\x16%\x03\x0d\x22&\x03\x0b\x1a" + + "\x1a\x03\x0b\x1a\x04\x03\x0a%9\x03\x0a&2\x03\x0a&0\x03\x0a!\x1a\x03\x0a!" + + "7\x03\x0a5\x10\x03\x0a=4\x03\x0a?\x0e\x03\x0a>\x10\x03\x0a\x00 \x03\x0a" + + "\x0f:\x03\x0a\x0f9\x03\x0a\x0b\x0a\x03\x0a\x17%\x03\x0a\x1b-\x03\x09-" + + "\x1a\x03\x09,4\x03\x09.,\x03\x09)\x09\x03\x096!\x03\x091\x1f\x03\x093" + + "\x16\x03\x0c+\x1f\x03\x098 \x03\x098=\x03\x0c(\x1a\x03\x0c(\x16\x03\x09" + + "\x0a+\x03\x09\x16\x12\x03\x09\x13\x0e\x03\x09\x153\x03\x08)!\x03\x09\x1a" + + "\x01\x03\x09\x18\x01\x03\x08%#\x03\x08>\x22\x03\x08\x05%\x03\x08\x02*" + + "\x03\x08\x15;\x03\x08\x1b7\x03\x0f\x07\x1d\x03\x0f\x04\x03\x03\x070\x0c" + + "\x03\x07;\x0b\x03\x07\x08\x17\x03\x07\x12\x06\x03\x06/-\x03\x0671\x03" + + "\x065+\x03\x06>7\x03\x06\x049\x03\x05+\x1e\x03\x05,\x17\x03\x05 \x1d\x03" + + "\x05\x22\x05\x03\x050\x1d" + +// lookup returns the trie value for the first UTF-8 encoding in s and +// the width in bytes of this encoding. The size will be 0 if s does not +// hold enough bytes to complete the encoding. len(s) must be greater than 0. +func (t *idnaTrie) lookup(s []byte) (v uint16, sz int) { + c0 := s[0] + switch { + case c0 < 0x80: // is ASCII + return idnaValues[c0], 1 + case c0 < 0xC2: + return 0, 1 // Illegal UTF-8: not a starter, not ASCII. + case c0 < 0xE0: // 2-byte UTF-8 + if len(s) < 2 { + return 0, 0 + } + i := idnaIndex[c0] + c1 := s[1] + if c1 < 0x80 || 0xC0 <= c1 { + return 0, 1 // Illegal UTF-8: not a continuation byte. + } + return t.lookupValue(uint32(i), c1), 2 + case c0 < 0xF0: // 3-byte UTF-8 + if len(s) < 3 { + return 0, 0 + } + i := idnaIndex[c0] + c1 := s[1] + if c1 < 0x80 || 0xC0 <= c1 { + return 0, 1 // Illegal UTF-8: not a continuation byte. + } + o := uint32(i)<<6 + uint32(c1) + i = idnaIndex[o] + c2 := s[2] + if c2 < 0x80 || 0xC0 <= c2 { + return 0, 2 // Illegal UTF-8: not a continuation byte. + } + return t.lookupValue(uint32(i), c2), 3 + case c0 < 0xF8: // 4-byte UTF-8 + if len(s) < 4 { + return 0, 0 + } + i := idnaIndex[c0] + c1 := s[1] + if c1 < 0x80 || 0xC0 <= c1 { + return 0, 1 // Illegal UTF-8: not a continuation byte. + } + o := uint32(i)<<6 + uint32(c1) + i = idnaIndex[o] + c2 := s[2] + if c2 < 0x80 || 0xC0 <= c2 { + return 0, 2 // Illegal UTF-8: not a continuation byte. + } + o = uint32(i)<<6 + uint32(c2) + i = idnaIndex[o] + c3 := s[3] + if c3 < 0x80 || 0xC0 <= c3 { + return 0, 3 // Illegal UTF-8: not a continuation byte. + } + return t.lookupValue(uint32(i), c3), 4 + } + // Illegal rune + return 0, 1 +} + +// lookupUnsafe returns the trie value for the first UTF-8 encoding in s. +// s must start with a full and valid UTF-8 encoded rune. +func (t *idnaTrie) lookupUnsafe(s []byte) uint16 { + c0 := s[0] + if c0 < 0x80 { // is ASCII + return idnaValues[c0] + } + i := idnaIndex[c0] + if c0 < 0xE0 { // 2-byte UTF-8 + return t.lookupValue(uint32(i), s[1]) + } + i = idnaIndex[uint32(i)<<6+uint32(s[1])] + if c0 < 0xF0 { // 3-byte UTF-8 + return t.lookupValue(uint32(i), s[2]) + } + i = idnaIndex[uint32(i)<<6+uint32(s[2])] + if c0 < 0xF8 { // 4-byte UTF-8 + return t.lookupValue(uint32(i), s[3]) + } + return 0 +} + +// lookupString returns the trie value for the first UTF-8 encoding in s and +// the width in bytes of this encoding. The size will be 0 if s does not +// hold enough bytes to complete the encoding. len(s) must be greater than 0. +func (t *idnaTrie) lookupString(s string) (v uint16, sz int) { + c0 := s[0] + switch { + case c0 < 0x80: // is ASCII + return idnaValues[c0], 1 + case c0 < 0xC2: + return 0, 1 // Illegal UTF-8: not a starter, not ASCII. + case c0 < 0xE0: // 2-byte UTF-8 + if len(s) < 2 { + return 0, 0 + } + i := idnaIndex[c0] + c1 := s[1] + if c1 < 0x80 || 0xC0 <= c1 { + return 0, 1 // Illegal UTF-8: not a continuation byte. + } + return t.lookupValue(uint32(i), c1), 2 + case c0 < 0xF0: // 3-byte UTF-8 + if len(s) < 3 { + return 0, 0 + } + i := idnaIndex[c0] + c1 := s[1] + if c1 < 0x80 || 0xC0 <= c1 { + return 0, 1 // Illegal UTF-8: not a continuation byte. + } + o := uint32(i)<<6 + uint32(c1) + i = idnaIndex[o] + c2 := s[2] + if c2 < 0x80 || 0xC0 <= c2 { + return 0, 2 // Illegal UTF-8: not a continuation byte. + } + return t.lookupValue(uint32(i), c2), 3 + case c0 < 0xF8: // 4-byte UTF-8 + if len(s) < 4 { + return 0, 0 + } + i := idnaIndex[c0] + c1 := s[1] + if c1 < 0x80 || 0xC0 <= c1 { + return 0, 1 // Illegal UTF-8: not a continuation byte. + } + o := uint32(i)<<6 + uint32(c1) + i = idnaIndex[o] + c2 := s[2] + if c2 < 0x80 || 0xC0 <= c2 { + return 0, 2 // Illegal UTF-8: not a continuation byte. + } + o = uint32(i)<<6 + uint32(c2) + i = idnaIndex[o] + c3 := s[3] + if c3 < 0x80 || 0xC0 <= c3 { + return 0, 3 // Illegal UTF-8: not a continuation byte. + } + return t.lookupValue(uint32(i), c3), 4 + } + // Illegal rune + return 0, 1 +} + +// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s. +// s must start with a full and valid UTF-8 encoded rune. +func (t *idnaTrie) lookupStringUnsafe(s string) uint16 { + c0 := s[0] + if c0 < 0x80 { // is ASCII + return idnaValues[c0] + } + i := idnaIndex[c0] + if c0 < 0xE0 { // 2-byte UTF-8 + return t.lookupValue(uint32(i), s[1]) + } + i = idnaIndex[uint32(i)<<6+uint32(s[1])] + if c0 < 0xF0 { // 3-byte UTF-8 + return t.lookupValue(uint32(i), s[2]) + } + i = idnaIndex[uint32(i)<<6+uint32(s[2])] + if c0 < 0xF8 { // 4-byte UTF-8 + return t.lookupValue(uint32(i), s[3]) + } + return 0 +} + +// idnaTrie. Total size: 29708 bytes (29.01 KiB). Checksum: c3ecc76d8fffa6e6. +type idnaTrie struct{} + +func newIdnaTrie(i int) *idnaTrie { + return &idnaTrie{} +} + +// lookupValue determines the type of block n and looks up the value for b. +func (t *idnaTrie) lookupValue(n uint32, b byte) uint16 { + switch { + case n < 125: + return uint16(idnaValues[n<<6+uint32(b)]) + default: + n -= 125 + return uint16(idnaSparse.lookup(n, b)) + } +} + +// idnaValues: 127 blocks, 8128 entries, 16256 bytes +// The third block is the zero block. +var idnaValues = [8128]uint16{ + // Block 0x0, offset 0x0 + 0x00: 0x0080, 0x01: 0x0080, 0x02: 0x0080, 0x03: 0x0080, 0x04: 0x0080, 0x05: 0x0080, + 0x06: 0x0080, 0x07: 0x0080, 0x08: 0x0080, 0x09: 0x0080, 0x0a: 0x0080, 0x0b: 0x0080, + 0x0c: 0x0080, 0x0d: 0x0080, 0x0e: 0x0080, 0x0f: 0x0080, 0x10: 0x0080, 0x11: 0x0080, + 0x12: 0x0080, 0x13: 0x0080, 0x14: 0x0080, 0x15: 0x0080, 0x16: 0x0080, 0x17: 0x0080, + 0x18: 0x0080, 0x19: 0x0080, 0x1a: 0x0080, 0x1b: 0x0080, 0x1c: 0x0080, 0x1d: 0x0080, + 0x1e: 0x0080, 0x1f: 0x0080, 0x20: 0x0080, 0x21: 0x0080, 0x22: 0x0080, 0x23: 0x0080, + 0x24: 0x0080, 0x25: 0x0080, 0x26: 0x0080, 0x27: 0x0080, 0x28: 0x0080, 0x29: 0x0080, + 0x2a: 0x0080, 0x2b: 0x0080, 0x2c: 0x0080, 0x2d: 0x0008, 0x2e: 0x0008, 0x2f: 0x0080, + 0x30: 0x0008, 0x31: 0x0008, 0x32: 0x0008, 0x33: 0x0008, 0x34: 0x0008, 0x35: 0x0008, + 0x36: 0x0008, 0x37: 0x0008, 0x38: 0x0008, 0x39: 0x0008, 0x3a: 0x0080, 0x3b: 0x0080, + 0x3c: 0x0080, 0x3d: 0x0080, 0x3e: 0x0080, 0x3f: 0x0080, + // Block 0x1, offset 0x40 + 0x40: 0x0080, 0x41: 0xe105, 0x42: 0xe105, 0x43: 0xe105, 0x44: 0xe105, 0x45: 0xe105, + 0x46: 0xe105, 0x47: 0xe105, 0x48: 0xe105, 0x49: 0xe105, 0x4a: 0xe105, 0x4b: 0xe105, + 0x4c: 0xe105, 0x4d: 0xe105, 0x4e: 0xe105, 0x4f: 0xe105, 0x50: 0xe105, 0x51: 0xe105, + 0x52: 0xe105, 0x53: 0xe105, 0x54: 0xe105, 0x55: 0xe105, 0x56: 0xe105, 0x57: 0xe105, + 0x58: 0xe105, 0x59: 0xe105, 0x5a: 0xe105, 0x5b: 0x0080, 0x5c: 0x0080, 0x5d: 0x0080, + 0x5e: 0x0080, 0x5f: 0x0080, 0x60: 0x0080, 0x61: 0x0008, 0x62: 0x0008, 0x63: 0x0008, + 0x64: 0x0008, 0x65: 0x0008, 0x66: 0x0008, 0x67: 0x0008, 0x68: 0x0008, 0x69: 0x0008, + 0x6a: 0x0008, 0x6b: 0x0008, 0x6c: 0x0008, 0x6d: 0x0008, 0x6e: 0x0008, 0x6f: 0x0008, + 0x70: 0x0008, 0x71: 0x0008, 0x72: 0x0008, 0x73: 0x0008, 0x74: 0x0008, 0x75: 0x0008, + 0x76: 0x0008, 0x77: 0x0008, 0x78: 0x0008, 0x79: 0x0008, 0x7a: 0x0008, 0x7b: 0x0080, + 0x7c: 0x0080, 0x7d: 0x0080, 0x7e: 0x0080, 0x7f: 0x0080, + // Block 0x2, offset 0x80 + // Block 0x3, offset 0xc0 + 0xc0: 0x0040, 0xc1: 0x0040, 0xc2: 0x0040, 0xc3: 0x0040, 0xc4: 0x0040, 0xc5: 0x0040, + 0xc6: 0x0040, 0xc7: 0x0040, 0xc8: 0x0040, 0xc9: 0x0040, 0xca: 0x0040, 0xcb: 0x0040, + 0xcc: 0x0040, 0xcd: 0x0040, 0xce: 0x0040, 0xcf: 0x0040, 0xd0: 0x0040, 0xd1: 0x0040, + 0xd2: 0x0040, 0xd3: 0x0040, 0xd4: 0x0040, 0xd5: 0x0040, 0xd6: 0x0040, 0xd7: 0x0040, + 0xd8: 0x0040, 0xd9: 0x0040, 0xda: 0x0040, 0xdb: 0x0040, 0xdc: 0x0040, 0xdd: 0x0040, + 0xde: 0x0040, 0xdf: 0x0040, 0xe0: 0x000a, 0xe1: 0x0018, 0xe2: 0x0018, 0xe3: 0x0018, + 0xe4: 0x0018, 0xe5: 0x0018, 0xe6: 0x0018, 0xe7: 0x0018, 0xe8: 0x001a, 0xe9: 0x0018, + 0xea: 0x0039, 0xeb: 0x0018, 0xec: 0x0018, 0xed: 0x03c0, 0xee: 0x0018, 0xef: 0x004a, + 0xf0: 0x0018, 0xf1: 0x0018, 0xf2: 0x0069, 0xf3: 0x0079, 0xf4: 0x008a, 0xf5: 0x0005, + 0xf6: 0x0018, 0xf7: 0x0008, 0xf8: 0x00aa, 0xf9: 0x00c9, 0xfa: 0x00d9, 0xfb: 0x0018, + 0xfc: 0x00e9, 0xfd: 0x0119, 0xfe: 0x0149, 0xff: 0x0018, + // Block 0x4, offset 0x100 + 0x100: 0xe00d, 0x101: 0x0008, 0x102: 0xe00d, 0x103: 0x0008, 0x104: 0xe00d, 0x105: 0x0008, + 0x106: 0xe00d, 0x107: 0x0008, 0x108: 0xe00d, 0x109: 0x0008, 0x10a: 0xe00d, 0x10b: 0x0008, + 0x10c: 0xe00d, 0x10d: 0x0008, 0x10e: 0xe00d, 0x10f: 0x0008, 0x110: 0xe00d, 0x111: 0x0008, + 0x112: 0xe00d, 0x113: 0x0008, 0x114: 0xe00d, 0x115: 0x0008, 0x116: 0xe00d, 0x117: 0x0008, + 0x118: 0xe00d, 0x119: 0x0008, 0x11a: 0xe00d, 0x11b: 0x0008, 0x11c: 0xe00d, 0x11d: 0x0008, + 0x11e: 0xe00d, 0x11f: 0x0008, 0x120: 0xe00d, 0x121: 0x0008, 0x122: 0xe00d, 0x123: 0x0008, + 0x124: 0xe00d, 0x125: 0x0008, 0x126: 0xe00d, 0x127: 0x0008, 0x128: 0xe00d, 0x129: 0x0008, + 0x12a: 0xe00d, 0x12b: 0x0008, 0x12c: 0xe00d, 0x12d: 0x0008, 0x12e: 0xe00d, 0x12f: 0x0008, + 0x130: 0x0179, 0x131: 0x0008, 0x132: 0x0035, 0x133: 0x004d, 0x134: 0xe00d, 0x135: 0x0008, + 0x136: 0xe00d, 0x137: 0x0008, 0x138: 0x0008, 0x139: 0xe01d, 0x13a: 0x0008, 0x13b: 0xe03d, + 0x13c: 0x0008, 0x13d: 0xe01d, 0x13e: 0x0008, 0x13f: 0x0199, + // Block 0x5, offset 0x140 + 0x140: 0x0199, 0x141: 0xe01d, 0x142: 0x0008, 0x143: 0xe03d, 0x144: 0x0008, 0x145: 0xe01d, + 0x146: 0x0008, 0x147: 0xe07d, 0x148: 0x0008, 0x149: 0x01b9, 0x14a: 0xe00d, 0x14b: 0x0008, + 0x14c: 0xe00d, 0x14d: 0x0008, 0x14e: 0xe00d, 0x14f: 0x0008, 0x150: 0xe00d, 0x151: 0x0008, + 0x152: 0xe00d, 0x153: 0x0008, 0x154: 0xe00d, 0x155: 0x0008, 0x156: 0xe00d, 0x157: 0x0008, + 0x158: 0xe00d, 0x159: 0x0008, 0x15a: 0xe00d, 0x15b: 0x0008, 0x15c: 0xe00d, 0x15d: 0x0008, + 0x15e: 0xe00d, 0x15f: 0x0008, 0x160: 0xe00d, 0x161: 0x0008, 0x162: 0xe00d, 0x163: 0x0008, + 0x164: 0xe00d, 0x165: 0x0008, 0x166: 0xe00d, 0x167: 0x0008, 0x168: 0xe00d, 0x169: 0x0008, + 0x16a: 0xe00d, 0x16b: 0x0008, 0x16c: 0xe00d, 0x16d: 0x0008, 0x16e: 0xe00d, 0x16f: 0x0008, + 0x170: 0xe00d, 0x171: 0x0008, 0x172: 0xe00d, 0x173: 0x0008, 0x174: 0xe00d, 0x175: 0x0008, + 0x176: 0xe00d, 0x177: 0x0008, 0x178: 0x0065, 0x179: 0xe01d, 0x17a: 0x0008, 0x17b: 0xe03d, + 0x17c: 0x0008, 0x17d: 0xe01d, 0x17e: 0x0008, 0x17f: 0x01d9, + // Block 0x6, offset 0x180 + 0x180: 0x0008, 0x181: 0x007d, 0x182: 0xe00d, 0x183: 0x0008, 0x184: 0xe00d, 0x185: 0x0008, + 0x186: 0x007d, 0x187: 0xe07d, 0x188: 0x0008, 0x189: 0x0095, 0x18a: 0x00ad, 0x18b: 0xe03d, + 0x18c: 0x0008, 0x18d: 0x0008, 0x18e: 0x00c5, 0x18f: 0x00dd, 0x190: 0x00f5, 0x191: 0xe01d, + 0x192: 0x0008, 0x193: 0x010d, 0x194: 0x0125, 0x195: 0x0008, 0x196: 0x013d, 0x197: 0x013d, + 0x198: 0xe00d, 0x199: 0x0008, 0x19a: 0x0008, 0x19b: 0x0008, 0x19c: 0x010d, 0x19d: 0x0155, + 0x19e: 0x0008, 0x19f: 0x016d, 0x1a0: 0xe00d, 0x1a1: 0x0008, 0x1a2: 0xe00d, 0x1a3: 0x0008, + 0x1a4: 0xe00d, 0x1a5: 0x0008, 0x1a6: 0x0185, 0x1a7: 0xe07d, 0x1a8: 0x0008, 0x1a9: 0x019d, + 0x1aa: 0x0008, 0x1ab: 0x0008, 0x1ac: 0xe00d, 0x1ad: 0x0008, 0x1ae: 0x0185, 0x1af: 0xe0fd, + 0x1b0: 0x0008, 0x1b1: 0x01b5, 0x1b2: 0x01cd, 0x1b3: 0xe03d, 0x1b4: 0x0008, 0x1b5: 0xe01d, + 0x1b6: 0x0008, 0x1b7: 0x01e5, 0x1b8: 0xe00d, 0x1b9: 0x0008, 0x1ba: 0x0008, 0x1bb: 0x0008, + 0x1bc: 0xe00d, 0x1bd: 0x0008, 0x1be: 0x0008, 0x1bf: 0x0008, + // Block 0x7, offset 0x1c0 + 0x1c0: 0x0008, 0x1c1: 0x0008, 0x1c2: 0x0008, 0x1c3: 0x0008, 0x1c4: 0x01e9, 0x1c5: 0x01e9, + 0x1c6: 0x01e9, 0x1c7: 0x01fd, 0x1c8: 0x0215, 0x1c9: 0x022d, 0x1ca: 0x0245, 0x1cb: 0x025d, + 0x1cc: 0x0275, 0x1cd: 0xe01d, 0x1ce: 0x0008, 0x1cf: 0xe0fd, 0x1d0: 0x0008, 0x1d1: 0xe01d, + 0x1d2: 0x0008, 0x1d3: 0xe03d, 0x1d4: 0x0008, 0x1d5: 0xe01d, 0x1d6: 0x0008, 0x1d7: 0xe07d, + 0x1d8: 0x0008, 0x1d9: 0xe01d, 0x1da: 0x0008, 0x1db: 0xe03d, 0x1dc: 0x0008, 0x1dd: 0x0008, + 0x1de: 0xe00d, 0x1df: 0x0008, 0x1e0: 0xe00d, 0x1e1: 0x0008, 0x1e2: 0xe00d, 0x1e3: 0x0008, + 0x1e4: 0xe00d, 0x1e5: 0x0008, 0x1e6: 0xe00d, 0x1e7: 0x0008, 0x1e8: 0xe00d, 0x1e9: 0x0008, + 0x1ea: 0xe00d, 0x1eb: 0x0008, 0x1ec: 0xe00d, 0x1ed: 0x0008, 0x1ee: 0xe00d, 0x1ef: 0x0008, + 0x1f0: 0x0008, 0x1f1: 0x028d, 0x1f2: 0x02a5, 0x1f3: 0x02bd, 0x1f4: 0xe00d, 0x1f5: 0x0008, + 0x1f6: 0x02d5, 0x1f7: 0x02ed, 0x1f8: 0xe00d, 0x1f9: 0x0008, 0x1fa: 0xe00d, 0x1fb: 0x0008, + 0x1fc: 0xe00d, 0x1fd: 0x0008, 0x1fe: 0xe00d, 0x1ff: 0x0008, + // Block 0x8, offset 0x200 + 0x200: 0xe00d, 0x201: 0x0008, 0x202: 0xe00d, 0x203: 0x0008, 0x204: 0xe00d, 0x205: 0x0008, + 0x206: 0xe00d, 0x207: 0x0008, 0x208: 0xe00d, 0x209: 0x0008, 0x20a: 0xe00d, 0x20b: 0x0008, + 0x20c: 0xe00d, 0x20d: 0x0008, 0x20e: 0xe00d, 0x20f: 0x0008, 0x210: 0xe00d, 0x211: 0x0008, + 0x212: 0xe00d, 0x213: 0x0008, 0x214: 0xe00d, 0x215: 0x0008, 0x216: 0xe00d, 0x217: 0x0008, + 0x218: 0xe00d, 0x219: 0x0008, 0x21a: 0xe00d, 0x21b: 0x0008, 0x21c: 0xe00d, 0x21d: 0x0008, + 0x21e: 0xe00d, 0x21f: 0x0008, 0x220: 0x0305, 0x221: 0x0008, 0x222: 0xe00d, 0x223: 0x0008, + 0x224: 0xe00d, 0x225: 0x0008, 0x226: 0xe00d, 0x227: 0x0008, 0x228: 0xe00d, 0x229: 0x0008, + 0x22a: 0xe00d, 0x22b: 0x0008, 0x22c: 0xe00d, 0x22d: 0x0008, 0x22e: 0xe00d, 0x22f: 0x0008, + 0x230: 0xe00d, 0x231: 0x0008, 0x232: 0xe00d, 0x233: 0x0008, 0x234: 0x0008, 0x235: 0x0008, + 0x236: 0x0008, 0x237: 0x0008, 0x238: 0x0008, 0x239: 0x0008, 0x23a: 0x0209, 0x23b: 0xe03d, + 0x23c: 0x0008, 0x23d: 0x031d, 0x23e: 0x0229, 0x23f: 0x0008, + // Block 0x9, offset 0x240 + 0x240: 0x0008, 0x241: 0x0008, 0x242: 0x0018, 0x243: 0x0018, 0x244: 0x0018, 0x245: 0x0018, + 0x246: 0x0008, 0x247: 0x0008, 0x248: 0x0008, 0x249: 0x0008, 0x24a: 0x0008, 0x24b: 0x0008, + 0x24c: 0x0008, 0x24d: 0x0008, 0x24e: 0x0008, 0x24f: 0x0008, 0x250: 0x0008, 0x251: 0x0008, + 0x252: 0x0018, 0x253: 0x0018, 0x254: 0x0018, 0x255: 0x0018, 0x256: 0x0018, 0x257: 0x0018, + 0x258: 0x029a, 0x259: 0x02ba, 0x25a: 0x02da, 0x25b: 0x02fa, 0x25c: 0x031a, 0x25d: 0x033a, + 0x25e: 0x0018, 0x25f: 0x0018, 0x260: 0x03ad, 0x261: 0x0359, 0x262: 0x01d9, 0x263: 0x0369, + 0x264: 0x03c5, 0x265: 0x0018, 0x266: 0x0018, 0x267: 0x0018, 0x268: 0x0018, 0x269: 0x0018, + 0x26a: 0x0018, 0x26b: 0x0018, 0x26c: 0x0008, 0x26d: 0x0018, 0x26e: 0x0008, 0x26f: 0x0018, + 0x270: 0x0018, 0x271: 0x0018, 0x272: 0x0018, 0x273: 0x0018, 0x274: 0x0018, 0x275: 0x0018, + 0x276: 0x0018, 0x277: 0x0018, 0x278: 0x0018, 0x279: 0x0018, 0x27a: 0x0018, 0x27b: 0x0018, + 0x27c: 0x0018, 0x27d: 0x0018, 0x27e: 0x0018, 0x27f: 0x0018, + // Block 0xa, offset 0x280 + 0x280: 0x03dd, 0x281: 0x03dd, 0x282: 0x3308, 0x283: 0x03f5, 0x284: 0x0379, 0x285: 0x040d, + 0x286: 0x3308, 0x287: 0x3308, 0x288: 0x3308, 0x289: 0x3308, 0x28a: 0x3308, 0x28b: 0x3308, + 0x28c: 0x3308, 0x28d: 0x3308, 0x28e: 0x3308, 0x28f: 0x33c0, 0x290: 0x3308, 0x291: 0x3308, + 0x292: 0x3308, 0x293: 0x3308, 0x294: 0x3308, 0x295: 0x3308, 0x296: 0x3308, 0x297: 0x3308, + 0x298: 0x3308, 0x299: 0x3308, 0x29a: 0x3308, 0x29b: 0x3308, 0x29c: 0x3308, 0x29d: 0x3308, + 0x29e: 0x3308, 0x29f: 0x3308, 0x2a0: 0x3308, 0x2a1: 0x3308, 0x2a2: 0x3308, 0x2a3: 0x3308, + 0x2a4: 0x3308, 0x2a5: 0x3308, 0x2a6: 0x3308, 0x2a7: 0x3308, 0x2a8: 0x3308, 0x2a9: 0x3308, + 0x2aa: 0x3308, 0x2ab: 0x3308, 0x2ac: 0x3308, 0x2ad: 0x3308, 0x2ae: 0x3308, 0x2af: 0x3308, + 0x2b0: 0xe00d, 0x2b1: 0x0008, 0x2b2: 0xe00d, 0x2b3: 0x0008, 0x2b4: 0x0425, 0x2b5: 0x0008, + 0x2b6: 0xe00d, 0x2b7: 0x0008, 0x2b8: 0x0040, 0x2b9: 0x0040, 0x2ba: 0x03a2, 0x2bb: 0x0008, + 0x2bc: 0x0008, 0x2bd: 0x0008, 0x2be: 0x03c2, 0x2bf: 0x043d, + // Block 0xb, offset 0x2c0 + 0x2c0: 0x0040, 0x2c1: 0x0040, 0x2c2: 0x0040, 0x2c3: 0x0040, 0x2c4: 0x008a, 0x2c5: 0x03d2, + 0x2c6: 0xe155, 0x2c7: 0x0455, 0x2c8: 0xe12d, 0x2c9: 0xe13d, 0x2ca: 0xe12d, 0x2cb: 0x0040, + 0x2cc: 0x03dd, 0x2cd: 0x0040, 0x2ce: 0x046d, 0x2cf: 0x0485, 0x2d0: 0x0008, 0x2d1: 0xe105, + 0x2d2: 0xe105, 0x2d3: 0xe105, 0x2d4: 0xe105, 0x2d5: 0xe105, 0x2d6: 0xe105, 0x2d7: 0xe105, + 0x2d8: 0xe105, 0x2d9: 0xe105, 0x2da: 0xe105, 0x2db: 0xe105, 0x2dc: 0xe105, 0x2dd: 0xe105, + 0x2de: 0xe105, 0x2df: 0xe105, 0x2e0: 0x049d, 0x2e1: 0x049d, 0x2e2: 0x0040, 0x2e3: 0x049d, + 0x2e4: 0x049d, 0x2e5: 0x049d, 0x2e6: 0x049d, 0x2e7: 0x049d, 0x2e8: 0x049d, 0x2e9: 0x049d, + 0x2ea: 0x049d, 0x2eb: 0x049d, 0x2ec: 0x0008, 0x2ed: 0x0008, 0x2ee: 0x0008, 0x2ef: 0x0008, + 0x2f0: 0x0008, 0x2f1: 0x0008, 0x2f2: 0x0008, 0x2f3: 0x0008, 0x2f4: 0x0008, 0x2f5: 0x0008, + 0x2f6: 0x0008, 0x2f7: 0x0008, 0x2f8: 0x0008, 0x2f9: 0x0008, 0x2fa: 0x0008, 0x2fb: 0x0008, + 0x2fc: 0x0008, 0x2fd: 0x0008, 0x2fe: 0x0008, 0x2ff: 0x0008, + // Block 0xc, offset 0x300 + 0x300: 0x0008, 0x301: 0x0008, 0x302: 0xe00f, 0x303: 0x0008, 0x304: 0x0008, 0x305: 0x0008, + 0x306: 0x0008, 0x307: 0x0008, 0x308: 0x0008, 0x309: 0x0008, 0x30a: 0x0008, 0x30b: 0x0008, + 0x30c: 0x0008, 0x30d: 0x0008, 0x30e: 0x0008, 0x30f: 0xe0c5, 0x310: 0x04b5, 0x311: 0x04cd, + 0x312: 0xe0bd, 0x313: 0xe0f5, 0x314: 0xe0fd, 0x315: 0xe09d, 0x316: 0xe0b5, 0x317: 0x0008, + 0x318: 0xe00d, 0x319: 0x0008, 0x31a: 0xe00d, 0x31b: 0x0008, 0x31c: 0xe00d, 0x31d: 0x0008, + 0x31e: 0xe00d, 0x31f: 0x0008, 0x320: 0xe00d, 0x321: 0x0008, 0x322: 0xe00d, 0x323: 0x0008, + 0x324: 0xe00d, 0x325: 0x0008, 0x326: 0xe00d, 0x327: 0x0008, 0x328: 0xe00d, 0x329: 0x0008, + 0x32a: 0xe00d, 0x32b: 0x0008, 0x32c: 0xe00d, 0x32d: 0x0008, 0x32e: 0xe00d, 0x32f: 0x0008, + 0x330: 0x04e5, 0x331: 0xe185, 0x332: 0xe18d, 0x333: 0x0008, 0x334: 0x04fd, 0x335: 0x03dd, + 0x336: 0x0018, 0x337: 0xe07d, 0x338: 0x0008, 0x339: 0xe1d5, 0x33a: 0xe00d, 0x33b: 0x0008, + 0x33c: 0x0008, 0x33d: 0x0515, 0x33e: 0x052d, 0x33f: 0x052d, + // Block 0xd, offset 0x340 + 0x340: 0x0008, 0x341: 0x0008, 0x342: 0x0008, 0x343: 0x0008, 0x344: 0x0008, 0x345: 0x0008, + 0x346: 0x0008, 0x347: 0x0008, 0x348: 0x0008, 0x349: 0x0008, 0x34a: 0x0008, 0x34b: 0x0008, + 0x34c: 0x0008, 0x34d: 0x0008, 0x34e: 0x0008, 0x34f: 0x0008, 0x350: 0x0008, 0x351: 0x0008, + 0x352: 0x0008, 0x353: 0x0008, 0x354: 0x0008, 0x355: 0x0008, 0x356: 0x0008, 0x357: 0x0008, + 0x358: 0x0008, 0x359: 0x0008, 0x35a: 0x0008, 0x35b: 0x0008, 0x35c: 0x0008, 0x35d: 0x0008, + 0x35e: 0x0008, 0x35f: 0x0008, 0x360: 0xe00d, 0x361: 0x0008, 0x362: 0xe00d, 0x363: 0x0008, + 0x364: 0xe00d, 0x365: 0x0008, 0x366: 0xe00d, 0x367: 0x0008, 0x368: 0xe00d, 0x369: 0x0008, + 0x36a: 0xe00d, 0x36b: 0x0008, 0x36c: 0xe00d, 0x36d: 0x0008, 0x36e: 0xe00d, 0x36f: 0x0008, + 0x370: 0xe00d, 0x371: 0x0008, 0x372: 0xe00d, 0x373: 0x0008, 0x374: 0xe00d, 0x375: 0x0008, + 0x376: 0xe00d, 0x377: 0x0008, 0x378: 0xe00d, 0x379: 0x0008, 0x37a: 0xe00d, 0x37b: 0x0008, + 0x37c: 0xe00d, 0x37d: 0x0008, 0x37e: 0xe00d, 0x37f: 0x0008, + // Block 0xe, offset 0x380 + 0x380: 0xe00d, 0x381: 0x0008, 0x382: 0x0018, 0x383: 0x3308, 0x384: 0x3308, 0x385: 0x3308, + 0x386: 0x3308, 0x387: 0x3308, 0x388: 0x3318, 0x389: 0x3318, 0x38a: 0xe00d, 0x38b: 0x0008, + 0x38c: 0xe00d, 0x38d: 0x0008, 0x38e: 0xe00d, 0x38f: 0x0008, 0x390: 0xe00d, 0x391: 0x0008, + 0x392: 0xe00d, 0x393: 0x0008, 0x394: 0xe00d, 0x395: 0x0008, 0x396: 0xe00d, 0x397: 0x0008, + 0x398: 0xe00d, 0x399: 0x0008, 0x39a: 0xe00d, 0x39b: 0x0008, 0x39c: 0xe00d, 0x39d: 0x0008, + 0x39e: 0xe00d, 0x39f: 0x0008, 0x3a0: 0xe00d, 0x3a1: 0x0008, 0x3a2: 0xe00d, 0x3a3: 0x0008, + 0x3a4: 0xe00d, 0x3a5: 0x0008, 0x3a6: 0xe00d, 0x3a7: 0x0008, 0x3a8: 0xe00d, 0x3a9: 0x0008, + 0x3aa: 0xe00d, 0x3ab: 0x0008, 0x3ac: 0xe00d, 0x3ad: 0x0008, 0x3ae: 0xe00d, 0x3af: 0x0008, + 0x3b0: 0xe00d, 0x3b1: 0x0008, 0x3b2: 0xe00d, 0x3b3: 0x0008, 0x3b4: 0xe00d, 0x3b5: 0x0008, + 0x3b6: 0xe00d, 0x3b7: 0x0008, 0x3b8: 0xe00d, 0x3b9: 0x0008, 0x3ba: 0xe00d, 0x3bb: 0x0008, + 0x3bc: 0xe00d, 0x3bd: 0x0008, 0x3be: 0xe00d, 0x3bf: 0x0008, + // Block 0xf, offset 0x3c0 + 0x3c0: 0x0040, 0x3c1: 0xe01d, 0x3c2: 0x0008, 0x3c3: 0xe03d, 0x3c4: 0x0008, 0x3c5: 0xe01d, + 0x3c6: 0x0008, 0x3c7: 0xe07d, 0x3c8: 0x0008, 0x3c9: 0xe01d, 0x3ca: 0x0008, 0x3cb: 0xe03d, + 0x3cc: 0x0008, 0x3cd: 0xe01d, 0x3ce: 0x0008, 0x3cf: 0x0008, 0x3d0: 0xe00d, 0x3d1: 0x0008, + 0x3d2: 0xe00d, 0x3d3: 0x0008, 0x3d4: 0xe00d, 0x3d5: 0x0008, 0x3d6: 0xe00d, 0x3d7: 0x0008, + 0x3d8: 0xe00d, 0x3d9: 0x0008, 0x3da: 0xe00d, 0x3db: 0x0008, 0x3dc: 0xe00d, 0x3dd: 0x0008, + 0x3de: 0xe00d, 0x3df: 0x0008, 0x3e0: 0xe00d, 0x3e1: 0x0008, 0x3e2: 0xe00d, 0x3e3: 0x0008, + 0x3e4: 0xe00d, 0x3e5: 0x0008, 0x3e6: 0xe00d, 0x3e7: 0x0008, 0x3e8: 0xe00d, 0x3e9: 0x0008, + 0x3ea: 0xe00d, 0x3eb: 0x0008, 0x3ec: 0xe00d, 0x3ed: 0x0008, 0x3ee: 0xe00d, 0x3ef: 0x0008, + 0x3f0: 0xe00d, 0x3f1: 0x0008, 0x3f2: 0xe00d, 0x3f3: 0x0008, 0x3f4: 0xe00d, 0x3f5: 0x0008, + 0x3f6: 0xe00d, 0x3f7: 0x0008, 0x3f8: 0xe00d, 0x3f9: 0x0008, 0x3fa: 0xe00d, 0x3fb: 0x0008, + 0x3fc: 0xe00d, 0x3fd: 0x0008, 0x3fe: 0xe00d, 0x3ff: 0x0008, + // Block 0x10, offset 0x400 + 0x400: 0xe00d, 0x401: 0x0008, 0x402: 0xe00d, 0x403: 0x0008, 0x404: 0xe00d, 0x405: 0x0008, + 0x406: 0xe00d, 0x407: 0x0008, 0x408: 0xe00d, 0x409: 0x0008, 0x40a: 0xe00d, 0x40b: 0x0008, + 0x40c: 0xe00d, 0x40d: 0x0008, 0x40e: 0xe00d, 0x40f: 0x0008, 0x410: 0xe00d, 0x411: 0x0008, + 0x412: 0xe00d, 0x413: 0x0008, 0x414: 0xe00d, 0x415: 0x0008, 0x416: 0xe00d, 0x417: 0x0008, + 0x418: 0xe00d, 0x419: 0x0008, 0x41a: 0xe00d, 0x41b: 0x0008, 0x41c: 0xe00d, 0x41d: 0x0008, + 0x41e: 0xe00d, 0x41f: 0x0008, 0x420: 0xe00d, 0x421: 0x0008, 0x422: 0xe00d, 0x423: 0x0008, + 0x424: 0xe00d, 0x425: 0x0008, 0x426: 0xe00d, 0x427: 0x0008, 0x428: 0xe00d, 0x429: 0x0008, + 0x42a: 0xe00d, 0x42b: 0x0008, 0x42c: 0xe00d, 0x42d: 0x0008, 0x42e: 0xe00d, 0x42f: 0x0008, + 0x430: 0x0040, 0x431: 0x03f5, 0x432: 0x03f5, 0x433: 0x03f5, 0x434: 0x03f5, 0x435: 0x03f5, + 0x436: 0x03f5, 0x437: 0x03f5, 0x438: 0x03f5, 0x439: 0x03f5, 0x43a: 0x03f5, 0x43b: 0x03f5, + 0x43c: 0x03f5, 0x43d: 0x03f5, 0x43e: 0x03f5, 0x43f: 0x03f5, + // Block 0x11, offset 0x440 + 0x440: 0x0840, 0x441: 0x0840, 0x442: 0x0840, 0x443: 0x0840, 0x444: 0x0840, 0x445: 0x0840, + 0x446: 0x0018, 0x447: 0x0018, 0x448: 0x0818, 0x449: 0x0018, 0x44a: 0x0018, 0x44b: 0x0818, + 0x44c: 0x0018, 0x44d: 0x0818, 0x44e: 0x0018, 0x44f: 0x0018, 0x450: 0x3308, 0x451: 0x3308, + 0x452: 0x3308, 0x453: 0x3308, 0x454: 0x3308, 0x455: 0x3308, 0x456: 0x3308, 0x457: 0x3308, + 0x458: 0x3308, 0x459: 0x3308, 0x45a: 0x3308, 0x45b: 0x0818, 0x45c: 0x0b40, 0x45d: 0x0040, + 0x45e: 0x0818, 0x45f: 0x0818, 0x460: 0x0a08, 0x461: 0x0808, 0x462: 0x0c08, 0x463: 0x0c08, + 0x464: 0x0c08, 0x465: 0x0c08, 0x466: 0x0a08, 0x467: 0x0c08, 0x468: 0x0a08, 0x469: 0x0c08, + 0x46a: 0x0a08, 0x46b: 0x0a08, 0x46c: 0x0a08, 0x46d: 0x0a08, 0x46e: 0x0a08, 0x46f: 0x0c08, + 0x470: 0x0c08, 0x471: 0x0c08, 0x472: 0x0c08, 0x473: 0x0a08, 0x474: 0x0a08, 0x475: 0x0a08, + 0x476: 0x0a08, 0x477: 0x0a08, 0x478: 0x0a08, 0x479: 0x0a08, 0x47a: 0x0a08, 0x47b: 0x0a08, + 0x47c: 0x0a08, 0x47d: 0x0a08, 0x47e: 0x0a08, 0x47f: 0x0a08, + // Block 0x12, offset 0x480 + 0x480: 0x0818, 0x481: 0x0a08, 0x482: 0x0a08, 0x483: 0x0a08, 0x484: 0x0a08, 0x485: 0x0a08, + 0x486: 0x0a08, 0x487: 0x0a08, 0x488: 0x0c08, 0x489: 0x0a08, 0x48a: 0x0a08, 0x48b: 0x3308, + 0x48c: 0x3308, 0x48d: 0x3308, 0x48e: 0x3308, 0x48f: 0x3308, 0x490: 0x3308, 0x491: 0x3308, + 0x492: 0x3308, 0x493: 0x3308, 0x494: 0x3308, 0x495: 0x3308, 0x496: 0x3308, 0x497: 0x3308, + 0x498: 0x3308, 0x499: 0x3308, 0x49a: 0x3308, 0x49b: 0x3308, 0x49c: 0x3308, 0x49d: 0x3308, + 0x49e: 0x3308, 0x49f: 0x3308, 0x4a0: 0x0808, 0x4a1: 0x0808, 0x4a2: 0x0808, 0x4a3: 0x0808, + 0x4a4: 0x0808, 0x4a5: 0x0808, 0x4a6: 0x0808, 0x4a7: 0x0808, 0x4a8: 0x0808, 0x4a9: 0x0808, + 0x4aa: 0x0018, 0x4ab: 0x0818, 0x4ac: 0x0818, 0x4ad: 0x0818, 0x4ae: 0x0a08, 0x4af: 0x0a08, + 0x4b0: 0x3308, 0x4b1: 0x0c08, 0x4b2: 0x0c08, 0x4b3: 0x0c08, 0x4b4: 0x0808, 0x4b5: 0x0429, + 0x4b6: 0x0451, 0x4b7: 0x0479, 0x4b8: 0x04a1, 0x4b9: 0x0a08, 0x4ba: 0x0a08, 0x4bb: 0x0a08, + 0x4bc: 0x0a08, 0x4bd: 0x0a08, 0x4be: 0x0a08, 0x4bf: 0x0a08, + // Block 0x13, offset 0x4c0 + 0x4c0: 0x0c08, 0x4c1: 0x0a08, 0x4c2: 0x0a08, 0x4c3: 0x0c08, 0x4c4: 0x0c08, 0x4c5: 0x0c08, + 0x4c6: 0x0c08, 0x4c7: 0x0c08, 0x4c8: 0x0c08, 0x4c9: 0x0c08, 0x4ca: 0x0c08, 0x4cb: 0x0c08, + 0x4cc: 0x0a08, 0x4cd: 0x0c08, 0x4ce: 0x0a08, 0x4cf: 0x0c08, 0x4d0: 0x0a08, 0x4d1: 0x0a08, + 0x4d2: 0x0c08, 0x4d3: 0x0c08, 0x4d4: 0x0818, 0x4d5: 0x0c08, 0x4d6: 0x3308, 0x4d7: 0x3308, + 0x4d8: 0x3308, 0x4d9: 0x3308, 0x4da: 0x3308, 0x4db: 0x3308, 0x4dc: 0x3308, 0x4dd: 0x0840, + 0x4de: 0x0018, 0x4df: 0x3308, 0x4e0: 0x3308, 0x4e1: 0x3308, 0x4e2: 0x3308, 0x4e3: 0x3308, + 0x4e4: 0x3308, 0x4e5: 0x0808, 0x4e6: 0x0808, 0x4e7: 0x3308, 0x4e8: 0x3308, 0x4e9: 0x0018, + 0x4ea: 0x3308, 0x4eb: 0x3308, 0x4ec: 0x3308, 0x4ed: 0x3308, 0x4ee: 0x0c08, 0x4ef: 0x0c08, + 0x4f0: 0x0008, 0x4f1: 0x0008, 0x4f2: 0x0008, 0x4f3: 0x0008, 0x4f4: 0x0008, 0x4f5: 0x0008, + 0x4f6: 0x0008, 0x4f7: 0x0008, 0x4f8: 0x0008, 0x4f9: 0x0008, 0x4fa: 0x0a08, 0x4fb: 0x0a08, + 0x4fc: 0x0a08, 0x4fd: 0x0808, 0x4fe: 0x0808, 0x4ff: 0x0a08, + // Block 0x14, offset 0x500 + 0x500: 0x0818, 0x501: 0x0818, 0x502: 0x0818, 0x503: 0x0818, 0x504: 0x0818, 0x505: 0x0818, + 0x506: 0x0818, 0x507: 0x0818, 0x508: 0x0818, 0x509: 0x0818, 0x50a: 0x0818, 0x50b: 0x0818, + 0x50c: 0x0818, 0x50d: 0x0818, 0x50e: 0x0040, 0x50f: 0x0b40, 0x510: 0x0c08, 0x511: 0x3308, + 0x512: 0x0a08, 0x513: 0x0a08, 0x514: 0x0a08, 0x515: 0x0c08, 0x516: 0x0c08, 0x517: 0x0c08, + 0x518: 0x0c08, 0x519: 0x0c08, 0x51a: 0x0a08, 0x51b: 0x0a08, 0x51c: 0x0a08, 0x51d: 0x0a08, + 0x51e: 0x0c08, 0x51f: 0x0a08, 0x520: 0x0a08, 0x521: 0x0a08, 0x522: 0x0a08, 0x523: 0x0a08, + 0x524: 0x0a08, 0x525: 0x0a08, 0x526: 0x0a08, 0x527: 0x0a08, 0x528: 0x0c08, 0x529: 0x0a08, + 0x52a: 0x0c08, 0x52b: 0x0a08, 0x52c: 0x0c08, 0x52d: 0x0a08, 0x52e: 0x0a08, 0x52f: 0x0c08, + 0x530: 0x3308, 0x531: 0x3308, 0x532: 0x3308, 0x533: 0x3308, 0x534: 0x3308, 0x535: 0x3308, + 0x536: 0x3308, 0x537: 0x3308, 0x538: 0x3308, 0x539: 0x3308, 0x53a: 0x3308, 0x53b: 0x3308, + 0x53c: 0x3308, 0x53d: 0x3308, 0x53e: 0x3308, 0x53f: 0x3308, + // Block 0x15, offset 0x540 + 0x540: 0x0c08, 0x541: 0x0a08, 0x542: 0x0a08, 0x543: 0x0a08, 0x544: 0x0a08, 0x545: 0x0a08, + 0x546: 0x0c08, 0x547: 0x0c08, 0x548: 0x0a08, 0x549: 0x0c08, 0x54a: 0x0a08, 0x54b: 0x0a08, + 0x54c: 0x0a08, 0x54d: 0x0a08, 0x54e: 0x0a08, 0x54f: 0x0a08, 0x550: 0x0a08, 0x551: 0x0a08, + 0x552: 0x0a08, 0x553: 0x0a08, 0x554: 0x0c08, 0x555: 0x0a08, 0x556: 0x0808, 0x557: 0x0808, + 0x558: 0x0808, 0x559: 0x3308, 0x55a: 0x3308, 0x55b: 0x3308, 0x55c: 0x0040, 0x55d: 0x0040, + 0x55e: 0x0818, 0x55f: 0x0040, 0x560: 0x0a08, 0x561: 0x0808, 0x562: 0x0a08, 0x563: 0x0a08, + 0x564: 0x0a08, 0x565: 0x0a08, 0x566: 0x0808, 0x567: 0x0c08, 0x568: 0x0a08, 0x569: 0x0c08, + 0x56a: 0x0c08, 0x56b: 0x0040, 0x56c: 0x0040, 0x56d: 0x0040, 0x56e: 0x0040, 0x56f: 0x0040, + 0x570: 0x0040, 0x571: 0x0040, 0x572: 0x0040, 0x573: 0x0040, 0x574: 0x0040, 0x575: 0x0040, + 0x576: 0x0040, 0x577: 0x0040, 0x578: 0x0040, 0x579: 0x0040, 0x57a: 0x0040, 0x57b: 0x0040, + 0x57c: 0x0040, 0x57d: 0x0040, 0x57e: 0x0040, 0x57f: 0x0040, + // Block 0x16, offset 0x580 + 0x580: 0x3008, 0x581: 0x3308, 0x582: 0x3308, 0x583: 0x3308, 0x584: 0x3308, 0x585: 0x3308, + 0x586: 0x3308, 0x587: 0x3308, 0x588: 0x3308, 0x589: 0x3008, 0x58a: 0x3008, 0x58b: 0x3008, + 0x58c: 0x3008, 0x58d: 0x3b08, 0x58e: 0x3008, 0x58f: 0x3008, 0x590: 0x0008, 0x591: 0x3308, + 0x592: 0x3308, 0x593: 0x3308, 0x594: 0x3308, 0x595: 0x3308, 0x596: 0x3308, 0x597: 0x3308, + 0x598: 0x04c9, 0x599: 0x0501, 0x59a: 0x0539, 0x59b: 0x0571, 0x59c: 0x05a9, 0x59d: 0x05e1, + 0x59e: 0x0619, 0x59f: 0x0651, 0x5a0: 0x0008, 0x5a1: 0x0008, 0x5a2: 0x3308, 0x5a3: 0x3308, + 0x5a4: 0x0018, 0x5a5: 0x0018, 0x5a6: 0x0008, 0x5a7: 0x0008, 0x5a8: 0x0008, 0x5a9: 0x0008, + 0x5aa: 0x0008, 0x5ab: 0x0008, 0x5ac: 0x0008, 0x5ad: 0x0008, 0x5ae: 0x0008, 0x5af: 0x0008, + 0x5b0: 0x0018, 0x5b1: 0x0008, 0x5b2: 0x0008, 0x5b3: 0x0008, 0x5b4: 0x0008, 0x5b5: 0x0008, + 0x5b6: 0x0008, 0x5b7: 0x0008, 0x5b8: 0x0008, 0x5b9: 0x0008, 0x5ba: 0x0008, 0x5bb: 0x0008, + 0x5bc: 0x0008, 0x5bd: 0x0008, 0x5be: 0x0008, 0x5bf: 0x0008, + // Block 0x17, offset 0x5c0 + 0x5c0: 0x0008, 0x5c1: 0x3308, 0x5c2: 0x3008, 0x5c3: 0x3008, 0x5c4: 0x0040, 0x5c5: 0x0008, + 0x5c6: 0x0008, 0x5c7: 0x0008, 0x5c8: 0x0008, 0x5c9: 0x0008, 0x5ca: 0x0008, 0x5cb: 0x0008, + 0x5cc: 0x0008, 0x5cd: 0x0040, 0x5ce: 0x0040, 0x5cf: 0x0008, 0x5d0: 0x0008, 0x5d1: 0x0040, + 0x5d2: 0x0040, 0x5d3: 0x0008, 0x5d4: 0x0008, 0x5d5: 0x0008, 0x5d6: 0x0008, 0x5d7: 0x0008, + 0x5d8: 0x0008, 0x5d9: 0x0008, 0x5da: 0x0008, 0x5db: 0x0008, 0x5dc: 0x0008, 0x5dd: 0x0008, + 0x5de: 0x0008, 0x5df: 0x0008, 0x5e0: 0x0008, 0x5e1: 0x0008, 0x5e2: 0x0008, 0x5e3: 0x0008, + 0x5e4: 0x0008, 0x5e5: 0x0008, 0x5e6: 0x0008, 0x5e7: 0x0008, 0x5e8: 0x0008, 0x5e9: 0x0040, + 0x5ea: 0x0008, 0x5eb: 0x0008, 0x5ec: 0x0008, 0x5ed: 0x0008, 0x5ee: 0x0008, 0x5ef: 0x0008, + 0x5f0: 0x0008, 0x5f1: 0x0040, 0x5f2: 0x0008, 0x5f3: 0x0040, 0x5f4: 0x0040, 0x5f5: 0x0040, + 0x5f6: 0x0008, 0x5f7: 0x0008, 0x5f8: 0x0008, 0x5f9: 0x0008, 0x5fa: 0x0040, 0x5fb: 0x0040, + 0x5fc: 0x3308, 0x5fd: 0x0008, 0x5fe: 0x3008, 0x5ff: 0x3008, + // Block 0x18, offset 0x600 + 0x600: 0x3008, 0x601: 0x3308, 0x602: 0x3308, 0x603: 0x3308, 0x604: 0x3308, 0x605: 0x0040, + 0x606: 0x0040, 0x607: 0x3008, 0x608: 0x3008, 0x609: 0x0040, 0x60a: 0x0040, 0x60b: 0x3008, + 0x60c: 0x3008, 0x60d: 0x3b08, 0x60e: 0x0008, 0x60f: 0x0040, 0x610: 0x0040, 0x611: 0x0040, + 0x612: 0x0040, 0x613: 0x0040, 0x614: 0x0040, 0x615: 0x0040, 0x616: 0x0040, 0x617: 0x3008, + 0x618: 0x0040, 0x619: 0x0040, 0x61a: 0x0040, 0x61b: 0x0040, 0x61c: 0x0689, 0x61d: 0x06c1, + 0x61e: 0x0040, 0x61f: 0x06f9, 0x620: 0x0008, 0x621: 0x0008, 0x622: 0x3308, 0x623: 0x3308, + 0x624: 0x0040, 0x625: 0x0040, 0x626: 0x0008, 0x627: 0x0008, 0x628: 0x0008, 0x629: 0x0008, + 0x62a: 0x0008, 0x62b: 0x0008, 0x62c: 0x0008, 0x62d: 0x0008, 0x62e: 0x0008, 0x62f: 0x0008, + 0x630: 0x0008, 0x631: 0x0008, 0x632: 0x0018, 0x633: 0x0018, 0x634: 0x0018, 0x635: 0x0018, + 0x636: 0x0018, 0x637: 0x0018, 0x638: 0x0018, 0x639: 0x0018, 0x63a: 0x0018, 0x63b: 0x0018, + 0x63c: 0x0008, 0x63d: 0x0018, 0x63e: 0x3308, 0x63f: 0x0040, + // Block 0x19, offset 0x640 + 0x640: 0x0040, 0x641: 0x3308, 0x642: 0x3308, 0x643: 0x3008, 0x644: 0x0040, 0x645: 0x0008, + 0x646: 0x0008, 0x647: 0x0008, 0x648: 0x0008, 0x649: 0x0008, 0x64a: 0x0008, 0x64b: 0x0040, + 0x64c: 0x0040, 0x64d: 0x0040, 0x64e: 0x0040, 0x64f: 0x0008, 0x650: 0x0008, 0x651: 0x0040, + 0x652: 0x0040, 0x653: 0x0008, 0x654: 0x0008, 0x655: 0x0008, 0x656: 0x0008, 0x657: 0x0008, + 0x658: 0x0008, 0x659: 0x0008, 0x65a: 0x0008, 0x65b: 0x0008, 0x65c: 0x0008, 0x65d: 0x0008, + 0x65e: 0x0008, 0x65f: 0x0008, 0x660: 0x0008, 0x661: 0x0008, 0x662: 0x0008, 0x663: 0x0008, + 0x664: 0x0008, 0x665: 0x0008, 0x666: 0x0008, 0x667: 0x0008, 0x668: 0x0008, 0x669: 0x0040, + 0x66a: 0x0008, 0x66b: 0x0008, 0x66c: 0x0008, 0x66d: 0x0008, 0x66e: 0x0008, 0x66f: 0x0008, + 0x670: 0x0008, 0x671: 0x0040, 0x672: 0x0008, 0x673: 0x0731, 0x674: 0x0040, 0x675: 0x0008, + 0x676: 0x0769, 0x677: 0x0040, 0x678: 0x0008, 0x679: 0x0008, 0x67a: 0x0040, 0x67b: 0x0040, + 0x67c: 0x3308, 0x67d: 0x0040, 0x67e: 0x3008, 0x67f: 0x3008, + // Block 0x1a, offset 0x680 + 0x680: 0x3008, 0x681: 0x3308, 0x682: 0x3308, 0x683: 0x0040, 0x684: 0x0040, 0x685: 0x0040, + 0x686: 0x0040, 0x687: 0x3308, 0x688: 0x3308, 0x689: 0x0040, 0x68a: 0x0040, 0x68b: 0x3308, + 0x68c: 0x3308, 0x68d: 0x3b08, 0x68e: 0x0040, 0x68f: 0x0040, 0x690: 0x0040, 0x691: 0x3308, + 0x692: 0x0040, 0x693: 0x0040, 0x694: 0x0040, 0x695: 0x0040, 0x696: 0x0040, 0x697: 0x0040, + 0x698: 0x0040, 0x699: 0x07a1, 0x69a: 0x07d9, 0x69b: 0x0811, 0x69c: 0x0008, 0x69d: 0x0040, + 0x69e: 0x0849, 0x69f: 0x0040, 0x6a0: 0x0040, 0x6a1: 0x0040, 0x6a2: 0x0040, 0x6a3: 0x0040, + 0x6a4: 0x0040, 0x6a5: 0x0040, 0x6a6: 0x0008, 0x6a7: 0x0008, 0x6a8: 0x0008, 0x6a9: 0x0008, + 0x6aa: 0x0008, 0x6ab: 0x0008, 0x6ac: 0x0008, 0x6ad: 0x0008, 0x6ae: 0x0008, 0x6af: 0x0008, + 0x6b0: 0x3308, 0x6b1: 0x3308, 0x6b2: 0x0008, 0x6b3: 0x0008, 0x6b4: 0x0008, 0x6b5: 0x3308, + 0x6b6: 0x0018, 0x6b7: 0x0040, 0x6b8: 0x0040, 0x6b9: 0x0040, 0x6ba: 0x0040, 0x6bb: 0x0040, + 0x6bc: 0x0040, 0x6bd: 0x0040, 0x6be: 0x0040, 0x6bf: 0x0040, + // Block 0x1b, offset 0x6c0 + 0x6c0: 0x0040, 0x6c1: 0x3308, 0x6c2: 0x3308, 0x6c3: 0x3008, 0x6c4: 0x0040, 0x6c5: 0x0008, + 0x6c6: 0x0008, 0x6c7: 0x0008, 0x6c8: 0x0008, 0x6c9: 0x0008, 0x6ca: 0x0008, 0x6cb: 0x0008, + 0x6cc: 0x0008, 0x6cd: 0x0008, 0x6ce: 0x0040, 0x6cf: 0x0008, 0x6d0: 0x0008, 0x6d1: 0x0008, + 0x6d2: 0x0040, 0x6d3: 0x0008, 0x6d4: 0x0008, 0x6d5: 0x0008, 0x6d6: 0x0008, 0x6d7: 0x0008, + 0x6d8: 0x0008, 0x6d9: 0x0008, 0x6da: 0x0008, 0x6db: 0x0008, 0x6dc: 0x0008, 0x6dd: 0x0008, + 0x6de: 0x0008, 0x6df: 0x0008, 0x6e0: 0x0008, 0x6e1: 0x0008, 0x6e2: 0x0008, 0x6e3: 0x0008, + 0x6e4: 0x0008, 0x6e5: 0x0008, 0x6e6: 0x0008, 0x6e7: 0x0008, 0x6e8: 0x0008, 0x6e9: 0x0040, + 0x6ea: 0x0008, 0x6eb: 0x0008, 0x6ec: 0x0008, 0x6ed: 0x0008, 0x6ee: 0x0008, 0x6ef: 0x0008, + 0x6f0: 0x0008, 0x6f1: 0x0040, 0x6f2: 0x0008, 0x6f3: 0x0008, 0x6f4: 0x0040, 0x6f5: 0x0008, + 0x6f6: 0x0008, 0x6f7: 0x0008, 0x6f8: 0x0008, 0x6f9: 0x0008, 0x6fa: 0x0040, 0x6fb: 0x0040, + 0x6fc: 0x3308, 0x6fd: 0x0008, 0x6fe: 0x3008, 0x6ff: 0x3008, + // Block 0x1c, offset 0x700 + 0x700: 0x3008, 0x701: 0x3308, 0x702: 0x3308, 0x703: 0x3308, 0x704: 0x3308, 0x705: 0x3308, + 0x706: 0x0040, 0x707: 0x3308, 0x708: 0x3308, 0x709: 0x3008, 0x70a: 0x0040, 0x70b: 0x3008, + 0x70c: 0x3008, 0x70d: 0x3b08, 0x70e: 0x0040, 0x70f: 0x0040, 0x710: 0x0008, 0x711: 0x0040, + 0x712: 0x0040, 0x713: 0x0040, 0x714: 0x0040, 0x715: 0x0040, 0x716: 0x0040, 0x717: 0x0040, + 0x718: 0x0040, 0x719: 0x0040, 0x71a: 0x0040, 0x71b: 0x0040, 0x71c: 0x0040, 0x71d: 0x0040, + 0x71e: 0x0040, 0x71f: 0x0040, 0x720: 0x0008, 0x721: 0x0008, 0x722: 0x3308, 0x723: 0x3308, + 0x724: 0x0040, 0x725: 0x0040, 0x726: 0x0008, 0x727: 0x0008, 0x728: 0x0008, 0x729: 0x0008, + 0x72a: 0x0008, 0x72b: 0x0008, 0x72c: 0x0008, 0x72d: 0x0008, 0x72e: 0x0008, 0x72f: 0x0008, + 0x730: 0x0018, 0x731: 0x0018, 0x732: 0x0040, 0x733: 0x0040, 0x734: 0x0040, 0x735: 0x0040, + 0x736: 0x0040, 0x737: 0x0040, 0x738: 0x0040, 0x739: 0x0008, 0x73a: 0x3308, 0x73b: 0x3308, + 0x73c: 0x3308, 0x73d: 0x3308, 0x73e: 0x3308, 0x73f: 0x3308, + // Block 0x1d, offset 0x740 + 0x740: 0x0040, 0x741: 0x3308, 0x742: 0x3008, 0x743: 0x3008, 0x744: 0x0040, 0x745: 0x0008, + 0x746: 0x0008, 0x747: 0x0008, 0x748: 0x0008, 0x749: 0x0008, 0x74a: 0x0008, 0x74b: 0x0008, + 0x74c: 0x0008, 0x74d: 0x0040, 0x74e: 0x0040, 0x74f: 0x0008, 0x750: 0x0008, 0x751: 0x0040, + 0x752: 0x0040, 0x753: 0x0008, 0x754: 0x0008, 0x755: 0x0008, 0x756: 0x0008, 0x757: 0x0008, + 0x758: 0x0008, 0x759: 0x0008, 0x75a: 0x0008, 0x75b: 0x0008, 0x75c: 0x0008, 0x75d: 0x0008, + 0x75e: 0x0008, 0x75f: 0x0008, 0x760: 0x0008, 0x761: 0x0008, 0x762: 0x0008, 0x763: 0x0008, + 0x764: 0x0008, 0x765: 0x0008, 0x766: 0x0008, 0x767: 0x0008, 0x768: 0x0008, 0x769: 0x0040, + 0x76a: 0x0008, 0x76b: 0x0008, 0x76c: 0x0008, 0x76d: 0x0008, 0x76e: 0x0008, 0x76f: 0x0008, + 0x770: 0x0008, 0x771: 0x0040, 0x772: 0x0008, 0x773: 0x0008, 0x774: 0x0040, 0x775: 0x0008, + 0x776: 0x0008, 0x777: 0x0008, 0x778: 0x0008, 0x779: 0x0008, 0x77a: 0x0040, 0x77b: 0x0040, + 0x77c: 0x3308, 0x77d: 0x0008, 0x77e: 0x3008, 0x77f: 0x3308, + // Block 0x1e, offset 0x780 + 0x780: 0x3008, 0x781: 0x3308, 0x782: 0x3308, 0x783: 0x3308, 0x784: 0x3308, 0x785: 0x0040, + 0x786: 0x0040, 0x787: 0x3008, 0x788: 0x3008, 0x789: 0x0040, 0x78a: 0x0040, 0x78b: 0x3008, + 0x78c: 0x3008, 0x78d: 0x3b08, 0x78e: 0x0040, 0x78f: 0x0040, 0x790: 0x0040, 0x791: 0x0040, + 0x792: 0x0040, 0x793: 0x0040, 0x794: 0x0040, 0x795: 0x0040, 0x796: 0x3308, 0x797: 0x3008, + 0x798: 0x0040, 0x799: 0x0040, 0x79a: 0x0040, 0x79b: 0x0040, 0x79c: 0x0881, 0x79d: 0x08b9, + 0x79e: 0x0040, 0x79f: 0x0008, 0x7a0: 0x0008, 0x7a1: 0x0008, 0x7a2: 0x3308, 0x7a3: 0x3308, + 0x7a4: 0x0040, 0x7a5: 0x0040, 0x7a6: 0x0008, 0x7a7: 0x0008, 0x7a8: 0x0008, 0x7a9: 0x0008, + 0x7aa: 0x0008, 0x7ab: 0x0008, 0x7ac: 0x0008, 0x7ad: 0x0008, 0x7ae: 0x0008, 0x7af: 0x0008, + 0x7b0: 0x0018, 0x7b1: 0x0008, 0x7b2: 0x0018, 0x7b3: 0x0018, 0x7b4: 0x0018, 0x7b5: 0x0018, + 0x7b6: 0x0018, 0x7b7: 0x0018, 0x7b8: 0x0040, 0x7b9: 0x0040, 0x7ba: 0x0040, 0x7bb: 0x0040, + 0x7bc: 0x0040, 0x7bd: 0x0040, 0x7be: 0x0040, 0x7bf: 0x0040, + // Block 0x1f, offset 0x7c0 + 0x7c0: 0x0040, 0x7c1: 0x0040, 0x7c2: 0x3308, 0x7c3: 0x0008, 0x7c4: 0x0040, 0x7c5: 0x0008, + 0x7c6: 0x0008, 0x7c7: 0x0008, 0x7c8: 0x0008, 0x7c9: 0x0008, 0x7ca: 0x0008, 0x7cb: 0x0040, + 0x7cc: 0x0040, 0x7cd: 0x0040, 0x7ce: 0x0008, 0x7cf: 0x0008, 0x7d0: 0x0008, 0x7d1: 0x0040, + 0x7d2: 0x0008, 0x7d3: 0x0008, 0x7d4: 0x0008, 0x7d5: 0x0008, 0x7d6: 0x0040, 0x7d7: 0x0040, + 0x7d8: 0x0040, 0x7d9: 0x0008, 0x7da: 0x0008, 0x7db: 0x0040, 0x7dc: 0x0008, 0x7dd: 0x0040, + 0x7de: 0x0008, 0x7df: 0x0008, 0x7e0: 0x0040, 0x7e1: 0x0040, 0x7e2: 0x0040, 0x7e3: 0x0008, + 0x7e4: 0x0008, 0x7e5: 0x0040, 0x7e6: 0x0040, 0x7e7: 0x0040, 0x7e8: 0x0008, 0x7e9: 0x0008, + 0x7ea: 0x0008, 0x7eb: 0x0040, 0x7ec: 0x0040, 0x7ed: 0x0040, 0x7ee: 0x0008, 0x7ef: 0x0008, + 0x7f0: 0x0008, 0x7f1: 0x0008, 0x7f2: 0x0008, 0x7f3: 0x0008, 0x7f4: 0x0008, 0x7f5: 0x0008, + 0x7f6: 0x0008, 0x7f7: 0x0008, 0x7f8: 0x0008, 0x7f9: 0x0008, 0x7fa: 0x0040, 0x7fb: 0x0040, + 0x7fc: 0x0040, 0x7fd: 0x0040, 0x7fe: 0x3008, 0x7ff: 0x3008, + // Block 0x20, offset 0x800 + 0x800: 0x3308, 0x801: 0x3008, 0x802: 0x3008, 0x803: 0x3008, 0x804: 0x3008, 0x805: 0x0040, + 0x806: 0x3308, 0x807: 0x3308, 0x808: 0x3308, 0x809: 0x0040, 0x80a: 0x3308, 0x80b: 0x3308, + 0x80c: 0x3308, 0x80d: 0x3b08, 0x80e: 0x0040, 0x80f: 0x0040, 0x810: 0x0040, 0x811: 0x0040, + 0x812: 0x0040, 0x813: 0x0040, 0x814: 0x0040, 0x815: 0x3308, 0x816: 0x3308, 0x817: 0x0040, + 0x818: 0x0008, 0x819: 0x0008, 0x81a: 0x0008, 0x81b: 0x0040, 0x81c: 0x0040, 0x81d: 0x0040, + 0x81e: 0x0040, 0x81f: 0x0040, 0x820: 0x0008, 0x821: 0x0008, 0x822: 0x3308, 0x823: 0x3308, + 0x824: 0x0040, 0x825: 0x0040, 0x826: 0x0008, 0x827: 0x0008, 0x828: 0x0008, 0x829: 0x0008, + 0x82a: 0x0008, 0x82b: 0x0008, 0x82c: 0x0008, 0x82d: 0x0008, 0x82e: 0x0008, 0x82f: 0x0008, + 0x830: 0x0040, 0x831: 0x0040, 0x832: 0x0040, 0x833: 0x0040, 0x834: 0x0040, 0x835: 0x0040, + 0x836: 0x0040, 0x837: 0x0018, 0x838: 0x0018, 0x839: 0x0018, 0x83a: 0x0018, 0x83b: 0x0018, + 0x83c: 0x0018, 0x83d: 0x0018, 0x83e: 0x0018, 0x83f: 0x0018, + // Block 0x21, offset 0x840 + 0x840: 0x0008, 0x841: 0x3308, 0x842: 0x3008, 0x843: 0x3008, 0x844: 0x0018, 0x845: 0x0008, + 0x846: 0x0008, 0x847: 0x0008, 0x848: 0x0008, 0x849: 0x0008, 0x84a: 0x0008, 0x84b: 0x0008, + 0x84c: 0x0008, 0x84d: 0x0040, 0x84e: 0x0008, 0x84f: 0x0008, 0x850: 0x0008, 0x851: 0x0040, + 0x852: 0x0008, 0x853: 0x0008, 0x854: 0x0008, 0x855: 0x0008, 0x856: 0x0008, 0x857: 0x0008, + 0x858: 0x0008, 0x859: 0x0008, 0x85a: 0x0008, 0x85b: 0x0008, 0x85c: 0x0008, 0x85d: 0x0008, + 0x85e: 0x0008, 0x85f: 0x0008, 0x860: 0x0008, 0x861: 0x0008, 0x862: 0x0008, 0x863: 0x0008, + 0x864: 0x0008, 0x865: 0x0008, 0x866: 0x0008, 0x867: 0x0008, 0x868: 0x0008, 0x869: 0x0040, + 0x86a: 0x0008, 0x86b: 0x0008, 0x86c: 0x0008, 0x86d: 0x0008, 0x86e: 0x0008, 0x86f: 0x0008, + 0x870: 0x0008, 0x871: 0x0008, 0x872: 0x0008, 0x873: 0x0008, 0x874: 0x0040, 0x875: 0x0008, + 0x876: 0x0008, 0x877: 0x0008, 0x878: 0x0008, 0x879: 0x0008, 0x87a: 0x0040, 0x87b: 0x0040, + 0x87c: 0x3308, 0x87d: 0x0008, 0x87e: 0x3008, 0x87f: 0x3308, + // Block 0x22, offset 0x880 + 0x880: 0x3008, 0x881: 0x3008, 0x882: 0x3008, 0x883: 0x3008, 0x884: 0x3008, 0x885: 0x0040, + 0x886: 0x3308, 0x887: 0x3008, 0x888: 0x3008, 0x889: 0x0040, 0x88a: 0x3008, 0x88b: 0x3008, + 0x88c: 0x3308, 0x88d: 0x3b08, 0x88e: 0x0040, 0x88f: 0x0040, 0x890: 0x0040, 0x891: 0x0040, + 0x892: 0x0040, 0x893: 0x0040, 0x894: 0x0040, 0x895: 0x3008, 0x896: 0x3008, 0x897: 0x0040, + 0x898: 0x0040, 0x899: 0x0040, 0x89a: 0x0040, 0x89b: 0x0040, 0x89c: 0x0040, 0x89d: 0x0040, + 0x89e: 0x0008, 0x89f: 0x0040, 0x8a0: 0x0008, 0x8a1: 0x0008, 0x8a2: 0x3308, 0x8a3: 0x3308, + 0x8a4: 0x0040, 0x8a5: 0x0040, 0x8a6: 0x0008, 0x8a7: 0x0008, 0x8a8: 0x0008, 0x8a9: 0x0008, + 0x8aa: 0x0008, 0x8ab: 0x0008, 0x8ac: 0x0008, 0x8ad: 0x0008, 0x8ae: 0x0008, 0x8af: 0x0008, + 0x8b0: 0x0040, 0x8b1: 0x0008, 0x8b2: 0x0008, 0x8b3: 0x0040, 0x8b4: 0x0040, 0x8b5: 0x0040, + 0x8b6: 0x0040, 0x8b7: 0x0040, 0x8b8: 0x0040, 0x8b9: 0x0040, 0x8ba: 0x0040, 0x8bb: 0x0040, + 0x8bc: 0x0040, 0x8bd: 0x0040, 0x8be: 0x0040, 0x8bf: 0x0040, + // Block 0x23, offset 0x8c0 + 0x8c0: 0x3008, 0x8c1: 0x3308, 0x8c2: 0x3308, 0x8c3: 0x3308, 0x8c4: 0x3308, 0x8c5: 0x0040, + 0x8c6: 0x3008, 0x8c7: 0x3008, 0x8c8: 0x3008, 0x8c9: 0x0040, 0x8ca: 0x3008, 0x8cb: 0x3008, + 0x8cc: 0x3008, 0x8cd: 0x3b08, 0x8ce: 0x0008, 0x8cf: 0x0018, 0x8d0: 0x0040, 0x8d1: 0x0040, + 0x8d2: 0x0040, 0x8d3: 0x0040, 0x8d4: 0x0008, 0x8d5: 0x0008, 0x8d6: 0x0008, 0x8d7: 0x3008, + 0x8d8: 0x0018, 0x8d9: 0x0018, 0x8da: 0x0018, 0x8db: 0x0018, 0x8dc: 0x0018, 0x8dd: 0x0018, + 0x8de: 0x0018, 0x8df: 0x0008, 0x8e0: 0x0008, 0x8e1: 0x0008, 0x8e2: 0x3308, 0x8e3: 0x3308, + 0x8e4: 0x0040, 0x8e5: 0x0040, 0x8e6: 0x0008, 0x8e7: 0x0008, 0x8e8: 0x0008, 0x8e9: 0x0008, + 0x8ea: 0x0008, 0x8eb: 0x0008, 0x8ec: 0x0008, 0x8ed: 0x0008, 0x8ee: 0x0008, 0x8ef: 0x0008, + 0x8f0: 0x0018, 0x8f1: 0x0018, 0x8f2: 0x0018, 0x8f3: 0x0018, 0x8f4: 0x0018, 0x8f5: 0x0018, + 0x8f6: 0x0018, 0x8f7: 0x0018, 0x8f8: 0x0018, 0x8f9: 0x0018, 0x8fa: 0x0008, 0x8fb: 0x0008, + 0x8fc: 0x0008, 0x8fd: 0x0008, 0x8fe: 0x0008, 0x8ff: 0x0008, + // Block 0x24, offset 0x900 + 0x900: 0x0040, 0x901: 0x0008, 0x902: 0x0008, 0x903: 0x0040, 0x904: 0x0008, 0x905: 0x0040, + 0x906: 0x0008, 0x907: 0x0008, 0x908: 0x0008, 0x909: 0x0008, 0x90a: 0x0008, 0x90b: 0x0040, + 0x90c: 0x0008, 0x90d: 0x0008, 0x90e: 0x0008, 0x90f: 0x0008, 0x910: 0x0008, 0x911: 0x0008, + 0x912: 0x0008, 0x913: 0x0008, 0x914: 0x0008, 0x915: 0x0008, 0x916: 0x0008, 0x917: 0x0008, + 0x918: 0x0008, 0x919: 0x0008, 0x91a: 0x0008, 0x91b: 0x0008, 0x91c: 0x0008, 0x91d: 0x0008, + 0x91e: 0x0008, 0x91f: 0x0008, 0x920: 0x0008, 0x921: 0x0008, 0x922: 0x0008, 0x923: 0x0008, + 0x924: 0x0040, 0x925: 0x0008, 0x926: 0x0040, 0x927: 0x0008, 0x928: 0x0008, 0x929: 0x0008, + 0x92a: 0x0008, 0x92b: 0x0008, 0x92c: 0x0008, 0x92d: 0x0008, 0x92e: 0x0008, 0x92f: 0x0008, + 0x930: 0x0008, 0x931: 0x3308, 0x932: 0x0008, 0x933: 0x0929, 0x934: 0x3308, 0x935: 0x3308, + 0x936: 0x3308, 0x937: 0x3308, 0x938: 0x3308, 0x939: 0x3308, 0x93a: 0x3b08, 0x93b: 0x3308, + 0x93c: 0x3308, 0x93d: 0x0008, 0x93e: 0x0040, 0x93f: 0x0040, + // Block 0x25, offset 0x940 + 0x940: 0x0008, 0x941: 0x0008, 0x942: 0x0008, 0x943: 0x09d1, 0x944: 0x0008, 0x945: 0x0008, + 0x946: 0x0008, 0x947: 0x0008, 0x948: 0x0040, 0x949: 0x0008, 0x94a: 0x0008, 0x94b: 0x0008, + 0x94c: 0x0008, 0x94d: 0x0a09, 0x94e: 0x0008, 0x94f: 0x0008, 0x950: 0x0008, 0x951: 0x0008, + 0x952: 0x0a41, 0x953: 0x0008, 0x954: 0x0008, 0x955: 0x0008, 0x956: 0x0008, 0x957: 0x0a79, + 0x958: 0x0008, 0x959: 0x0008, 0x95a: 0x0008, 0x95b: 0x0008, 0x95c: 0x0ab1, 0x95d: 0x0008, + 0x95e: 0x0008, 0x95f: 0x0008, 0x960: 0x0008, 0x961: 0x0008, 0x962: 0x0008, 0x963: 0x0008, + 0x964: 0x0008, 0x965: 0x0008, 0x966: 0x0008, 0x967: 0x0008, 0x968: 0x0008, 0x969: 0x0ae9, + 0x96a: 0x0008, 0x96b: 0x0008, 0x96c: 0x0008, 0x96d: 0x0040, 0x96e: 0x0040, 0x96f: 0x0040, + 0x970: 0x0040, 0x971: 0x3308, 0x972: 0x3308, 0x973: 0x0b21, 0x974: 0x3308, 0x975: 0x0b59, + 0x976: 0x0b91, 0x977: 0x0bc9, 0x978: 0x0c19, 0x979: 0x0c51, 0x97a: 0x3308, 0x97b: 0x3308, + 0x97c: 0x3308, 0x97d: 0x3308, 0x97e: 0x3308, 0x97f: 0x3008, + // Block 0x26, offset 0x980 + 0x980: 0x3308, 0x981: 0x0ca1, 0x982: 0x3308, 0x983: 0x3308, 0x984: 0x3b08, 0x985: 0x0018, + 0x986: 0x3308, 0x987: 0x3308, 0x988: 0x0008, 0x989: 0x0008, 0x98a: 0x0008, 0x98b: 0x0008, + 0x98c: 0x0008, 0x98d: 0x3308, 0x98e: 0x3308, 0x98f: 0x3308, 0x990: 0x3308, 0x991: 0x3308, + 0x992: 0x3308, 0x993: 0x0cd9, 0x994: 0x3308, 0x995: 0x3308, 0x996: 0x3308, 0x997: 0x3308, + 0x998: 0x0040, 0x999: 0x3308, 0x99a: 0x3308, 0x99b: 0x3308, 0x99c: 0x3308, 0x99d: 0x0d11, + 0x99e: 0x3308, 0x99f: 0x3308, 0x9a0: 0x3308, 0x9a1: 0x3308, 0x9a2: 0x0d49, 0x9a3: 0x3308, + 0x9a4: 0x3308, 0x9a5: 0x3308, 0x9a6: 0x3308, 0x9a7: 0x0d81, 0x9a8: 0x3308, 0x9a9: 0x3308, + 0x9aa: 0x3308, 0x9ab: 0x3308, 0x9ac: 0x0db9, 0x9ad: 0x3308, 0x9ae: 0x3308, 0x9af: 0x3308, + 0x9b0: 0x3308, 0x9b1: 0x3308, 0x9b2: 0x3308, 0x9b3: 0x3308, 0x9b4: 0x3308, 0x9b5: 0x3308, + 0x9b6: 0x3308, 0x9b7: 0x3308, 0x9b8: 0x3308, 0x9b9: 0x0df1, 0x9ba: 0x3308, 0x9bb: 0x3308, + 0x9bc: 0x3308, 0x9bd: 0x0040, 0x9be: 0x0018, 0x9bf: 0x0018, + // Block 0x27, offset 0x9c0 + 0x9c0: 0x0008, 0x9c1: 0x0008, 0x9c2: 0x0008, 0x9c3: 0x0008, 0x9c4: 0x0008, 0x9c5: 0x0008, + 0x9c6: 0x0008, 0x9c7: 0x0008, 0x9c8: 0x0008, 0x9c9: 0x0008, 0x9ca: 0x0008, 0x9cb: 0x0008, + 0x9cc: 0x0008, 0x9cd: 0x0008, 0x9ce: 0x0008, 0x9cf: 0x0008, 0x9d0: 0x0008, 0x9d1: 0x0008, + 0x9d2: 0x0008, 0x9d3: 0x0008, 0x9d4: 0x0008, 0x9d5: 0x0008, 0x9d6: 0x0008, 0x9d7: 0x0008, + 0x9d8: 0x0008, 0x9d9: 0x0008, 0x9da: 0x0008, 0x9db: 0x0008, 0x9dc: 0x0008, 0x9dd: 0x0008, + 0x9de: 0x0008, 0x9df: 0x0008, 0x9e0: 0x0008, 0x9e1: 0x0008, 0x9e2: 0x0008, 0x9e3: 0x0008, + 0x9e4: 0x0008, 0x9e5: 0x0008, 0x9e6: 0x0008, 0x9e7: 0x0008, 0x9e8: 0x0008, 0x9e9: 0x0008, + 0x9ea: 0x0008, 0x9eb: 0x0008, 0x9ec: 0x0039, 0x9ed: 0x0ed1, 0x9ee: 0x0ee9, 0x9ef: 0x0008, + 0x9f0: 0x0ef9, 0x9f1: 0x0f09, 0x9f2: 0x0f19, 0x9f3: 0x0f31, 0x9f4: 0x0249, 0x9f5: 0x0f41, + 0x9f6: 0x0259, 0x9f7: 0x0f51, 0x9f8: 0x0359, 0x9f9: 0x0f61, 0x9fa: 0x0f71, 0x9fb: 0x0008, + 0x9fc: 0x00d9, 0x9fd: 0x0f81, 0x9fe: 0x0f99, 0x9ff: 0x0269, + // Block 0x28, offset 0xa00 + 0xa00: 0x0fa9, 0xa01: 0x0fb9, 0xa02: 0x0279, 0xa03: 0x0039, 0xa04: 0x0fc9, 0xa05: 0x0fe1, + 0xa06: 0x05b5, 0xa07: 0x0ee9, 0xa08: 0x0ef9, 0xa09: 0x0f09, 0xa0a: 0x0ff9, 0xa0b: 0x1011, + 0xa0c: 0x1029, 0xa0d: 0x0f31, 0xa0e: 0x0008, 0xa0f: 0x0f51, 0xa10: 0x0f61, 0xa11: 0x1041, + 0xa12: 0x00d9, 0xa13: 0x1059, 0xa14: 0x05cd, 0xa15: 0x05cd, 0xa16: 0x0f99, 0xa17: 0x0fa9, + 0xa18: 0x0fb9, 0xa19: 0x05b5, 0xa1a: 0x1071, 0xa1b: 0x1089, 0xa1c: 0x05e5, 0xa1d: 0x1099, + 0xa1e: 0x10b1, 0xa1f: 0x10c9, 0xa20: 0x10e1, 0xa21: 0x10f9, 0xa22: 0x0f41, 0xa23: 0x0269, + 0xa24: 0x0fb9, 0xa25: 0x1089, 0xa26: 0x1099, 0xa27: 0x10b1, 0xa28: 0x1111, 0xa29: 0x10e1, + 0xa2a: 0x10f9, 0xa2b: 0x0008, 0xa2c: 0x0008, 0xa2d: 0x0008, 0xa2e: 0x0008, 0xa2f: 0x0008, + 0xa30: 0x0008, 0xa31: 0x0008, 0xa32: 0x0008, 0xa33: 0x0008, 0xa34: 0x0008, 0xa35: 0x0008, + 0xa36: 0x0008, 0xa37: 0x0008, 0xa38: 0x1129, 0xa39: 0x0008, 0xa3a: 0x0008, 0xa3b: 0x0008, + 0xa3c: 0x0008, 0xa3d: 0x0008, 0xa3e: 0x0008, 0xa3f: 0x0008, + // Block 0x29, offset 0xa40 + 0xa40: 0x0008, 0xa41: 0x0008, 0xa42: 0x0008, 0xa43: 0x0008, 0xa44: 0x0008, 0xa45: 0x0008, + 0xa46: 0x0008, 0xa47: 0x0008, 0xa48: 0x0008, 0xa49: 0x0008, 0xa4a: 0x0008, 0xa4b: 0x0008, + 0xa4c: 0x0008, 0xa4d: 0x0008, 0xa4e: 0x0008, 0xa4f: 0x0008, 0xa50: 0x0008, 0xa51: 0x0008, + 0xa52: 0x0008, 0xa53: 0x0008, 0xa54: 0x0008, 0xa55: 0x0008, 0xa56: 0x0008, 0xa57: 0x0008, + 0xa58: 0x0008, 0xa59: 0x0008, 0xa5a: 0x0008, 0xa5b: 0x1141, 0xa5c: 0x1159, 0xa5d: 0x1169, + 0xa5e: 0x1181, 0xa5f: 0x1029, 0xa60: 0x1199, 0xa61: 0x11a9, 0xa62: 0x11c1, 0xa63: 0x11d9, + 0xa64: 0x11f1, 0xa65: 0x1209, 0xa66: 0x1221, 0xa67: 0x05fd, 0xa68: 0x1239, 0xa69: 0x1251, + 0xa6a: 0xe17d, 0xa6b: 0x1269, 0xa6c: 0x1281, 0xa6d: 0x1299, 0xa6e: 0x12b1, 0xa6f: 0x12c9, + 0xa70: 0x12e1, 0xa71: 0x12f9, 0xa72: 0x1311, 0xa73: 0x1329, 0xa74: 0x1341, 0xa75: 0x1359, + 0xa76: 0x1371, 0xa77: 0x1389, 0xa78: 0x0615, 0xa79: 0x13a1, 0xa7a: 0x13b9, 0xa7b: 0x13d1, + 0xa7c: 0x13e1, 0xa7d: 0x13f9, 0xa7e: 0x1411, 0xa7f: 0x1429, + // Block 0x2a, offset 0xa80 + 0xa80: 0xe00d, 0xa81: 0x0008, 0xa82: 0xe00d, 0xa83: 0x0008, 0xa84: 0xe00d, 0xa85: 0x0008, + 0xa86: 0xe00d, 0xa87: 0x0008, 0xa88: 0xe00d, 0xa89: 0x0008, 0xa8a: 0xe00d, 0xa8b: 0x0008, + 0xa8c: 0xe00d, 0xa8d: 0x0008, 0xa8e: 0xe00d, 0xa8f: 0x0008, 0xa90: 0xe00d, 0xa91: 0x0008, + 0xa92: 0xe00d, 0xa93: 0x0008, 0xa94: 0xe00d, 0xa95: 0x0008, 0xa96: 0xe00d, 0xa97: 0x0008, + 0xa98: 0xe00d, 0xa99: 0x0008, 0xa9a: 0xe00d, 0xa9b: 0x0008, 0xa9c: 0xe00d, 0xa9d: 0x0008, + 0xa9e: 0xe00d, 0xa9f: 0x0008, 0xaa0: 0xe00d, 0xaa1: 0x0008, 0xaa2: 0xe00d, 0xaa3: 0x0008, + 0xaa4: 0xe00d, 0xaa5: 0x0008, 0xaa6: 0xe00d, 0xaa7: 0x0008, 0xaa8: 0xe00d, 0xaa9: 0x0008, + 0xaaa: 0xe00d, 0xaab: 0x0008, 0xaac: 0xe00d, 0xaad: 0x0008, 0xaae: 0xe00d, 0xaaf: 0x0008, + 0xab0: 0xe00d, 0xab1: 0x0008, 0xab2: 0xe00d, 0xab3: 0x0008, 0xab4: 0xe00d, 0xab5: 0x0008, + 0xab6: 0xe00d, 0xab7: 0x0008, 0xab8: 0xe00d, 0xab9: 0x0008, 0xaba: 0xe00d, 0xabb: 0x0008, + 0xabc: 0xe00d, 0xabd: 0x0008, 0xabe: 0xe00d, 0xabf: 0x0008, + // Block 0x2b, offset 0xac0 + 0xac0: 0xe00d, 0xac1: 0x0008, 0xac2: 0xe00d, 0xac3: 0x0008, 0xac4: 0xe00d, 0xac5: 0x0008, + 0xac6: 0xe00d, 0xac7: 0x0008, 0xac8: 0xe00d, 0xac9: 0x0008, 0xaca: 0xe00d, 0xacb: 0x0008, + 0xacc: 0xe00d, 0xacd: 0x0008, 0xace: 0xe00d, 0xacf: 0x0008, 0xad0: 0xe00d, 0xad1: 0x0008, + 0xad2: 0xe00d, 0xad3: 0x0008, 0xad4: 0xe00d, 0xad5: 0x0008, 0xad6: 0x0008, 0xad7: 0x0008, + 0xad8: 0x0008, 0xad9: 0x0008, 0xada: 0x062d, 0xadb: 0x064d, 0xadc: 0x0008, 0xadd: 0x0008, + 0xade: 0x1441, 0xadf: 0x0008, 0xae0: 0xe00d, 0xae1: 0x0008, 0xae2: 0xe00d, 0xae3: 0x0008, + 0xae4: 0xe00d, 0xae5: 0x0008, 0xae6: 0xe00d, 0xae7: 0x0008, 0xae8: 0xe00d, 0xae9: 0x0008, + 0xaea: 0xe00d, 0xaeb: 0x0008, 0xaec: 0xe00d, 0xaed: 0x0008, 0xaee: 0xe00d, 0xaef: 0x0008, + 0xaf0: 0xe00d, 0xaf1: 0x0008, 0xaf2: 0xe00d, 0xaf3: 0x0008, 0xaf4: 0xe00d, 0xaf5: 0x0008, + 0xaf6: 0xe00d, 0xaf7: 0x0008, 0xaf8: 0xe00d, 0xaf9: 0x0008, 0xafa: 0xe00d, 0xafb: 0x0008, + 0xafc: 0xe00d, 0xafd: 0x0008, 0xafe: 0xe00d, 0xaff: 0x0008, + // Block 0x2c, offset 0xb00 + 0xb00: 0x0008, 0xb01: 0x0008, 0xb02: 0x0008, 0xb03: 0x0008, 0xb04: 0x0008, 0xb05: 0x0008, + 0xb06: 0x0040, 0xb07: 0x0040, 0xb08: 0xe045, 0xb09: 0xe045, 0xb0a: 0xe045, 0xb0b: 0xe045, + 0xb0c: 0xe045, 0xb0d: 0xe045, 0xb0e: 0x0040, 0xb0f: 0x0040, 0xb10: 0x0008, 0xb11: 0x0008, + 0xb12: 0x0008, 0xb13: 0x0008, 0xb14: 0x0008, 0xb15: 0x0008, 0xb16: 0x0008, 0xb17: 0x0008, + 0xb18: 0x0040, 0xb19: 0xe045, 0xb1a: 0x0040, 0xb1b: 0xe045, 0xb1c: 0x0040, 0xb1d: 0xe045, + 0xb1e: 0x0040, 0xb1f: 0xe045, 0xb20: 0x0008, 0xb21: 0x0008, 0xb22: 0x0008, 0xb23: 0x0008, + 0xb24: 0x0008, 0xb25: 0x0008, 0xb26: 0x0008, 0xb27: 0x0008, 0xb28: 0xe045, 0xb29: 0xe045, + 0xb2a: 0xe045, 0xb2b: 0xe045, 0xb2c: 0xe045, 0xb2d: 0xe045, 0xb2e: 0xe045, 0xb2f: 0xe045, + 0xb30: 0x0008, 0xb31: 0x1459, 0xb32: 0x0008, 0xb33: 0x1471, 0xb34: 0x0008, 0xb35: 0x1489, + 0xb36: 0x0008, 0xb37: 0x14a1, 0xb38: 0x0008, 0xb39: 0x14b9, 0xb3a: 0x0008, 0xb3b: 0x14d1, + 0xb3c: 0x0008, 0xb3d: 0x14e9, 0xb3e: 0x0040, 0xb3f: 0x0040, + // Block 0x2d, offset 0xb40 + 0xb40: 0x1501, 0xb41: 0x1531, 0xb42: 0x1561, 0xb43: 0x1591, 0xb44: 0x15c1, 0xb45: 0x15f1, + 0xb46: 0x1621, 0xb47: 0x1651, 0xb48: 0x1501, 0xb49: 0x1531, 0xb4a: 0x1561, 0xb4b: 0x1591, + 0xb4c: 0x15c1, 0xb4d: 0x15f1, 0xb4e: 0x1621, 0xb4f: 0x1651, 0xb50: 0x1681, 0xb51: 0x16b1, + 0xb52: 0x16e1, 0xb53: 0x1711, 0xb54: 0x1741, 0xb55: 0x1771, 0xb56: 0x17a1, 0xb57: 0x17d1, + 0xb58: 0x1681, 0xb59: 0x16b1, 0xb5a: 0x16e1, 0xb5b: 0x1711, 0xb5c: 0x1741, 0xb5d: 0x1771, + 0xb5e: 0x17a1, 0xb5f: 0x17d1, 0xb60: 0x1801, 0xb61: 0x1831, 0xb62: 0x1861, 0xb63: 0x1891, + 0xb64: 0x18c1, 0xb65: 0x18f1, 0xb66: 0x1921, 0xb67: 0x1951, 0xb68: 0x1801, 0xb69: 0x1831, + 0xb6a: 0x1861, 0xb6b: 0x1891, 0xb6c: 0x18c1, 0xb6d: 0x18f1, 0xb6e: 0x1921, 0xb6f: 0x1951, + 0xb70: 0x0008, 0xb71: 0x0008, 0xb72: 0x1981, 0xb73: 0x19b1, 0xb74: 0x19d9, 0xb75: 0x0040, + 0xb76: 0x0008, 0xb77: 0x1a01, 0xb78: 0xe045, 0xb79: 0xe045, 0xb7a: 0x0665, 0xb7b: 0x1459, + 0xb7c: 0x19b1, 0xb7d: 0x067e, 0xb7e: 0x1a31, 0xb7f: 0x069e, + // Block 0x2e, offset 0xb80 + 0xb80: 0x06be, 0xb81: 0x1a4a, 0xb82: 0x1a79, 0xb83: 0x1aa9, 0xb84: 0x1ad1, 0xb85: 0x0040, + 0xb86: 0x0008, 0xb87: 0x1af9, 0xb88: 0x06dd, 0xb89: 0x1471, 0xb8a: 0x06f5, 0xb8b: 0x1489, + 0xb8c: 0x1aa9, 0xb8d: 0x1b2a, 0xb8e: 0x1b5a, 0xb8f: 0x1b8a, 0xb90: 0x0008, 0xb91: 0x0008, + 0xb92: 0x0008, 0xb93: 0x1bb9, 0xb94: 0x0040, 0xb95: 0x0040, 0xb96: 0x0008, 0xb97: 0x0008, + 0xb98: 0xe045, 0xb99: 0xe045, 0xb9a: 0x070d, 0xb9b: 0x14a1, 0xb9c: 0x0040, 0xb9d: 0x1bd2, + 0xb9e: 0x1c02, 0xb9f: 0x1c32, 0xba0: 0x0008, 0xba1: 0x0008, 0xba2: 0x0008, 0xba3: 0x1c61, + 0xba4: 0x0008, 0xba5: 0x0008, 0xba6: 0x0008, 0xba7: 0x0008, 0xba8: 0xe045, 0xba9: 0xe045, + 0xbaa: 0x0725, 0xbab: 0x14d1, 0xbac: 0xe04d, 0xbad: 0x1c7a, 0xbae: 0x03d2, 0xbaf: 0x1caa, + 0xbb0: 0x0040, 0xbb1: 0x0040, 0xbb2: 0x1cb9, 0xbb3: 0x1ce9, 0xbb4: 0x1d11, 0xbb5: 0x0040, + 0xbb6: 0x0008, 0xbb7: 0x1d39, 0xbb8: 0x073d, 0xbb9: 0x14b9, 0xbba: 0x0515, 0xbbb: 0x14e9, + 0xbbc: 0x1ce9, 0xbbd: 0x0756, 0xbbe: 0x0776, 0xbbf: 0x0040, + // Block 0x2f, offset 0xbc0 + 0xbc0: 0x000a, 0xbc1: 0x000a, 0xbc2: 0x000a, 0xbc3: 0x000a, 0xbc4: 0x000a, 0xbc5: 0x000a, + 0xbc6: 0x000a, 0xbc7: 0x000a, 0xbc8: 0x000a, 0xbc9: 0x000a, 0xbca: 0x000a, 0xbcb: 0x03c0, + 0xbcc: 0x0003, 0xbcd: 0x0003, 0xbce: 0x0340, 0xbcf: 0x0b40, 0xbd0: 0x0018, 0xbd1: 0xe00d, + 0xbd2: 0x0018, 0xbd3: 0x0018, 0xbd4: 0x0018, 0xbd5: 0x0018, 0xbd6: 0x0018, 0xbd7: 0x0796, + 0xbd8: 0x0018, 0xbd9: 0x0018, 0xbda: 0x0018, 0xbdb: 0x0018, 0xbdc: 0x0018, 0xbdd: 0x0018, + 0xbde: 0x0018, 0xbdf: 0x0018, 0xbe0: 0x0018, 0xbe1: 0x0018, 0xbe2: 0x0018, 0xbe3: 0x0018, + 0xbe4: 0x0040, 0xbe5: 0x0040, 0xbe6: 0x0040, 0xbe7: 0x0018, 0xbe8: 0x0040, 0xbe9: 0x0040, + 0xbea: 0x0340, 0xbeb: 0x0340, 0xbec: 0x0340, 0xbed: 0x0340, 0xbee: 0x0340, 0xbef: 0x000a, + 0xbf0: 0x0018, 0xbf1: 0x0018, 0xbf2: 0x0018, 0xbf3: 0x1d69, 0xbf4: 0x1da1, 0xbf5: 0x0018, + 0xbf6: 0x1df1, 0xbf7: 0x1e29, 0xbf8: 0x0018, 0xbf9: 0x0018, 0xbfa: 0x0018, 0xbfb: 0x0018, + 0xbfc: 0x1e7a, 0xbfd: 0x0018, 0xbfe: 0x07b6, 0xbff: 0x0018, + // Block 0x30, offset 0xc00 + 0xc00: 0x0018, 0xc01: 0x0018, 0xc02: 0x0018, 0xc03: 0x0018, 0xc04: 0x0018, 0xc05: 0x0018, + 0xc06: 0x0018, 0xc07: 0x1e92, 0xc08: 0x1eaa, 0xc09: 0x1ec2, 0xc0a: 0x0018, 0xc0b: 0x0018, + 0xc0c: 0x0018, 0xc0d: 0x0018, 0xc0e: 0x0018, 0xc0f: 0x0018, 0xc10: 0x0018, 0xc11: 0x0018, + 0xc12: 0x0018, 0xc13: 0x0018, 0xc14: 0x0018, 0xc15: 0x0018, 0xc16: 0x0018, 0xc17: 0x1ed9, + 0xc18: 0x0018, 0xc19: 0x0018, 0xc1a: 0x0018, 0xc1b: 0x0018, 0xc1c: 0x0018, 0xc1d: 0x0018, + 0xc1e: 0x0018, 0xc1f: 0x000a, 0xc20: 0x03c0, 0xc21: 0x0340, 0xc22: 0x0340, 0xc23: 0x0340, + 0xc24: 0x03c0, 0xc25: 0x0040, 0xc26: 0x0040, 0xc27: 0x0040, 0xc28: 0x0040, 0xc29: 0x0040, + 0xc2a: 0x0340, 0xc2b: 0x0340, 0xc2c: 0x0340, 0xc2d: 0x0340, 0xc2e: 0x0340, 0xc2f: 0x0340, + 0xc30: 0x1f41, 0xc31: 0x0f41, 0xc32: 0x0040, 0xc33: 0x0040, 0xc34: 0x1f51, 0xc35: 0x1f61, + 0xc36: 0x1f71, 0xc37: 0x1f81, 0xc38: 0x1f91, 0xc39: 0x1fa1, 0xc3a: 0x1fb2, 0xc3b: 0x07d5, + 0xc3c: 0x1fc2, 0xc3d: 0x1fd2, 0xc3e: 0x1fe2, 0xc3f: 0x0f71, + // Block 0x31, offset 0xc40 + 0xc40: 0x1f41, 0xc41: 0x00c9, 0xc42: 0x0069, 0xc43: 0x0079, 0xc44: 0x1f51, 0xc45: 0x1f61, + 0xc46: 0x1f71, 0xc47: 0x1f81, 0xc48: 0x1f91, 0xc49: 0x1fa1, 0xc4a: 0x1fb2, 0xc4b: 0x07ed, + 0xc4c: 0x1fc2, 0xc4d: 0x1fd2, 0xc4e: 0x1fe2, 0xc4f: 0x0040, 0xc50: 0x0039, 0xc51: 0x0f09, + 0xc52: 0x00d9, 0xc53: 0x0369, 0xc54: 0x0ff9, 0xc55: 0x0249, 0xc56: 0x0f51, 0xc57: 0x0359, + 0xc58: 0x0f61, 0xc59: 0x0f71, 0xc5a: 0x0f99, 0xc5b: 0x01d9, 0xc5c: 0x0fa9, 0xc5d: 0x0040, + 0xc5e: 0x0040, 0xc5f: 0x0040, 0xc60: 0x0018, 0xc61: 0x0018, 0xc62: 0x0018, 0xc63: 0x0018, + 0xc64: 0x0018, 0xc65: 0x0018, 0xc66: 0x0018, 0xc67: 0x0018, 0xc68: 0x1ff1, 0xc69: 0x0018, + 0xc6a: 0x0018, 0xc6b: 0x0018, 0xc6c: 0x0018, 0xc6d: 0x0018, 0xc6e: 0x0018, 0xc6f: 0x0018, + 0xc70: 0x0018, 0xc71: 0x0018, 0xc72: 0x0018, 0xc73: 0x0018, 0xc74: 0x0018, 0xc75: 0x0018, + 0xc76: 0x0018, 0xc77: 0x0018, 0xc78: 0x0018, 0xc79: 0x0018, 0xc7a: 0x0018, 0xc7b: 0x0018, + 0xc7c: 0x0018, 0xc7d: 0x0018, 0xc7e: 0x0018, 0xc7f: 0x0018, + // Block 0x32, offset 0xc80 + 0xc80: 0x0806, 0xc81: 0x0826, 0xc82: 0x1159, 0xc83: 0x0845, 0xc84: 0x0018, 0xc85: 0x0866, + 0xc86: 0x0886, 0xc87: 0x1011, 0xc88: 0x0018, 0xc89: 0x08a5, 0xc8a: 0x0f31, 0xc8b: 0x0249, + 0xc8c: 0x0249, 0xc8d: 0x0249, 0xc8e: 0x0249, 0xc8f: 0x2009, 0xc90: 0x0f41, 0xc91: 0x0f41, + 0xc92: 0x0359, 0xc93: 0x0359, 0xc94: 0x0018, 0xc95: 0x0f71, 0xc96: 0x2021, 0xc97: 0x0018, + 0xc98: 0x0018, 0xc99: 0x0f99, 0xc9a: 0x2039, 0xc9b: 0x0269, 0xc9c: 0x0269, 0xc9d: 0x0269, + 0xc9e: 0x0018, 0xc9f: 0x0018, 0xca0: 0x2049, 0xca1: 0x08c5, 0xca2: 0x2061, 0xca3: 0x0018, + 0xca4: 0x13d1, 0xca5: 0x0018, 0xca6: 0x2079, 0xca7: 0x0018, 0xca8: 0x13d1, 0xca9: 0x0018, + 0xcaa: 0x0f51, 0xcab: 0x2091, 0xcac: 0x0ee9, 0xcad: 0x1159, 0xcae: 0x0018, 0xcaf: 0x0f09, + 0xcb0: 0x0f09, 0xcb1: 0x1199, 0xcb2: 0x0040, 0xcb3: 0x0f61, 0xcb4: 0x00d9, 0xcb5: 0x20a9, + 0xcb6: 0x20c1, 0xcb7: 0x20d9, 0xcb8: 0x20f1, 0xcb9: 0x0f41, 0xcba: 0x0018, 0xcbb: 0x08e5, + 0xcbc: 0x2109, 0xcbd: 0x10b1, 0xcbe: 0x10b1, 0xcbf: 0x2109, + // Block 0x33, offset 0xcc0 + 0xcc0: 0x0905, 0xcc1: 0x0018, 0xcc2: 0x0018, 0xcc3: 0x0018, 0xcc4: 0x0018, 0xcc5: 0x0ef9, + 0xcc6: 0x0ef9, 0xcc7: 0x0f09, 0xcc8: 0x0f41, 0xcc9: 0x0259, 0xcca: 0x0018, 0xccb: 0x0018, + 0xccc: 0x0018, 0xccd: 0x0018, 0xcce: 0x0008, 0xccf: 0x0018, 0xcd0: 0x2121, 0xcd1: 0x2151, + 0xcd2: 0x2181, 0xcd3: 0x21b9, 0xcd4: 0x21e9, 0xcd5: 0x2219, 0xcd6: 0x2249, 0xcd7: 0x2279, + 0xcd8: 0x22a9, 0xcd9: 0x22d9, 0xcda: 0x2309, 0xcdb: 0x2339, 0xcdc: 0x2369, 0xcdd: 0x2399, + 0xcde: 0x23c9, 0xcdf: 0x23f9, 0xce0: 0x0f41, 0xce1: 0x2421, 0xce2: 0x091d, 0xce3: 0x2439, + 0xce4: 0x1089, 0xce5: 0x2451, 0xce6: 0x093d, 0xce7: 0x2469, 0xce8: 0x2491, 0xce9: 0x0369, + 0xcea: 0x24a9, 0xceb: 0x095d, 0xcec: 0x0359, 0xced: 0x1159, 0xcee: 0x0ef9, 0xcef: 0x0f61, + 0xcf0: 0x0f41, 0xcf1: 0x2421, 0xcf2: 0x097d, 0xcf3: 0x2439, 0xcf4: 0x1089, 0xcf5: 0x2451, + 0xcf6: 0x099d, 0xcf7: 0x2469, 0xcf8: 0x2491, 0xcf9: 0x0369, 0xcfa: 0x24a9, 0xcfb: 0x09bd, + 0xcfc: 0x0359, 0xcfd: 0x1159, 0xcfe: 0x0ef9, 0xcff: 0x0f61, + // Block 0x34, offset 0xd00 + 0xd00: 0x0018, 0xd01: 0x0018, 0xd02: 0x0018, 0xd03: 0x0018, 0xd04: 0x0018, 0xd05: 0x0018, + 0xd06: 0x0018, 0xd07: 0x0018, 0xd08: 0x0018, 0xd09: 0x0018, 0xd0a: 0x0018, 0xd0b: 0x0040, + 0xd0c: 0x0040, 0xd0d: 0x0040, 0xd0e: 0x0040, 0xd0f: 0x0040, 0xd10: 0x0040, 0xd11: 0x0040, + 0xd12: 0x0040, 0xd13: 0x0040, 0xd14: 0x0040, 0xd15: 0x0040, 0xd16: 0x0040, 0xd17: 0x0040, + 0xd18: 0x0040, 0xd19: 0x0040, 0xd1a: 0x0040, 0xd1b: 0x0040, 0xd1c: 0x0040, 0xd1d: 0x0040, + 0xd1e: 0x0040, 0xd1f: 0x0040, 0xd20: 0x00c9, 0xd21: 0x0069, 0xd22: 0x0079, 0xd23: 0x1f51, + 0xd24: 0x1f61, 0xd25: 0x1f71, 0xd26: 0x1f81, 0xd27: 0x1f91, 0xd28: 0x1fa1, 0xd29: 0x2601, + 0xd2a: 0x2619, 0xd2b: 0x2631, 0xd2c: 0x2649, 0xd2d: 0x2661, 0xd2e: 0x2679, 0xd2f: 0x2691, + 0xd30: 0x26a9, 0xd31: 0x26c1, 0xd32: 0x26d9, 0xd33: 0x26f1, 0xd34: 0x0a1e, 0xd35: 0x0a3e, + 0xd36: 0x0a5e, 0xd37: 0x0a7e, 0xd38: 0x0a9e, 0xd39: 0x0abe, 0xd3a: 0x0ade, 0xd3b: 0x0afe, + 0xd3c: 0x0b1e, 0xd3d: 0x270a, 0xd3e: 0x2732, 0xd3f: 0x275a, + // Block 0x35, offset 0xd40 + 0xd40: 0x2782, 0xd41: 0x27aa, 0xd42: 0x27d2, 0xd43: 0x27fa, 0xd44: 0x2822, 0xd45: 0x284a, + 0xd46: 0x2872, 0xd47: 0x289a, 0xd48: 0x0040, 0xd49: 0x0040, 0xd4a: 0x0040, 0xd4b: 0x0040, + 0xd4c: 0x0040, 0xd4d: 0x0040, 0xd4e: 0x0040, 0xd4f: 0x0040, 0xd50: 0x0040, 0xd51: 0x0040, + 0xd52: 0x0040, 0xd53: 0x0040, 0xd54: 0x0040, 0xd55: 0x0040, 0xd56: 0x0040, 0xd57: 0x0040, + 0xd58: 0x0040, 0xd59: 0x0040, 0xd5a: 0x0040, 0xd5b: 0x0040, 0xd5c: 0x0b3e, 0xd5d: 0x0b5e, + 0xd5e: 0x0b7e, 0xd5f: 0x0b9e, 0xd60: 0x0bbe, 0xd61: 0x0bde, 0xd62: 0x0bfe, 0xd63: 0x0c1e, + 0xd64: 0x0c3e, 0xd65: 0x0c5e, 0xd66: 0x0c7e, 0xd67: 0x0c9e, 0xd68: 0x0cbe, 0xd69: 0x0cde, + 0xd6a: 0x0cfe, 0xd6b: 0x0d1e, 0xd6c: 0x0d3e, 0xd6d: 0x0d5e, 0xd6e: 0x0d7e, 0xd6f: 0x0d9e, + 0xd70: 0x0dbe, 0xd71: 0x0dde, 0xd72: 0x0dfe, 0xd73: 0x0e1e, 0xd74: 0x0e3e, 0xd75: 0x0e5e, + 0xd76: 0x0039, 0xd77: 0x0ee9, 0xd78: 0x1159, 0xd79: 0x0ef9, 0xd7a: 0x0f09, 0xd7b: 0x1199, + 0xd7c: 0x0f31, 0xd7d: 0x0249, 0xd7e: 0x0f41, 0xd7f: 0x0259, + // Block 0x36, offset 0xd80 + 0xd80: 0x0f51, 0xd81: 0x0359, 0xd82: 0x0f61, 0xd83: 0x0f71, 0xd84: 0x00d9, 0xd85: 0x0f99, + 0xd86: 0x2039, 0xd87: 0x0269, 0xd88: 0x01d9, 0xd89: 0x0fa9, 0xd8a: 0x0fb9, 0xd8b: 0x1089, + 0xd8c: 0x0279, 0xd8d: 0x0369, 0xd8e: 0x0289, 0xd8f: 0x13d1, 0xd90: 0x0039, 0xd91: 0x0ee9, + 0xd92: 0x1159, 0xd93: 0x0ef9, 0xd94: 0x0f09, 0xd95: 0x1199, 0xd96: 0x0f31, 0xd97: 0x0249, + 0xd98: 0x0f41, 0xd99: 0x0259, 0xd9a: 0x0f51, 0xd9b: 0x0359, 0xd9c: 0x0f61, 0xd9d: 0x0f71, + 0xd9e: 0x00d9, 0xd9f: 0x0f99, 0xda0: 0x2039, 0xda1: 0x0269, 0xda2: 0x01d9, 0xda3: 0x0fa9, + 0xda4: 0x0fb9, 0xda5: 0x1089, 0xda6: 0x0279, 0xda7: 0x0369, 0xda8: 0x0289, 0xda9: 0x13d1, + 0xdaa: 0x1f41, 0xdab: 0x0018, 0xdac: 0x0018, 0xdad: 0x0018, 0xdae: 0x0018, 0xdaf: 0x0018, + 0xdb0: 0x0018, 0xdb1: 0x0018, 0xdb2: 0x0018, 0xdb3: 0x0018, 0xdb4: 0x0018, 0xdb5: 0x0018, + 0xdb6: 0x0018, 0xdb7: 0x0018, 0xdb8: 0x0018, 0xdb9: 0x0018, 0xdba: 0x0018, 0xdbb: 0x0018, + 0xdbc: 0x0018, 0xdbd: 0x0018, 0xdbe: 0x0018, 0xdbf: 0x0018, + // Block 0x37, offset 0xdc0 + 0xdc0: 0x0008, 0xdc1: 0x0008, 0xdc2: 0x0008, 0xdc3: 0x0008, 0xdc4: 0x0008, 0xdc5: 0x0008, + 0xdc6: 0x0008, 0xdc7: 0x0008, 0xdc8: 0x0008, 0xdc9: 0x0008, 0xdca: 0x0008, 0xdcb: 0x0008, + 0xdcc: 0x0008, 0xdcd: 0x0008, 0xdce: 0x0008, 0xdcf: 0x0008, 0xdd0: 0x0008, 0xdd1: 0x0008, + 0xdd2: 0x0008, 0xdd3: 0x0008, 0xdd4: 0x0008, 0xdd5: 0x0008, 0xdd6: 0x0008, 0xdd7: 0x0008, + 0xdd8: 0x0008, 0xdd9: 0x0008, 0xdda: 0x0008, 0xddb: 0x0008, 0xddc: 0x0008, 0xddd: 0x0008, + 0xdde: 0x0008, 0xddf: 0x0040, 0xde0: 0xe00d, 0xde1: 0x0008, 0xde2: 0x2971, 0xde3: 0x0ed5, + 0xde4: 0x2989, 0xde5: 0x0008, 0xde6: 0x0008, 0xde7: 0xe07d, 0xde8: 0x0008, 0xde9: 0xe01d, + 0xdea: 0x0008, 0xdeb: 0xe03d, 0xdec: 0x0008, 0xded: 0x0fe1, 0xdee: 0x1281, 0xdef: 0x0fc9, + 0xdf0: 0x1141, 0xdf1: 0x0008, 0xdf2: 0xe00d, 0xdf3: 0x0008, 0xdf4: 0x0008, 0xdf5: 0xe01d, + 0xdf6: 0x0008, 0xdf7: 0x0008, 0xdf8: 0x0008, 0xdf9: 0x0008, 0xdfa: 0x0008, 0xdfb: 0x0008, + 0xdfc: 0x0259, 0xdfd: 0x1089, 0xdfe: 0x29a1, 0xdff: 0x29b9, + // Block 0x38, offset 0xe00 + 0xe00: 0xe00d, 0xe01: 0x0008, 0xe02: 0xe00d, 0xe03: 0x0008, 0xe04: 0xe00d, 0xe05: 0x0008, + 0xe06: 0xe00d, 0xe07: 0x0008, 0xe08: 0xe00d, 0xe09: 0x0008, 0xe0a: 0xe00d, 0xe0b: 0x0008, + 0xe0c: 0xe00d, 0xe0d: 0x0008, 0xe0e: 0xe00d, 0xe0f: 0x0008, 0xe10: 0xe00d, 0xe11: 0x0008, + 0xe12: 0xe00d, 0xe13: 0x0008, 0xe14: 0xe00d, 0xe15: 0x0008, 0xe16: 0xe00d, 0xe17: 0x0008, + 0xe18: 0xe00d, 0xe19: 0x0008, 0xe1a: 0xe00d, 0xe1b: 0x0008, 0xe1c: 0xe00d, 0xe1d: 0x0008, + 0xe1e: 0xe00d, 0xe1f: 0x0008, 0xe20: 0xe00d, 0xe21: 0x0008, 0xe22: 0xe00d, 0xe23: 0x0008, + 0xe24: 0x0008, 0xe25: 0x0018, 0xe26: 0x0018, 0xe27: 0x0018, 0xe28: 0x0018, 0xe29: 0x0018, + 0xe2a: 0x0018, 0xe2b: 0xe03d, 0xe2c: 0x0008, 0xe2d: 0xe01d, 0xe2e: 0x0008, 0xe2f: 0x3308, + 0xe30: 0x3308, 0xe31: 0x3308, 0xe32: 0xe00d, 0xe33: 0x0008, 0xe34: 0x0040, 0xe35: 0x0040, + 0xe36: 0x0040, 0xe37: 0x0040, 0xe38: 0x0040, 0xe39: 0x0018, 0xe3a: 0x0018, 0xe3b: 0x0018, + 0xe3c: 0x0018, 0xe3d: 0x0018, 0xe3e: 0x0018, 0xe3f: 0x0018, + // Block 0x39, offset 0xe40 + 0xe40: 0x2715, 0xe41: 0x2735, 0xe42: 0x2755, 0xe43: 0x2775, 0xe44: 0x2795, 0xe45: 0x27b5, + 0xe46: 0x27d5, 0xe47: 0x27f5, 0xe48: 0x2815, 0xe49: 0x2835, 0xe4a: 0x2855, 0xe4b: 0x2875, + 0xe4c: 0x2895, 0xe4d: 0x28b5, 0xe4e: 0x28d5, 0xe4f: 0x28f5, 0xe50: 0x2915, 0xe51: 0x2935, + 0xe52: 0x2955, 0xe53: 0x2975, 0xe54: 0x2995, 0xe55: 0x29b5, 0xe56: 0x0040, 0xe57: 0x0040, + 0xe58: 0x0040, 0xe59: 0x0040, 0xe5a: 0x0040, 0xe5b: 0x0040, 0xe5c: 0x0040, 0xe5d: 0x0040, + 0xe5e: 0x0040, 0xe5f: 0x0040, 0xe60: 0x0040, 0xe61: 0x0040, 0xe62: 0x0040, 0xe63: 0x0040, + 0xe64: 0x0040, 0xe65: 0x0040, 0xe66: 0x0040, 0xe67: 0x0040, 0xe68: 0x0040, 0xe69: 0x0040, + 0xe6a: 0x0040, 0xe6b: 0x0040, 0xe6c: 0x0040, 0xe6d: 0x0040, 0xe6e: 0x0040, 0xe6f: 0x0040, + 0xe70: 0x0040, 0xe71: 0x0040, 0xe72: 0x0040, 0xe73: 0x0040, 0xe74: 0x0040, 0xe75: 0x0040, + 0xe76: 0x0040, 0xe77: 0x0040, 0xe78: 0x0040, 0xe79: 0x0040, 0xe7a: 0x0040, 0xe7b: 0x0040, + 0xe7c: 0x0040, 0xe7d: 0x0040, 0xe7e: 0x0040, 0xe7f: 0x0040, + // Block 0x3a, offset 0xe80 + 0xe80: 0x000a, 0xe81: 0x0018, 0xe82: 0x29d1, 0xe83: 0x0018, 0xe84: 0x0018, 0xe85: 0x0008, + 0xe86: 0x0008, 0xe87: 0x0008, 0xe88: 0x0018, 0xe89: 0x0018, 0xe8a: 0x0018, 0xe8b: 0x0018, + 0xe8c: 0x0018, 0xe8d: 0x0018, 0xe8e: 0x0018, 0xe8f: 0x0018, 0xe90: 0x0018, 0xe91: 0x0018, + 0xe92: 0x0018, 0xe93: 0x0018, 0xe94: 0x0018, 0xe95: 0x0018, 0xe96: 0x0018, 0xe97: 0x0018, + 0xe98: 0x0018, 0xe99: 0x0018, 0xe9a: 0x0018, 0xe9b: 0x0018, 0xe9c: 0x0018, 0xe9d: 0x0018, + 0xe9e: 0x0018, 0xe9f: 0x0018, 0xea0: 0x0018, 0xea1: 0x0018, 0xea2: 0x0018, 0xea3: 0x0018, + 0xea4: 0x0018, 0xea5: 0x0018, 0xea6: 0x0018, 0xea7: 0x0018, 0xea8: 0x0018, 0xea9: 0x0018, + 0xeaa: 0x3308, 0xeab: 0x3308, 0xeac: 0x3308, 0xead: 0x3308, 0xeae: 0x3018, 0xeaf: 0x3018, + 0xeb0: 0x0018, 0xeb1: 0x0018, 0xeb2: 0x0018, 0xeb3: 0x0018, 0xeb4: 0x0018, 0xeb5: 0x0018, + 0xeb6: 0xe125, 0xeb7: 0x0018, 0xeb8: 0x29d5, 0xeb9: 0x29f5, 0xeba: 0x2a15, 0xebb: 0x0018, + 0xebc: 0x0008, 0xebd: 0x0018, 0xebe: 0x0018, 0xebf: 0x0018, + // Block 0x3b, offset 0xec0 + 0xec0: 0x2b55, 0xec1: 0x2b75, 0xec2: 0x2b95, 0xec3: 0x2bb5, 0xec4: 0x2bd5, 0xec5: 0x2bf5, + 0xec6: 0x2bf5, 0xec7: 0x2bf5, 0xec8: 0x2c15, 0xec9: 0x2c15, 0xeca: 0x2c15, 0xecb: 0x2c15, + 0xecc: 0x2c35, 0xecd: 0x2c35, 0xece: 0x2c35, 0xecf: 0x2c55, 0xed0: 0x2c75, 0xed1: 0x2c75, + 0xed2: 0x2a95, 0xed3: 0x2a95, 0xed4: 0x2c75, 0xed5: 0x2c75, 0xed6: 0x2c95, 0xed7: 0x2c95, + 0xed8: 0x2c75, 0xed9: 0x2c75, 0xeda: 0x2a95, 0xedb: 0x2a95, 0xedc: 0x2c75, 0xedd: 0x2c75, + 0xede: 0x2c55, 0xedf: 0x2c55, 0xee0: 0x2cb5, 0xee1: 0x2cb5, 0xee2: 0x2cd5, 0xee3: 0x2cd5, + 0xee4: 0x0040, 0xee5: 0x2cf5, 0xee6: 0x2d15, 0xee7: 0x2d35, 0xee8: 0x2d35, 0xee9: 0x2d55, + 0xeea: 0x2d75, 0xeeb: 0x2d95, 0xeec: 0x2db5, 0xeed: 0x2dd5, 0xeee: 0x2df5, 0xeef: 0x2e15, + 0xef0: 0x2e35, 0xef1: 0x2e55, 0xef2: 0x2e55, 0xef3: 0x2e75, 0xef4: 0x2e95, 0xef5: 0x2e95, + 0xef6: 0x2eb5, 0xef7: 0x2ed5, 0xef8: 0x2e75, 0xef9: 0x2ef5, 0xefa: 0x2f15, 0xefb: 0x2ef5, + 0xefc: 0x2e75, 0xefd: 0x2f35, 0xefe: 0x2f55, 0xeff: 0x2f75, + // Block 0x3c, offset 0xf00 + 0xf00: 0x2f95, 0xf01: 0x2fb5, 0xf02: 0x2d15, 0xf03: 0x2cf5, 0xf04: 0x2fd5, 0xf05: 0x2ff5, + 0xf06: 0x3015, 0xf07: 0x3035, 0xf08: 0x3055, 0xf09: 0x3075, 0xf0a: 0x3095, 0xf0b: 0x30b5, + 0xf0c: 0x30d5, 0xf0d: 0x30f5, 0xf0e: 0x3115, 0xf0f: 0x0040, 0xf10: 0x0018, 0xf11: 0x0018, + 0xf12: 0x3135, 0xf13: 0x3155, 0xf14: 0x3175, 0xf15: 0x3195, 0xf16: 0x31b5, 0xf17: 0x31d5, + 0xf18: 0x31f5, 0xf19: 0x3215, 0xf1a: 0x3235, 0xf1b: 0x3255, 0xf1c: 0x3175, 0xf1d: 0x3275, + 0xf1e: 0x3295, 0xf1f: 0x32b5, 0xf20: 0x0008, 0xf21: 0x0008, 0xf22: 0x0008, 0xf23: 0x0008, + 0xf24: 0x0008, 0xf25: 0x0008, 0xf26: 0x0008, 0xf27: 0x0008, 0xf28: 0x0008, 0xf29: 0x0008, + 0xf2a: 0x0008, 0xf2b: 0x0008, 0xf2c: 0x0008, 0xf2d: 0x0008, 0xf2e: 0x0008, 0xf2f: 0x0008, + 0xf30: 0x0008, 0xf31: 0x0008, 0xf32: 0x0008, 0xf33: 0x0008, 0xf34: 0x0008, 0xf35: 0x0008, + 0xf36: 0x0008, 0xf37: 0x0008, 0xf38: 0x0008, 0xf39: 0x0008, 0xf3a: 0x0008, 0xf3b: 0x0040, + 0xf3c: 0x0040, 0xf3d: 0x0040, 0xf3e: 0x0040, 0xf3f: 0x0040, + // Block 0x3d, offset 0xf40 + 0xf40: 0x36a2, 0xf41: 0x36d2, 0xf42: 0x3702, 0xf43: 0x3732, 0xf44: 0x32d5, 0xf45: 0x32f5, + 0xf46: 0x3315, 0xf47: 0x3335, 0xf48: 0x0018, 0xf49: 0x0018, 0xf4a: 0x0018, 0xf4b: 0x0018, + 0xf4c: 0x0018, 0xf4d: 0x0018, 0xf4e: 0x0018, 0xf4f: 0x0018, 0xf50: 0x3355, 0xf51: 0x3761, + 0xf52: 0x3779, 0xf53: 0x3791, 0xf54: 0x37a9, 0xf55: 0x37c1, 0xf56: 0x37d9, 0xf57: 0x37f1, + 0xf58: 0x3809, 0xf59: 0x3821, 0xf5a: 0x3839, 0xf5b: 0x3851, 0xf5c: 0x3869, 0xf5d: 0x3881, + 0xf5e: 0x3899, 0xf5f: 0x38b1, 0xf60: 0x3375, 0xf61: 0x3395, 0xf62: 0x33b5, 0xf63: 0x33d5, + 0xf64: 0x33f5, 0xf65: 0x33f5, 0xf66: 0x3415, 0xf67: 0x3435, 0xf68: 0x3455, 0xf69: 0x3475, + 0xf6a: 0x3495, 0xf6b: 0x34b5, 0xf6c: 0x34d5, 0xf6d: 0x34f5, 0xf6e: 0x3515, 0xf6f: 0x3535, + 0xf70: 0x3555, 0xf71: 0x3575, 0xf72: 0x3595, 0xf73: 0x35b5, 0xf74: 0x35d5, 0xf75: 0x35f5, + 0xf76: 0x3615, 0xf77: 0x3635, 0xf78: 0x3655, 0xf79: 0x3675, 0xf7a: 0x3695, 0xf7b: 0x36b5, + 0xf7c: 0x38c9, 0xf7d: 0x3901, 0xf7e: 0x36d5, 0xf7f: 0x0018, + // Block 0x3e, offset 0xf80 + 0xf80: 0x36f5, 0xf81: 0x3715, 0xf82: 0x3735, 0xf83: 0x3755, 0xf84: 0x3775, 0xf85: 0x3795, + 0xf86: 0x37b5, 0xf87: 0x37d5, 0xf88: 0x37f5, 0xf89: 0x3815, 0xf8a: 0x3835, 0xf8b: 0x3855, + 0xf8c: 0x3875, 0xf8d: 0x3895, 0xf8e: 0x38b5, 0xf8f: 0x38d5, 0xf90: 0x38f5, 0xf91: 0x3915, + 0xf92: 0x3935, 0xf93: 0x3955, 0xf94: 0x3975, 0xf95: 0x3995, 0xf96: 0x39b5, 0xf97: 0x39d5, + 0xf98: 0x39f5, 0xf99: 0x3a15, 0xf9a: 0x3a35, 0xf9b: 0x3a55, 0xf9c: 0x3a75, 0xf9d: 0x3a95, + 0xf9e: 0x3ab5, 0xf9f: 0x3ad5, 0xfa0: 0x3af5, 0xfa1: 0x3b15, 0xfa2: 0x3b35, 0xfa3: 0x3b55, + 0xfa4: 0x3b75, 0xfa5: 0x3b95, 0xfa6: 0x1295, 0xfa7: 0x3bb5, 0xfa8: 0x3bd5, 0xfa9: 0x3bf5, + 0xfaa: 0x3c15, 0xfab: 0x3c35, 0xfac: 0x3c55, 0xfad: 0x3c75, 0xfae: 0x23b5, 0xfaf: 0x3c95, + 0xfb0: 0x3cb5, 0xfb1: 0x3939, 0xfb2: 0x3951, 0xfb3: 0x3969, 0xfb4: 0x3981, 0xfb5: 0x3999, + 0xfb6: 0x39b1, 0xfb7: 0x39c9, 0xfb8: 0x39e1, 0xfb9: 0x39f9, 0xfba: 0x3a11, 0xfbb: 0x3a29, + 0xfbc: 0x3a41, 0xfbd: 0x3a59, 0xfbe: 0x3a71, 0xfbf: 0x3a89, + // Block 0x3f, offset 0xfc0 + 0xfc0: 0x3aa1, 0xfc1: 0x3ac9, 0xfc2: 0x3af1, 0xfc3: 0x3b19, 0xfc4: 0x3b41, 0xfc5: 0x3b69, + 0xfc6: 0x3b91, 0xfc7: 0x3bb9, 0xfc8: 0x3be1, 0xfc9: 0x3c09, 0xfca: 0x3c39, 0xfcb: 0x3c69, + 0xfcc: 0x3c99, 0xfcd: 0x3cd5, 0xfce: 0x3cb1, 0xfcf: 0x3cf5, 0xfd0: 0x3d15, 0xfd1: 0x3d2d, + 0xfd2: 0x3d45, 0xfd3: 0x3d5d, 0xfd4: 0x3d75, 0xfd5: 0x3d75, 0xfd6: 0x3d5d, 0xfd7: 0x3d8d, + 0xfd8: 0x07d5, 0xfd9: 0x3da5, 0xfda: 0x3dbd, 0xfdb: 0x3dd5, 0xfdc: 0x3ded, 0xfdd: 0x3e05, + 0xfde: 0x3e1d, 0xfdf: 0x3e35, 0xfe0: 0x3e4d, 0xfe1: 0x3e65, 0xfe2: 0x3e7d, 0xfe3: 0x3e95, + 0xfe4: 0x3ead, 0xfe5: 0x3ead, 0xfe6: 0x3ec5, 0xfe7: 0x3ec5, 0xfe8: 0x3edd, 0xfe9: 0x3edd, + 0xfea: 0x3ef5, 0xfeb: 0x3f0d, 0xfec: 0x3f25, 0xfed: 0x3f3d, 0xfee: 0x3f55, 0xfef: 0x3f55, + 0xff0: 0x3f6d, 0xff1: 0x3f6d, 0xff2: 0x3f6d, 0xff3: 0x3f85, 0xff4: 0x3f9d, 0xff5: 0x3fb5, + 0xff6: 0x3fcd, 0xff7: 0x3fb5, 0xff8: 0x3fe5, 0xff9: 0x3ffd, 0xffa: 0x3f85, 0xffb: 0x4015, + 0xffc: 0x402d, 0xffd: 0x402d, 0xffe: 0x402d, 0xfff: 0x0040, + // Block 0x40, offset 0x1000 + 0x1000: 0x3cc9, 0x1001: 0x3d31, 0x1002: 0x3d99, 0x1003: 0x3e01, 0x1004: 0x3e51, 0x1005: 0x3eb9, + 0x1006: 0x3f09, 0x1007: 0x3f59, 0x1008: 0x3fd9, 0x1009: 0x4041, 0x100a: 0x4091, 0x100b: 0x40e1, + 0x100c: 0x4131, 0x100d: 0x4199, 0x100e: 0x4201, 0x100f: 0x4251, 0x1010: 0x42a1, 0x1011: 0x42d9, + 0x1012: 0x4329, 0x1013: 0x4391, 0x1014: 0x43f9, 0x1015: 0x4431, 0x1016: 0x44b1, 0x1017: 0x4549, + 0x1018: 0x45c9, 0x1019: 0x4619, 0x101a: 0x4699, 0x101b: 0x4719, 0x101c: 0x4781, 0x101d: 0x47d1, + 0x101e: 0x4821, 0x101f: 0x4871, 0x1020: 0x48d9, 0x1021: 0x4959, 0x1022: 0x49c1, 0x1023: 0x4a11, + 0x1024: 0x4a61, 0x1025: 0x4ab1, 0x1026: 0x4ae9, 0x1027: 0x4b21, 0x1028: 0x4b59, 0x1029: 0x4b91, + 0x102a: 0x4be1, 0x102b: 0x4c31, 0x102c: 0x4cb1, 0x102d: 0x4d01, 0x102e: 0x4d69, 0x102f: 0x4de9, + 0x1030: 0x4e39, 0x1031: 0x4e71, 0x1032: 0x4ea9, 0x1033: 0x4f29, 0x1034: 0x4f91, 0x1035: 0x5011, + 0x1036: 0x5061, 0x1037: 0x50e1, 0x1038: 0x5119, 0x1039: 0x5169, 0x103a: 0x51b9, 0x103b: 0x5209, + 0x103c: 0x5259, 0x103d: 0x52a9, 0x103e: 0x5311, 0x103f: 0x5361, + // Block 0x41, offset 0x1040 + 0x1040: 0x5399, 0x1041: 0x53e9, 0x1042: 0x5439, 0x1043: 0x5489, 0x1044: 0x54f1, 0x1045: 0x5541, + 0x1046: 0x5591, 0x1047: 0x55e1, 0x1048: 0x5661, 0x1049: 0x56c9, 0x104a: 0x5701, 0x104b: 0x5781, + 0x104c: 0x57b9, 0x104d: 0x5821, 0x104e: 0x5889, 0x104f: 0x58d9, 0x1050: 0x5929, 0x1051: 0x5979, + 0x1052: 0x59e1, 0x1053: 0x5a19, 0x1054: 0x5a69, 0x1055: 0x5ad1, 0x1056: 0x5b09, 0x1057: 0x5b89, + 0x1058: 0x5bd9, 0x1059: 0x5c01, 0x105a: 0x5c29, 0x105b: 0x5c51, 0x105c: 0x5c79, 0x105d: 0x5ca1, + 0x105e: 0x5cc9, 0x105f: 0x5cf1, 0x1060: 0x5d19, 0x1061: 0x5d41, 0x1062: 0x5d69, 0x1063: 0x5d99, + 0x1064: 0x5dc9, 0x1065: 0x5df9, 0x1066: 0x5e29, 0x1067: 0x5e59, 0x1068: 0x5e89, 0x1069: 0x5eb9, + 0x106a: 0x5ee9, 0x106b: 0x5f19, 0x106c: 0x5f49, 0x106d: 0x5f79, 0x106e: 0x5fa9, 0x106f: 0x5fd9, + 0x1070: 0x6009, 0x1071: 0x4045, 0x1072: 0x6039, 0x1073: 0x6051, 0x1074: 0x4065, 0x1075: 0x6069, + 0x1076: 0x6081, 0x1077: 0x6099, 0x1078: 0x4085, 0x1079: 0x4085, 0x107a: 0x60b1, 0x107b: 0x60c9, + 0x107c: 0x6101, 0x107d: 0x6139, 0x107e: 0x6171, 0x107f: 0x61a9, + // Block 0x42, offset 0x1080 + 0x1080: 0x6211, 0x1081: 0x6229, 0x1082: 0x40a5, 0x1083: 0x6241, 0x1084: 0x6259, 0x1085: 0x6271, + 0x1086: 0x6289, 0x1087: 0x62a1, 0x1088: 0x40c5, 0x1089: 0x62b9, 0x108a: 0x62e1, 0x108b: 0x62f9, + 0x108c: 0x40e5, 0x108d: 0x40e5, 0x108e: 0x6311, 0x108f: 0x6329, 0x1090: 0x6341, 0x1091: 0x4105, + 0x1092: 0x4125, 0x1093: 0x4145, 0x1094: 0x4165, 0x1095: 0x4185, 0x1096: 0x6359, 0x1097: 0x6371, + 0x1098: 0x6389, 0x1099: 0x63a1, 0x109a: 0x63b9, 0x109b: 0x41a5, 0x109c: 0x63d1, 0x109d: 0x63e9, + 0x109e: 0x6401, 0x109f: 0x41c5, 0x10a0: 0x41e5, 0x10a1: 0x6419, 0x10a2: 0x4205, 0x10a3: 0x4225, + 0x10a4: 0x4245, 0x10a5: 0x6431, 0x10a6: 0x4265, 0x10a7: 0x6449, 0x10a8: 0x6479, 0x10a9: 0x6211, + 0x10aa: 0x4285, 0x10ab: 0x42a5, 0x10ac: 0x42c5, 0x10ad: 0x42e5, 0x10ae: 0x64b1, 0x10af: 0x64f1, + 0x10b0: 0x6539, 0x10b1: 0x6551, 0x10b2: 0x4305, 0x10b3: 0x6569, 0x10b4: 0x6581, 0x10b5: 0x6599, + 0x10b6: 0x4325, 0x10b7: 0x65b1, 0x10b8: 0x65c9, 0x10b9: 0x65b1, 0x10ba: 0x65e1, 0x10bb: 0x65f9, + 0x10bc: 0x4345, 0x10bd: 0x6611, 0x10be: 0x6629, 0x10bf: 0x6611, + // Block 0x43, offset 0x10c0 + 0x10c0: 0x4365, 0x10c1: 0x4385, 0x10c2: 0x0040, 0x10c3: 0x6641, 0x10c4: 0x6659, 0x10c5: 0x6671, + 0x10c6: 0x6689, 0x10c7: 0x0040, 0x10c8: 0x66c1, 0x10c9: 0x66d9, 0x10ca: 0x66f1, 0x10cb: 0x6709, + 0x10cc: 0x6721, 0x10cd: 0x6739, 0x10ce: 0x6401, 0x10cf: 0x6751, 0x10d0: 0x6769, 0x10d1: 0x6781, + 0x10d2: 0x43a5, 0x10d3: 0x6799, 0x10d4: 0x6289, 0x10d5: 0x43c5, 0x10d6: 0x43e5, 0x10d7: 0x67b1, + 0x10d8: 0x0040, 0x10d9: 0x4405, 0x10da: 0x67c9, 0x10db: 0x67e1, 0x10dc: 0x67f9, 0x10dd: 0x6811, + 0x10de: 0x6829, 0x10df: 0x6859, 0x10e0: 0x6889, 0x10e1: 0x68b1, 0x10e2: 0x68d9, 0x10e3: 0x6901, + 0x10e4: 0x6929, 0x10e5: 0x6951, 0x10e6: 0x6979, 0x10e7: 0x69a1, 0x10e8: 0x69c9, 0x10e9: 0x69f1, + 0x10ea: 0x6a21, 0x10eb: 0x6a51, 0x10ec: 0x6a81, 0x10ed: 0x6ab1, 0x10ee: 0x6ae1, 0x10ef: 0x6b11, + 0x10f0: 0x6b41, 0x10f1: 0x6b71, 0x10f2: 0x6ba1, 0x10f3: 0x6bd1, 0x10f4: 0x6c01, 0x10f5: 0x6c31, + 0x10f6: 0x6c61, 0x10f7: 0x6c91, 0x10f8: 0x6cc1, 0x10f9: 0x6cf1, 0x10fa: 0x6d21, 0x10fb: 0x6d51, + 0x10fc: 0x6d81, 0x10fd: 0x6db1, 0x10fe: 0x6de1, 0x10ff: 0x4425, + // Block 0x44, offset 0x1100 + 0x1100: 0xe00d, 0x1101: 0x0008, 0x1102: 0xe00d, 0x1103: 0x0008, 0x1104: 0xe00d, 0x1105: 0x0008, + 0x1106: 0xe00d, 0x1107: 0x0008, 0x1108: 0xe00d, 0x1109: 0x0008, 0x110a: 0xe00d, 0x110b: 0x0008, + 0x110c: 0xe00d, 0x110d: 0x0008, 0x110e: 0xe00d, 0x110f: 0x0008, 0x1110: 0xe00d, 0x1111: 0x0008, + 0x1112: 0xe00d, 0x1113: 0x0008, 0x1114: 0xe00d, 0x1115: 0x0008, 0x1116: 0xe00d, 0x1117: 0x0008, + 0x1118: 0xe00d, 0x1119: 0x0008, 0x111a: 0xe00d, 0x111b: 0x0008, 0x111c: 0xe00d, 0x111d: 0x0008, + 0x111e: 0xe00d, 0x111f: 0x0008, 0x1120: 0xe00d, 0x1121: 0x0008, 0x1122: 0xe00d, 0x1123: 0x0008, + 0x1124: 0xe00d, 0x1125: 0x0008, 0x1126: 0xe00d, 0x1127: 0x0008, 0x1128: 0xe00d, 0x1129: 0x0008, + 0x112a: 0xe00d, 0x112b: 0x0008, 0x112c: 0xe00d, 0x112d: 0x0008, 0x112e: 0x0008, 0x112f: 0x3308, + 0x1130: 0x3318, 0x1131: 0x3318, 0x1132: 0x3318, 0x1133: 0x0018, 0x1134: 0x3308, 0x1135: 0x3308, + 0x1136: 0x3308, 0x1137: 0x3308, 0x1138: 0x3308, 0x1139: 0x3308, 0x113a: 0x3308, 0x113b: 0x3308, + 0x113c: 0x3308, 0x113d: 0x3308, 0x113e: 0x0018, 0x113f: 0x0008, + // Block 0x45, offset 0x1140 + 0x1140: 0xe00d, 0x1141: 0x0008, 0x1142: 0xe00d, 0x1143: 0x0008, 0x1144: 0xe00d, 0x1145: 0x0008, + 0x1146: 0xe00d, 0x1147: 0x0008, 0x1148: 0xe00d, 0x1149: 0x0008, 0x114a: 0xe00d, 0x114b: 0x0008, + 0x114c: 0xe00d, 0x114d: 0x0008, 0x114e: 0xe00d, 0x114f: 0x0008, 0x1150: 0xe00d, 0x1151: 0x0008, + 0x1152: 0xe00d, 0x1153: 0x0008, 0x1154: 0xe00d, 0x1155: 0x0008, 0x1156: 0xe00d, 0x1157: 0x0008, + 0x1158: 0xe00d, 0x1159: 0x0008, 0x115a: 0xe00d, 0x115b: 0x0008, 0x115c: 0x0ea1, 0x115d: 0x6e11, + 0x115e: 0x3308, 0x115f: 0x3308, 0x1160: 0x0008, 0x1161: 0x0008, 0x1162: 0x0008, 0x1163: 0x0008, + 0x1164: 0x0008, 0x1165: 0x0008, 0x1166: 0x0008, 0x1167: 0x0008, 0x1168: 0x0008, 0x1169: 0x0008, + 0x116a: 0x0008, 0x116b: 0x0008, 0x116c: 0x0008, 0x116d: 0x0008, 0x116e: 0x0008, 0x116f: 0x0008, + 0x1170: 0x0008, 0x1171: 0x0008, 0x1172: 0x0008, 0x1173: 0x0008, 0x1174: 0x0008, 0x1175: 0x0008, + 0x1176: 0x0008, 0x1177: 0x0008, 0x1178: 0x0008, 0x1179: 0x0008, 0x117a: 0x0008, 0x117b: 0x0008, + 0x117c: 0x0008, 0x117d: 0x0008, 0x117e: 0x0008, 0x117f: 0x0008, + // Block 0x46, offset 0x1180 + 0x1180: 0x0018, 0x1181: 0x0018, 0x1182: 0x0018, 0x1183: 0x0018, 0x1184: 0x0018, 0x1185: 0x0018, + 0x1186: 0x0018, 0x1187: 0x0018, 0x1188: 0x0018, 0x1189: 0x0018, 0x118a: 0x0018, 0x118b: 0x0018, + 0x118c: 0x0018, 0x118d: 0x0018, 0x118e: 0x0018, 0x118f: 0x0018, 0x1190: 0x0018, 0x1191: 0x0018, + 0x1192: 0x0018, 0x1193: 0x0018, 0x1194: 0x0018, 0x1195: 0x0018, 0x1196: 0x0018, 0x1197: 0x0008, + 0x1198: 0x0008, 0x1199: 0x0008, 0x119a: 0x0008, 0x119b: 0x0008, 0x119c: 0x0008, 0x119d: 0x0008, + 0x119e: 0x0008, 0x119f: 0x0008, 0x11a0: 0x0018, 0x11a1: 0x0018, 0x11a2: 0xe00d, 0x11a3: 0x0008, + 0x11a4: 0xe00d, 0x11a5: 0x0008, 0x11a6: 0xe00d, 0x11a7: 0x0008, 0x11a8: 0xe00d, 0x11a9: 0x0008, + 0x11aa: 0xe00d, 0x11ab: 0x0008, 0x11ac: 0xe00d, 0x11ad: 0x0008, 0x11ae: 0xe00d, 0x11af: 0x0008, + 0x11b0: 0x0008, 0x11b1: 0x0008, 0x11b2: 0xe00d, 0x11b3: 0x0008, 0x11b4: 0xe00d, 0x11b5: 0x0008, + 0x11b6: 0xe00d, 0x11b7: 0x0008, 0x11b8: 0xe00d, 0x11b9: 0x0008, 0x11ba: 0xe00d, 0x11bb: 0x0008, + 0x11bc: 0xe00d, 0x11bd: 0x0008, 0x11be: 0xe00d, 0x11bf: 0x0008, + // Block 0x47, offset 0x11c0 + 0x11c0: 0xe00d, 0x11c1: 0x0008, 0x11c2: 0xe00d, 0x11c3: 0x0008, 0x11c4: 0xe00d, 0x11c5: 0x0008, + 0x11c6: 0xe00d, 0x11c7: 0x0008, 0x11c8: 0xe00d, 0x11c9: 0x0008, 0x11ca: 0xe00d, 0x11cb: 0x0008, + 0x11cc: 0xe00d, 0x11cd: 0x0008, 0x11ce: 0xe00d, 0x11cf: 0x0008, 0x11d0: 0xe00d, 0x11d1: 0x0008, + 0x11d2: 0xe00d, 0x11d3: 0x0008, 0x11d4: 0xe00d, 0x11d5: 0x0008, 0x11d6: 0xe00d, 0x11d7: 0x0008, + 0x11d8: 0xe00d, 0x11d9: 0x0008, 0x11da: 0xe00d, 0x11db: 0x0008, 0x11dc: 0xe00d, 0x11dd: 0x0008, + 0x11de: 0xe00d, 0x11df: 0x0008, 0x11e0: 0xe00d, 0x11e1: 0x0008, 0x11e2: 0xe00d, 0x11e3: 0x0008, + 0x11e4: 0xe00d, 0x11e5: 0x0008, 0x11e6: 0xe00d, 0x11e7: 0x0008, 0x11e8: 0xe00d, 0x11e9: 0x0008, + 0x11ea: 0xe00d, 0x11eb: 0x0008, 0x11ec: 0xe00d, 0x11ed: 0x0008, 0x11ee: 0xe00d, 0x11ef: 0x0008, + 0x11f0: 0xe0fd, 0x11f1: 0x0008, 0x11f2: 0x0008, 0x11f3: 0x0008, 0x11f4: 0x0008, 0x11f5: 0x0008, + 0x11f6: 0x0008, 0x11f7: 0x0008, 0x11f8: 0x0008, 0x11f9: 0xe01d, 0x11fa: 0x0008, 0x11fb: 0xe03d, + 0x11fc: 0x0008, 0x11fd: 0x4445, 0x11fe: 0xe00d, 0x11ff: 0x0008, + // Block 0x48, offset 0x1200 + 0x1200: 0xe00d, 0x1201: 0x0008, 0x1202: 0xe00d, 0x1203: 0x0008, 0x1204: 0xe00d, 0x1205: 0x0008, + 0x1206: 0xe00d, 0x1207: 0x0008, 0x1208: 0x0008, 0x1209: 0x0018, 0x120a: 0x0018, 0x120b: 0xe03d, + 0x120c: 0x0008, 0x120d: 0x11d9, 0x120e: 0x0008, 0x120f: 0x0008, 0x1210: 0xe00d, 0x1211: 0x0008, + 0x1212: 0xe00d, 0x1213: 0x0008, 0x1214: 0x0008, 0x1215: 0x0008, 0x1216: 0xe00d, 0x1217: 0x0008, + 0x1218: 0xe00d, 0x1219: 0x0008, 0x121a: 0xe00d, 0x121b: 0x0008, 0x121c: 0xe00d, 0x121d: 0x0008, + 0x121e: 0xe00d, 0x121f: 0x0008, 0x1220: 0xe00d, 0x1221: 0x0008, 0x1222: 0xe00d, 0x1223: 0x0008, + 0x1224: 0xe00d, 0x1225: 0x0008, 0x1226: 0xe00d, 0x1227: 0x0008, 0x1228: 0xe00d, 0x1229: 0x0008, + 0x122a: 0x6e29, 0x122b: 0x1029, 0x122c: 0x11c1, 0x122d: 0x6e41, 0x122e: 0x1221, 0x122f: 0x0008, + 0x1230: 0x6e59, 0x1231: 0x6e71, 0x1232: 0x1239, 0x1233: 0x4465, 0x1234: 0xe00d, 0x1235: 0x0008, + 0x1236: 0xe00d, 0x1237: 0x0008, 0x1238: 0xe00d, 0x1239: 0x0008, 0x123a: 0xe00d, 0x123b: 0x0008, + 0x123c: 0xe00d, 0x123d: 0x0008, 0x123e: 0xe00d, 0x123f: 0x0008, + // Block 0x49, offset 0x1240 + 0x1240: 0x650d, 0x1241: 0x652d, 0x1242: 0x654d, 0x1243: 0x656d, 0x1244: 0x658d, 0x1245: 0x65ad, + 0x1246: 0x65cd, 0x1247: 0x65ed, 0x1248: 0x660d, 0x1249: 0x662d, 0x124a: 0x664d, 0x124b: 0x666d, + 0x124c: 0x668d, 0x124d: 0x66ad, 0x124e: 0x0008, 0x124f: 0x0008, 0x1250: 0x66cd, 0x1251: 0x0008, + 0x1252: 0x66ed, 0x1253: 0x0008, 0x1254: 0x0008, 0x1255: 0x670d, 0x1256: 0x672d, 0x1257: 0x674d, + 0x1258: 0x676d, 0x1259: 0x678d, 0x125a: 0x67ad, 0x125b: 0x67cd, 0x125c: 0x67ed, 0x125d: 0x680d, + 0x125e: 0x682d, 0x125f: 0x0008, 0x1260: 0x684d, 0x1261: 0x0008, 0x1262: 0x686d, 0x1263: 0x0008, + 0x1264: 0x0008, 0x1265: 0x688d, 0x1266: 0x68ad, 0x1267: 0x0008, 0x1268: 0x0008, 0x1269: 0x0008, + 0x126a: 0x68cd, 0x126b: 0x68ed, 0x126c: 0x690d, 0x126d: 0x692d, 0x126e: 0x694d, 0x126f: 0x696d, + 0x1270: 0x698d, 0x1271: 0x69ad, 0x1272: 0x69cd, 0x1273: 0x69ed, 0x1274: 0x6a0d, 0x1275: 0x6a2d, + 0x1276: 0x6a4d, 0x1277: 0x6a6d, 0x1278: 0x6a8d, 0x1279: 0x6aad, 0x127a: 0x6acd, 0x127b: 0x6aed, + 0x127c: 0x6b0d, 0x127d: 0x6b2d, 0x127e: 0x6b4d, 0x127f: 0x6b6d, + // Block 0x4a, offset 0x1280 + 0x1280: 0x7acd, 0x1281: 0x7aed, 0x1282: 0x7b0d, 0x1283: 0x7b2d, 0x1284: 0x7b4d, 0x1285: 0x7b6d, + 0x1286: 0x7b8d, 0x1287: 0x7bad, 0x1288: 0x7bcd, 0x1289: 0x7bed, 0x128a: 0x7c0d, 0x128b: 0x7c2d, + 0x128c: 0x7c4d, 0x128d: 0x7c6d, 0x128e: 0x7c8d, 0x128f: 0x6ec9, 0x1290: 0x6ef1, 0x1291: 0x6f19, + 0x1292: 0x7cad, 0x1293: 0x7ccd, 0x1294: 0x7ced, 0x1295: 0x6f41, 0x1296: 0x6f69, 0x1297: 0x6f91, + 0x1298: 0x7d0d, 0x1299: 0x7d2d, 0x129a: 0x0040, 0x129b: 0x0040, 0x129c: 0x0040, 0x129d: 0x0040, + 0x129e: 0x0040, 0x129f: 0x0040, 0x12a0: 0x0040, 0x12a1: 0x0040, 0x12a2: 0x0040, 0x12a3: 0x0040, + 0x12a4: 0x0040, 0x12a5: 0x0040, 0x12a6: 0x0040, 0x12a7: 0x0040, 0x12a8: 0x0040, 0x12a9: 0x0040, + 0x12aa: 0x0040, 0x12ab: 0x0040, 0x12ac: 0x0040, 0x12ad: 0x0040, 0x12ae: 0x0040, 0x12af: 0x0040, + 0x12b0: 0x0040, 0x12b1: 0x0040, 0x12b2: 0x0040, 0x12b3: 0x0040, 0x12b4: 0x0040, 0x12b5: 0x0040, + 0x12b6: 0x0040, 0x12b7: 0x0040, 0x12b8: 0x0040, 0x12b9: 0x0040, 0x12ba: 0x0040, 0x12bb: 0x0040, + 0x12bc: 0x0040, 0x12bd: 0x0040, 0x12be: 0x0040, 0x12bf: 0x0040, + // Block 0x4b, offset 0x12c0 + 0x12c0: 0x6fb9, 0x12c1: 0x6fd1, 0x12c2: 0x6fe9, 0x12c3: 0x7d4d, 0x12c4: 0x7d6d, 0x12c5: 0x7001, + 0x12c6: 0x7001, 0x12c7: 0x0040, 0x12c8: 0x0040, 0x12c9: 0x0040, 0x12ca: 0x0040, 0x12cb: 0x0040, + 0x12cc: 0x0040, 0x12cd: 0x0040, 0x12ce: 0x0040, 0x12cf: 0x0040, 0x12d0: 0x0040, 0x12d1: 0x0040, + 0x12d2: 0x0040, 0x12d3: 0x7019, 0x12d4: 0x7041, 0x12d5: 0x7069, 0x12d6: 0x7091, 0x12d7: 0x70b9, + 0x12d8: 0x0040, 0x12d9: 0x0040, 0x12da: 0x0040, 0x12db: 0x0040, 0x12dc: 0x0040, 0x12dd: 0x70e1, + 0x12de: 0x3308, 0x12df: 0x7109, 0x12e0: 0x7131, 0x12e1: 0x20a9, 0x12e2: 0x20f1, 0x12e3: 0x7149, + 0x12e4: 0x7161, 0x12e5: 0x7179, 0x12e6: 0x7191, 0x12e7: 0x71a9, 0x12e8: 0x71c1, 0x12e9: 0x1fb2, + 0x12ea: 0x71d9, 0x12eb: 0x7201, 0x12ec: 0x7229, 0x12ed: 0x7261, 0x12ee: 0x7299, 0x12ef: 0x72c1, + 0x12f0: 0x72e9, 0x12f1: 0x7311, 0x12f2: 0x7339, 0x12f3: 0x7361, 0x12f4: 0x7389, 0x12f5: 0x73b1, + 0x12f6: 0x73d9, 0x12f7: 0x0040, 0x12f8: 0x7401, 0x12f9: 0x7429, 0x12fa: 0x7451, 0x12fb: 0x7479, + 0x12fc: 0x74a1, 0x12fd: 0x0040, 0x12fe: 0x74c9, 0x12ff: 0x0040, + // Block 0x4c, offset 0x1300 + 0x1300: 0x74f1, 0x1301: 0x7519, 0x1302: 0x0040, 0x1303: 0x7541, 0x1304: 0x7569, 0x1305: 0x0040, + 0x1306: 0x7591, 0x1307: 0x75b9, 0x1308: 0x75e1, 0x1309: 0x7609, 0x130a: 0x7631, 0x130b: 0x7659, + 0x130c: 0x7681, 0x130d: 0x76a9, 0x130e: 0x76d1, 0x130f: 0x76f9, 0x1310: 0x7721, 0x1311: 0x7721, + 0x1312: 0x7739, 0x1313: 0x7739, 0x1314: 0x7739, 0x1315: 0x7739, 0x1316: 0x7751, 0x1317: 0x7751, + 0x1318: 0x7751, 0x1319: 0x7751, 0x131a: 0x7769, 0x131b: 0x7769, 0x131c: 0x7769, 0x131d: 0x7769, + 0x131e: 0x7781, 0x131f: 0x7781, 0x1320: 0x7781, 0x1321: 0x7781, 0x1322: 0x7799, 0x1323: 0x7799, + 0x1324: 0x7799, 0x1325: 0x7799, 0x1326: 0x77b1, 0x1327: 0x77b1, 0x1328: 0x77b1, 0x1329: 0x77b1, + 0x132a: 0x77c9, 0x132b: 0x77c9, 0x132c: 0x77c9, 0x132d: 0x77c9, 0x132e: 0x77e1, 0x132f: 0x77e1, + 0x1330: 0x77e1, 0x1331: 0x77e1, 0x1332: 0x77f9, 0x1333: 0x77f9, 0x1334: 0x77f9, 0x1335: 0x77f9, + 0x1336: 0x7811, 0x1337: 0x7811, 0x1338: 0x7811, 0x1339: 0x7811, 0x133a: 0x7829, 0x133b: 0x7829, + 0x133c: 0x7829, 0x133d: 0x7829, 0x133e: 0x7841, 0x133f: 0x7841, + // Block 0x4d, offset 0x1340 + 0x1340: 0x7841, 0x1341: 0x7841, 0x1342: 0x7859, 0x1343: 0x7859, 0x1344: 0x7871, 0x1345: 0x7871, + 0x1346: 0x7889, 0x1347: 0x7889, 0x1348: 0x78a1, 0x1349: 0x78a1, 0x134a: 0x78b9, 0x134b: 0x78b9, + 0x134c: 0x78d1, 0x134d: 0x78d1, 0x134e: 0x78e9, 0x134f: 0x78e9, 0x1350: 0x78e9, 0x1351: 0x78e9, + 0x1352: 0x7901, 0x1353: 0x7901, 0x1354: 0x7901, 0x1355: 0x7901, 0x1356: 0x7919, 0x1357: 0x7919, + 0x1358: 0x7919, 0x1359: 0x7919, 0x135a: 0x7931, 0x135b: 0x7931, 0x135c: 0x7931, 0x135d: 0x7931, + 0x135e: 0x7949, 0x135f: 0x7949, 0x1360: 0x7961, 0x1361: 0x7961, 0x1362: 0x7961, 0x1363: 0x7961, + 0x1364: 0x7979, 0x1365: 0x7979, 0x1366: 0x7991, 0x1367: 0x7991, 0x1368: 0x7991, 0x1369: 0x7991, + 0x136a: 0x79a9, 0x136b: 0x79a9, 0x136c: 0x79a9, 0x136d: 0x79a9, 0x136e: 0x79c1, 0x136f: 0x79c1, + 0x1370: 0x79d9, 0x1371: 0x79d9, 0x1372: 0x0818, 0x1373: 0x0818, 0x1374: 0x0818, 0x1375: 0x0818, + 0x1376: 0x0818, 0x1377: 0x0818, 0x1378: 0x0818, 0x1379: 0x0818, 0x137a: 0x0818, 0x137b: 0x0818, + 0x137c: 0x0818, 0x137d: 0x0818, 0x137e: 0x0818, 0x137f: 0x0818, + // Block 0x4e, offset 0x1380 + 0x1380: 0x0818, 0x1381: 0x0818, 0x1382: 0x0040, 0x1383: 0x0040, 0x1384: 0x0040, 0x1385: 0x0040, + 0x1386: 0x0040, 0x1387: 0x0040, 0x1388: 0x0040, 0x1389: 0x0040, 0x138a: 0x0040, 0x138b: 0x0040, + 0x138c: 0x0040, 0x138d: 0x0040, 0x138e: 0x0040, 0x138f: 0x0040, 0x1390: 0x0040, 0x1391: 0x0040, + 0x1392: 0x0040, 0x1393: 0x79f1, 0x1394: 0x79f1, 0x1395: 0x79f1, 0x1396: 0x79f1, 0x1397: 0x7a09, + 0x1398: 0x7a09, 0x1399: 0x7a21, 0x139a: 0x7a21, 0x139b: 0x7a39, 0x139c: 0x7a39, 0x139d: 0x0479, + 0x139e: 0x7a51, 0x139f: 0x7a51, 0x13a0: 0x7a69, 0x13a1: 0x7a69, 0x13a2: 0x7a81, 0x13a3: 0x7a81, + 0x13a4: 0x7a99, 0x13a5: 0x7a99, 0x13a6: 0x7a99, 0x13a7: 0x7a99, 0x13a8: 0x7ab1, 0x13a9: 0x7ab1, + 0x13aa: 0x7ac9, 0x13ab: 0x7ac9, 0x13ac: 0x7af1, 0x13ad: 0x7af1, 0x13ae: 0x7b19, 0x13af: 0x7b19, + 0x13b0: 0x7b41, 0x13b1: 0x7b41, 0x13b2: 0x7b69, 0x13b3: 0x7b69, 0x13b4: 0x7b91, 0x13b5: 0x7b91, + 0x13b6: 0x7bb9, 0x13b7: 0x7bb9, 0x13b8: 0x7bb9, 0x13b9: 0x7be1, 0x13ba: 0x7be1, 0x13bb: 0x7be1, + 0x13bc: 0x7c09, 0x13bd: 0x7c09, 0x13be: 0x7c09, 0x13bf: 0x7c09, + // Block 0x4f, offset 0x13c0 + 0x13c0: 0x85f9, 0x13c1: 0x8621, 0x13c2: 0x8649, 0x13c3: 0x8671, 0x13c4: 0x8699, 0x13c5: 0x86c1, + 0x13c6: 0x86e9, 0x13c7: 0x8711, 0x13c8: 0x8739, 0x13c9: 0x8761, 0x13ca: 0x8789, 0x13cb: 0x87b1, + 0x13cc: 0x87d9, 0x13cd: 0x8801, 0x13ce: 0x8829, 0x13cf: 0x8851, 0x13d0: 0x8879, 0x13d1: 0x88a1, + 0x13d2: 0x88c9, 0x13d3: 0x88f1, 0x13d4: 0x8919, 0x13d5: 0x8941, 0x13d6: 0x8969, 0x13d7: 0x8991, + 0x13d8: 0x89b9, 0x13d9: 0x89e1, 0x13da: 0x8a09, 0x13db: 0x8a31, 0x13dc: 0x8a59, 0x13dd: 0x8a81, + 0x13de: 0x8aaa, 0x13df: 0x8ada, 0x13e0: 0x8b0a, 0x13e1: 0x8b3a, 0x13e2: 0x8b6a, 0x13e3: 0x8b9a, + 0x13e4: 0x8bc9, 0x13e5: 0x8bf1, 0x13e6: 0x7c71, 0x13e7: 0x8c19, 0x13e8: 0x7be1, 0x13e9: 0x7c99, + 0x13ea: 0x8c41, 0x13eb: 0x8c69, 0x13ec: 0x7d39, 0x13ed: 0x8c91, 0x13ee: 0x7d61, 0x13ef: 0x7d89, + 0x13f0: 0x8cb9, 0x13f1: 0x8ce1, 0x13f2: 0x7e29, 0x13f3: 0x8d09, 0x13f4: 0x7e51, 0x13f5: 0x7e79, + 0x13f6: 0x8d31, 0x13f7: 0x8d59, 0x13f8: 0x7ec9, 0x13f9: 0x8d81, 0x13fa: 0x7ef1, 0x13fb: 0x7f19, + 0x13fc: 0x83a1, 0x13fd: 0x83c9, 0x13fe: 0x8441, 0x13ff: 0x8469, + // Block 0x50, offset 0x1400 + 0x1400: 0x8491, 0x1401: 0x8531, 0x1402: 0x8559, 0x1403: 0x8581, 0x1404: 0x85a9, 0x1405: 0x8649, + 0x1406: 0x8671, 0x1407: 0x8699, 0x1408: 0x8da9, 0x1409: 0x8739, 0x140a: 0x8dd1, 0x140b: 0x8df9, + 0x140c: 0x8829, 0x140d: 0x8e21, 0x140e: 0x8851, 0x140f: 0x8879, 0x1410: 0x8a81, 0x1411: 0x8e49, + 0x1412: 0x8e71, 0x1413: 0x89b9, 0x1414: 0x8e99, 0x1415: 0x89e1, 0x1416: 0x8a09, 0x1417: 0x7c21, + 0x1418: 0x7c49, 0x1419: 0x8ec1, 0x141a: 0x7c71, 0x141b: 0x8ee9, 0x141c: 0x7cc1, 0x141d: 0x7ce9, + 0x141e: 0x7d11, 0x141f: 0x7d39, 0x1420: 0x8f11, 0x1421: 0x7db1, 0x1422: 0x7dd9, 0x1423: 0x7e01, + 0x1424: 0x7e29, 0x1425: 0x8f39, 0x1426: 0x7ec9, 0x1427: 0x7f41, 0x1428: 0x7f69, 0x1429: 0x7f91, + 0x142a: 0x7fb9, 0x142b: 0x7fe1, 0x142c: 0x8031, 0x142d: 0x8059, 0x142e: 0x8081, 0x142f: 0x80a9, + 0x1430: 0x80d1, 0x1431: 0x80f9, 0x1432: 0x8f61, 0x1433: 0x8121, 0x1434: 0x8149, 0x1435: 0x8171, + 0x1436: 0x8199, 0x1437: 0x81c1, 0x1438: 0x81e9, 0x1439: 0x8239, 0x143a: 0x8261, 0x143b: 0x8289, + 0x143c: 0x82b1, 0x143d: 0x82d9, 0x143e: 0x8301, 0x143f: 0x8329, + // Block 0x51, offset 0x1440 + 0x1440: 0x8351, 0x1441: 0x8379, 0x1442: 0x83f1, 0x1443: 0x8419, 0x1444: 0x84b9, 0x1445: 0x84e1, + 0x1446: 0x8509, 0x1447: 0x8531, 0x1448: 0x8559, 0x1449: 0x85d1, 0x144a: 0x85f9, 0x144b: 0x8621, + 0x144c: 0x8649, 0x144d: 0x8f89, 0x144e: 0x86c1, 0x144f: 0x86e9, 0x1450: 0x8711, 0x1451: 0x8739, + 0x1452: 0x87b1, 0x1453: 0x87d9, 0x1454: 0x8801, 0x1455: 0x8829, 0x1456: 0x8fb1, 0x1457: 0x88a1, + 0x1458: 0x88c9, 0x1459: 0x8fd9, 0x145a: 0x8941, 0x145b: 0x8969, 0x145c: 0x8991, 0x145d: 0x89b9, + 0x145e: 0x9001, 0x145f: 0x7c71, 0x1460: 0x8ee9, 0x1461: 0x7d39, 0x1462: 0x8f11, 0x1463: 0x7e29, + 0x1464: 0x8f39, 0x1465: 0x7ec9, 0x1466: 0x9029, 0x1467: 0x80d1, 0x1468: 0x9051, 0x1469: 0x9079, + 0x146a: 0x90a1, 0x146b: 0x8531, 0x146c: 0x8559, 0x146d: 0x8649, 0x146e: 0x8829, 0x146f: 0x8fb1, + 0x1470: 0x89b9, 0x1471: 0x9001, 0x1472: 0x90c9, 0x1473: 0x9101, 0x1474: 0x9139, 0x1475: 0x9171, + 0x1476: 0x9199, 0x1477: 0x91c1, 0x1478: 0x91e9, 0x1479: 0x9211, 0x147a: 0x9239, 0x147b: 0x9261, + 0x147c: 0x9289, 0x147d: 0x92b1, 0x147e: 0x92d9, 0x147f: 0x9301, + // Block 0x52, offset 0x1480 + 0x1480: 0x9329, 0x1481: 0x9351, 0x1482: 0x9379, 0x1483: 0x93a1, 0x1484: 0x93c9, 0x1485: 0x93f1, + 0x1486: 0x9419, 0x1487: 0x9441, 0x1488: 0x9469, 0x1489: 0x9491, 0x148a: 0x94b9, 0x148b: 0x94e1, + 0x148c: 0x9079, 0x148d: 0x9509, 0x148e: 0x9531, 0x148f: 0x9559, 0x1490: 0x9581, 0x1491: 0x9171, + 0x1492: 0x9199, 0x1493: 0x91c1, 0x1494: 0x91e9, 0x1495: 0x9211, 0x1496: 0x9239, 0x1497: 0x9261, + 0x1498: 0x9289, 0x1499: 0x92b1, 0x149a: 0x92d9, 0x149b: 0x9301, 0x149c: 0x9329, 0x149d: 0x9351, + 0x149e: 0x9379, 0x149f: 0x93a1, 0x14a0: 0x93c9, 0x14a1: 0x93f1, 0x14a2: 0x9419, 0x14a3: 0x9441, + 0x14a4: 0x9469, 0x14a5: 0x9491, 0x14a6: 0x94b9, 0x14a7: 0x94e1, 0x14a8: 0x9079, 0x14a9: 0x9509, + 0x14aa: 0x9531, 0x14ab: 0x9559, 0x14ac: 0x9581, 0x14ad: 0x9491, 0x14ae: 0x94b9, 0x14af: 0x94e1, + 0x14b0: 0x9079, 0x14b1: 0x9051, 0x14b2: 0x90a1, 0x14b3: 0x8211, 0x14b4: 0x8059, 0x14b5: 0x8081, + 0x14b6: 0x80a9, 0x14b7: 0x9491, 0x14b8: 0x94b9, 0x14b9: 0x94e1, 0x14ba: 0x8211, 0x14bb: 0x8239, + 0x14bc: 0x95a9, 0x14bd: 0x95a9, 0x14be: 0x0018, 0x14bf: 0x0018, + // Block 0x53, offset 0x14c0 + 0x14c0: 0x0040, 0x14c1: 0x0040, 0x14c2: 0x0040, 0x14c3: 0x0040, 0x14c4: 0x0040, 0x14c5: 0x0040, + 0x14c6: 0x0040, 0x14c7: 0x0040, 0x14c8: 0x0040, 0x14c9: 0x0040, 0x14ca: 0x0040, 0x14cb: 0x0040, + 0x14cc: 0x0040, 0x14cd: 0x0040, 0x14ce: 0x0040, 0x14cf: 0x0040, 0x14d0: 0x95d1, 0x14d1: 0x9609, + 0x14d2: 0x9609, 0x14d3: 0x9641, 0x14d4: 0x9679, 0x14d5: 0x96b1, 0x14d6: 0x96e9, 0x14d7: 0x9721, + 0x14d8: 0x9759, 0x14d9: 0x9759, 0x14da: 0x9791, 0x14db: 0x97c9, 0x14dc: 0x9801, 0x14dd: 0x9839, + 0x14de: 0x9871, 0x14df: 0x98a9, 0x14e0: 0x98a9, 0x14e1: 0x98e1, 0x14e2: 0x9919, 0x14e3: 0x9919, + 0x14e4: 0x9951, 0x14e5: 0x9951, 0x14e6: 0x9989, 0x14e7: 0x99c1, 0x14e8: 0x99c1, 0x14e9: 0x99f9, + 0x14ea: 0x9a31, 0x14eb: 0x9a31, 0x14ec: 0x9a69, 0x14ed: 0x9a69, 0x14ee: 0x9aa1, 0x14ef: 0x9ad9, + 0x14f0: 0x9ad9, 0x14f1: 0x9b11, 0x14f2: 0x9b11, 0x14f3: 0x9b49, 0x14f4: 0x9b81, 0x14f5: 0x9bb9, + 0x14f6: 0x9bf1, 0x14f7: 0x9bf1, 0x14f8: 0x9c29, 0x14f9: 0x9c61, 0x14fa: 0x9c99, 0x14fb: 0x9cd1, + 0x14fc: 0x9d09, 0x14fd: 0x9d09, 0x14fe: 0x9d41, 0x14ff: 0x9d79, + // Block 0x54, offset 0x1500 + 0x1500: 0xa949, 0x1501: 0xa981, 0x1502: 0xa9b9, 0x1503: 0xa8a1, 0x1504: 0x9bb9, 0x1505: 0x9989, + 0x1506: 0xa9f1, 0x1507: 0xaa29, 0x1508: 0x0040, 0x1509: 0x0040, 0x150a: 0x0040, 0x150b: 0x0040, + 0x150c: 0x0040, 0x150d: 0x0040, 0x150e: 0x0040, 0x150f: 0x0040, 0x1510: 0x0040, 0x1511: 0x0040, + 0x1512: 0x0040, 0x1513: 0x0040, 0x1514: 0x0040, 0x1515: 0x0040, 0x1516: 0x0040, 0x1517: 0x0040, + 0x1518: 0x0040, 0x1519: 0x0040, 0x151a: 0x0040, 0x151b: 0x0040, 0x151c: 0x0040, 0x151d: 0x0040, + 0x151e: 0x0040, 0x151f: 0x0040, 0x1520: 0x0040, 0x1521: 0x0040, 0x1522: 0x0040, 0x1523: 0x0040, + 0x1524: 0x0040, 0x1525: 0x0040, 0x1526: 0x0040, 0x1527: 0x0040, 0x1528: 0x0040, 0x1529: 0x0040, + 0x152a: 0x0040, 0x152b: 0x0040, 0x152c: 0x0040, 0x152d: 0x0040, 0x152e: 0x0040, 0x152f: 0x0040, + 0x1530: 0xaa61, 0x1531: 0xaa99, 0x1532: 0xaad1, 0x1533: 0xab19, 0x1534: 0xab61, 0x1535: 0xaba9, + 0x1536: 0xabf1, 0x1537: 0xac39, 0x1538: 0xac81, 0x1539: 0xacc9, 0x153a: 0xad02, 0x153b: 0xae12, + 0x153c: 0xae91, 0x153d: 0x0018, 0x153e: 0x0040, 0x153f: 0x0040, + // Block 0x55, offset 0x1540 + 0x1540: 0x33c0, 0x1541: 0x33c0, 0x1542: 0x33c0, 0x1543: 0x33c0, 0x1544: 0x33c0, 0x1545: 0x33c0, + 0x1546: 0x33c0, 0x1547: 0x33c0, 0x1548: 0x33c0, 0x1549: 0x33c0, 0x154a: 0x33c0, 0x154b: 0x33c0, + 0x154c: 0x33c0, 0x154d: 0x33c0, 0x154e: 0x33c0, 0x154f: 0x33c0, 0x1550: 0xaeda, 0x1551: 0x7d8d, + 0x1552: 0x0040, 0x1553: 0xaeea, 0x1554: 0x03c2, 0x1555: 0xaefa, 0x1556: 0xaf0a, 0x1557: 0x7dad, + 0x1558: 0x7dcd, 0x1559: 0x0040, 0x155a: 0x0040, 0x155b: 0x0040, 0x155c: 0x0040, 0x155d: 0x0040, + 0x155e: 0x0040, 0x155f: 0x0040, 0x1560: 0x3308, 0x1561: 0x3308, 0x1562: 0x3308, 0x1563: 0x3308, + 0x1564: 0x3308, 0x1565: 0x3308, 0x1566: 0x3308, 0x1567: 0x3308, 0x1568: 0x3308, 0x1569: 0x3308, + 0x156a: 0x3308, 0x156b: 0x3308, 0x156c: 0x3308, 0x156d: 0x3308, 0x156e: 0x3308, 0x156f: 0x3308, + 0x1570: 0x0040, 0x1571: 0x7ded, 0x1572: 0x7e0d, 0x1573: 0xaf1a, 0x1574: 0xaf1a, 0x1575: 0x1fd2, + 0x1576: 0x1fe2, 0x1577: 0xaf2a, 0x1578: 0xaf3a, 0x1579: 0x7e2d, 0x157a: 0x7e4d, 0x157b: 0x7e6d, + 0x157c: 0x7e2d, 0x157d: 0x7e8d, 0x157e: 0x7ead, 0x157f: 0x7e8d, + // Block 0x56, offset 0x1580 + 0x1580: 0x7ecd, 0x1581: 0x7eed, 0x1582: 0x7f0d, 0x1583: 0x7eed, 0x1584: 0x7f2d, 0x1585: 0x0018, + 0x1586: 0x0018, 0x1587: 0xaf4a, 0x1588: 0xaf5a, 0x1589: 0x7f4e, 0x158a: 0x7f6e, 0x158b: 0x7f8e, + 0x158c: 0x7fae, 0x158d: 0xaf1a, 0x158e: 0xaf1a, 0x158f: 0xaf1a, 0x1590: 0xaeda, 0x1591: 0x7fcd, + 0x1592: 0x0040, 0x1593: 0x0040, 0x1594: 0x03c2, 0x1595: 0xaeea, 0x1596: 0xaf0a, 0x1597: 0xaefa, + 0x1598: 0x7fed, 0x1599: 0x1fd2, 0x159a: 0x1fe2, 0x159b: 0xaf2a, 0x159c: 0xaf3a, 0x159d: 0x7ecd, + 0x159e: 0x7f2d, 0x159f: 0xaf6a, 0x15a0: 0xaf7a, 0x15a1: 0xaf8a, 0x15a2: 0x1fb2, 0x15a3: 0xaf99, + 0x15a4: 0xafaa, 0x15a5: 0xafba, 0x15a6: 0x1fc2, 0x15a7: 0x0040, 0x15a8: 0xafca, 0x15a9: 0xafda, + 0x15aa: 0xafea, 0x15ab: 0xaffa, 0x15ac: 0x0040, 0x15ad: 0x0040, 0x15ae: 0x0040, 0x15af: 0x0040, + 0x15b0: 0x800e, 0x15b1: 0xb009, 0x15b2: 0x802e, 0x15b3: 0x0808, 0x15b4: 0x804e, 0x15b5: 0x0040, + 0x15b6: 0x806e, 0x15b7: 0xb031, 0x15b8: 0x808e, 0x15b9: 0xb059, 0x15ba: 0x80ae, 0x15bb: 0xb081, + 0x15bc: 0x80ce, 0x15bd: 0xb0a9, 0x15be: 0x80ee, 0x15bf: 0xb0d1, + // Block 0x57, offset 0x15c0 + 0x15c0: 0xb0f9, 0x15c1: 0xb111, 0x15c2: 0xb111, 0x15c3: 0xb129, 0x15c4: 0xb129, 0x15c5: 0xb141, + 0x15c6: 0xb141, 0x15c7: 0xb159, 0x15c8: 0xb159, 0x15c9: 0xb171, 0x15ca: 0xb171, 0x15cb: 0xb171, + 0x15cc: 0xb171, 0x15cd: 0xb189, 0x15ce: 0xb189, 0x15cf: 0xb1a1, 0x15d0: 0xb1a1, 0x15d1: 0xb1a1, + 0x15d2: 0xb1a1, 0x15d3: 0xb1b9, 0x15d4: 0xb1b9, 0x15d5: 0xb1d1, 0x15d6: 0xb1d1, 0x15d7: 0xb1d1, + 0x15d8: 0xb1d1, 0x15d9: 0xb1e9, 0x15da: 0xb1e9, 0x15db: 0xb1e9, 0x15dc: 0xb1e9, 0x15dd: 0xb201, + 0x15de: 0xb201, 0x15df: 0xb201, 0x15e0: 0xb201, 0x15e1: 0xb219, 0x15e2: 0xb219, 0x15e3: 0xb219, + 0x15e4: 0xb219, 0x15e5: 0xb231, 0x15e6: 0xb231, 0x15e7: 0xb231, 0x15e8: 0xb231, 0x15e9: 0xb249, + 0x15ea: 0xb249, 0x15eb: 0xb261, 0x15ec: 0xb261, 0x15ed: 0xb279, 0x15ee: 0xb279, 0x15ef: 0xb291, + 0x15f0: 0xb291, 0x15f1: 0xb2a9, 0x15f2: 0xb2a9, 0x15f3: 0xb2a9, 0x15f4: 0xb2a9, 0x15f5: 0xb2c1, + 0x15f6: 0xb2c1, 0x15f7: 0xb2c1, 0x15f8: 0xb2c1, 0x15f9: 0xb2d9, 0x15fa: 0xb2d9, 0x15fb: 0xb2d9, + 0x15fc: 0xb2d9, 0x15fd: 0xb2f1, 0x15fe: 0xb2f1, 0x15ff: 0xb2f1, + // Block 0x58, offset 0x1600 + 0x1600: 0xb2f1, 0x1601: 0xb309, 0x1602: 0xb309, 0x1603: 0xb309, 0x1604: 0xb309, 0x1605: 0xb321, + 0x1606: 0xb321, 0x1607: 0xb321, 0x1608: 0xb321, 0x1609: 0xb339, 0x160a: 0xb339, 0x160b: 0xb339, + 0x160c: 0xb339, 0x160d: 0xb351, 0x160e: 0xb351, 0x160f: 0xb351, 0x1610: 0xb351, 0x1611: 0xb369, + 0x1612: 0xb369, 0x1613: 0xb369, 0x1614: 0xb369, 0x1615: 0xb381, 0x1616: 0xb381, 0x1617: 0xb381, + 0x1618: 0xb381, 0x1619: 0xb399, 0x161a: 0xb399, 0x161b: 0xb399, 0x161c: 0xb399, 0x161d: 0xb3b1, + 0x161e: 0xb3b1, 0x161f: 0xb3b1, 0x1620: 0xb3b1, 0x1621: 0xb3c9, 0x1622: 0xb3c9, 0x1623: 0xb3c9, + 0x1624: 0xb3c9, 0x1625: 0xb3e1, 0x1626: 0xb3e1, 0x1627: 0xb3e1, 0x1628: 0xb3e1, 0x1629: 0xb3f9, + 0x162a: 0xb3f9, 0x162b: 0xb3f9, 0x162c: 0xb3f9, 0x162d: 0xb411, 0x162e: 0xb411, 0x162f: 0x7ab1, + 0x1630: 0x7ab1, 0x1631: 0xb429, 0x1632: 0xb429, 0x1633: 0xb429, 0x1634: 0xb429, 0x1635: 0xb441, + 0x1636: 0xb441, 0x1637: 0xb469, 0x1638: 0xb469, 0x1639: 0xb491, 0x163a: 0xb491, 0x163b: 0xb4b9, + 0x163c: 0xb4b9, 0x163d: 0x0040, 0x163e: 0x0040, 0x163f: 0x03c0, + // Block 0x59, offset 0x1640 + 0x1640: 0x0040, 0x1641: 0xaefa, 0x1642: 0xb4e2, 0x1643: 0xaf6a, 0x1644: 0xafda, 0x1645: 0xafea, + 0x1646: 0xaf7a, 0x1647: 0xb4f2, 0x1648: 0x1fd2, 0x1649: 0x1fe2, 0x164a: 0xaf8a, 0x164b: 0x1fb2, + 0x164c: 0xaeda, 0x164d: 0xaf99, 0x164e: 0x29d1, 0x164f: 0xb502, 0x1650: 0x1f41, 0x1651: 0x00c9, + 0x1652: 0x0069, 0x1653: 0x0079, 0x1654: 0x1f51, 0x1655: 0x1f61, 0x1656: 0x1f71, 0x1657: 0x1f81, + 0x1658: 0x1f91, 0x1659: 0x1fa1, 0x165a: 0xaeea, 0x165b: 0x03c2, 0x165c: 0xafaa, 0x165d: 0x1fc2, + 0x165e: 0xafba, 0x165f: 0xaf0a, 0x1660: 0xaffa, 0x1661: 0x0039, 0x1662: 0x0ee9, 0x1663: 0x1159, + 0x1664: 0x0ef9, 0x1665: 0x0f09, 0x1666: 0x1199, 0x1667: 0x0f31, 0x1668: 0x0249, 0x1669: 0x0f41, + 0x166a: 0x0259, 0x166b: 0x0f51, 0x166c: 0x0359, 0x166d: 0x0f61, 0x166e: 0x0f71, 0x166f: 0x00d9, + 0x1670: 0x0f99, 0x1671: 0x2039, 0x1672: 0x0269, 0x1673: 0x01d9, 0x1674: 0x0fa9, 0x1675: 0x0fb9, + 0x1676: 0x1089, 0x1677: 0x0279, 0x1678: 0x0369, 0x1679: 0x0289, 0x167a: 0x13d1, 0x167b: 0xaf4a, + 0x167c: 0xafca, 0x167d: 0xaf5a, 0x167e: 0xb512, 0x167f: 0xaf1a, + // Block 0x5a, offset 0x1680 + 0x1680: 0x1caa, 0x1681: 0x0039, 0x1682: 0x0ee9, 0x1683: 0x1159, 0x1684: 0x0ef9, 0x1685: 0x0f09, + 0x1686: 0x1199, 0x1687: 0x0f31, 0x1688: 0x0249, 0x1689: 0x0f41, 0x168a: 0x0259, 0x168b: 0x0f51, + 0x168c: 0x0359, 0x168d: 0x0f61, 0x168e: 0x0f71, 0x168f: 0x00d9, 0x1690: 0x0f99, 0x1691: 0x2039, + 0x1692: 0x0269, 0x1693: 0x01d9, 0x1694: 0x0fa9, 0x1695: 0x0fb9, 0x1696: 0x1089, 0x1697: 0x0279, + 0x1698: 0x0369, 0x1699: 0x0289, 0x169a: 0x13d1, 0x169b: 0xaf2a, 0x169c: 0xb522, 0x169d: 0xaf3a, + 0x169e: 0xb532, 0x169f: 0x810d, 0x16a0: 0x812d, 0x16a1: 0x29d1, 0x16a2: 0x814d, 0x16a3: 0x814d, + 0x16a4: 0x816d, 0x16a5: 0x818d, 0x16a6: 0x81ad, 0x16a7: 0x81cd, 0x16a8: 0x81ed, 0x16a9: 0x820d, + 0x16aa: 0x822d, 0x16ab: 0x824d, 0x16ac: 0x826d, 0x16ad: 0x828d, 0x16ae: 0x82ad, 0x16af: 0x82cd, + 0x16b0: 0x82ed, 0x16b1: 0x830d, 0x16b2: 0x832d, 0x16b3: 0x834d, 0x16b4: 0x836d, 0x16b5: 0x838d, + 0x16b6: 0x83ad, 0x16b7: 0x83cd, 0x16b8: 0x83ed, 0x16b9: 0x840d, 0x16ba: 0x842d, 0x16bb: 0x844d, + 0x16bc: 0x81ed, 0x16bd: 0x846d, 0x16be: 0x848d, 0x16bf: 0x824d, + // Block 0x5b, offset 0x16c0 + 0x16c0: 0x84ad, 0x16c1: 0x84cd, 0x16c2: 0x84ed, 0x16c3: 0x850d, 0x16c4: 0x852d, 0x16c5: 0x854d, + 0x16c6: 0x856d, 0x16c7: 0x858d, 0x16c8: 0x850d, 0x16c9: 0x85ad, 0x16ca: 0x850d, 0x16cb: 0x85cd, + 0x16cc: 0x85cd, 0x16cd: 0x85ed, 0x16ce: 0x85ed, 0x16cf: 0x860d, 0x16d0: 0x854d, 0x16d1: 0x862d, + 0x16d2: 0x864d, 0x16d3: 0x862d, 0x16d4: 0x866d, 0x16d5: 0x864d, 0x16d6: 0x868d, 0x16d7: 0x868d, + 0x16d8: 0x86ad, 0x16d9: 0x86ad, 0x16da: 0x86cd, 0x16db: 0x86cd, 0x16dc: 0x864d, 0x16dd: 0x814d, + 0x16de: 0x86ed, 0x16df: 0x870d, 0x16e0: 0x0040, 0x16e1: 0x872d, 0x16e2: 0x874d, 0x16e3: 0x876d, + 0x16e4: 0x878d, 0x16e5: 0x876d, 0x16e6: 0x87ad, 0x16e7: 0x87cd, 0x16e8: 0x87ed, 0x16e9: 0x87ed, + 0x16ea: 0x880d, 0x16eb: 0x880d, 0x16ec: 0x882d, 0x16ed: 0x882d, 0x16ee: 0x880d, 0x16ef: 0x880d, + 0x16f0: 0x884d, 0x16f1: 0x886d, 0x16f2: 0x888d, 0x16f3: 0x88ad, 0x16f4: 0x88cd, 0x16f5: 0x88ed, + 0x16f6: 0x88ed, 0x16f7: 0x88ed, 0x16f8: 0x890d, 0x16f9: 0x890d, 0x16fa: 0x890d, 0x16fb: 0x890d, + 0x16fc: 0x87ed, 0x16fd: 0x87ed, 0x16fe: 0x87ed, 0x16ff: 0x0040, + // Block 0x5c, offset 0x1700 + 0x1700: 0x0040, 0x1701: 0x0040, 0x1702: 0x874d, 0x1703: 0x872d, 0x1704: 0x892d, 0x1705: 0x872d, + 0x1706: 0x874d, 0x1707: 0x872d, 0x1708: 0x0040, 0x1709: 0x0040, 0x170a: 0x894d, 0x170b: 0x874d, + 0x170c: 0x896d, 0x170d: 0x892d, 0x170e: 0x896d, 0x170f: 0x874d, 0x1710: 0x0040, 0x1711: 0x0040, + 0x1712: 0x898d, 0x1713: 0x89ad, 0x1714: 0x88ad, 0x1715: 0x896d, 0x1716: 0x892d, 0x1717: 0x896d, + 0x1718: 0x0040, 0x1719: 0x0040, 0x171a: 0x89cd, 0x171b: 0x89ed, 0x171c: 0x89cd, 0x171d: 0x0040, + 0x171e: 0x0040, 0x171f: 0x0040, 0x1720: 0xb541, 0x1721: 0xb559, 0x1722: 0xb571, 0x1723: 0x8a0e, + 0x1724: 0xb589, 0x1725: 0xb5a1, 0x1726: 0x8a2d, 0x1727: 0x0040, 0x1728: 0x8a4d, 0x1729: 0x8a6d, + 0x172a: 0x8a8d, 0x172b: 0x8a6d, 0x172c: 0x8aad, 0x172d: 0x8acd, 0x172e: 0x8aed, 0x172f: 0x0040, + 0x1730: 0x0040, 0x1731: 0x0040, 0x1732: 0x0040, 0x1733: 0x0040, 0x1734: 0x0040, 0x1735: 0x0040, + 0x1736: 0x0040, 0x1737: 0x0040, 0x1738: 0x0040, 0x1739: 0x0340, 0x173a: 0x0340, 0x173b: 0x0340, + 0x173c: 0x0040, 0x173d: 0x0040, 0x173e: 0x0040, 0x173f: 0x0040, + // Block 0x5d, offset 0x1740 + 0x1740: 0x0a08, 0x1741: 0x0a08, 0x1742: 0x0a08, 0x1743: 0x0a08, 0x1744: 0x0a08, 0x1745: 0x0c08, + 0x1746: 0x0808, 0x1747: 0x0c08, 0x1748: 0x0818, 0x1749: 0x0c08, 0x174a: 0x0c08, 0x174b: 0x0808, + 0x174c: 0x0808, 0x174d: 0x0908, 0x174e: 0x0c08, 0x174f: 0x0c08, 0x1750: 0x0c08, 0x1751: 0x0c08, + 0x1752: 0x0c08, 0x1753: 0x0a08, 0x1754: 0x0a08, 0x1755: 0x0a08, 0x1756: 0x0a08, 0x1757: 0x0908, + 0x1758: 0x0a08, 0x1759: 0x0a08, 0x175a: 0x0a08, 0x175b: 0x0a08, 0x175c: 0x0a08, 0x175d: 0x0c08, + 0x175e: 0x0a08, 0x175f: 0x0a08, 0x1760: 0x0a08, 0x1761: 0x0c08, 0x1762: 0x0808, 0x1763: 0x0808, + 0x1764: 0x0c08, 0x1765: 0x3308, 0x1766: 0x3308, 0x1767: 0x0040, 0x1768: 0x0040, 0x1769: 0x0040, + 0x176a: 0x0040, 0x176b: 0x0a18, 0x176c: 0x0a18, 0x176d: 0x0a18, 0x176e: 0x0a18, 0x176f: 0x0c18, + 0x1770: 0x0818, 0x1771: 0x0818, 0x1772: 0x0818, 0x1773: 0x0818, 0x1774: 0x0818, 0x1775: 0x0818, + 0x1776: 0x0818, 0x1777: 0x0040, 0x1778: 0x0040, 0x1779: 0x0040, 0x177a: 0x0040, 0x177b: 0x0040, + 0x177c: 0x0040, 0x177d: 0x0040, 0x177e: 0x0040, 0x177f: 0x0040, + // Block 0x5e, offset 0x1780 + 0x1780: 0x0a08, 0x1781: 0x0c08, 0x1782: 0x0a08, 0x1783: 0x0c08, 0x1784: 0x0c08, 0x1785: 0x0c08, + 0x1786: 0x0a08, 0x1787: 0x0a08, 0x1788: 0x0a08, 0x1789: 0x0c08, 0x178a: 0x0a08, 0x178b: 0x0a08, + 0x178c: 0x0c08, 0x178d: 0x0a08, 0x178e: 0x0c08, 0x178f: 0x0c08, 0x1790: 0x0a08, 0x1791: 0x0c08, + 0x1792: 0x0040, 0x1793: 0x0040, 0x1794: 0x0040, 0x1795: 0x0040, 0x1796: 0x0040, 0x1797: 0x0040, + 0x1798: 0x0040, 0x1799: 0x0818, 0x179a: 0x0818, 0x179b: 0x0818, 0x179c: 0x0818, 0x179d: 0x0040, + 0x179e: 0x0040, 0x179f: 0x0040, 0x17a0: 0x0040, 0x17a1: 0x0040, 0x17a2: 0x0040, 0x17a3: 0x0040, + 0x17a4: 0x0040, 0x17a5: 0x0040, 0x17a6: 0x0040, 0x17a7: 0x0040, 0x17a8: 0x0040, 0x17a9: 0x0c18, + 0x17aa: 0x0c18, 0x17ab: 0x0c18, 0x17ac: 0x0c18, 0x17ad: 0x0a18, 0x17ae: 0x0a18, 0x17af: 0x0818, + 0x17b0: 0x0040, 0x17b1: 0x0040, 0x17b2: 0x0040, 0x17b3: 0x0040, 0x17b4: 0x0040, 0x17b5: 0x0040, + 0x17b6: 0x0040, 0x17b7: 0x0040, 0x17b8: 0x0040, 0x17b9: 0x0040, 0x17ba: 0x0040, 0x17bb: 0x0040, + 0x17bc: 0x0040, 0x17bd: 0x0040, 0x17be: 0x0040, 0x17bf: 0x0040, + // Block 0x5f, offset 0x17c0 + 0x17c0: 0x3308, 0x17c1: 0x3308, 0x17c2: 0x3008, 0x17c3: 0x3008, 0x17c4: 0x0040, 0x17c5: 0x0008, + 0x17c6: 0x0008, 0x17c7: 0x0008, 0x17c8: 0x0008, 0x17c9: 0x0008, 0x17ca: 0x0008, 0x17cb: 0x0008, + 0x17cc: 0x0008, 0x17cd: 0x0040, 0x17ce: 0x0040, 0x17cf: 0x0008, 0x17d0: 0x0008, 0x17d1: 0x0040, + 0x17d2: 0x0040, 0x17d3: 0x0008, 0x17d4: 0x0008, 0x17d5: 0x0008, 0x17d6: 0x0008, 0x17d7: 0x0008, + 0x17d8: 0x0008, 0x17d9: 0x0008, 0x17da: 0x0008, 0x17db: 0x0008, 0x17dc: 0x0008, 0x17dd: 0x0008, + 0x17de: 0x0008, 0x17df: 0x0008, 0x17e0: 0x0008, 0x17e1: 0x0008, 0x17e2: 0x0008, 0x17e3: 0x0008, + 0x17e4: 0x0008, 0x17e5: 0x0008, 0x17e6: 0x0008, 0x17e7: 0x0008, 0x17e8: 0x0008, 0x17e9: 0x0040, + 0x17ea: 0x0008, 0x17eb: 0x0008, 0x17ec: 0x0008, 0x17ed: 0x0008, 0x17ee: 0x0008, 0x17ef: 0x0008, + 0x17f0: 0x0008, 0x17f1: 0x0040, 0x17f2: 0x0008, 0x17f3: 0x0008, 0x17f4: 0x0040, 0x17f5: 0x0008, + 0x17f6: 0x0008, 0x17f7: 0x0008, 0x17f8: 0x0008, 0x17f9: 0x0008, 0x17fa: 0x0040, 0x17fb: 0x3308, + 0x17fc: 0x3308, 0x17fd: 0x0008, 0x17fe: 0x3008, 0x17ff: 0x3008, + // Block 0x60, offset 0x1800 + 0x1800: 0x3308, 0x1801: 0x3008, 0x1802: 0x3008, 0x1803: 0x3008, 0x1804: 0x3008, 0x1805: 0x0040, + 0x1806: 0x0040, 0x1807: 0x3008, 0x1808: 0x3008, 0x1809: 0x0040, 0x180a: 0x0040, 0x180b: 0x3008, + 0x180c: 0x3008, 0x180d: 0x3808, 0x180e: 0x0040, 0x180f: 0x0040, 0x1810: 0x0008, 0x1811: 0x0040, + 0x1812: 0x0040, 0x1813: 0x0040, 0x1814: 0x0040, 0x1815: 0x0040, 0x1816: 0x0040, 0x1817: 0x3008, + 0x1818: 0x0040, 0x1819: 0x0040, 0x181a: 0x0040, 0x181b: 0x0040, 0x181c: 0x0040, 0x181d: 0x0008, + 0x181e: 0x0008, 0x181f: 0x0008, 0x1820: 0x0008, 0x1821: 0x0008, 0x1822: 0x3008, 0x1823: 0x3008, + 0x1824: 0x0040, 0x1825: 0x0040, 0x1826: 0x3308, 0x1827: 0x3308, 0x1828: 0x3308, 0x1829: 0x3308, + 0x182a: 0x3308, 0x182b: 0x3308, 0x182c: 0x3308, 0x182d: 0x0040, 0x182e: 0x0040, 0x182f: 0x0040, + 0x1830: 0x3308, 0x1831: 0x3308, 0x1832: 0x3308, 0x1833: 0x3308, 0x1834: 0x3308, 0x1835: 0x0040, + 0x1836: 0x0040, 0x1837: 0x0040, 0x1838: 0x0040, 0x1839: 0x0040, 0x183a: 0x0040, 0x183b: 0x0040, + 0x183c: 0x0040, 0x183d: 0x0040, 0x183e: 0x0040, 0x183f: 0x0040, + // Block 0x61, offset 0x1840 + 0x1840: 0x0039, 0x1841: 0x0ee9, 0x1842: 0x1159, 0x1843: 0x0ef9, 0x1844: 0x0f09, 0x1845: 0x1199, + 0x1846: 0x0f31, 0x1847: 0x0249, 0x1848: 0x0f41, 0x1849: 0x0259, 0x184a: 0x0f51, 0x184b: 0x0359, + 0x184c: 0x0f61, 0x184d: 0x0f71, 0x184e: 0x00d9, 0x184f: 0x0f99, 0x1850: 0x2039, 0x1851: 0x0269, + 0x1852: 0x01d9, 0x1853: 0x0fa9, 0x1854: 0x0fb9, 0x1855: 0x1089, 0x1856: 0x0279, 0x1857: 0x0369, + 0x1858: 0x0289, 0x1859: 0x13d1, 0x185a: 0x0039, 0x185b: 0x0ee9, 0x185c: 0x1159, 0x185d: 0x0ef9, + 0x185e: 0x0f09, 0x185f: 0x1199, 0x1860: 0x0f31, 0x1861: 0x0249, 0x1862: 0x0f41, 0x1863: 0x0259, + 0x1864: 0x0f51, 0x1865: 0x0359, 0x1866: 0x0f61, 0x1867: 0x0f71, 0x1868: 0x00d9, 0x1869: 0x0f99, + 0x186a: 0x2039, 0x186b: 0x0269, 0x186c: 0x01d9, 0x186d: 0x0fa9, 0x186e: 0x0fb9, 0x186f: 0x1089, + 0x1870: 0x0279, 0x1871: 0x0369, 0x1872: 0x0289, 0x1873: 0x13d1, 0x1874: 0x0039, 0x1875: 0x0ee9, + 0x1876: 0x1159, 0x1877: 0x0ef9, 0x1878: 0x0f09, 0x1879: 0x1199, 0x187a: 0x0f31, 0x187b: 0x0249, + 0x187c: 0x0f41, 0x187d: 0x0259, 0x187e: 0x0f51, 0x187f: 0x0359, + // Block 0x62, offset 0x1880 + 0x1880: 0x0f61, 0x1881: 0x0f71, 0x1882: 0x00d9, 0x1883: 0x0f99, 0x1884: 0x2039, 0x1885: 0x0269, + 0x1886: 0x01d9, 0x1887: 0x0fa9, 0x1888: 0x0fb9, 0x1889: 0x1089, 0x188a: 0x0279, 0x188b: 0x0369, + 0x188c: 0x0289, 0x188d: 0x13d1, 0x188e: 0x0039, 0x188f: 0x0ee9, 0x1890: 0x1159, 0x1891: 0x0ef9, + 0x1892: 0x0f09, 0x1893: 0x1199, 0x1894: 0x0f31, 0x1895: 0x0040, 0x1896: 0x0f41, 0x1897: 0x0259, + 0x1898: 0x0f51, 0x1899: 0x0359, 0x189a: 0x0f61, 0x189b: 0x0f71, 0x189c: 0x00d9, 0x189d: 0x0f99, + 0x189e: 0x2039, 0x189f: 0x0269, 0x18a0: 0x01d9, 0x18a1: 0x0fa9, 0x18a2: 0x0fb9, 0x18a3: 0x1089, + 0x18a4: 0x0279, 0x18a5: 0x0369, 0x18a6: 0x0289, 0x18a7: 0x13d1, 0x18a8: 0x0039, 0x18a9: 0x0ee9, + 0x18aa: 0x1159, 0x18ab: 0x0ef9, 0x18ac: 0x0f09, 0x18ad: 0x1199, 0x18ae: 0x0f31, 0x18af: 0x0249, + 0x18b0: 0x0f41, 0x18b1: 0x0259, 0x18b2: 0x0f51, 0x18b3: 0x0359, 0x18b4: 0x0f61, 0x18b5: 0x0f71, + 0x18b6: 0x00d9, 0x18b7: 0x0f99, 0x18b8: 0x2039, 0x18b9: 0x0269, 0x18ba: 0x01d9, 0x18bb: 0x0fa9, + 0x18bc: 0x0fb9, 0x18bd: 0x1089, 0x18be: 0x0279, 0x18bf: 0x0369, + // Block 0x63, offset 0x18c0 + 0x18c0: 0x0289, 0x18c1: 0x13d1, 0x18c2: 0x0039, 0x18c3: 0x0ee9, 0x18c4: 0x1159, 0x18c5: 0x0ef9, + 0x18c6: 0x0f09, 0x18c7: 0x1199, 0x18c8: 0x0f31, 0x18c9: 0x0249, 0x18ca: 0x0f41, 0x18cb: 0x0259, + 0x18cc: 0x0f51, 0x18cd: 0x0359, 0x18ce: 0x0f61, 0x18cf: 0x0f71, 0x18d0: 0x00d9, 0x18d1: 0x0f99, + 0x18d2: 0x2039, 0x18d3: 0x0269, 0x18d4: 0x01d9, 0x18d5: 0x0fa9, 0x18d6: 0x0fb9, 0x18d7: 0x1089, + 0x18d8: 0x0279, 0x18d9: 0x0369, 0x18da: 0x0289, 0x18db: 0x13d1, 0x18dc: 0x0039, 0x18dd: 0x0040, + 0x18de: 0x1159, 0x18df: 0x0ef9, 0x18e0: 0x0040, 0x18e1: 0x0040, 0x18e2: 0x0f31, 0x18e3: 0x0040, + 0x18e4: 0x0040, 0x18e5: 0x0259, 0x18e6: 0x0f51, 0x18e7: 0x0040, 0x18e8: 0x0040, 0x18e9: 0x0f71, + 0x18ea: 0x00d9, 0x18eb: 0x0f99, 0x18ec: 0x2039, 0x18ed: 0x0040, 0x18ee: 0x01d9, 0x18ef: 0x0fa9, + 0x18f0: 0x0fb9, 0x18f1: 0x1089, 0x18f2: 0x0279, 0x18f3: 0x0369, 0x18f4: 0x0289, 0x18f5: 0x13d1, + 0x18f6: 0x0039, 0x18f7: 0x0ee9, 0x18f8: 0x1159, 0x18f9: 0x0ef9, 0x18fa: 0x0040, 0x18fb: 0x1199, + 0x18fc: 0x0040, 0x18fd: 0x0249, 0x18fe: 0x0f41, 0x18ff: 0x0259, + // Block 0x64, offset 0x1900 + 0x1900: 0x0f51, 0x1901: 0x0359, 0x1902: 0x0f61, 0x1903: 0x0f71, 0x1904: 0x0040, 0x1905: 0x0f99, + 0x1906: 0x2039, 0x1907: 0x0269, 0x1908: 0x01d9, 0x1909: 0x0fa9, 0x190a: 0x0fb9, 0x190b: 0x1089, + 0x190c: 0x0279, 0x190d: 0x0369, 0x190e: 0x0289, 0x190f: 0x13d1, 0x1910: 0x0039, 0x1911: 0x0ee9, + 0x1912: 0x1159, 0x1913: 0x0ef9, 0x1914: 0x0f09, 0x1915: 0x1199, 0x1916: 0x0f31, 0x1917: 0x0249, + 0x1918: 0x0f41, 0x1919: 0x0259, 0x191a: 0x0f51, 0x191b: 0x0359, 0x191c: 0x0f61, 0x191d: 0x0f71, + 0x191e: 0x00d9, 0x191f: 0x0f99, 0x1920: 0x2039, 0x1921: 0x0269, 0x1922: 0x01d9, 0x1923: 0x0fa9, + 0x1924: 0x0fb9, 0x1925: 0x1089, 0x1926: 0x0279, 0x1927: 0x0369, 0x1928: 0x0289, 0x1929: 0x13d1, + 0x192a: 0x0039, 0x192b: 0x0ee9, 0x192c: 0x1159, 0x192d: 0x0ef9, 0x192e: 0x0f09, 0x192f: 0x1199, + 0x1930: 0x0f31, 0x1931: 0x0249, 0x1932: 0x0f41, 0x1933: 0x0259, 0x1934: 0x0f51, 0x1935: 0x0359, + 0x1936: 0x0f61, 0x1937: 0x0f71, 0x1938: 0x00d9, 0x1939: 0x0f99, 0x193a: 0x2039, 0x193b: 0x0269, + 0x193c: 0x01d9, 0x193d: 0x0fa9, 0x193e: 0x0fb9, 0x193f: 0x1089, + // Block 0x65, offset 0x1940 + 0x1940: 0x0279, 0x1941: 0x0369, 0x1942: 0x0289, 0x1943: 0x13d1, 0x1944: 0x0039, 0x1945: 0x0ee9, + 0x1946: 0x0040, 0x1947: 0x0ef9, 0x1948: 0x0f09, 0x1949: 0x1199, 0x194a: 0x0f31, 0x194b: 0x0040, + 0x194c: 0x0040, 0x194d: 0x0259, 0x194e: 0x0f51, 0x194f: 0x0359, 0x1950: 0x0f61, 0x1951: 0x0f71, + 0x1952: 0x00d9, 0x1953: 0x0f99, 0x1954: 0x2039, 0x1955: 0x0040, 0x1956: 0x01d9, 0x1957: 0x0fa9, + 0x1958: 0x0fb9, 0x1959: 0x1089, 0x195a: 0x0279, 0x195b: 0x0369, 0x195c: 0x0289, 0x195d: 0x0040, + 0x195e: 0x0039, 0x195f: 0x0ee9, 0x1960: 0x1159, 0x1961: 0x0ef9, 0x1962: 0x0f09, 0x1963: 0x1199, + 0x1964: 0x0f31, 0x1965: 0x0249, 0x1966: 0x0f41, 0x1967: 0x0259, 0x1968: 0x0f51, 0x1969: 0x0359, + 0x196a: 0x0f61, 0x196b: 0x0f71, 0x196c: 0x00d9, 0x196d: 0x0f99, 0x196e: 0x2039, 0x196f: 0x0269, + 0x1970: 0x01d9, 0x1971: 0x0fa9, 0x1972: 0x0fb9, 0x1973: 0x1089, 0x1974: 0x0279, 0x1975: 0x0369, + 0x1976: 0x0289, 0x1977: 0x13d1, 0x1978: 0x0039, 0x1979: 0x0ee9, 0x197a: 0x0040, 0x197b: 0x0ef9, + 0x197c: 0x0f09, 0x197d: 0x1199, 0x197e: 0x0f31, 0x197f: 0x0040, + // Block 0x66, offset 0x1980 + 0x1980: 0x0f41, 0x1981: 0x0259, 0x1982: 0x0f51, 0x1983: 0x0359, 0x1984: 0x0f61, 0x1985: 0x0040, + 0x1986: 0x00d9, 0x1987: 0x0040, 0x1988: 0x0040, 0x1989: 0x0040, 0x198a: 0x01d9, 0x198b: 0x0fa9, + 0x198c: 0x0fb9, 0x198d: 0x1089, 0x198e: 0x0279, 0x198f: 0x0369, 0x1990: 0x0289, 0x1991: 0x0040, + 0x1992: 0x0039, 0x1993: 0x0ee9, 0x1994: 0x1159, 0x1995: 0x0ef9, 0x1996: 0x0f09, 0x1997: 0x1199, + 0x1998: 0x0f31, 0x1999: 0x0249, 0x199a: 0x0f41, 0x199b: 0x0259, 0x199c: 0x0f51, 0x199d: 0x0359, + 0x199e: 0x0f61, 0x199f: 0x0f71, 0x19a0: 0x00d9, 0x19a1: 0x0f99, 0x19a2: 0x2039, 0x19a3: 0x0269, + 0x19a4: 0x01d9, 0x19a5: 0x0fa9, 0x19a6: 0x0fb9, 0x19a7: 0x1089, 0x19a8: 0x0279, 0x19a9: 0x0369, + 0x19aa: 0x0289, 0x19ab: 0x13d1, 0x19ac: 0x0039, 0x19ad: 0x0ee9, 0x19ae: 0x1159, 0x19af: 0x0ef9, + 0x19b0: 0x0f09, 0x19b1: 0x1199, 0x19b2: 0x0f31, 0x19b3: 0x0249, 0x19b4: 0x0f41, 0x19b5: 0x0259, + 0x19b6: 0x0f51, 0x19b7: 0x0359, 0x19b8: 0x0f61, 0x19b9: 0x0f71, 0x19ba: 0x00d9, 0x19bb: 0x0f99, + 0x19bc: 0x2039, 0x19bd: 0x0269, 0x19be: 0x01d9, 0x19bf: 0x0fa9, + // Block 0x67, offset 0x19c0 + 0x19c0: 0x0fb9, 0x19c1: 0x1089, 0x19c2: 0x0279, 0x19c3: 0x0369, 0x19c4: 0x0289, 0x19c5: 0x13d1, + 0x19c6: 0x0039, 0x19c7: 0x0ee9, 0x19c8: 0x1159, 0x19c9: 0x0ef9, 0x19ca: 0x0f09, 0x19cb: 0x1199, + 0x19cc: 0x0f31, 0x19cd: 0x0249, 0x19ce: 0x0f41, 0x19cf: 0x0259, 0x19d0: 0x0f51, 0x19d1: 0x0359, + 0x19d2: 0x0f61, 0x19d3: 0x0f71, 0x19d4: 0x00d9, 0x19d5: 0x0f99, 0x19d6: 0x2039, 0x19d7: 0x0269, + 0x19d8: 0x01d9, 0x19d9: 0x0fa9, 0x19da: 0x0fb9, 0x19db: 0x1089, 0x19dc: 0x0279, 0x19dd: 0x0369, + 0x19de: 0x0289, 0x19df: 0x13d1, 0x19e0: 0x0039, 0x19e1: 0x0ee9, 0x19e2: 0x1159, 0x19e3: 0x0ef9, + 0x19e4: 0x0f09, 0x19e5: 0x1199, 0x19e6: 0x0f31, 0x19e7: 0x0249, 0x19e8: 0x0f41, 0x19e9: 0x0259, + 0x19ea: 0x0f51, 0x19eb: 0x0359, 0x19ec: 0x0f61, 0x19ed: 0x0f71, 0x19ee: 0x00d9, 0x19ef: 0x0f99, + 0x19f0: 0x2039, 0x19f1: 0x0269, 0x19f2: 0x01d9, 0x19f3: 0x0fa9, 0x19f4: 0x0fb9, 0x19f5: 0x1089, + 0x19f6: 0x0279, 0x19f7: 0x0369, 0x19f8: 0x0289, 0x19f9: 0x13d1, 0x19fa: 0x0039, 0x19fb: 0x0ee9, + 0x19fc: 0x1159, 0x19fd: 0x0ef9, 0x19fe: 0x0f09, 0x19ff: 0x1199, + // Block 0x68, offset 0x1a00 + 0x1a00: 0x0f31, 0x1a01: 0x0249, 0x1a02: 0x0f41, 0x1a03: 0x0259, 0x1a04: 0x0f51, 0x1a05: 0x0359, + 0x1a06: 0x0f61, 0x1a07: 0x0f71, 0x1a08: 0x00d9, 0x1a09: 0x0f99, 0x1a0a: 0x2039, 0x1a0b: 0x0269, + 0x1a0c: 0x01d9, 0x1a0d: 0x0fa9, 0x1a0e: 0x0fb9, 0x1a0f: 0x1089, 0x1a10: 0x0279, 0x1a11: 0x0369, + 0x1a12: 0x0289, 0x1a13: 0x13d1, 0x1a14: 0x0039, 0x1a15: 0x0ee9, 0x1a16: 0x1159, 0x1a17: 0x0ef9, + 0x1a18: 0x0f09, 0x1a19: 0x1199, 0x1a1a: 0x0f31, 0x1a1b: 0x0249, 0x1a1c: 0x0f41, 0x1a1d: 0x0259, + 0x1a1e: 0x0f51, 0x1a1f: 0x0359, 0x1a20: 0x0f61, 0x1a21: 0x0f71, 0x1a22: 0x00d9, 0x1a23: 0x0f99, + 0x1a24: 0x2039, 0x1a25: 0x0269, 0x1a26: 0x01d9, 0x1a27: 0x0fa9, 0x1a28: 0x0fb9, 0x1a29: 0x1089, + 0x1a2a: 0x0279, 0x1a2b: 0x0369, 0x1a2c: 0x0289, 0x1a2d: 0x13d1, 0x1a2e: 0x0039, 0x1a2f: 0x0ee9, + 0x1a30: 0x1159, 0x1a31: 0x0ef9, 0x1a32: 0x0f09, 0x1a33: 0x1199, 0x1a34: 0x0f31, 0x1a35: 0x0249, + 0x1a36: 0x0f41, 0x1a37: 0x0259, 0x1a38: 0x0f51, 0x1a39: 0x0359, 0x1a3a: 0x0f61, 0x1a3b: 0x0f71, + 0x1a3c: 0x00d9, 0x1a3d: 0x0f99, 0x1a3e: 0x2039, 0x1a3f: 0x0269, + // Block 0x69, offset 0x1a40 + 0x1a40: 0x01d9, 0x1a41: 0x0fa9, 0x1a42: 0x0fb9, 0x1a43: 0x1089, 0x1a44: 0x0279, 0x1a45: 0x0369, + 0x1a46: 0x0289, 0x1a47: 0x13d1, 0x1a48: 0x0039, 0x1a49: 0x0ee9, 0x1a4a: 0x1159, 0x1a4b: 0x0ef9, + 0x1a4c: 0x0f09, 0x1a4d: 0x1199, 0x1a4e: 0x0f31, 0x1a4f: 0x0249, 0x1a50: 0x0f41, 0x1a51: 0x0259, + 0x1a52: 0x0f51, 0x1a53: 0x0359, 0x1a54: 0x0f61, 0x1a55: 0x0f71, 0x1a56: 0x00d9, 0x1a57: 0x0f99, + 0x1a58: 0x2039, 0x1a59: 0x0269, 0x1a5a: 0x01d9, 0x1a5b: 0x0fa9, 0x1a5c: 0x0fb9, 0x1a5d: 0x1089, + 0x1a5e: 0x0279, 0x1a5f: 0x0369, 0x1a60: 0x0289, 0x1a61: 0x13d1, 0x1a62: 0x0039, 0x1a63: 0x0ee9, + 0x1a64: 0x1159, 0x1a65: 0x0ef9, 0x1a66: 0x0f09, 0x1a67: 0x1199, 0x1a68: 0x0f31, 0x1a69: 0x0249, + 0x1a6a: 0x0f41, 0x1a6b: 0x0259, 0x1a6c: 0x0f51, 0x1a6d: 0x0359, 0x1a6e: 0x0f61, 0x1a6f: 0x0f71, + 0x1a70: 0x00d9, 0x1a71: 0x0f99, 0x1a72: 0x2039, 0x1a73: 0x0269, 0x1a74: 0x01d9, 0x1a75: 0x0fa9, + 0x1a76: 0x0fb9, 0x1a77: 0x1089, 0x1a78: 0x0279, 0x1a79: 0x0369, 0x1a7a: 0x0289, 0x1a7b: 0x13d1, + 0x1a7c: 0x0039, 0x1a7d: 0x0ee9, 0x1a7e: 0x1159, 0x1a7f: 0x0ef9, + // Block 0x6a, offset 0x1a80 + 0x1a80: 0x0f09, 0x1a81: 0x1199, 0x1a82: 0x0f31, 0x1a83: 0x0249, 0x1a84: 0x0f41, 0x1a85: 0x0259, + 0x1a86: 0x0f51, 0x1a87: 0x0359, 0x1a88: 0x0f61, 0x1a89: 0x0f71, 0x1a8a: 0x00d9, 0x1a8b: 0x0f99, + 0x1a8c: 0x2039, 0x1a8d: 0x0269, 0x1a8e: 0x01d9, 0x1a8f: 0x0fa9, 0x1a90: 0x0fb9, 0x1a91: 0x1089, + 0x1a92: 0x0279, 0x1a93: 0x0369, 0x1a94: 0x0289, 0x1a95: 0x13d1, 0x1a96: 0x0039, 0x1a97: 0x0ee9, + 0x1a98: 0x1159, 0x1a99: 0x0ef9, 0x1a9a: 0x0f09, 0x1a9b: 0x1199, 0x1a9c: 0x0f31, 0x1a9d: 0x0249, + 0x1a9e: 0x0f41, 0x1a9f: 0x0259, 0x1aa0: 0x0f51, 0x1aa1: 0x0359, 0x1aa2: 0x0f61, 0x1aa3: 0x0f71, + 0x1aa4: 0x00d9, 0x1aa5: 0x0f99, 0x1aa6: 0x2039, 0x1aa7: 0x0269, 0x1aa8: 0x01d9, 0x1aa9: 0x0fa9, + 0x1aaa: 0x0fb9, 0x1aab: 0x1089, 0x1aac: 0x0279, 0x1aad: 0x0369, 0x1aae: 0x0289, 0x1aaf: 0x13d1, + 0x1ab0: 0x0039, 0x1ab1: 0x0ee9, 0x1ab2: 0x1159, 0x1ab3: 0x0ef9, 0x1ab4: 0x0f09, 0x1ab5: 0x1199, + 0x1ab6: 0x0f31, 0x1ab7: 0x0249, 0x1ab8: 0x0f41, 0x1ab9: 0x0259, 0x1aba: 0x0f51, 0x1abb: 0x0359, + 0x1abc: 0x0f61, 0x1abd: 0x0f71, 0x1abe: 0x00d9, 0x1abf: 0x0f99, + // Block 0x6b, offset 0x1ac0 + 0x1ac0: 0x2039, 0x1ac1: 0x0269, 0x1ac2: 0x01d9, 0x1ac3: 0x0fa9, 0x1ac4: 0x0fb9, 0x1ac5: 0x1089, + 0x1ac6: 0x0279, 0x1ac7: 0x0369, 0x1ac8: 0x0289, 0x1ac9: 0x13d1, 0x1aca: 0x0039, 0x1acb: 0x0ee9, + 0x1acc: 0x1159, 0x1acd: 0x0ef9, 0x1ace: 0x0f09, 0x1acf: 0x1199, 0x1ad0: 0x0f31, 0x1ad1: 0x0249, + 0x1ad2: 0x0f41, 0x1ad3: 0x0259, 0x1ad4: 0x0f51, 0x1ad5: 0x0359, 0x1ad6: 0x0f61, 0x1ad7: 0x0f71, + 0x1ad8: 0x00d9, 0x1ad9: 0x0f99, 0x1ada: 0x2039, 0x1adb: 0x0269, 0x1adc: 0x01d9, 0x1add: 0x0fa9, + 0x1ade: 0x0fb9, 0x1adf: 0x1089, 0x1ae0: 0x0279, 0x1ae1: 0x0369, 0x1ae2: 0x0289, 0x1ae3: 0x13d1, + 0x1ae4: 0xba81, 0x1ae5: 0xba99, 0x1ae6: 0x0040, 0x1ae7: 0x0040, 0x1ae8: 0xbab1, 0x1ae9: 0x1099, + 0x1aea: 0x10b1, 0x1aeb: 0x10c9, 0x1aec: 0xbac9, 0x1aed: 0xbae1, 0x1aee: 0xbaf9, 0x1aef: 0x1429, + 0x1af0: 0x1a31, 0x1af1: 0xbb11, 0x1af2: 0xbb29, 0x1af3: 0xbb41, 0x1af4: 0xbb59, 0x1af5: 0xbb71, + 0x1af6: 0xbb89, 0x1af7: 0x2109, 0x1af8: 0x1111, 0x1af9: 0x1429, 0x1afa: 0xbba1, 0x1afb: 0xbbb9, + 0x1afc: 0xbbd1, 0x1afd: 0x10e1, 0x1afe: 0x10f9, 0x1aff: 0xbbe9, + // Block 0x6c, offset 0x1b00 + 0x1b00: 0x2079, 0x1b01: 0xbc01, 0x1b02: 0xbab1, 0x1b03: 0x1099, 0x1b04: 0x10b1, 0x1b05: 0x10c9, + 0x1b06: 0xbac9, 0x1b07: 0xbae1, 0x1b08: 0xbaf9, 0x1b09: 0x1429, 0x1b0a: 0x1a31, 0x1b0b: 0xbb11, + 0x1b0c: 0xbb29, 0x1b0d: 0xbb41, 0x1b0e: 0xbb59, 0x1b0f: 0xbb71, 0x1b10: 0xbb89, 0x1b11: 0x2109, + 0x1b12: 0x1111, 0x1b13: 0xbba1, 0x1b14: 0xbba1, 0x1b15: 0xbbb9, 0x1b16: 0xbbd1, 0x1b17: 0x10e1, + 0x1b18: 0x10f9, 0x1b19: 0xbbe9, 0x1b1a: 0x2079, 0x1b1b: 0xbc21, 0x1b1c: 0xbac9, 0x1b1d: 0x1429, + 0x1b1e: 0xbb11, 0x1b1f: 0x10e1, 0x1b20: 0x1111, 0x1b21: 0x2109, 0x1b22: 0xbab1, 0x1b23: 0x1099, + 0x1b24: 0x10b1, 0x1b25: 0x10c9, 0x1b26: 0xbac9, 0x1b27: 0xbae1, 0x1b28: 0xbaf9, 0x1b29: 0x1429, + 0x1b2a: 0x1a31, 0x1b2b: 0xbb11, 0x1b2c: 0xbb29, 0x1b2d: 0xbb41, 0x1b2e: 0xbb59, 0x1b2f: 0xbb71, + 0x1b30: 0xbb89, 0x1b31: 0x2109, 0x1b32: 0x1111, 0x1b33: 0x1429, 0x1b34: 0xbba1, 0x1b35: 0xbbb9, + 0x1b36: 0xbbd1, 0x1b37: 0x10e1, 0x1b38: 0x10f9, 0x1b39: 0xbbe9, 0x1b3a: 0x2079, 0x1b3b: 0xbc01, + 0x1b3c: 0xbab1, 0x1b3d: 0x1099, 0x1b3e: 0x10b1, 0x1b3f: 0x10c9, + // Block 0x6d, offset 0x1b40 + 0x1b40: 0xbac9, 0x1b41: 0xbae1, 0x1b42: 0xbaf9, 0x1b43: 0x1429, 0x1b44: 0x1a31, 0x1b45: 0xbb11, + 0x1b46: 0xbb29, 0x1b47: 0xbb41, 0x1b48: 0xbb59, 0x1b49: 0xbb71, 0x1b4a: 0xbb89, 0x1b4b: 0x2109, + 0x1b4c: 0x1111, 0x1b4d: 0xbba1, 0x1b4e: 0xbba1, 0x1b4f: 0xbbb9, 0x1b50: 0xbbd1, 0x1b51: 0x10e1, + 0x1b52: 0x10f9, 0x1b53: 0xbbe9, 0x1b54: 0x2079, 0x1b55: 0xbc21, 0x1b56: 0xbac9, 0x1b57: 0x1429, + 0x1b58: 0xbb11, 0x1b59: 0x10e1, 0x1b5a: 0x1111, 0x1b5b: 0x2109, 0x1b5c: 0xbab1, 0x1b5d: 0x1099, + 0x1b5e: 0x10b1, 0x1b5f: 0x10c9, 0x1b60: 0xbac9, 0x1b61: 0xbae1, 0x1b62: 0xbaf9, 0x1b63: 0x1429, + 0x1b64: 0x1a31, 0x1b65: 0xbb11, 0x1b66: 0xbb29, 0x1b67: 0xbb41, 0x1b68: 0xbb59, 0x1b69: 0xbb71, + 0x1b6a: 0xbb89, 0x1b6b: 0x2109, 0x1b6c: 0x1111, 0x1b6d: 0x1429, 0x1b6e: 0xbba1, 0x1b6f: 0xbbb9, + 0x1b70: 0xbbd1, 0x1b71: 0x10e1, 0x1b72: 0x10f9, 0x1b73: 0xbbe9, 0x1b74: 0x2079, 0x1b75: 0xbc01, + 0x1b76: 0xbab1, 0x1b77: 0x1099, 0x1b78: 0x10b1, 0x1b79: 0x10c9, 0x1b7a: 0xbac9, 0x1b7b: 0xbae1, + 0x1b7c: 0xbaf9, 0x1b7d: 0x1429, 0x1b7e: 0x1a31, 0x1b7f: 0xbb11, + // Block 0x6e, offset 0x1b80 + 0x1b80: 0xbb29, 0x1b81: 0xbb41, 0x1b82: 0xbb59, 0x1b83: 0xbb71, 0x1b84: 0xbb89, 0x1b85: 0x2109, + 0x1b86: 0x1111, 0x1b87: 0xbba1, 0x1b88: 0xbba1, 0x1b89: 0xbbb9, 0x1b8a: 0xbbd1, 0x1b8b: 0x10e1, + 0x1b8c: 0x10f9, 0x1b8d: 0xbbe9, 0x1b8e: 0x2079, 0x1b8f: 0xbc21, 0x1b90: 0xbac9, 0x1b91: 0x1429, + 0x1b92: 0xbb11, 0x1b93: 0x10e1, 0x1b94: 0x1111, 0x1b95: 0x2109, 0x1b96: 0xbab1, 0x1b97: 0x1099, + 0x1b98: 0x10b1, 0x1b99: 0x10c9, 0x1b9a: 0xbac9, 0x1b9b: 0xbae1, 0x1b9c: 0xbaf9, 0x1b9d: 0x1429, + 0x1b9e: 0x1a31, 0x1b9f: 0xbb11, 0x1ba0: 0xbb29, 0x1ba1: 0xbb41, 0x1ba2: 0xbb59, 0x1ba3: 0xbb71, + 0x1ba4: 0xbb89, 0x1ba5: 0x2109, 0x1ba6: 0x1111, 0x1ba7: 0x1429, 0x1ba8: 0xbba1, 0x1ba9: 0xbbb9, + 0x1baa: 0xbbd1, 0x1bab: 0x10e1, 0x1bac: 0x10f9, 0x1bad: 0xbbe9, 0x1bae: 0x2079, 0x1baf: 0xbc01, + 0x1bb0: 0xbab1, 0x1bb1: 0x1099, 0x1bb2: 0x10b1, 0x1bb3: 0x10c9, 0x1bb4: 0xbac9, 0x1bb5: 0xbae1, + 0x1bb6: 0xbaf9, 0x1bb7: 0x1429, 0x1bb8: 0x1a31, 0x1bb9: 0xbb11, 0x1bba: 0xbb29, 0x1bbb: 0xbb41, + 0x1bbc: 0xbb59, 0x1bbd: 0xbb71, 0x1bbe: 0xbb89, 0x1bbf: 0x2109, + // Block 0x6f, offset 0x1bc0 + 0x1bc0: 0x1111, 0x1bc1: 0xbba1, 0x1bc2: 0xbba1, 0x1bc3: 0xbbb9, 0x1bc4: 0xbbd1, 0x1bc5: 0x10e1, + 0x1bc6: 0x10f9, 0x1bc7: 0xbbe9, 0x1bc8: 0x2079, 0x1bc9: 0xbc21, 0x1bca: 0xbac9, 0x1bcb: 0x1429, + 0x1bcc: 0xbb11, 0x1bcd: 0x10e1, 0x1bce: 0x1111, 0x1bcf: 0x2109, 0x1bd0: 0xbab1, 0x1bd1: 0x1099, + 0x1bd2: 0x10b1, 0x1bd3: 0x10c9, 0x1bd4: 0xbac9, 0x1bd5: 0xbae1, 0x1bd6: 0xbaf9, 0x1bd7: 0x1429, + 0x1bd8: 0x1a31, 0x1bd9: 0xbb11, 0x1bda: 0xbb29, 0x1bdb: 0xbb41, 0x1bdc: 0xbb59, 0x1bdd: 0xbb71, + 0x1bde: 0xbb89, 0x1bdf: 0x2109, 0x1be0: 0x1111, 0x1be1: 0x1429, 0x1be2: 0xbba1, 0x1be3: 0xbbb9, + 0x1be4: 0xbbd1, 0x1be5: 0x10e1, 0x1be6: 0x10f9, 0x1be7: 0xbbe9, 0x1be8: 0x2079, 0x1be9: 0xbc01, + 0x1bea: 0xbab1, 0x1beb: 0x1099, 0x1bec: 0x10b1, 0x1bed: 0x10c9, 0x1bee: 0xbac9, 0x1bef: 0xbae1, + 0x1bf0: 0xbaf9, 0x1bf1: 0x1429, 0x1bf2: 0x1a31, 0x1bf3: 0xbb11, 0x1bf4: 0xbb29, 0x1bf5: 0xbb41, + 0x1bf6: 0xbb59, 0x1bf7: 0xbb71, 0x1bf8: 0xbb89, 0x1bf9: 0x2109, 0x1bfa: 0x1111, 0x1bfb: 0xbba1, + 0x1bfc: 0xbba1, 0x1bfd: 0xbbb9, 0x1bfe: 0xbbd1, 0x1bff: 0x10e1, + // Block 0x70, offset 0x1c00 + 0x1c00: 0x10f9, 0x1c01: 0xbbe9, 0x1c02: 0x2079, 0x1c03: 0xbc21, 0x1c04: 0xbac9, 0x1c05: 0x1429, + 0x1c06: 0xbb11, 0x1c07: 0x10e1, 0x1c08: 0x1111, 0x1c09: 0x2109, 0x1c0a: 0xbc41, 0x1c0b: 0xbc41, + 0x1c0c: 0x0040, 0x1c0d: 0x0040, 0x1c0e: 0x1f41, 0x1c0f: 0x00c9, 0x1c10: 0x0069, 0x1c11: 0x0079, + 0x1c12: 0x1f51, 0x1c13: 0x1f61, 0x1c14: 0x1f71, 0x1c15: 0x1f81, 0x1c16: 0x1f91, 0x1c17: 0x1fa1, + 0x1c18: 0x1f41, 0x1c19: 0x00c9, 0x1c1a: 0x0069, 0x1c1b: 0x0079, 0x1c1c: 0x1f51, 0x1c1d: 0x1f61, + 0x1c1e: 0x1f71, 0x1c1f: 0x1f81, 0x1c20: 0x1f91, 0x1c21: 0x1fa1, 0x1c22: 0x1f41, 0x1c23: 0x00c9, + 0x1c24: 0x0069, 0x1c25: 0x0079, 0x1c26: 0x1f51, 0x1c27: 0x1f61, 0x1c28: 0x1f71, 0x1c29: 0x1f81, + 0x1c2a: 0x1f91, 0x1c2b: 0x1fa1, 0x1c2c: 0x1f41, 0x1c2d: 0x00c9, 0x1c2e: 0x0069, 0x1c2f: 0x0079, + 0x1c30: 0x1f51, 0x1c31: 0x1f61, 0x1c32: 0x1f71, 0x1c33: 0x1f81, 0x1c34: 0x1f91, 0x1c35: 0x1fa1, + 0x1c36: 0x1f41, 0x1c37: 0x00c9, 0x1c38: 0x0069, 0x1c39: 0x0079, 0x1c3a: 0x1f51, 0x1c3b: 0x1f61, + 0x1c3c: 0x1f71, 0x1c3d: 0x1f81, 0x1c3e: 0x1f91, 0x1c3f: 0x1fa1, + // Block 0x71, offset 0x1c40 + 0x1c40: 0xe115, 0x1c41: 0xe115, 0x1c42: 0xe135, 0x1c43: 0xe135, 0x1c44: 0xe115, 0x1c45: 0xe115, + 0x1c46: 0xe175, 0x1c47: 0xe175, 0x1c48: 0xe115, 0x1c49: 0xe115, 0x1c4a: 0xe135, 0x1c4b: 0xe135, + 0x1c4c: 0xe115, 0x1c4d: 0xe115, 0x1c4e: 0xe1f5, 0x1c4f: 0xe1f5, 0x1c50: 0xe115, 0x1c51: 0xe115, + 0x1c52: 0xe135, 0x1c53: 0xe135, 0x1c54: 0xe115, 0x1c55: 0xe115, 0x1c56: 0xe175, 0x1c57: 0xe175, + 0x1c58: 0xe115, 0x1c59: 0xe115, 0x1c5a: 0xe135, 0x1c5b: 0xe135, 0x1c5c: 0xe115, 0x1c5d: 0xe115, + 0x1c5e: 0x8b3d, 0x1c5f: 0x8b3d, 0x1c60: 0x04b5, 0x1c61: 0x04b5, 0x1c62: 0x0a08, 0x1c63: 0x0a08, + 0x1c64: 0x0a08, 0x1c65: 0x0a08, 0x1c66: 0x0a08, 0x1c67: 0x0a08, 0x1c68: 0x0a08, 0x1c69: 0x0a08, + 0x1c6a: 0x0a08, 0x1c6b: 0x0a08, 0x1c6c: 0x0a08, 0x1c6d: 0x0a08, 0x1c6e: 0x0a08, 0x1c6f: 0x0a08, + 0x1c70: 0x0a08, 0x1c71: 0x0a08, 0x1c72: 0x0a08, 0x1c73: 0x0a08, 0x1c74: 0x0a08, 0x1c75: 0x0a08, + 0x1c76: 0x0a08, 0x1c77: 0x0a08, 0x1c78: 0x0a08, 0x1c79: 0x0a08, 0x1c7a: 0x0a08, 0x1c7b: 0x0a08, + 0x1c7c: 0x0a08, 0x1c7d: 0x0a08, 0x1c7e: 0x0a08, 0x1c7f: 0x0a08, + // Block 0x72, offset 0x1c80 + 0x1c80: 0xb189, 0x1c81: 0xb1a1, 0x1c82: 0xb201, 0x1c83: 0xb249, 0x1c84: 0x0040, 0x1c85: 0xb411, + 0x1c86: 0xb291, 0x1c87: 0xb219, 0x1c88: 0xb309, 0x1c89: 0xb429, 0x1c8a: 0xb399, 0x1c8b: 0xb3b1, + 0x1c8c: 0xb3c9, 0x1c8d: 0xb3e1, 0x1c8e: 0xb2a9, 0x1c8f: 0xb339, 0x1c90: 0xb369, 0x1c91: 0xb2d9, + 0x1c92: 0xb381, 0x1c93: 0xb279, 0x1c94: 0xb2c1, 0x1c95: 0xb1d1, 0x1c96: 0xb1e9, 0x1c97: 0xb231, + 0x1c98: 0xb261, 0x1c99: 0xb2f1, 0x1c9a: 0xb321, 0x1c9b: 0xb351, 0x1c9c: 0xbc59, 0x1c9d: 0x7949, + 0x1c9e: 0xbc71, 0x1c9f: 0xbc89, 0x1ca0: 0x0040, 0x1ca1: 0xb1a1, 0x1ca2: 0xb201, 0x1ca3: 0x0040, + 0x1ca4: 0xb3f9, 0x1ca5: 0x0040, 0x1ca6: 0x0040, 0x1ca7: 0xb219, 0x1ca8: 0x0040, 0x1ca9: 0xb429, + 0x1caa: 0xb399, 0x1cab: 0xb3b1, 0x1cac: 0xb3c9, 0x1cad: 0xb3e1, 0x1cae: 0xb2a9, 0x1caf: 0xb339, + 0x1cb0: 0xb369, 0x1cb1: 0xb2d9, 0x1cb2: 0xb381, 0x1cb3: 0x0040, 0x1cb4: 0xb2c1, 0x1cb5: 0xb1d1, + 0x1cb6: 0xb1e9, 0x1cb7: 0xb231, 0x1cb8: 0x0040, 0x1cb9: 0xb2f1, 0x1cba: 0x0040, 0x1cbb: 0xb351, + 0x1cbc: 0x0040, 0x1cbd: 0x0040, 0x1cbe: 0x0040, 0x1cbf: 0x0040, + // Block 0x73, offset 0x1cc0 + 0x1cc0: 0x0040, 0x1cc1: 0x0040, 0x1cc2: 0xb201, 0x1cc3: 0x0040, 0x1cc4: 0x0040, 0x1cc5: 0x0040, + 0x1cc6: 0x0040, 0x1cc7: 0xb219, 0x1cc8: 0x0040, 0x1cc9: 0xb429, 0x1cca: 0x0040, 0x1ccb: 0xb3b1, + 0x1ccc: 0x0040, 0x1ccd: 0xb3e1, 0x1cce: 0xb2a9, 0x1ccf: 0xb339, 0x1cd0: 0x0040, 0x1cd1: 0xb2d9, + 0x1cd2: 0xb381, 0x1cd3: 0x0040, 0x1cd4: 0xb2c1, 0x1cd5: 0x0040, 0x1cd6: 0x0040, 0x1cd7: 0xb231, + 0x1cd8: 0x0040, 0x1cd9: 0xb2f1, 0x1cda: 0x0040, 0x1cdb: 0xb351, 0x1cdc: 0x0040, 0x1cdd: 0x7949, + 0x1cde: 0x0040, 0x1cdf: 0xbc89, 0x1ce0: 0x0040, 0x1ce1: 0xb1a1, 0x1ce2: 0xb201, 0x1ce3: 0x0040, + 0x1ce4: 0xb3f9, 0x1ce5: 0x0040, 0x1ce6: 0x0040, 0x1ce7: 0xb219, 0x1ce8: 0xb309, 0x1ce9: 0xb429, + 0x1cea: 0xb399, 0x1ceb: 0x0040, 0x1cec: 0xb3c9, 0x1ced: 0xb3e1, 0x1cee: 0xb2a9, 0x1cef: 0xb339, + 0x1cf0: 0xb369, 0x1cf1: 0xb2d9, 0x1cf2: 0xb381, 0x1cf3: 0x0040, 0x1cf4: 0xb2c1, 0x1cf5: 0xb1d1, + 0x1cf6: 0xb1e9, 0x1cf7: 0xb231, 0x1cf8: 0x0040, 0x1cf9: 0xb2f1, 0x1cfa: 0xb321, 0x1cfb: 0xb351, + 0x1cfc: 0xbc59, 0x1cfd: 0x0040, 0x1cfe: 0xbc71, 0x1cff: 0x0040, + // Block 0x74, offset 0x1d00 + 0x1d00: 0xb189, 0x1d01: 0xb1a1, 0x1d02: 0xb201, 0x1d03: 0xb249, 0x1d04: 0xb3f9, 0x1d05: 0xb411, + 0x1d06: 0xb291, 0x1d07: 0xb219, 0x1d08: 0xb309, 0x1d09: 0xb429, 0x1d0a: 0x0040, 0x1d0b: 0xb3b1, + 0x1d0c: 0xb3c9, 0x1d0d: 0xb3e1, 0x1d0e: 0xb2a9, 0x1d0f: 0xb339, 0x1d10: 0xb369, 0x1d11: 0xb2d9, + 0x1d12: 0xb381, 0x1d13: 0xb279, 0x1d14: 0xb2c1, 0x1d15: 0xb1d1, 0x1d16: 0xb1e9, 0x1d17: 0xb231, + 0x1d18: 0xb261, 0x1d19: 0xb2f1, 0x1d1a: 0xb321, 0x1d1b: 0xb351, 0x1d1c: 0x0040, 0x1d1d: 0x0040, + 0x1d1e: 0x0040, 0x1d1f: 0x0040, 0x1d20: 0x0040, 0x1d21: 0xb1a1, 0x1d22: 0xb201, 0x1d23: 0xb249, + 0x1d24: 0x0040, 0x1d25: 0xb411, 0x1d26: 0xb291, 0x1d27: 0xb219, 0x1d28: 0xb309, 0x1d29: 0xb429, + 0x1d2a: 0x0040, 0x1d2b: 0xb3b1, 0x1d2c: 0xb3c9, 0x1d2d: 0xb3e1, 0x1d2e: 0xb2a9, 0x1d2f: 0xb339, + 0x1d30: 0xb369, 0x1d31: 0xb2d9, 0x1d32: 0xb381, 0x1d33: 0xb279, 0x1d34: 0xb2c1, 0x1d35: 0xb1d1, + 0x1d36: 0xb1e9, 0x1d37: 0xb231, 0x1d38: 0xb261, 0x1d39: 0xb2f1, 0x1d3a: 0xb321, 0x1d3b: 0xb351, + 0x1d3c: 0x0040, 0x1d3d: 0x0040, 0x1d3e: 0x0040, 0x1d3f: 0x0040, + // Block 0x75, offset 0x1d40 + 0x1d40: 0x0040, 0x1d41: 0xbca2, 0x1d42: 0xbcba, 0x1d43: 0xbcd2, 0x1d44: 0xbcea, 0x1d45: 0xbd02, + 0x1d46: 0xbd1a, 0x1d47: 0xbd32, 0x1d48: 0xbd4a, 0x1d49: 0xbd62, 0x1d4a: 0xbd7a, 0x1d4b: 0x0018, + 0x1d4c: 0x0018, 0x1d4d: 0x0040, 0x1d4e: 0x0040, 0x1d4f: 0x0040, 0x1d50: 0xbd92, 0x1d51: 0xbdb2, + 0x1d52: 0xbdd2, 0x1d53: 0xbdf2, 0x1d54: 0xbe12, 0x1d55: 0xbe32, 0x1d56: 0xbe52, 0x1d57: 0xbe72, + 0x1d58: 0xbe92, 0x1d59: 0xbeb2, 0x1d5a: 0xbed2, 0x1d5b: 0xbef2, 0x1d5c: 0xbf12, 0x1d5d: 0xbf32, + 0x1d5e: 0xbf52, 0x1d5f: 0xbf72, 0x1d60: 0xbf92, 0x1d61: 0xbfb2, 0x1d62: 0xbfd2, 0x1d63: 0xbff2, + 0x1d64: 0xc012, 0x1d65: 0xc032, 0x1d66: 0xc052, 0x1d67: 0xc072, 0x1d68: 0xc092, 0x1d69: 0xc0b2, + 0x1d6a: 0xc0d1, 0x1d6b: 0x1159, 0x1d6c: 0x0269, 0x1d6d: 0x6671, 0x1d6e: 0xc111, 0x1d6f: 0x0018, + 0x1d70: 0x0039, 0x1d71: 0x0ee9, 0x1d72: 0x1159, 0x1d73: 0x0ef9, 0x1d74: 0x0f09, 0x1d75: 0x1199, + 0x1d76: 0x0f31, 0x1d77: 0x0249, 0x1d78: 0x0f41, 0x1d79: 0x0259, 0x1d7a: 0x0f51, 0x1d7b: 0x0359, + 0x1d7c: 0x0f61, 0x1d7d: 0x0f71, 0x1d7e: 0x00d9, 0x1d7f: 0x0f99, + // Block 0x76, offset 0x1d80 + 0x1d80: 0x2039, 0x1d81: 0x0269, 0x1d82: 0x01d9, 0x1d83: 0x0fa9, 0x1d84: 0x0fb9, 0x1d85: 0x1089, + 0x1d86: 0x0279, 0x1d87: 0x0369, 0x1d88: 0x0289, 0x1d89: 0x13d1, 0x1d8a: 0xc129, 0x1d8b: 0x65b1, + 0x1d8c: 0xc141, 0x1d8d: 0x1441, 0x1d8e: 0xc159, 0x1d8f: 0xc179, 0x1d90: 0x0018, 0x1d91: 0x0018, + 0x1d92: 0x0018, 0x1d93: 0x0018, 0x1d94: 0x0018, 0x1d95: 0x0018, 0x1d96: 0x0018, 0x1d97: 0x0018, + 0x1d98: 0x0018, 0x1d99: 0x0018, 0x1d9a: 0x0018, 0x1d9b: 0x0018, 0x1d9c: 0x0018, 0x1d9d: 0x0018, + 0x1d9e: 0x0018, 0x1d9f: 0x0018, 0x1da0: 0x0018, 0x1da1: 0x0018, 0x1da2: 0x0018, 0x1da3: 0x0018, + 0x1da4: 0x0018, 0x1da5: 0x0018, 0x1da6: 0x0018, 0x1da7: 0x0018, 0x1da8: 0x0018, 0x1da9: 0x0018, + 0x1daa: 0xc191, 0x1dab: 0xc1a9, 0x1dac: 0xc1c1, 0x1dad: 0x0040, 0x1dae: 0x0040, 0x1daf: 0x0040, + 0x1db0: 0x0018, 0x1db1: 0x0018, 0x1db2: 0x0018, 0x1db3: 0x0018, 0x1db4: 0x0018, 0x1db5: 0x0018, + 0x1db6: 0x0018, 0x1db7: 0x0018, 0x1db8: 0x0018, 0x1db9: 0x0018, 0x1dba: 0x0018, 0x1dbb: 0x0018, + 0x1dbc: 0x0018, 0x1dbd: 0x0018, 0x1dbe: 0x0018, 0x1dbf: 0x0018, + // Block 0x77, offset 0x1dc0 + 0x1dc0: 0xc1f1, 0x1dc1: 0xc229, 0x1dc2: 0xc261, 0x1dc3: 0x0040, 0x1dc4: 0x0040, 0x1dc5: 0x0040, + 0x1dc6: 0x0040, 0x1dc7: 0x0040, 0x1dc8: 0x0040, 0x1dc9: 0x0040, 0x1dca: 0x0040, 0x1dcb: 0x0040, + 0x1dcc: 0x0040, 0x1dcd: 0x0040, 0x1dce: 0x0040, 0x1dcf: 0x0040, 0x1dd0: 0xc281, 0x1dd1: 0xc2a1, + 0x1dd2: 0xc2c1, 0x1dd3: 0xc2e1, 0x1dd4: 0xc301, 0x1dd5: 0xc321, 0x1dd6: 0xc341, 0x1dd7: 0xc361, + 0x1dd8: 0xc381, 0x1dd9: 0xc3a1, 0x1dda: 0xc3c1, 0x1ddb: 0xc3e1, 0x1ddc: 0xc401, 0x1ddd: 0xc421, + 0x1dde: 0xc441, 0x1ddf: 0xc461, 0x1de0: 0xc481, 0x1de1: 0xc4a1, 0x1de2: 0xc4c1, 0x1de3: 0xc4e1, + 0x1de4: 0xc501, 0x1de5: 0xc521, 0x1de6: 0xc541, 0x1de7: 0xc561, 0x1de8: 0xc581, 0x1de9: 0xc5a1, + 0x1dea: 0xc5c1, 0x1deb: 0xc5e1, 0x1dec: 0xc601, 0x1ded: 0xc621, 0x1dee: 0xc641, 0x1def: 0xc661, + 0x1df0: 0xc681, 0x1df1: 0xc6a1, 0x1df2: 0xc6c1, 0x1df3: 0xc6e1, 0x1df4: 0xc701, 0x1df5: 0xc721, + 0x1df6: 0xc741, 0x1df7: 0xc761, 0x1df8: 0xc781, 0x1df9: 0xc7a1, 0x1dfa: 0xc7c1, 0x1dfb: 0xc7e1, + 0x1dfc: 0x0040, 0x1dfd: 0x0040, 0x1dfe: 0x0040, 0x1dff: 0x0040, + // Block 0x78, offset 0x1e00 + 0x1e00: 0xcb11, 0x1e01: 0xcb31, 0x1e02: 0xcb51, 0x1e03: 0x8b55, 0x1e04: 0xcb71, 0x1e05: 0xcb91, + 0x1e06: 0xcbb1, 0x1e07: 0xcbd1, 0x1e08: 0xcbf1, 0x1e09: 0xcc11, 0x1e0a: 0xcc31, 0x1e0b: 0xcc51, + 0x1e0c: 0xcc71, 0x1e0d: 0x8b75, 0x1e0e: 0xcc91, 0x1e0f: 0xccb1, 0x1e10: 0xccd1, 0x1e11: 0xccf1, + 0x1e12: 0x8b95, 0x1e13: 0xcd11, 0x1e14: 0xcd31, 0x1e15: 0xc441, 0x1e16: 0x8bb5, 0x1e17: 0xcd51, + 0x1e18: 0xcd71, 0x1e19: 0xcd91, 0x1e1a: 0xcdb1, 0x1e1b: 0xcdd1, 0x1e1c: 0x8bd5, 0x1e1d: 0xcdf1, + 0x1e1e: 0xce11, 0x1e1f: 0xce31, 0x1e20: 0xce51, 0x1e21: 0xce71, 0x1e22: 0xc7a1, 0x1e23: 0xce91, + 0x1e24: 0xceb1, 0x1e25: 0xced1, 0x1e26: 0xcef1, 0x1e27: 0xcf11, 0x1e28: 0xcf31, 0x1e29: 0xcf51, + 0x1e2a: 0xcf71, 0x1e2b: 0xcf91, 0x1e2c: 0xcfb1, 0x1e2d: 0xcfd1, 0x1e2e: 0xcff1, 0x1e2f: 0xd011, + 0x1e30: 0xd031, 0x1e31: 0xd051, 0x1e32: 0xd051, 0x1e33: 0xd051, 0x1e34: 0x8bf5, 0x1e35: 0xd071, + 0x1e36: 0xd091, 0x1e37: 0xd0b1, 0x1e38: 0x8c15, 0x1e39: 0xd0d1, 0x1e3a: 0xd0f1, 0x1e3b: 0xd111, + 0x1e3c: 0xd131, 0x1e3d: 0xd151, 0x1e3e: 0xd171, 0x1e3f: 0xd191, + // Block 0x79, offset 0x1e40 + 0x1e40: 0xd1b1, 0x1e41: 0xd1d1, 0x1e42: 0xd1f1, 0x1e43: 0xd211, 0x1e44: 0xd231, 0x1e45: 0xd251, + 0x1e46: 0xd251, 0x1e47: 0xd271, 0x1e48: 0xd291, 0x1e49: 0xd2b1, 0x1e4a: 0xd2d1, 0x1e4b: 0xd2f1, + 0x1e4c: 0xd311, 0x1e4d: 0xd331, 0x1e4e: 0xd351, 0x1e4f: 0xd371, 0x1e50: 0xd391, 0x1e51: 0xd3b1, + 0x1e52: 0xd3d1, 0x1e53: 0xd3f1, 0x1e54: 0xd411, 0x1e55: 0xd431, 0x1e56: 0xd451, 0x1e57: 0xd471, + 0x1e58: 0xd491, 0x1e59: 0x8c35, 0x1e5a: 0xd4b1, 0x1e5b: 0xd4d1, 0x1e5c: 0xd4f1, 0x1e5d: 0xc321, + 0x1e5e: 0xd511, 0x1e5f: 0xd531, 0x1e60: 0x8c55, 0x1e61: 0x8c75, 0x1e62: 0xd551, 0x1e63: 0xd571, + 0x1e64: 0xd591, 0x1e65: 0xd5b1, 0x1e66: 0xd5d1, 0x1e67: 0xd5f1, 0x1e68: 0x2040, 0x1e69: 0xd611, + 0x1e6a: 0xd631, 0x1e6b: 0xd631, 0x1e6c: 0x8c95, 0x1e6d: 0xd651, 0x1e6e: 0xd671, 0x1e6f: 0xd691, + 0x1e70: 0xd6b1, 0x1e71: 0x8cb5, 0x1e72: 0xd6d1, 0x1e73: 0xd6f1, 0x1e74: 0x2040, 0x1e75: 0xd711, + 0x1e76: 0xd731, 0x1e77: 0xd751, 0x1e78: 0xd771, 0x1e79: 0xd791, 0x1e7a: 0xd7b1, 0x1e7b: 0x8cd5, + 0x1e7c: 0xd7d1, 0x1e7d: 0x8cf5, 0x1e7e: 0xd7f1, 0x1e7f: 0xd811, + // Block 0x7a, offset 0x1e80 + 0x1e80: 0xd831, 0x1e81: 0xd851, 0x1e82: 0xd871, 0x1e83: 0xd891, 0x1e84: 0xd8b1, 0x1e85: 0xd8d1, + 0x1e86: 0xd8f1, 0x1e87: 0xd911, 0x1e88: 0xd931, 0x1e89: 0x8d15, 0x1e8a: 0xd951, 0x1e8b: 0xd971, + 0x1e8c: 0xd991, 0x1e8d: 0xd9b1, 0x1e8e: 0xd9d1, 0x1e8f: 0x8d35, 0x1e90: 0xd9f1, 0x1e91: 0x8d55, + 0x1e92: 0x8d75, 0x1e93: 0xda11, 0x1e94: 0xda31, 0x1e95: 0xda31, 0x1e96: 0xda51, 0x1e97: 0x8d95, + 0x1e98: 0x8db5, 0x1e99: 0xda71, 0x1e9a: 0xda91, 0x1e9b: 0xdab1, 0x1e9c: 0xdad1, 0x1e9d: 0xdaf1, + 0x1e9e: 0xdb11, 0x1e9f: 0xdb31, 0x1ea0: 0xdb51, 0x1ea1: 0xdb71, 0x1ea2: 0xdb91, 0x1ea3: 0xdbb1, + 0x1ea4: 0x8dd5, 0x1ea5: 0xdbd1, 0x1ea6: 0xdbf1, 0x1ea7: 0xdc11, 0x1ea8: 0xdc31, 0x1ea9: 0xdc11, + 0x1eaa: 0xdc51, 0x1eab: 0xdc71, 0x1eac: 0xdc91, 0x1ead: 0xdcb1, 0x1eae: 0xdcd1, 0x1eaf: 0xdcf1, + 0x1eb0: 0xdd11, 0x1eb1: 0xdd31, 0x1eb2: 0xdd51, 0x1eb3: 0xdd71, 0x1eb4: 0xdd91, 0x1eb5: 0xddb1, + 0x1eb6: 0xddd1, 0x1eb7: 0xddf1, 0x1eb8: 0x8df5, 0x1eb9: 0xde11, 0x1eba: 0xde31, 0x1ebb: 0xde51, + 0x1ebc: 0xde71, 0x1ebd: 0xde91, 0x1ebe: 0x8e15, 0x1ebf: 0xdeb1, + // Block 0x7b, offset 0x1ec0 + 0x1ec0: 0xe5b1, 0x1ec1: 0xe5d1, 0x1ec2: 0xe5f1, 0x1ec3: 0xe611, 0x1ec4: 0xe631, 0x1ec5: 0xe651, + 0x1ec6: 0x8f35, 0x1ec7: 0xe671, 0x1ec8: 0xe691, 0x1ec9: 0xe6b1, 0x1eca: 0xe6d1, 0x1ecb: 0xe6f1, + 0x1ecc: 0xe711, 0x1ecd: 0x8f55, 0x1ece: 0xe731, 0x1ecf: 0xe751, 0x1ed0: 0x8f75, 0x1ed1: 0x8f95, + 0x1ed2: 0xe771, 0x1ed3: 0xe791, 0x1ed4: 0xe7b1, 0x1ed5: 0xe7d1, 0x1ed6: 0xe7f1, 0x1ed7: 0xe811, + 0x1ed8: 0xe831, 0x1ed9: 0xe851, 0x1eda: 0xe871, 0x1edb: 0x8fb5, 0x1edc: 0xe891, 0x1edd: 0x8fd5, + 0x1ede: 0xe8b1, 0x1edf: 0x2040, 0x1ee0: 0xe8d1, 0x1ee1: 0xe8f1, 0x1ee2: 0xe911, 0x1ee3: 0x8ff5, + 0x1ee4: 0xe931, 0x1ee5: 0xe951, 0x1ee6: 0x9015, 0x1ee7: 0x9035, 0x1ee8: 0xe971, 0x1ee9: 0xe991, + 0x1eea: 0xe9b1, 0x1eeb: 0xe9d1, 0x1eec: 0xe9f1, 0x1eed: 0xe9f1, 0x1eee: 0xea11, 0x1eef: 0xea31, + 0x1ef0: 0xea51, 0x1ef1: 0xea71, 0x1ef2: 0xea91, 0x1ef3: 0xeab1, 0x1ef4: 0xead1, 0x1ef5: 0x9055, + 0x1ef6: 0xeaf1, 0x1ef7: 0x9075, 0x1ef8: 0xeb11, 0x1ef9: 0x9095, 0x1efa: 0xeb31, 0x1efb: 0x90b5, + 0x1efc: 0x90d5, 0x1efd: 0x90f5, 0x1efe: 0xeb51, 0x1eff: 0xeb71, + // Block 0x7c, offset 0x1f00 + 0x1f00: 0xeb91, 0x1f01: 0x9115, 0x1f02: 0x9135, 0x1f03: 0x9155, 0x1f04: 0x9175, 0x1f05: 0xebb1, + 0x1f06: 0xebd1, 0x1f07: 0xebd1, 0x1f08: 0xebf1, 0x1f09: 0xec11, 0x1f0a: 0xec31, 0x1f0b: 0xec51, + 0x1f0c: 0xec71, 0x1f0d: 0x9195, 0x1f0e: 0xec91, 0x1f0f: 0xecb1, 0x1f10: 0xecd1, 0x1f11: 0xecf1, + 0x1f12: 0x91b5, 0x1f13: 0xed11, 0x1f14: 0x91d5, 0x1f15: 0x91f5, 0x1f16: 0xed31, 0x1f17: 0xed51, + 0x1f18: 0xed71, 0x1f19: 0xed91, 0x1f1a: 0xedb1, 0x1f1b: 0xedd1, 0x1f1c: 0x9215, 0x1f1d: 0x9235, + 0x1f1e: 0x9255, 0x1f1f: 0x2040, 0x1f20: 0xedf1, 0x1f21: 0x9275, 0x1f22: 0xee11, 0x1f23: 0xee31, + 0x1f24: 0xee51, 0x1f25: 0x9295, 0x1f26: 0xee71, 0x1f27: 0xee91, 0x1f28: 0xeeb1, 0x1f29: 0xeed1, + 0x1f2a: 0xeef1, 0x1f2b: 0x92b5, 0x1f2c: 0xef11, 0x1f2d: 0xef31, 0x1f2e: 0xef51, 0x1f2f: 0xef71, + 0x1f30: 0xef91, 0x1f31: 0xefb1, 0x1f32: 0x92d5, 0x1f33: 0x92f5, 0x1f34: 0xefd1, 0x1f35: 0x9315, + 0x1f36: 0xeff1, 0x1f37: 0x9335, 0x1f38: 0xf011, 0x1f39: 0xf031, 0x1f3a: 0xf051, 0x1f3b: 0x9355, + 0x1f3c: 0x9375, 0x1f3d: 0xf071, 0x1f3e: 0x9395, 0x1f3f: 0xf091, + // Block 0x7d, offset 0x1f40 + 0x1f40: 0xf6d1, 0x1f41: 0xf6f1, 0x1f42: 0xf711, 0x1f43: 0xf731, 0x1f44: 0xf751, 0x1f45: 0x9555, + 0x1f46: 0xf771, 0x1f47: 0xf791, 0x1f48: 0xf7b1, 0x1f49: 0xf7d1, 0x1f4a: 0xf7f1, 0x1f4b: 0x9575, + 0x1f4c: 0x9595, 0x1f4d: 0xf811, 0x1f4e: 0xf831, 0x1f4f: 0xf851, 0x1f50: 0xf871, 0x1f51: 0xf891, + 0x1f52: 0xf8b1, 0x1f53: 0x95b5, 0x1f54: 0xf8d1, 0x1f55: 0xf8f1, 0x1f56: 0xf911, 0x1f57: 0xf931, + 0x1f58: 0x95d5, 0x1f59: 0x95f5, 0x1f5a: 0xf951, 0x1f5b: 0xf971, 0x1f5c: 0xf991, 0x1f5d: 0x9615, + 0x1f5e: 0xf9b1, 0x1f5f: 0xf9d1, 0x1f60: 0x684d, 0x1f61: 0x9635, 0x1f62: 0xf9f1, 0x1f63: 0xfa11, + 0x1f64: 0xfa31, 0x1f65: 0x9655, 0x1f66: 0xfa51, 0x1f67: 0xfa71, 0x1f68: 0xfa91, 0x1f69: 0xfab1, + 0x1f6a: 0xfad1, 0x1f6b: 0xfaf1, 0x1f6c: 0xfb11, 0x1f6d: 0x9675, 0x1f6e: 0xfb31, 0x1f6f: 0xfb51, + 0x1f70: 0xfb71, 0x1f71: 0x9695, 0x1f72: 0xfb91, 0x1f73: 0xfbb1, 0x1f74: 0xfbd1, 0x1f75: 0xfbf1, + 0x1f76: 0x7b6d, 0x1f77: 0x96b5, 0x1f78: 0xfc11, 0x1f79: 0xfc31, 0x1f7a: 0xfc51, 0x1f7b: 0x96d5, + 0x1f7c: 0xfc71, 0x1f7d: 0x96f5, 0x1f7e: 0xfc91, 0x1f7f: 0xfc91, + // Block 0x7e, offset 0x1f80 + 0x1f80: 0xfcb1, 0x1f81: 0x9715, 0x1f82: 0xfcd1, 0x1f83: 0xfcf1, 0x1f84: 0xfd11, 0x1f85: 0xfd31, + 0x1f86: 0xfd51, 0x1f87: 0xfd71, 0x1f88: 0xfd91, 0x1f89: 0x9735, 0x1f8a: 0xfdb1, 0x1f8b: 0xfdd1, + 0x1f8c: 0xfdf1, 0x1f8d: 0xfe11, 0x1f8e: 0xfe31, 0x1f8f: 0xfe51, 0x1f90: 0x9755, 0x1f91: 0xfe71, + 0x1f92: 0x9775, 0x1f93: 0x9795, 0x1f94: 0x97b5, 0x1f95: 0xfe91, 0x1f96: 0xfeb1, 0x1f97: 0xfed1, + 0x1f98: 0xfef1, 0x1f99: 0xff11, 0x1f9a: 0xff31, 0x1f9b: 0xff51, 0x1f9c: 0xff71, 0x1f9d: 0x97d5, + 0x1f9e: 0x0040, 0x1f9f: 0x0040, 0x1fa0: 0x0040, 0x1fa1: 0x0040, 0x1fa2: 0x0040, 0x1fa3: 0x0040, + 0x1fa4: 0x0040, 0x1fa5: 0x0040, 0x1fa6: 0x0040, 0x1fa7: 0x0040, 0x1fa8: 0x0040, 0x1fa9: 0x0040, + 0x1faa: 0x0040, 0x1fab: 0x0040, 0x1fac: 0x0040, 0x1fad: 0x0040, 0x1fae: 0x0040, 0x1faf: 0x0040, + 0x1fb0: 0x0040, 0x1fb1: 0x0040, 0x1fb2: 0x0040, 0x1fb3: 0x0040, 0x1fb4: 0x0040, 0x1fb5: 0x0040, + 0x1fb6: 0x0040, 0x1fb7: 0x0040, 0x1fb8: 0x0040, 0x1fb9: 0x0040, 0x1fba: 0x0040, 0x1fbb: 0x0040, + 0x1fbc: 0x0040, 0x1fbd: 0x0040, 0x1fbe: 0x0040, 0x1fbf: 0x0040, +} + +// idnaIndex: 36 blocks, 2304 entries, 4608 bytes +// Block 0 is the zero block. +var idnaIndex = [2304]uint16{ + // Block 0x0, offset 0x0 + // Block 0x1, offset 0x40 + // Block 0x2, offset 0x80 + // Block 0x3, offset 0xc0 + 0xc2: 0x01, 0xc3: 0x7d, 0xc4: 0x02, 0xc5: 0x03, 0xc6: 0x04, 0xc7: 0x05, + 0xc8: 0x06, 0xc9: 0x7e, 0xca: 0x7f, 0xcb: 0x07, 0xcc: 0x80, 0xcd: 0x08, 0xce: 0x09, 0xcf: 0x0a, + 0xd0: 0x81, 0xd1: 0x0b, 0xd2: 0x0c, 0xd3: 0x0d, 0xd4: 0x0e, 0xd5: 0x82, 0xd6: 0x83, 0xd7: 0x84, + 0xd8: 0x0f, 0xd9: 0x10, 0xda: 0x85, 0xdb: 0x11, 0xdc: 0x12, 0xdd: 0x86, 0xde: 0x87, 0xdf: 0x88, + 0xe0: 0x02, 0xe1: 0x03, 0xe2: 0x04, 0xe3: 0x05, 0xe4: 0x06, 0xe5: 0x07, 0xe6: 0x07, 0xe7: 0x07, + 0xe8: 0x07, 0xe9: 0x08, 0xea: 0x09, 0xeb: 0x07, 0xec: 0x07, 0xed: 0x0a, 0xee: 0x0b, 0xef: 0x0c, + 0xf0: 0x1d, 0xf1: 0x1e, 0xf2: 0x1e, 0xf3: 0x20, 0xf4: 0x21, + // Block 0x4, offset 0x100 + 0x120: 0x89, 0x121: 0x13, 0x122: 0x8a, 0x123: 0x8b, 0x124: 0x8c, 0x125: 0x14, 0x126: 0x15, 0x127: 0x16, + 0x128: 0x17, 0x129: 0x18, 0x12a: 0x19, 0x12b: 0x1a, 0x12c: 0x1b, 0x12d: 0x1c, 0x12e: 0x1d, 0x12f: 0x8d, + 0x130: 0x8e, 0x131: 0x1e, 0x132: 0x1f, 0x133: 0x20, 0x134: 0x8f, 0x135: 0x21, 0x136: 0x90, 0x137: 0x91, + 0x138: 0x92, 0x139: 0x93, 0x13a: 0x22, 0x13b: 0x94, 0x13c: 0x95, 0x13d: 0x23, 0x13e: 0x24, 0x13f: 0x96, + // Block 0x5, offset 0x140 + 0x140: 0x97, 0x141: 0x98, 0x142: 0x99, 0x143: 0x9a, 0x144: 0x9b, 0x145: 0x9c, 0x146: 0x9d, 0x147: 0x9e, + 0x148: 0x9f, 0x149: 0xa0, 0x14a: 0xa1, 0x14b: 0xa2, 0x14c: 0xa3, 0x14d: 0xa4, 0x14e: 0xa5, 0x14f: 0xa6, + 0x150: 0xa7, 0x151: 0x9f, 0x152: 0x9f, 0x153: 0x9f, 0x154: 0x9f, 0x155: 0x9f, 0x156: 0x9f, 0x157: 0x9f, + 0x158: 0x9f, 0x159: 0xa8, 0x15a: 0xa9, 0x15b: 0xaa, 0x15c: 0xab, 0x15d: 0xac, 0x15e: 0xad, 0x15f: 0xae, + 0x160: 0xaf, 0x161: 0xb0, 0x162: 0xb1, 0x163: 0xb2, 0x164: 0xb3, 0x165: 0xb4, 0x166: 0xb5, 0x167: 0xb6, + 0x168: 0xb7, 0x169: 0xb8, 0x16a: 0xb9, 0x16b: 0xba, 0x16c: 0xbb, 0x16d: 0xbc, 0x16e: 0xbd, 0x16f: 0xbe, + 0x170: 0xbf, 0x171: 0xc0, 0x172: 0xc1, 0x173: 0xc2, 0x174: 0x25, 0x175: 0x26, 0x176: 0x27, 0x177: 0xc3, + 0x178: 0x28, 0x179: 0x28, 0x17a: 0x29, 0x17b: 0x28, 0x17c: 0xc4, 0x17d: 0x2a, 0x17e: 0x2b, 0x17f: 0x2c, + // Block 0x6, offset 0x180 + 0x180: 0x2d, 0x181: 0x2e, 0x182: 0x2f, 0x183: 0xc5, 0x184: 0x30, 0x185: 0x31, 0x186: 0xc6, 0x187: 0x9b, + 0x188: 0xc7, 0x189: 0xc8, 0x18a: 0x9b, 0x18b: 0x9b, 0x18c: 0xc9, 0x18d: 0x9b, 0x18e: 0x9b, 0x18f: 0x9b, + 0x190: 0xca, 0x191: 0x32, 0x192: 0x33, 0x193: 0x34, 0x194: 0x9b, 0x195: 0x9b, 0x196: 0x9b, 0x197: 0x9b, + 0x198: 0x9b, 0x199: 0x9b, 0x19a: 0x9b, 0x19b: 0x9b, 0x19c: 0x9b, 0x19d: 0x9b, 0x19e: 0x9b, 0x19f: 0x9b, + 0x1a0: 0x9b, 0x1a1: 0x9b, 0x1a2: 0x9b, 0x1a3: 0x9b, 0x1a4: 0x9b, 0x1a5: 0x9b, 0x1a6: 0x9b, 0x1a7: 0x9b, + 0x1a8: 0xcb, 0x1a9: 0xcc, 0x1aa: 0x9b, 0x1ab: 0xcd, 0x1ac: 0x9b, 0x1ad: 0xce, 0x1ae: 0xcf, 0x1af: 0x9b, + 0x1b0: 0xd0, 0x1b1: 0x35, 0x1b2: 0x28, 0x1b3: 0x36, 0x1b4: 0xd1, 0x1b5: 0xd2, 0x1b6: 0xd3, 0x1b7: 0xd4, + 0x1b8: 0xd5, 0x1b9: 0xd6, 0x1ba: 0xd7, 0x1bb: 0xd8, 0x1bc: 0xd9, 0x1bd: 0xda, 0x1be: 0xdb, 0x1bf: 0x37, + // Block 0x7, offset 0x1c0 + 0x1c0: 0x38, 0x1c1: 0xdc, 0x1c2: 0xdd, 0x1c3: 0xde, 0x1c4: 0xdf, 0x1c5: 0x39, 0x1c6: 0x3a, 0x1c7: 0xe0, + 0x1c8: 0xe1, 0x1c9: 0x3b, 0x1ca: 0x3c, 0x1cb: 0x3d, 0x1cc: 0x3e, 0x1cd: 0x3f, 0x1ce: 0x40, 0x1cf: 0x41, + 0x1d0: 0x9f, 0x1d1: 0x9f, 0x1d2: 0x9f, 0x1d3: 0x9f, 0x1d4: 0x9f, 0x1d5: 0x9f, 0x1d6: 0x9f, 0x1d7: 0x9f, + 0x1d8: 0x9f, 0x1d9: 0x9f, 0x1da: 0x9f, 0x1db: 0x9f, 0x1dc: 0x9f, 0x1dd: 0x9f, 0x1de: 0x9f, 0x1df: 0x9f, + 0x1e0: 0x9f, 0x1e1: 0x9f, 0x1e2: 0x9f, 0x1e3: 0x9f, 0x1e4: 0x9f, 0x1e5: 0x9f, 0x1e6: 0x9f, 0x1e7: 0x9f, + 0x1e8: 0x9f, 0x1e9: 0x9f, 0x1ea: 0x9f, 0x1eb: 0x9f, 0x1ec: 0x9f, 0x1ed: 0x9f, 0x1ee: 0x9f, 0x1ef: 0x9f, + 0x1f0: 0x9f, 0x1f1: 0x9f, 0x1f2: 0x9f, 0x1f3: 0x9f, 0x1f4: 0x9f, 0x1f5: 0x9f, 0x1f6: 0x9f, 0x1f7: 0x9f, + 0x1f8: 0x9f, 0x1f9: 0x9f, 0x1fa: 0x9f, 0x1fb: 0x9f, 0x1fc: 0x9f, 0x1fd: 0x9f, 0x1fe: 0x9f, 0x1ff: 0x9f, + // Block 0x8, offset 0x200 + 0x200: 0x9f, 0x201: 0x9f, 0x202: 0x9f, 0x203: 0x9f, 0x204: 0x9f, 0x205: 0x9f, 0x206: 0x9f, 0x207: 0x9f, + 0x208: 0x9f, 0x209: 0x9f, 0x20a: 0x9f, 0x20b: 0x9f, 0x20c: 0x9f, 0x20d: 0x9f, 0x20e: 0x9f, 0x20f: 0x9f, + 0x210: 0x9f, 0x211: 0x9f, 0x212: 0x9f, 0x213: 0x9f, 0x214: 0x9f, 0x215: 0x9f, 0x216: 0x9f, 0x217: 0x9f, + 0x218: 0x9f, 0x219: 0x9f, 0x21a: 0x9f, 0x21b: 0x9f, 0x21c: 0x9f, 0x21d: 0x9f, 0x21e: 0x9f, 0x21f: 0x9f, + 0x220: 0x9f, 0x221: 0x9f, 0x222: 0x9f, 0x223: 0x9f, 0x224: 0x9f, 0x225: 0x9f, 0x226: 0x9f, 0x227: 0x9f, + 0x228: 0x9f, 0x229: 0x9f, 0x22a: 0x9f, 0x22b: 0x9f, 0x22c: 0x9f, 0x22d: 0x9f, 0x22e: 0x9f, 0x22f: 0x9f, + 0x230: 0x9f, 0x231: 0x9f, 0x232: 0x9f, 0x233: 0x9f, 0x234: 0x9f, 0x235: 0x9f, 0x236: 0xb2, 0x237: 0x9b, + 0x238: 0x9f, 0x239: 0x9f, 0x23a: 0x9f, 0x23b: 0x9f, 0x23c: 0x9f, 0x23d: 0x9f, 0x23e: 0x9f, 0x23f: 0x9f, + // Block 0x9, offset 0x240 + 0x240: 0x9f, 0x241: 0x9f, 0x242: 0x9f, 0x243: 0x9f, 0x244: 0x9f, 0x245: 0x9f, 0x246: 0x9f, 0x247: 0x9f, + 0x248: 0x9f, 0x249: 0x9f, 0x24a: 0x9f, 0x24b: 0x9f, 0x24c: 0x9f, 0x24d: 0x9f, 0x24e: 0x9f, 0x24f: 0x9f, + 0x250: 0x9f, 0x251: 0x9f, 0x252: 0x9f, 0x253: 0x9f, 0x254: 0x9f, 0x255: 0x9f, 0x256: 0x9f, 0x257: 0x9f, + 0x258: 0x9f, 0x259: 0x9f, 0x25a: 0x9f, 0x25b: 0x9f, 0x25c: 0x9f, 0x25d: 0x9f, 0x25e: 0x9f, 0x25f: 0x9f, + 0x260: 0x9f, 0x261: 0x9f, 0x262: 0x9f, 0x263: 0x9f, 0x264: 0x9f, 0x265: 0x9f, 0x266: 0x9f, 0x267: 0x9f, + 0x268: 0x9f, 0x269: 0x9f, 0x26a: 0x9f, 0x26b: 0x9f, 0x26c: 0x9f, 0x26d: 0x9f, 0x26e: 0x9f, 0x26f: 0x9f, + 0x270: 0x9f, 0x271: 0x9f, 0x272: 0x9f, 0x273: 0x9f, 0x274: 0x9f, 0x275: 0x9f, 0x276: 0x9f, 0x277: 0x9f, + 0x278: 0x9f, 0x279: 0x9f, 0x27a: 0x9f, 0x27b: 0x9f, 0x27c: 0x9f, 0x27d: 0x9f, 0x27e: 0x9f, 0x27f: 0x9f, + // Block 0xa, offset 0x280 + 0x280: 0x9f, 0x281: 0x9f, 0x282: 0x9f, 0x283: 0x9f, 0x284: 0x9f, 0x285: 0x9f, 0x286: 0x9f, 0x287: 0x9f, + 0x288: 0x9f, 0x289: 0x9f, 0x28a: 0x9f, 0x28b: 0x9f, 0x28c: 0x9f, 0x28d: 0x9f, 0x28e: 0x9f, 0x28f: 0x9f, + 0x290: 0x9f, 0x291: 0x9f, 0x292: 0x9f, 0x293: 0x9f, 0x294: 0x9f, 0x295: 0x9f, 0x296: 0x9f, 0x297: 0x9f, + 0x298: 0x9f, 0x299: 0x9f, 0x29a: 0x9f, 0x29b: 0x9f, 0x29c: 0x9f, 0x29d: 0x9f, 0x29e: 0x9f, 0x29f: 0x9f, + 0x2a0: 0x9f, 0x2a1: 0x9f, 0x2a2: 0x9f, 0x2a3: 0x9f, 0x2a4: 0x9f, 0x2a5: 0x9f, 0x2a6: 0x9f, 0x2a7: 0x9f, + 0x2a8: 0x9f, 0x2a9: 0x9f, 0x2aa: 0x9f, 0x2ab: 0x9f, 0x2ac: 0x9f, 0x2ad: 0x9f, 0x2ae: 0x9f, 0x2af: 0x9f, + 0x2b0: 0x9f, 0x2b1: 0x9f, 0x2b2: 0x9f, 0x2b3: 0x9f, 0x2b4: 0x9f, 0x2b5: 0x9f, 0x2b6: 0x9f, 0x2b7: 0x9f, + 0x2b8: 0x9f, 0x2b9: 0x9f, 0x2ba: 0x9f, 0x2bb: 0x9f, 0x2bc: 0x9f, 0x2bd: 0x9f, 0x2be: 0x9f, 0x2bf: 0xe2, + // Block 0xb, offset 0x2c0 + 0x2c0: 0x9f, 0x2c1: 0x9f, 0x2c2: 0x9f, 0x2c3: 0x9f, 0x2c4: 0x9f, 0x2c5: 0x9f, 0x2c6: 0x9f, 0x2c7: 0x9f, + 0x2c8: 0x9f, 0x2c9: 0x9f, 0x2ca: 0x9f, 0x2cb: 0x9f, 0x2cc: 0x9f, 0x2cd: 0x9f, 0x2ce: 0x9f, 0x2cf: 0x9f, + 0x2d0: 0x9f, 0x2d1: 0x9f, 0x2d2: 0xe3, 0x2d3: 0xe4, 0x2d4: 0x9f, 0x2d5: 0x9f, 0x2d6: 0x9f, 0x2d7: 0x9f, + 0x2d8: 0xe5, 0x2d9: 0x42, 0x2da: 0x43, 0x2db: 0xe6, 0x2dc: 0x44, 0x2dd: 0x45, 0x2de: 0x46, 0x2df: 0xe7, + 0x2e0: 0xe8, 0x2e1: 0xe9, 0x2e2: 0xea, 0x2e3: 0xeb, 0x2e4: 0xec, 0x2e5: 0xed, 0x2e6: 0xee, 0x2e7: 0xef, + 0x2e8: 0xf0, 0x2e9: 0xf1, 0x2ea: 0xf2, 0x2eb: 0xf3, 0x2ec: 0xf4, 0x2ed: 0xf5, 0x2ee: 0xf6, 0x2ef: 0xf7, + 0x2f0: 0x9f, 0x2f1: 0x9f, 0x2f2: 0x9f, 0x2f3: 0x9f, 0x2f4: 0x9f, 0x2f5: 0x9f, 0x2f6: 0x9f, 0x2f7: 0x9f, + 0x2f8: 0x9f, 0x2f9: 0x9f, 0x2fa: 0x9f, 0x2fb: 0x9f, 0x2fc: 0x9f, 0x2fd: 0x9f, 0x2fe: 0x9f, 0x2ff: 0x9f, + // Block 0xc, offset 0x300 + 0x300: 0x9f, 0x301: 0x9f, 0x302: 0x9f, 0x303: 0x9f, 0x304: 0x9f, 0x305: 0x9f, 0x306: 0x9f, 0x307: 0x9f, + 0x308: 0x9f, 0x309: 0x9f, 0x30a: 0x9f, 0x30b: 0x9f, 0x30c: 0x9f, 0x30d: 0x9f, 0x30e: 0x9f, 0x30f: 0x9f, + 0x310: 0x9f, 0x311: 0x9f, 0x312: 0x9f, 0x313: 0x9f, 0x314: 0x9f, 0x315: 0x9f, 0x316: 0x9f, 0x317: 0x9f, + 0x318: 0x9f, 0x319: 0x9f, 0x31a: 0x9f, 0x31b: 0x9f, 0x31c: 0x9f, 0x31d: 0x9f, 0x31e: 0xf8, 0x31f: 0xf9, + // Block 0xd, offset 0x340 + 0x340: 0xba, 0x341: 0xba, 0x342: 0xba, 0x343: 0xba, 0x344: 0xba, 0x345: 0xba, 0x346: 0xba, 0x347: 0xba, + 0x348: 0xba, 0x349: 0xba, 0x34a: 0xba, 0x34b: 0xba, 0x34c: 0xba, 0x34d: 0xba, 0x34e: 0xba, 0x34f: 0xba, + 0x350: 0xba, 0x351: 0xba, 0x352: 0xba, 0x353: 0xba, 0x354: 0xba, 0x355: 0xba, 0x356: 0xba, 0x357: 0xba, + 0x358: 0xba, 0x359: 0xba, 0x35a: 0xba, 0x35b: 0xba, 0x35c: 0xba, 0x35d: 0xba, 0x35e: 0xba, 0x35f: 0xba, + 0x360: 0xba, 0x361: 0xba, 0x362: 0xba, 0x363: 0xba, 0x364: 0xba, 0x365: 0xba, 0x366: 0xba, 0x367: 0xba, + 0x368: 0xba, 0x369: 0xba, 0x36a: 0xba, 0x36b: 0xba, 0x36c: 0xba, 0x36d: 0xba, 0x36e: 0xba, 0x36f: 0xba, + 0x370: 0xba, 0x371: 0xba, 0x372: 0xba, 0x373: 0xba, 0x374: 0xba, 0x375: 0xba, 0x376: 0xba, 0x377: 0xba, + 0x378: 0xba, 0x379: 0xba, 0x37a: 0xba, 0x37b: 0xba, 0x37c: 0xba, 0x37d: 0xba, 0x37e: 0xba, 0x37f: 0xba, + // Block 0xe, offset 0x380 + 0x380: 0xba, 0x381: 0xba, 0x382: 0xba, 0x383: 0xba, 0x384: 0xba, 0x385: 0xba, 0x386: 0xba, 0x387: 0xba, + 0x388: 0xba, 0x389: 0xba, 0x38a: 0xba, 0x38b: 0xba, 0x38c: 0xba, 0x38d: 0xba, 0x38e: 0xba, 0x38f: 0xba, + 0x390: 0xba, 0x391: 0xba, 0x392: 0xba, 0x393: 0xba, 0x394: 0xba, 0x395: 0xba, 0x396: 0xba, 0x397: 0xba, + 0x398: 0xba, 0x399: 0xba, 0x39a: 0xba, 0x39b: 0xba, 0x39c: 0xba, 0x39d: 0xba, 0x39e: 0xba, 0x39f: 0xba, + 0x3a0: 0xba, 0x3a1: 0xba, 0x3a2: 0xba, 0x3a3: 0xba, 0x3a4: 0xfa, 0x3a5: 0xfb, 0x3a6: 0xfc, 0x3a7: 0xfd, + 0x3a8: 0x47, 0x3a9: 0xfe, 0x3aa: 0xff, 0x3ab: 0x48, 0x3ac: 0x49, 0x3ad: 0x4a, 0x3ae: 0x4b, 0x3af: 0x4c, + 0x3b0: 0x100, 0x3b1: 0x4d, 0x3b2: 0x4e, 0x3b3: 0x4f, 0x3b4: 0x50, 0x3b5: 0x51, 0x3b6: 0x101, 0x3b7: 0x52, + 0x3b8: 0x53, 0x3b9: 0x54, 0x3ba: 0x55, 0x3bb: 0x56, 0x3bc: 0x57, 0x3bd: 0x58, 0x3be: 0x59, 0x3bf: 0x5a, + // Block 0xf, offset 0x3c0 + 0x3c0: 0x102, 0x3c1: 0x103, 0x3c2: 0x9f, 0x3c3: 0x104, 0x3c4: 0x105, 0x3c5: 0x9b, 0x3c6: 0x106, 0x3c7: 0x107, + 0x3c8: 0xba, 0x3c9: 0xba, 0x3ca: 0x108, 0x3cb: 0x109, 0x3cc: 0x10a, 0x3cd: 0x10b, 0x3ce: 0x10c, 0x3cf: 0x10d, + 0x3d0: 0x10e, 0x3d1: 0x9f, 0x3d2: 0x10f, 0x3d3: 0x110, 0x3d4: 0x111, 0x3d5: 0x112, 0x3d6: 0xba, 0x3d7: 0xba, + 0x3d8: 0x9f, 0x3d9: 0x9f, 0x3da: 0x9f, 0x3db: 0x9f, 0x3dc: 0x113, 0x3dd: 0x114, 0x3de: 0xba, 0x3df: 0xba, + 0x3e0: 0x115, 0x3e1: 0x116, 0x3e2: 0x117, 0x3e3: 0x118, 0x3e4: 0x119, 0x3e5: 0xba, 0x3e6: 0x11a, 0x3e7: 0x11b, + 0x3e8: 0x11c, 0x3e9: 0x11d, 0x3ea: 0x11e, 0x3eb: 0x5b, 0x3ec: 0x11f, 0x3ed: 0x120, 0x3ee: 0x5c, 0x3ef: 0xba, + 0x3f0: 0x121, 0x3f1: 0x122, 0x3f2: 0x123, 0x3f3: 0x124, 0x3f4: 0x125, 0x3f5: 0xba, 0x3f6: 0xba, 0x3f7: 0xba, + 0x3f8: 0xba, 0x3f9: 0x126, 0x3fa: 0xba, 0x3fb: 0xba, 0x3fc: 0x127, 0x3fd: 0x128, 0x3fe: 0xba, 0x3ff: 0x129, + // Block 0x10, offset 0x400 + 0x400: 0x12a, 0x401: 0x12b, 0x402: 0x12c, 0x403: 0x12d, 0x404: 0x12e, 0x405: 0x12f, 0x406: 0x130, 0x407: 0x131, + 0x408: 0x132, 0x409: 0xba, 0x40a: 0x133, 0x40b: 0x134, 0x40c: 0x5d, 0x40d: 0x5e, 0x40e: 0xba, 0x40f: 0xba, + 0x410: 0x135, 0x411: 0x136, 0x412: 0x137, 0x413: 0x138, 0x414: 0xba, 0x415: 0xba, 0x416: 0x139, 0x417: 0x13a, + 0x418: 0x13b, 0x419: 0x13c, 0x41a: 0x13d, 0x41b: 0x13e, 0x41c: 0x13f, 0x41d: 0xba, 0x41e: 0xba, 0x41f: 0xba, + 0x420: 0x140, 0x421: 0xba, 0x422: 0x141, 0x423: 0x142, 0x424: 0xba, 0x425: 0xba, 0x426: 0x143, 0x427: 0x144, + 0x428: 0x145, 0x429: 0x146, 0x42a: 0x147, 0x42b: 0x148, 0x42c: 0xba, 0x42d: 0xba, 0x42e: 0xba, 0x42f: 0xba, + 0x430: 0x149, 0x431: 0x14a, 0x432: 0x14b, 0x433: 0xba, 0x434: 0x14c, 0x435: 0x14d, 0x436: 0x14e, 0x437: 0xba, + 0x438: 0xba, 0x439: 0xba, 0x43a: 0xba, 0x43b: 0x14f, 0x43c: 0xba, 0x43d: 0xba, 0x43e: 0xba, 0x43f: 0x150, + // Block 0x11, offset 0x440 + 0x440: 0x9f, 0x441: 0x9f, 0x442: 0x9f, 0x443: 0x9f, 0x444: 0x9f, 0x445: 0x9f, 0x446: 0x9f, 0x447: 0x9f, + 0x448: 0x9f, 0x449: 0x9f, 0x44a: 0x9f, 0x44b: 0x9f, 0x44c: 0x9f, 0x44d: 0x9f, 0x44e: 0x151, 0x44f: 0xba, + 0x450: 0x9b, 0x451: 0x152, 0x452: 0x9f, 0x453: 0x9f, 0x454: 0x9f, 0x455: 0x153, 0x456: 0xba, 0x457: 0xba, + 0x458: 0xba, 0x459: 0xba, 0x45a: 0xba, 0x45b: 0xba, 0x45c: 0xba, 0x45d: 0xba, 0x45e: 0xba, 0x45f: 0xba, + 0x460: 0xba, 0x461: 0xba, 0x462: 0xba, 0x463: 0xba, 0x464: 0xba, 0x465: 0xba, 0x466: 0xba, 0x467: 0xba, + 0x468: 0xba, 0x469: 0xba, 0x46a: 0xba, 0x46b: 0xba, 0x46c: 0xba, 0x46d: 0xba, 0x46e: 0xba, 0x46f: 0xba, + 0x470: 0xba, 0x471: 0xba, 0x472: 0xba, 0x473: 0xba, 0x474: 0xba, 0x475: 0xba, 0x476: 0xba, 0x477: 0xba, + 0x478: 0xba, 0x479: 0xba, 0x47a: 0xba, 0x47b: 0xba, 0x47c: 0xba, 0x47d: 0xba, 0x47e: 0xba, 0x47f: 0xba, + // Block 0x12, offset 0x480 + 0x480: 0x9f, 0x481: 0x9f, 0x482: 0x9f, 0x483: 0x9f, 0x484: 0x9f, 0x485: 0x9f, 0x486: 0x9f, 0x487: 0x9f, + 0x488: 0x9f, 0x489: 0x9f, 0x48a: 0x9f, 0x48b: 0x9f, 0x48c: 0x9f, 0x48d: 0x9f, 0x48e: 0x9f, 0x48f: 0x9f, + 0x490: 0x154, 0x491: 0xba, 0x492: 0xba, 0x493: 0xba, 0x494: 0xba, 0x495: 0xba, 0x496: 0xba, 0x497: 0xba, + 0x498: 0xba, 0x499: 0xba, 0x49a: 0xba, 0x49b: 0xba, 0x49c: 0xba, 0x49d: 0xba, 0x49e: 0xba, 0x49f: 0xba, + 0x4a0: 0xba, 0x4a1: 0xba, 0x4a2: 0xba, 0x4a3: 0xba, 0x4a4: 0xba, 0x4a5: 0xba, 0x4a6: 0xba, 0x4a7: 0xba, + 0x4a8: 0xba, 0x4a9: 0xba, 0x4aa: 0xba, 0x4ab: 0xba, 0x4ac: 0xba, 0x4ad: 0xba, 0x4ae: 0xba, 0x4af: 0xba, + 0x4b0: 0xba, 0x4b1: 0xba, 0x4b2: 0xba, 0x4b3: 0xba, 0x4b4: 0xba, 0x4b5: 0xba, 0x4b6: 0xba, 0x4b7: 0xba, + 0x4b8: 0xba, 0x4b9: 0xba, 0x4ba: 0xba, 0x4bb: 0xba, 0x4bc: 0xba, 0x4bd: 0xba, 0x4be: 0xba, 0x4bf: 0xba, + // Block 0x13, offset 0x4c0 + 0x4c0: 0xba, 0x4c1: 0xba, 0x4c2: 0xba, 0x4c3: 0xba, 0x4c4: 0xba, 0x4c5: 0xba, 0x4c6: 0xba, 0x4c7: 0xba, + 0x4c8: 0xba, 0x4c9: 0xba, 0x4ca: 0xba, 0x4cb: 0xba, 0x4cc: 0xba, 0x4cd: 0xba, 0x4ce: 0xba, 0x4cf: 0xba, + 0x4d0: 0x9f, 0x4d1: 0x9f, 0x4d2: 0x9f, 0x4d3: 0x9f, 0x4d4: 0x9f, 0x4d5: 0x9f, 0x4d6: 0x9f, 0x4d7: 0x9f, + 0x4d8: 0x9f, 0x4d9: 0x155, 0x4da: 0xba, 0x4db: 0xba, 0x4dc: 0xba, 0x4dd: 0xba, 0x4de: 0xba, 0x4df: 0xba, + 0x4e0: 0xba, 0x4e1: 0xba, 0x4e2: 0xba, 0x4e3: 0xba, 0x4e4: 0xba, 0x4e5: 0xba, 0x4e6: 0xba, 0x4e7: 0xba, + 0x4e8: 0xba, 0x4e9: 0xba, 0x4ea: 0xba, 0x4eb: 0xba, 0x4ec: 0xba, 0x4ed: 0xba, 0x4ee: 0xba, 0x4ef: 0xba, + 0x4f0: 0xba, 0x4f1: 0xba, 0x4f2: 0xba, 0x4f3: 0xba, 0x4f4: 0xba, 0x4f5: 0xba, 0x4f6: 0xba, 0x4f7: 0xba, + 0x4f8: 0xba, 0x4f9: 0xba, 0x4fa: 0xba, 0x4fb: 0xba, 0x4fc: 0xba, 0x4fd: 0xba, 0x4fe: 0xba, 0x4ff: 0xba, + // Block 0x14, offset 0x500 + 0x500: 0xba, 0x501: 0xba, 0x502: 0xba, 0x503: 0xba, 0x504: 0xba, 0x505: 0xba, 0x506: 0xba, 0x507: 0xba, + 0x508: 0xba, 0x509: 0xba, 0x50a: 0xba, 0x50b: 0xba, 0x50c: 0xba, 0x50d: 0xba, 0x50e: 0xba, 0x50f: 0xba, + 0x510: 0xba, 0x511: 0xba, 0x512: 0xba, 0x513: 0xba, 0x514: 0xba, 0x515: 0xba, 0x516: 0xba, 0x517: 0xba, + 0x518: 0xba, 0x519: 0xba, 0x51a: 0xba, 0x51b: 0xba, 0x51c: 0xba, 0x51d: 0xba, 0x51e: 0xba, 0x51f: 0xba, + 0x520: 0x9f, 0x521: 0x9f, 0x522: 0x9f, 0x523: 0x9f, 0x524: 0x9f, 0x525: 0x9f, 0x526: 0x9f, 0x527: 0x9f, + 0x528: 0x148, 0x529: 0x156, 0x52a: 0xba, 0x52b: 0x157, 0x52c: 0x158, 0x52d: 0x159, 0x52e: 0x15a, 0x52f: 0xba, + 0x530: 0xba, 0x531: 0xba, 0x532: 0xba, 0x533: 0xba, 0x534: 0xba, 0x535: 0xba, 0x536: 0xba, 0x537: 0xba, + 0x538: 0xba, 0x539: 0x15b, 0x53a: 0x15c, 0x53b: 0xba, 0x53c: 0x9f, 0x53d: 0x15d, 0x53e: 0x15e, 0x53f: 0x15f, + // Block 0x15, offset 0x540 + 0x540: 0x9f, 0x541: 0x9f, 0x542: 0x9f, 0x543: 0x9f, 0x544: 0x9f, 0x545: 0x9f, 0x546: 0x9f, 0x547: 0x9f, + 0x548: 0x9f, 0x549: 0x9f, 0x54a: 0x9f, 0x54b: 0x9f, 0x54c: 0x9f, 0x54d: 0x9f, 0x54e: 0x9f, 0x54f: 0x9f, + 0x550: 0x9f, 0x551: 0x9f, 0x552: 0x9f, 0x553: 0x9f, 0x554: 0x9f, 0x555: 0x9f, 0x556: 0x9f, 0x557: 0x9f, + 0x558: 0x9f, 0x559: 0x9f, 0x55a: 0x9f, 0x55b: 0x9f, 0x55c: 0x9f, 0x55d: 0x9f, 0x55e: 0x9f, 0x55f: 0x160, + 0x560: 0x9f, 0x561: 0x9f, 0x562: 0x9f, 0x563: 0x9f, 0x564: 0x9f, 0x565: 0x9f, 0x566: 0x9f, 0x567: 0x9f, + 0x568: 0x9f, 0x569: 0x9f, 0x56a: 0x9f, 0x56b: 0x161, 0x56c: 0xba, 0x56d: 0xba, 0x56e: 0xba, 0x56f: 0xba, + 0x570: 0xba, 0x571: 0xba, 0x572: 0xba, 0x573: 0xba, 0x574: 0xba, 0x575: 0xba, 0x576: 0xba, 0x577: 0xba, + 0x578: 0xba, 0x579: 0xba, 0x57a: 0xba, 0x57b: 0xba, 0x57c: 0xba, 0x57d: 0xba, 0x57e: 0xba, 0x57f: 0xba, + // Block 0x16, offset 0x580 + 0x580: 0x9f, 0x581: 0x9f, 0x582: 0x9f, 0x583: 0x9f, 0x584: 0x162, 0x585: 0x163, 0x586: 0x9f, 0x587: 0x9f, + 0x588: 0x9f, 0x589: 0x9f, 0x58a: 0x9f, 0x58b: 0x164, 0x58c: 0xba, 0x58d: 0xba, 0x58e: 0xba, 0x58f: 0xba, + 0x590: 0xba, 0x591: 0xba, 0x592: 0xba, 0x593: 0xba, 0x594: 0xba, 0x595: 0xba, 0x596: 0xba, 0x597: 0xba, + 0x598: 0xba, 0x599: 0xba, 0x59a: 0xba, 0x59b: 0xba, 0x59c: 0xba, 0x59d: 0xba, 0x59e: 0xba, 0x59f: 0xba, + 0x5a0: 0xba, 0x5a1: 0xba, 0x5a2: 0xba, 0x5a3: 0xba, 0x5a4: 0xba, 0x5a5: 0xba, 0x5a6: 0xba, 0x5a7: 0xba, + 0x5a8: 0xba, 0x5a9: 0xba, 0x5aa: 0xba, 0x5ab: 0xba, 0x5ac: 0xba, 0x5ad: 0xba, 0x5ae: 0xba, 0x5af: 0xba, + 0x5b0: 0x9f, 0x5b1: 0x165, 0x5b2: 0x166, 0x5b3: 0xba, 0x5b4: 0xba, 0x5b5: 0xba, 0x5b6: 0xba, 0x5b7: 0xba, + 0x5b8: 0xba, 0x5b9: 0xba, 0x5ba: 0xba, 0x5bb: 0xba, 0x5bc: 0xba, 0x5bd: 0xba, 0x5be: 0xba, 0x5bf: 0xba, + // Block 0x17, offset 0x5c0 + 0x5c0: 0x9b, 0x5c1: 0x9b, 0x5c2: 0x9b, 0x5c3: 0x167, 0x5c4: 0x168, 0x5c5: 0x169, 0x5c6: 0x16a, 0x5c7: 0x16b, + 0x5c8: 0x9b, 0x5c9: 0x16c, 0x5ca: 0xba, 0x5cb: 0x16d, 0x5cc: 0x9b, 0x5cd: 0x16e, 0x5ce: 0xba, 0x5cf: 0xba, + 0x5d0: 0x5f, 0x5d1: 0x60, 0x5d2: 0x61, 0x5d3: 0x62, 0x5d4: 0x63, 0x5d5: 0x64, 0x5d6: 0x65, 0x5d7: 0x66, + 0x5d8: 0x67, 0x5d9: 0x68, 0x5da: 0x69, 0x5db: 0x6a, 0x5dc: 0x6b, 0x5dd: 0x6c, 0x5de: 0x6d, 0x5df: 0x6e, + 0x5e0: 0x9b, 0x5e1: 0x9b, 0x5e2: 0x9b, 0x5e3: 0x9b, 0x5e4: 0x9b, 0x5e5: 0x9b, 0x5e6: 0x9b, 0x5e7: 0x9b, + 0x5e8: 0x16f, 0x5e9: 0x170, 0x5ea: 0x171, 0x5eb: 0xba, 0x5ec: 0xba, 0x5ed: 0xba, 0x5ee: 0xba, 0x5ef: 0xba, + 0x5f0: 0xba, 0x5f1: 0xba, 0x5f2: 0xba, 0x5f3: 0xba, 0x5f4: 0xba, 0x5f5: 0xba, 0x5f6: 0xba, 0x5f7: 0xba, + 0x5f8: 0xba, 0x5f9: 0xba, 0x5fa: 0xba, 0x5fb: 0xba, 0x5fc: 0xba, 0x5fd: 0xba, 0x5fe: 0xba, 0x5ff: 0xba, + // Block 0x18, offset 0x600 + 0x600: 0x172, 0x601: 0xba, 0x602: 0xba, 0x603: 0xba, 0x604: 0x173, 0x605: 0x174, 0x606: 0xba, 0x607: 0xba, + 0x608: 0xba, 0x609: 0xba, 0x60a: 0xba, 0x60b: 0x175, 0x60c: 0xba, 0x60d: 0xba, 0x60e: 0xba, 0x60f: 0xba, + 0x610: 0xba, 0x611: 0xba, 0x612: 0xba, 0x613: 0xba, 0x614: 0xba, 0x615: 0xba, 0x616: 0xba, 0x617: 0xba, + 0x618: 0xba, 0x619: 0xba, 0x61a: 0xba, 0x61b: 0xba, 0x61c: 0xba, 0x61d: 0xba, 0x61e: 0xba, 0x61f: 0xba, + 0x620: 0x121, 0x621: 0x121, 0x622: 0x121, 0x623: 0x176, 0x624: 0x6f, 0x625: 0x177, 0x626: 0xba, 0x627: 0xba, + 0x628: 0xba, 0x629: 0xba, 0x62a: 0xba, 0x62b: 0xba, 0x62c: 0xba, 0x62d: 0xba, 0x62e: 0xba, 0x62f: 0xba, + 0x630: 0xba, 0x631: 0x178, 0x632: 0x179, 0x633: 0xba, 0x634: 0x17a, 0x635: 0xba, 0x636: 0xba, 0x637: 0xba, + 0x638: 0x70, 0x639: 0x71, 0x63a: 0x72, 0x63b: 0x17b, 0x63c: 0xba, 0x63d: 0xba, 0x63e: 0xba, 0x63f: 0xba, + // Block 0x19, offset 0x640 + 0x640: 0x17c, 0x641: 0x9b, 0x642: 0x17d, 0x643: 0x17e, 0x644: 0x73, 0x645: 0x74, 0x646: 0x17f, 0x647: 0x180, + 0x648: 0x75, 0x649: 0x181, 0x64a: 0xba, 0x64b: 0xba, 0x64c: 0x9b, 0x64d: 0x9b, 0x64e: 0x9b, 0x64f: 0x9b, + 0x650: 0x9b, 0x651: 0x9b, 0x652: 0x9b, 0x653: 0x9b, 0x654: 0x9b, 0x655: 0x9b, 0x656: 0x9b, 0x657: 0x9b, + 0x658: 0x9b, 0x659: 0x9b, 0x65a: 0x9b, 0x65b: 0x182, 0x65c: 0x9b, 0x65d: 0x183, 0x65e: 0x9b, 0x65f: 0x184, + 0x660: 0x185, 0x661: 0x186, 0x662: 0x187, 0x663: 0xba, 0x664: 0x188, 0x665: 0x189, 0x666: 0x18a, 0x667: 0x18b, + 0x668: 0x9b, 0x669: 0x18c, 0x66a: 0x18d, 0x66b: 0xba, 0x66c: 0xba, 0x66d: 0xba, 0x66e: 0xba, 0x66f: 0xba, + 0x670: 0xba, 0x671: 0xba, 0x672: 0xba, 0x673: 0xba, 0x674: 0xba, 0x675: 0xba, 0x676: 0xba, 0x677: 0xba, + 0x678: 0xba, 0x679: 0xba, 0x67a: 0xba, 0x67b: 0xba, 0x67c: 0xba, 0x67d: 0xba, 0x67e: 0xba, 0x67f: 0xba, + // Block 0x1a, offset 0x680 + 0x680: 0x9f, 0x681: 0x9f, 0x682: 0x9f, 0x683: 0x9f, 0x684: 0x9f, 0x685: 0x9f, 0x686: 0x9f, 0x687: 0x9f, + 0x688: 0x9f, 0x689: 0x9f, 0x68a: 0x9f, 0x68b: 0x9f, 0x68c: 0x9f, 0x68d: 0x9f, 0x68e: 0x9f, 0x68f: 0x9f, + 0x690: 0x9f, 0x691: 0x9f, 0x692: 0x9f, 0x693: 0x9f, 0x694: 0x9f, 0x695: 0x9f, 0x696: 0x9f, 0x697: 0x9f, + 0x698: 0x9f, 0x699: 0x9f, 0x69a: 0x9f, 0x69b: 0x18e, 0x69c: 0x9f, 0x69d: 0x9f, 0x69e: 0x9f, 0x69f: 0x9f, + 0x6a0: 0x9f, 0x6a1: 0x9f, 0x6a2: 0x9f, 0x6a3: 0x9f, 0x6a4: 0x9f, 0x6a5: 0x9f, 0x6a6: 0x9f, 0x6a7: 0x9f, + 0x6a8: 0x9f, 0x6a9: 0x9f, 0x6aa: 0x9f, 0x6ab: 0x9f, 0x6ac: 0x9f, 0x6ad: 0x9f, 0x6ae: 0x9f, 0x6af: 0x9f, + 0x6b0: 0x9f, 0x6b1: 0x9f, 0x6b2: 0x9f, 0x6b3: 0x9f, 0x6b4: 0x9f, 0x6b5: 0x9f, 0x6b6: 0x9f, 0x6b7: 0x9f, + 0x6b8: 0x9f, 0x6b9: 0x9f, 0x6ba: 0x9f, 0x6bb: 0x9f, 0x6bc: 0x9f, 0x6bd: 0x9f, 0x6be: 0x9f, 0x6bf: 0x9f, + // Block 0x1b, offset 0x6c0 + 0x6c0: 0x9f, 0x6c1: 0x9f, 0x6c2: 0x9f, 0x6c3: 0x9f, 0x6c4: 0x9f, 0x6c5: 0x9f, 0x6c6: 0x9f, 0x6c7: 0x9f, + 0x6c8: 0x9f, 0x6c9: 0x9f, 0x6ca: 0x9f, 0x6cb: 0x9f, 0x6cc: 0x9f, 0x6cd: 0x9f, 0x6ce: 0x9f, 0x6cf: 0x9f, + 0x6d0: 0x9f, 0x6d1: 0x9f, 0x6d2: 0x9f, 0x6d3: 0x9f, 0x6d4: 0x9f, 0x6d5: 0x9f, 0x6d6: 0x9f, 0x6d7: 0x9f, + 0x6d8: 0x9f, 0x6d9: 0x9f, 0x6da: 0x9f, 0x6db: 0x9f, 0x6dc: 0x18f, 0x6dd: 0x9f, 0x6de: 0x9f, 0x6df: 0x9f, + 0x6e0: 0x190, 0x6e1: 0x9f, 0x6e2: 0x9f, 0x6e3: 0x9f, 0x6e4: 0x9f, 0x6e5: 0x9f, 0x6e6: 0x9f, 0x6e7: 0x9f, + 0x6e8: 0x9f, 0x6e9: 0x9f, 0x6ea: 0x9f, 0x6eb: 0x9f, 0x6ec: 0x9f, 0x6ed: 0x9f, 0x6ee: 0x9f, 0x6ef: 0x9f, + 0x6f0: 0x9f, 0x6f1: 0x9f, 0x6f2: 0x9f, 0x6f3: 0x9f, 0x6f4: 0x9f, 0x6f5: 0x9f, 0x6f6: 0x9f, 0x6f7: 0x9f, + 0x6f8: 0x9f, 0x6f9: 0x9f, 0x6fa: 0x9f, 0x6fb: 0x9f, 0x6fc: 0x9f, 0x6fd: 0x9f, 0x6fe: 0x9f, 0x6ff: 0x9f, + // Block 0x1c, offset 0x700 + 0x700: 0x9f, 0x701: 0x9f, 0x702: 0x9f, 0x703: 0x9f, 0x704: 0x9f, 0x705: 0x9f, 0x706: 0x9f, 0x707: 0x9f, + 0x708: 0x9f, 0x709: 0x9f, 0x70a: 0x9f, 0x70b: 0x9f, 0x70c: 0x9f, 0x70d: 0x9f, 0x70e: 0x9f, 0x70f: 0x9f, + 0x710: 0x9f, 0x711: 0x9f, 0x712: 0x9f, 0x713: 0x9f, 0x714: 0x9f, 0x715: 0x9f, 0x716: 0x9f, 0x717: 0x9f, + 0x718: 0x9f, 0x719: 0x9f, 0x71a: 0x9f, 0x71b: 0x9f, 0x71c: 0x9f, 0x71d: 0x9f, 0x71e: 0x9f, 0x71f: 0x9f, + 0x720: 0x9f, 0x721: 0x9f, 0x722: 0x9f, 0x723: 0x9f, 0x724: 0x9f, 0x725: 0x9f, 0x726: 0x9f, 0x727: 0x9f, + 0x728: 0x9f, 0x729: 0x9f, 0x72a: 0x9f, 0x72b: 0x9f, 0x72c: 0x9f, 0x72d: 0x9f, 0x72e: 0x9f, 0x72f: 0x9f, + 0x730: 0x9f, 0x731: 0x9f, 0x732: 0x9f, 0x733: 0x9f, 0x734: 0x9f, 0x735: 0x9f, 0x736: 0x9f, 0x737: 0x9f, + 0x738: 0x9f, 0x739: 0x9f, 0x73a: 0x191, 0x73b: 0x9f, 0x73c: 0x9f, 0x73d: 0x9f, 0x73e: 0x9f, 0x73f: 0x9f, + // Block 0x1d, offset 0x740 + 0x740: 0x9f, 0x741: 0x9f, 0x742: 0x9f, 0x743: 0x9f, 0x744: 0x9f, 0x745: 0x9f, 0x746: 0x9f, 0x747: 0x9f, + 0x748: 0x9f, 0x749: 0x9f, 0x74a: 0x9f, 0x74b: 0x9f, 0x74c: 0x9f, 0x74d: 0x9f, 0x74e: 0x9f, 0x74f: 0x9f, + 0x750: 0x9f, 0x751: 0x9f, 0x752: 0x9f, 0x753: 0x9f, 0x754: 0x9f, 0x755: 0x9f, 0x756: 0x9f, 0x757: 0x9f, + 0x758: 0x9f, 0x759: 0x9f, 0x75a: 0x9f, 0x75b: 0x9f, 0x75c: 0x9f, 0x75d: 0x9f, 0x75e: 0x9f, 0x75f: 0x9f, + 0x760: 0x9f, 0x761: 0x9f, 0x762: 0x9f, 0x763: 0x9f, 0x764: 0x9f, 0x765: 0x9f, 0x766: 0x9f, 0x767: 0x9f, + 0x768: 0x9f, 0x769: 0x9f, 0x76a: 0x9f, 0x76b: 0x9f, 0x76c: 0x9f, 0x76d: 0x9f, 0x76e: 0x9f, 0x76f: 0x192, + 0x770: 0xba, 0x771: 0xba, 0x772: 0xba, 0x773: 0xba, 0x774: 0xba, 0x775: 0xba, 0x776: 0xba, 0x777: 0xba, + 0x778: 0xba, 0x779: 0xba, 0x77a: 0xba, 0x77b: 0xba, 0x77c: 0xba, 0x77d: 0xba, 0x77e: 0xba, 0x77f: 0xba, + // Block 0x1e, offset 0x780 + 0x780: 0xba, 0x781: 0xba, 0x782: 0xba, 0x783: 0xba, 0x784: 0xba, 0x785: 0xba, 0x786: 0xba, 0x787: 0xba, + 0x788: 0xba, 0x789: 0xba, 0x78a: 0xba, 0x78b: 0xba, 0x78c: 0xba, 0x78d: 0xba, 0x78e: 0xba, 0x78f: 0xba, + 0x790: 0xba, 0x791: 0xba, 0x792: 0xba, 0x793: 0xba, 0x794: 0xba, 0x795: 0xba, 0x796: 0xba, 0x797: 0xba, + 0x798: 0xba, 0x799: 0xba, 0x79a: 0xba, 0x79b: 0xba, 0x79c: 0xba, 0x79d: 0xba, 0x79e: 0xba, 0x79f: 0xba, + 0x7a0: 0x76, 0x7a1: 0x77, 0x7a2: 0x78, 0x7a3: 0x193, 0x7a4: 0x79, 0x7a5: 0x7a, 0x7a6: 0x194, 0x7a7: 0x7b, + 0x7a8: 0x7c, 0x7a9: 0xba, 0x7aa: 0xba, 0x7ab: 0xba, 0x7ac: 0xba, 0x7ad: 0xba, 0x7ae: 0xba, 0x7af: 0xba, + 0x7b0: 0xba, 0x7b1: 0xba, 0x7b2: 0xba, 0x7b3: 0xba, 0x7b4: 0xba, 0x7b5: 0xba, 0x7b6: 0xba, 0x7b7: 0xba, + 0x7b8: 0xba, 0x7b9: 0xba, 0x7ba: 0xba, 0x7bb: 0xba, 0x7bc: 0xba, 0x7bd: 0xba, 0x7be: 0xba, 0x7bf: 0xba, + // Block 0x1f, offset 0x7c0 + 0x7d0: 0x0d, 0x7d1: 0x0e, 0x7d2: 0x0f, 0x7d3: 0x10, 0x7d4: 0x11, 0x7d5: 0x0b, 0x7d6: 0x12, 0x7d7: 0x07, + 0x7d8: 0x13, 0x7d9: 0x0b, 0x7da: 0x0b, 0x7db: 0x14, 0x7dc: 0x0b, 0x7dd: 0x15, 0x7de: 0x16, 0x7df: 0x17, + 0x7e0: 0x07, 0x7e1: 0x07, 0x7e2: 0x07, 0x7e3: 0x07, 0x7e4: 0x07, 0x7e5: 0x07, 0x7e6: 0x07, 0x7e7: 0x07, + 0x7e8: 0x07, 0x7e9: 0x07, 0x7ea: 0x18, 0x7eb: 0x19, 0x7ec: 0x1a, 0x7ed: 0x07, 0x7ee: 0x1b, 0x7ef: 0x1c, + 0x7f0: 0x0b, 0x7f1: 0x0b, 0x7f2: 0x0b, 0x7f3: 0x0b, 0x7f4: 0x0b, 0x7f5: 0x0b, 0x7f6: 0x0b, 0x7f7: 0x0b, + 0x7f8: 0x0b, 0x7f9: 0x0b, 0x7fa: 0x0b, 0x7fb: 0x0b, 0x7fc: 0x0b, 0x7fd: 0x0b, 0x7fe: 0x0b, 0x7ff: 0x0b, + // Block 0x20, offset 0x800 + 0x800: 0x0b, 0x801: 0x0b, 0x802: 0x0b, 0x803: 0x0b, 0x804: 0x0b, 0x805: 0x0b, 0x806: 0x0b, 0x807: 0x0b, + 0x808: 0x0b, 0x809: 0x0b, 0x80a: 0x0b, 0x80b: 0x0b, 0x80c: 0x0b, 0x80d: 0x0b, 0x80e: 0x0b, 0x80f: 0x0b, + 0x810: 0x0b, 0x811: 0x0b, 0x812: 0x0b, 0x813: 0x0b, 0x814: 0x0b, 0x815: 0x0b, 0x816: 0x0b, 0x817: 0x0b, + 0x818: 0x0b, 0x819: 0x0b, 0x81a: 0x0b, 0x81b: 0x0b, 0x81c: 0x0b, 0x81d: 0x0b, 0x81e: 0x0b, 0x81f: 0x0b, + 0x820: 0x0b, 0x821: 0x0b, 0x822: 0x0b, 0x823: 0x0b, 0x824: 0x0b, 0x825: 0x0b, 0x826: 0x0b, 0x827: 0x0b, + 0x828: 0x0b, 0x829: 0x0b, 0x82a: 0x0b, 0x82b: 0x0b, 0x82c: 0x0b, 0x82d: 0x0b, 0x82e: 0x0b, 0x82f: 0x0b, + 0x830: 0x0b, 0x831: 0x0b, 0x832: 0x0b, 0x833: 0x0b, 0x834: 0x0b, 0x835: 0x0b, 0x836: 0x0b, 0x837: 0x0b, + 0x838: 0x0b, 0x839: 0x0b, 0x83a: 0x0b, 0x83b: 0x0b, 0x83c: 0x0b, 0x83d: 0x0b, 0x83e: 0x0b, 0x83f: 0x0b, + // Block 0x21, offset 0x840 + 0x840: 0x195, 0x841: 0x196, 0x842: 0xba, 0x843: 0xba, 0x844: 0x197, 0x845: 0x197, 0x846: 0x197, 0x847: 0x198, + 0x848: 0xba, 0x849: 0xba, 0x84a: 0xba, 0x84b: 0xba, 0x84c: 0xba, 0x84d: 0xba, 0x84e: 0xba, 0x84f: 0xba, + 0x850: 0xba, 0x851: 0xba, 0x852: 0xba, 0x853: 0xba, 0x854: 0xba, 0x855: 0xba, 0x856: 0xba, 0x857: 0xba, + 0x858: 0xba, 0x859: 0xba, 0x85a: 0xba, 0x85b: 0xba, 0x85c: 0xba, 0x85d: 0xba, 0x85e: 0xba, 0x85f: 0xba, + 0x860: 0xba, 0x861: 0xba, 0x862: 0xba, 0x863: 0xba, 0x864: 0xba, 0x865: 0xba, 0x866: 0xba, 0x867: 0xba, + 0x868: 0xba, 0x869: 0xba, 0x86a: 0xba, 0x86b: 0xba, 0x86c: 0xba, 0x86d: 0xba, 0x86e: 0xba, 0x86f: 0xba, + 0x870: 0xba, 0x871: 0xba, 0x872: 0xba, 0x873: 0xba, 0x874: 0xba, 0x875: 0xba, 0x876: 0xba, 0x877: 0xba, + 0x878: 0xba, 0x879: 0xba, 0x87a: 0xba, 0x87b: 0xba, 0x87c: 0xba, 0x87d: 0xba, 0x87e: 0xba, 0x87f: 0xba, + // Block 0x22, offset 0x880 + 0x880: 0x0b, 0x881: 0x0b, 0x882: 0x0b, 0x883: 0x0b, 0x884: 0x0b, 0x885: 0x0b, 0x886: 0x0b, 0x887: 0x0b, + 0x888: 0x0b, 0x889: 0x0b, 0x88a: 0x0b, 0x88b: 0x0b, 0x88c: 0x0b, 0x88d: 0x0b, 0x88e: 0x0b, 0x88f: 0x0b, + 0x890: 0x0b, 0x891: 0x0b, 0x892: 0x0b, 0x893: 0x0b, 0x894: 0x0b, 0x895: 0x0b, 0x896: 0x0b, 0x897: 0x0b, + 0x898: 0x0b, 0x899: 0x0b, 0x89a: 0x0b, 0x89b: 0x0b, 0x89c: 0x0b, 0x89d: 0x0b, 0x89e: 0x0b, 0x89f: 0x0b, + 0x8a0: 0x1f, 0x8a1: 0x0b, 0x8a2: 0x0b, 0x8a3: 0x0b, 0x8a4: 0x0b, 0x8a5: 0x0b, 0x8a6: 0x0b, 0x8a7: 0x0b, + 0x8a8: 0x0b, 0x8a9: 0x0b, 0x8aa: 0x0b, 0x8ab: 0x0b, 0x8ac: 0x0b, 0x8ad: 0x0b, 0x8ae: 0x0b, 0x8af: 0x0b, + 0x8b0: 0x0b, 0x8b1: 0x0b, 0x8b2: 0x0b, 0x8b3: 0x0b, 0x8b4: 0x0b, 0x8b5: 0x0b, 0x8b6: 0x0b, 0x8b7: 0x0b, + 0x8b8: 0x0b, 0x8b9: 0x0b, 0x8ba: 0x0b, 0x8bb: 0x0b, 0x8bc: 0x0b, 0x8bd: 0x0b, 0x8be: 0x0b, 0x8bf: 0x0b, + // Block 0x23, offset 0x8c0 + 0x8c0: 0x0b, 0x8c1: 0x0b, 0x8c2: 0x0b, 0x8c3: 0x0b, 0x8c4: 0x0b, 0x8c5: 0x0b, 0x8c6: 0x0b, 0x8c7: 0x0b, + 0x8c8: 0x0b, 0x8c9: 0x0b, 0x8ca: 0x0b, 0x8cb: 0x0b, 0x8cc: 0x0b, 0x8cd: 0x0b, 0x8ce: 0x0b, 0x8cf: 0x0b, +} + +// idnaSparseOffset: 284 entries, 568 bytes +var idnaSparseOffset = []uint16{0x0, 0x8, 0x19, 0x25, 0x27, 0x2c, 0x33, 0x3e, 0x4a, 0x4e, 0x5d, 0x62, 0x6c, 0x78, 0x86, 0x8b, 0x94, 0xa4, 0xb2, 0xbe, 0xca, 0xdb, 0xe5, 0xec, 0xf9, 0x10a, 0x111, 0x11c, 0x12b, 0x139, 0x143, 0x145, 0x14a, 0x14d, 0x150, 0x152, 0x15e, 0x169, 0x171, 0x177, 0x17d, 0x182, 0x187, 0x18a, 0x18e, 0x194, 0x199, 0x1a5, 0x1af, 0x1b5, 0x1c6, 0x1d0, 0x1d3, 0x1db, 0x1de, 0x1eb, 0x1f3, 0x1f7, 0x1fe, 0x206, 0x216, 0x222, 0x224, 0x22e, 0x23a, 0x246, 0x252, 0x25a, 0x25f, 0x26c, 0x27d, 0x281, 0x28c, 0x290, 0x299, 0x2a1, 0x2a7, 0x2ac, 0x2af, 0x2b3, 0x2b9, 0x2bd, 0x2c1, 0x2c5, 0x2cb, 0x2d3, 0x2da, 0x2e5, 0x2ef, 0x2f3, 0x2f6, 0x2fc, 0x300, 0x302, 0x305, 0x307, 0x30a, 0x314, 0x317, 0x326, 0x32a, 0x32f, 0x332, 0x336, 0x33b, 0x340, 0x346, 0x352, 0x361, 0x367, 0x36b, 0x37a, 0x37f, 0x387, 0x391, 0x39c, 0x3a4, 0x3b5, 0x3be, 0x3ce, 0x3db, 0x3e5, 0x3ea, 0x3f7, 0x3fb, 0x400, 0x402, 0x406, 0x408, 0x40c, 0x415, 0x41b, 0x41f, 0x42f, 0x439, 0x43e, 0x441, 0x447, 0x44e, 0x453, 0x457, 0x45d, 0x462, 0x46b, 0x470, 0x476, 0x47d, 0x484, 0x48b, 0x48f, 0x494, 0x497, 0x49c, 0x4a8, 0x4ae, 0x4b3, 0x4ba, 0x4c2, 0x4c7, 0x4cb, 0x4db, 0x4e2, 0x4e6, 0x4ea, 0x4f1, 0x4f3, 0x4f6, 0x4f9, 0x4fd, 0x506, 0x50a, 0x512, 0x51a, 0x51e, 0x524, 0x52d, 0x539, 0x540, 0x549, 0x553, 0x55a, 0x568, 0x575, 0x582, 0x58b, 0x58f, 0x59f, 0x5a7, 0x5b2, 0x5bb, 0x5c1, 0x5c9, 0x5d2, 0x5dd, 0x5e0, 0x5ec, 0x5f5, 0x5f8, 0x5fd, 0x602, 0x60f, 0x61a, 0x623, 0x62d, 0x630, 0x63a, 0x643, 0x64f, 0x65c, 0x669, 0x677, 0x67e, 0x682, 0x685, 0x68a, 0x68d, 0x692, 0x695, 0x69c, 0x6a3, 0x6a7, 0x6b2, 0x6b5, 0x6b8, 0x6bb, 0x6c1, 0x6c7, 0x6cd, 0x6d0, 0x6d3, 0x6d6, 0x6dd, 0x6e0, 0x6e5, 0x6ef, 0x6f2, 0x6f6, 0x705, 0x711, 0x715, 0x71a, 0x71e, 0x723, 0x727, 0x72c, 0x735, 0x740, 0x746, 0x74c, 0x752, 0x758, 0x761, 0x764, 0x767, 0x76b, 0x76f, 0x773, 0x779, 0x77f, 0x784, 0x787, 0x797, 0x79e, 0x7a1, 0x7a6, 0x7aa, 0x7b0, 0x7b5, 0x7b9, 0x7bf, 0x7c5, 0x7c9, 0x7d2, 0x7d7, 0x7da, 0x7dd, 0x7e1, 0x7e5, 0x7e8, 0x7f8, 0x809, 0x80e, 0x810, 0x812} + +// idnaSparseValues: 2069 entries, 8276 bytes +var idnaSparseValues = [2069]valueRange{ + // Block 0x0, offset 0x0 + {value: 0x0000, lo: 0x07}, + {value: 0xe105, lo: 0x80, hi: 0x96}, + {value: 0x0018, lo: 0x97, hi: 0x97}, + {value: 0xe105, lo: 0x98, hi: 0x9e}, + {value: 0x001f, lo: 0x9f, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xb6}, + {value: 0x0018, lo: 0xb7, hi: 0xb7}, + {value: 0x0008, lo: 0xb8, hi: 0xbf}, + // Block 0x1, offset 0x8 + {value: 0x0000, lo: 0x10}, + {value: 0x0008, lo: 0x80, hi: 0x80}, + {value: 0xe01d, lo: 0x81, hi: 0x81}, + {value: 0x0008, lo: 0x82, hi: 0x82}, + {value: 0x0335, lo: 0x83, hi: 0x83}, + {value: 0x034d, lo: 0x84, hi: 0x84}, + {value: 0x0365, lo: 0x85, hi: 0x85}, + {value: 0xe00d, lo: 0x86, hi: 0x86}, + {value: 0x0008, lo: 0x87, hi: 0x87}, + {value: 0xe00d, lo: 0x88, hi: 0x88}, + {value: 0x0008, lo: 0x89, hi: 0x89}, + {value: 0xe00d, lo: 0x8a, hi: 0x8a}, + {value: 0x0008, lo: 0x8b, hi: 0x8b}, + {value: 0xe00d, lo: 0x8c, hi: 0x8c}, + {value: 0x0008, lo: 0x8d, hi: 0x8d}, + {value: 0xe00d, lo: 0x8e, hi: 0x8e}, + {value: 0x0008, lo: 0x8f, hi: 0xbf}, + // Block 0x2, offset 0x19 + {value: 0x0000, lo: 0x0b}, + {value: 0x0008, lo: 0x80, hi: 0xaf}, + {value: 0x0249, lo: 0xb0, hi: 0xb0}, + {value: 0x037d, lo: 0xb1, hi: 0xb1}, + {value: 0x0259, lo: 0xb2, hi: 0xb2}, + {value: 0x0269, lo: 0xb3, hi: 0xb3}, + {value: 0x034d, lo: 0xb4, hi: 0xb4}, + {value: 0x0395, lo: 0xb5, hi: 0xb5}, + {value: 0xe1bd, lo: 0xb6, hi: 0xb6}, + {value: 0x0279, lo: 0xb7, hi: 0xb7}, + {value: 0x0289, lo: 0xb8, hi: 0xb8}, + {value: 0x0008, lo: 0xb9, hi: 0xbf}, + // Block 0x3, offset 0x25 + {value: 0x0000, lo: 0x01}, + {value: 0x3308, lo: 0x80, hi: 0xbf}, + // Block 0x4, offset 0x27 + {value: 0x0000, lo: 0x04}, + {value: 0x03f5, lo: 0x80, hi: 0x8f}, + {value: 0xe105, lo: 0x90, hi: 0x9f}, + {value: 0x049d, lo: 0xa0, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbf}, + // Block 0x5, offset 0x2c + {value: 0x0000, lo: 0x06}, + {value: 0xe185, lo: 0x80, hi: 0x8f}, + {value: 0x0545, lo: 0x90, hi: 0x96}, + {value: 0x0040, lo: 0x97, hi: 0x98}, + {value: 0x0008, lo: 0x99, hi: 0x99}, + {value: 0x0018, lo: 0x9a, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xbf}, + // Block 0x6, offset 0x33 + {value: 0x0000, lo: 0x0a}, + {value: 0x0008, lo: 0x80, hi: 0x86}, + {value: 0x0401, lo: 0x87, hi: 0x87}, + {value: 0x0008, lo: 0x88, hi: 0x88}, + {value: 0x0018, lo: 0x89, hi: 0x8a}, + {value: 0x0040, lo: 0x8b, hi: 0x8c}, + {value: 0x0018, lo: 0x8d, hi: 0x8f}, + {value: 0x0040, lo: 0x90, hi: 0x90}, + {value: 0x3308, lo: 0x91, hi: 0xbd}, + {value: 0x0818, lo: 0xbe, hi: 0xbe}, + {value: 0x3308, lo: 0xbf, hi: 0xbf}, + // Block 0x7, offset 0x3e + {value: 0x0000, lo: 0x0b}, + {value: 0x0818, lo: 0x80, hi: 0x80}, + {value: 0x3308, lo: 0x81, hi: 0x82}, + {value: 0x0818, lo: 0x83, hi: 0x83}, + {value: 0x3308, lo: 0x84, hi: 0x85}, + {value: 0x0818, lo: 0x86, hi: 0x86}, + {value: 0x3308, lo: 0x87, hi: 0x87}, + {value: 0x0040, lo: 0x88, hi: 0x8f}, + {value: 0x0808, lo: 0x90, hi: 0xaa}, + {value: 0x0040, lo: 0xab, hi: 0xae}, + {value: 0x0808, lo: 0xaf, hi: 0xb4}, + {value: 0x0040, lo: 0xb5, hi: 0xbf}, + // Block 0x8, offset 0x4a + {value: 0x0000, lo: 0x03}, + {value: 0x0a08, lo: 0x80, hi: 0x87}, + {value: 0x0c08, lo: 0x88, hi: 0x99}, + {value: 0x0a08, lo: 0x9a, hi: 0xbf}, + // Block 0x9, offset 0x4e + {value: 0x0000, lo: 0x0e}, + {value: 0x3308, lo: 0x80, hi: 0x8a}, + {value: 0x0040, lo: 0x8b, hi: 0x8c}, + {value: 0x0c08, lo: 0x8d, hi: 0x8d}, + {value: 0x0a08, lo: 0x8e, hi: 0x98}, + {value: 0x0c08, lo: 0x99, hi: 0x9b}, + {value: 0x0a08, lo: 0x9c, hi: 0xaa}, + {value: 0x0c08, lo: 0xab, hi: 0xac}, + {value: 0x0a08, lo: 0xad, hi: 0xb0}, + {value: 0x0c08, lo: 0xb1, hi: 0xb1}, + {value: 0x0a08, lo: 0xb2, hi: 0xb2}, + {value: 0x0c08, lo: 0xb3, hi: 0xb4}, + {value: 0x0a08, lo: 0xb5, hi: 0xb7}, + {value: 0x0c08, lo: 0xb8, hi: 0xb9}, + {value: 0x0a08, lo: 0xba, hi: 0xbf}, + // Block 0xa, offset 0x5d + {value: 0x0000, lo: 0x04}, + {value: 0x0808, lo: 0x80, hi: 0xa5}, + {value: 0x3308, lo: 0xa6, hi: 0xb0}, + {value: 0x0808, lo: 0xb1, hi: 0xb1}, + {value: 0x0040, lo: 0xb2, hi: 0xbf}, + // Block 0xb, offset 0x62 + {value: 0x0000, lo: 0x09}, + {value: 0x0808, lo: 0x80, hi: 0x89}, + {value: 0x0a08, lo: 0x8a, hi: 0xaa}, + {value: 0x3308, lo: 0xab, hi: 0xb3}, + {value: 0x0808, lo: 0xb4, hi: 0xb5}, + {value: 0x0018, lo: 0xb6, hi: 0xb9}, + {value: 0x0818, lo: 0xba, hi: 0xba}, + {value: 0x0040, lo: 0xbb, hi: 0xbc}, + {value: 0x3308, lo: 0xbd, hi: 0xbd}, + {value: 0x0818, lo: 0xbe, hi: 0xbf}, + // Block 0xc, offset 0x6c + {value: 0x0000, lo: 0x0b}, + {value: 0x0808, lo: 0x80, hi: 0x95}, + {value: 0x3308, lo: 0x96, hi: 0x99}, + {value: 0x0808, lo: 0x9a, hi: 0x9a}, + {value: 0x3308, lo: 0x9b, hi: 0xa3}, + {value: 0x0808, lo: 0xa4, hi: 0xa4}, + {value: 0x3308, lo: 0xa5, hi: 0xa7}, + {value: 0x0808, lo: 0xa8, hi: 0xa8}, + {value: 0x3308, lo: 0xa9, hi: 0xad}, + {value: 0x0040, lo: 0xae, hi: 0xaf}, + {value: 0x0818, lo: 0xb0, hi: 0xbe}, + {value: 0x0040, lo: 0xbf, hi: 0xbf}, + // Block 0xd, offset 0x78 + {value: 0x0000, lo: 0x0d}, + {value: 0x0040, lo: 0x80, hi: 0x9f}, + {value: 0x0a08, lo: 0xa0, hi: 0xa9}, + {value: 0x0c08, lo: 0xaa, hi: 0xac}, + {value: 0x0808, lo: 0xad, hi: 0xad}, + {value: 0x0c08, lo: 0xae, hi: 0xae}, + {value: 0x0a08, lo: 0xaf, hi: 0xb0}, + {value: 0x0c08, lo: 0xb1, hi: 0xb2}, + {value: 0x0a08, lo: 0xb3, hi: 0xb4}, + {value: 0x0040, lo: 0xb5, hi: 0xb5}, + {value: 0x0a08, lo: 0xb6, hi: 0xb8}, + {value: 0x0c08, lo: 0xb9, hi: 0xb9}, + {value: 0x0a08, lo: 0xba, hi: 0xbd}, + {value: 0x0040, lo: 0xbe, hi: 0xbf}, + // Block 0xe, offset 0x86 + {value: 0x0000, lo: 0x04}, + {value: 0x0040, lo: 0x80, hi: 0x92}, + {value: 0x3308, lo: 0x93, hi: 0xa1}, + {value: 0x0840, lo: 0xa2, hi: 0xa2}, + {value: 0x3308, lo: 0xa3, hi: 0xbf}, + // Block 0xf, offset 0x8b + {value: 0x0000, lo: 0x08}, + {value: 0x3308, lo: 0x80, hi: 0x82}, + {value: 0x3008, lo: 0x83, hi: 0x83}, + {value: 0x0008, lo: 0x84, hi: 0xb9}, + {value: 0x3308, lo: 0xba, hi: 0xba}, + {value: 0x3008, lo: 0xbb, hi: 0xbb}, + {value: 0x3308, lo: 0xbc, hi: 0xbc}, + {value: 0x0008, lo: 0xbd, hi: 0xbd}, + {value: 0x3008, lo: 0xbe, hi: 0xbf}, + // Block 0x10, offset 0x94 + {value: 0x0000, lo: 0x0f}, + {value: 0x3308, lo: 0x80, hi: 0x80}, + {value: 0x3008, lo: 0x81, hi: 0x82}, + {value: 0x0040, lo: 0x83, hi: 0x85}, + {value: 0x3008, lo: 0x86, hi: 0x88}, + {value: 0x0040, lo: 0x89, hi: 0x89}, + {value: 0x3008, lo: 0x8a, hi: 0x8c}, + {value: 0x3b08, lo: 0x8d, hi: 0x8d}, + {value: 0x0040, lo: 0x8e, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x90}, + {value: 0x0040, lo: 0x91, hi: 0x96}, + {value: 0x3008, lo: 0x97, hi: 0x97}, + {value: 0x0040, lo: 0x98, hi: 0xa5}, + {value: 0x0008, lo: 0xa6, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xba}, + {value: 0x0040, lo: 0xbb, hi: 0xbf}, + // Block 0x11, offset 0xa4 + {value: 0x0000, lo: 0x0d}, + {value: 0x3308, lo: 0x80, hi: 0x80}, + {value: 0x3008, lo: 0x81, hi: 0x83}, + {value: 0x3308, lo: 0x84, hi: 0x84}, + {value: 0x0008, lo: 0x85, hi: 0x8c}, + {value: 0x0040, lo: 0x8d, hi: 0x8d}, + {value: 0x0008, lo: 0x8e, hi: 0x90}, + {value: 0x0040, lo: 0x91, hi: 0x91}, + {value: 0x0008, lo: 0x92, hi: 0xa8}, + {value: 0x0040, lo: 0xa9, hi: 0xa9}, + {value: 0x0008, lo: 0xaa, hi: 0xb9}, + {value: 0x0040, lo: 0xba, hi: 0xbc}, + {value: 0x0008, lo: 0xbd, hi: 0xbd}, + {value: 0x3308, lo: 0xbe, hi: 0xbf}, + // Block 0x12, offset 0xb2 + {value: 0x0000, lo: 0x0b}, + {value: 0x3308, lo: 0x80, hi: 0x81}, + {value: 0x3008, lo: 0x82, hi: 0x83}, + {value: 0x0040, lo: 0x84, hi: 0x84}, + {value: 0x0008, lo: 0x85, hi: 0x8c}, + {value: 0x0040, lo: 0x8d, hi: 0x8d}, + {value: 0x0008, lo: 0x8e, hi: 0x90}, + {value: 0x0040, lo: 0x91, hi: 0x91}, + {value: 0x0008, lo: 0x92, hi: 0xba}, + {value: 0x3b08, lo: 0xbb, hi: 0xbc}, + {value: 0x0008, lo: 0xbd, hi: 0xbd}, + {value: 0x3008, lo: 0xbe, hi: 0xbf}, + // Block 0x13, offset 0xbe + {value: 0x0000, lo: 0x0b}, + {value: 0x0040, lo: 0x80, hi: 0x81}, + {value: 0x3008, lo: 0x82, hi: 0x83}, + {value: 0x0040, lo: 0x84, hi: 0x84}, + {value: 0x0008, lo: 0x85, hi: 0x96}, + {value: 0x0040, lo: 0x97, hi: 0x99}, + {value: 0x0008, lo: 0x9a, hi: 0xb1}, + {value: 0x0040, lo: 0xb2, hi: 0xb2}, + {value: 0x0008, lo: 0xb3, hi: 0xbb}, + {value: 0x0040, lo: 0xbc, hi: 0xbc}, + {value: 0x0008, lo: 0xbd, hi: 0xbd}, + {value: 0x0040, lo: 0xbe, hi: 0xbf}, + // Block 0x14, offset 0xca + {value: 0x0000, lo: 0x10}, + {value: 0x0008, lo: 0x80, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0x89}, + {value: 0x3b08, lo: 0x8a, hi: 0x8a}, + {value: 0x0040, lo: 0x8b, hi: 0x8e}, + {value: 0x3008, lo: 0x8f, hi: 0x91}, + {value: 0x3308, lo: 0x92, hi: 0x94}, + {value: 0x0040, lo: 0x95, hi: 0x95}, + {value: 0x3308, lo: 0x96, hi: 0x96}, + {value: 0x0040, lo: 0x97, hi: 0x97}, + {value: 0x3008, lo: 0x98, hi: 0x9f}, + {value: 0x0040, lo: 0xa0, hi: 0xa5}, + {value: 0x0008, lo: 0xa6, hi: 0xaf}, + {value: 0x0040, lo: 0xb0, hi: 0xb1}, + {value: 0x3008, lo: 0xb2, hi: 0xb3}, + {value: 0x0018, lo: 0xb4, hi: 0xb4}, + {value: 0x0040, lo: 0xb5, hi: 0xbf}, + // Block 0x15, offset 0xdb + {value: 0x0000, lo: 0x09}, + {value: 0x0040, lo: 0x80, hi: 0x80}, + {value: 0x0008, lo: 0x81, hi: 0xb0}, + {value: 0x3308, lo: 0xb1, hi: 0xb1}, + {value: 0x0008, lo: 0xb2, hi: 0xb2}, + {value: 0x08f1, lo: 0xb3, hi: 0xb3}, + {value: 0x3308, lo: 0xb4, hi: 0xb9}, + {value: 0x3b08, lo: 0xba, hi: 0xba}, + {value: 0x0040, lo: 0xbb, hi: 0xbe}, + {value: 0x0018, lo: 0xbf, hi: 0xbf}, + // Block 0x16, offset 0xe5 + {value: 0x0000, lo: 0x06}, + {value: 0x0008, lo: 0x80, hi: 0x86}, + {value: 0x3308, lo: 0x87, hi: 0x8e}, + {value: 0x0018, lo: 0x8f, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0018, lo: 0x9a, hi: 0x9b}, + {value: 0x0040, lo: 0x9c, hi: 0xbf}, + // Block 0x17, offset 0xec + {value: 0x0000, lo: 0x0c}, + {value: 0x0008, lo: 0x80, hi: 0x84}, + {value: 0x0040, lo: 0x85, hi: 0x85}, + {value: 0x0008, lo: 0x86, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0x87}, + {value: 0x3308, lo: 0x88, hi: 0x8d}, + {value: 0x0040, lo: 0x8e, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9b}, + {value: 0x0961, lo: 0x9c, hi: 0x9c}, + {value: 0x0999, lo: 0x9d, hi: 0x9d}, + {value: 0x0008, lo: 0x9e, hi: 0x9f}, + {value: 0x0040, lo: 0xa0, hi: 0xbf}, + // Block 0x18, offset 0xf9 + {value: 0x0000, lo: 0x10}, + {value: 0x0008, lo: 0x80, hi: 0x80}, + {value: 0x0018, lo: 0x81, hi: 0x8a}, + {value: 0x0008, lo: 0x8b, hi: 0x8b}, + {value: 0xe03d, lo: 0x8c, hi: 0x8c}, + {value: 0x0018, lo: 0x8d, hi: 0x97}, + {value: 0x3308, lo: 0x98, hi: 0x99}, + {value: 0x0018, lo: 0x9a, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa9}, + {value: 0x0018, lo: 0xaa, hi: 0xb4}, + {value: 0x3308, lo: 0xb5, hi: 0xb5}, + {value: 0x0018, lo: 0xb6, hi: 0xb6}, + {value: 0x3308, lo: 0xb7, hi: 0xb7}, + {value: 0x0018, lo: 0xb8, hi: 0xb8}, + {value: 0x3308, lo: 0xb9, hi: 0xb9}, + {value: 0x0018, lo: 0xba, hi: 0xbd}, + {value: 0x3008, lo: 0xbe, hi: 0xbf}, + // Block 0x19, offset 0x10a + {value: 0x0000, lo: 0x06}, + {value: 0x0018, lo: 0x80, hi: 0x85}, + {value: 0x3308, lo: 0x86, hi: 0x86}, + {value: 0x0018, lo: 0x87, hi: 0x8c}, + {value: 0x0040, lo: 0x8d, hi: 0x8d}, + {value: 0x0018, lo: 0x8e, hi: 0x9a}, + {value: 0x0040, lo: 0x9b, hi: 0xbf}, + // Block 0x1a, offset 0x111 + {value: 0x0000, lo: 0x0a}, + {value: 0x0008, lo: 0x80, hi: 0xaa}, + {value: 0x3008, lo: 0xab, hi: 0xac}, + {value: 0x3308, lo: 0xad, hi: 0xb0}, + {value: 0x3008, lo: 0xb1, hi: 0xb1}, + {value: 0x3308, lo: 0xb2, hi: 0xb7}, + {value: 0x3008, lo: 0xb8, hi: 0xb8}, + {value: 0x3b08, lo: 0xb9, hi: 0xba}, + {value: 0x3008, lo: 0xbb, hi: 0xbc}, + {value: 0x3308, lo: 0xbd, hi: 0xbe}, + {value: 0x0008, lo: 0xbf, hi: 0xbf}, + // Block 0x1b, offset 0x11c + {value: 0x0000, lo: 0x0e}, + {value: 0x0008, lo: 0x80, hi: 0x89}, + {value: 0x0018, lo: 0x8a, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x95}, + {value: 0x3008, lo: 0x96, hi: 0x97}, + {value: 0x3308, lo: 0x98, hi: 0x99}, + {value: 0x0008, lo: 0x9a, hi: 0x9d}, + {value: 0x3308, lo: 0x9e, hi: 0xa0}, + {value: 0x0008, lo: 0xa1, hi: 0xa1}, + {value: 0x3008, lo: 0xa2, hi: 0xa4}, + {value: 0x0008, lo: 0xa5, hi: 0xa6}, + {value: 0x3008, lo: 0xa7, hi: 0xad}, + {value: 0x0008, lo: 0xae, hi: 0xb0}, + {value: 0x3308, lo: 0xb1, hi: 0xb4}, + {value: 0x0008, lo: 0xb5, hi: 0xbf}, + // Block 0x1c, offset 0x12b + {value: 0x0000, lo: 0x0d}, + {value: 0x0008, lo: 0x80, hi: 0x81}, + {value: 0x3308, lo: 0x82, hi: 0x82}, + {value: 0x3008, lo: 0x83, hi: 0x84}, + {value: 0x3308, lo: 0x85, hi: 0x86}, + {value: 0x3008, lo: 0x87, hi: 0x8c}, + {value: 0x3308, lo: 0x8d, hi: 0x8d}, + {value: 0x0008, lo: 0x8e, hi: 0x8e}, + {value: 0x3008, lo: 0x8f, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x3008, lo: 0x9a, hi: 0x9c}, + {value: 0x3308, lo: 0x9d, hi: 0x9d}, + {value: 0x0018, lo: 0x9e, hi: 0x9f}, + {value: 0x0040, lo: 0xa0, hi: 0xbf}, + // Block 0x1d, offset 0x139 + {value: 0x0000, lo: 0x09}, + {value: 0x0040, lo: 0x80, hi: 0x86}, + {value: 0x055d, lo: 0x87, hi: 0x87}, + {value: 0x0040, lo: 0x88, hi: 0x8c}, + {value: 0x055d, lo: 0x8d, hi: 0x8d}, + {value: 0x0040, lo: 0x8e, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0xba}, + {value: 0x0018, lo: 0xbb, hi: 0xbb}, + {value: 0xe105, lo: 0xbc, hi: 0xbc}, + {value: 0x0008, lo: 0xbd, hi: 0xbf}, + // Block 0x1e, offset 0x143 + {value: 0x0000, lo: 0x01}, + {value: 0x0018, lo: 0x80, hi: 0xbf}, + // Block 0x1f, offset 0x145 + {value: 0x0000, lo: 0x04}, + {value: 0x0018, lo: 0x80, hi: 0x9e}, + {value: 0x0040, lo: 0x9f, hi: 0xa0}, + {value: 0x2018, lo: 0xa1, hi: 0xb5}, + {value: 0x0018, lo: 0xb6, hi: 0xbf}, + // Block 0x20, offset 0x14a + {value: 0x0000, lo: 0x02}, + {value: 0x0018, lo: 0x80, hi: 0xa7}, + {value: 0x2018, lo: 0xa8, hi: 0xbf}, + // Block 0x21, offset 0x14d + {value: 0x0000, lo: 0x02}, + {value: 0x2018, lo: 0x80, hi: 0x82}, + {value: 0x0018, lo: 0x83, hi: 0xbf}, + // Block 0x22, offset 0x150 + {value: 0x0000, lo: 0x01}, + {value: 0x0008, lo: 0x80, hi: 0xbf}, + // Block 0x23, offset 0x152 + {value: 0x0000, lo: 0x0b}, + {value: 0x0008, lo: 0x80, hi: 0x88}, + {value: 0x0040, lo: 0x89, hi: 0x89}, + {value: 0x0008, lo: 0x8a, hi: 0x8d}, + {value: 0x0040, lo: 0x8e, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x96}, + {value: 0x0040, lo: 0x97, hi: 0x97}, + {value: 0x0008, lo: 0x98, hi: 0x98}, + {value: 0x0040, lo: 0x99, hi: 0x99}, + {value: 0x0008, lo: 0x9a, hi: 0x9d}, + {value: 0x0040, lo: 0x9e, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xbf}, + // Block 0x24, offset 0x15e + {value: 0x0000, lo: 0x0a}, + {value: 0x0008, lo: 0x80, hi: 0x88}, + {value: 0x0040, lo: 0x89, hi: 0x89}, + {value: 0x0008, lo: 0x8a, hi: 0x8d}, + {value: 0x0040, lo: 0x8e, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0xb0}, + {value: 0x0040, lo: 0xb1, hi: 0xb1}, + {value: 0x0008, lo: 0xb2, hi: 0xb5}, + {value: 0x0040, lo: 0xb6, hi: 0xb7}, + {value: 0x0008, lo: 0xb8, hi: 0xbe}, + {value: 0x0040, lo: 0xbf, hi: 0xbf}, + // Block 0x25, offset 0x169 + {value: 0x0000, lo: 0x07}, + {value: 0x0008, lo: 0x80, hi: 0x80}, + {value: 0x0040, lo: 0x81, hi: 0x81}, + {value: 0x0008, lo: 0x82, hi: 0x85}, + {value: 0x0040, lo: 0x86, hi: 0x87}, + {value: 0x0008, lo: 0x88, hi: 0x96}, + {value: 0x0040, lo: 0x97, hi: 0x97}, + {value: 0x0008, lo: 0x98, hi: 0xbf}, + // Block 0x26, offset 0x171 + {value: 0x0000, lo: 0x05}, + {value: 0x0008, lo: 0x80, hi: 0x90}, + {value: 0x0040, lo: 0x91, hi: 0x91}, + {value: 0x0008, lo: 0x92, hi: 0x95}, + {value: 0x0040, lo: 0x96, hi: 0x97}, + {value: 0x0008, lo: 0x98, hi: 0xbf}, + // Block 0x27, offset 0x177 + {value: 0x0000, lo: 0x05}, + {value: 0x0008, lo: 0x80, hi: 0x9a}, + {value: 0x0040, lo: 0x9b, hi: 0x9c}, + {value: 0x3308, lo: 0x9d, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xbc}, + {value: 0x0040, lo: 0xbd, hi: 0xbf}, + // Block 0x28, offset 0x17d + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0x8f}, + {value: 0x0018, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xbf}, + // Block 0x29, offset 0x182 + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0xb5}, + {value: 0x0040, lo: 0xb6, hi: 0xb7}, + {value: 0xe045, lo: 0xb8, hi: 0xbd}, + {value: 0x0040, lo: 0xbe, hi: 0xbf}, + // Block 0x2a, offset 0x187 + {value: 0x0000, lo: 0x02}, + {value: 0x0018, lo: 0x80, hi: 0x80}, + {value: 0x0008, lo: 0x81, hi: 0xbf}, + // Block 0x2b, offset 0x18a + {value: 0x0000, lo: 0x03}, + {value: 0x0008, lo: 0x80, hi: 0xac}, + {value: 0x0018, lo: 0xad, hi: 0xae}, + {value: 0x0008, lo: 0xaf, hi: 0xbf}, + // Block 0x2c, offset 0x18e + {value: 0x0000, lo: 0x05}, + {value: 0x0040, lo: 0x80, hi: 0x80}, + {value: 0x0008, lo: 0x81, hi: 0x9a}, + {value: 0x0018, lo: 0x9b, hi: 0x9c}, + {value: 0x0040, lo: 0x9d, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xbf}, + // Block 0x2d, offset 0x194 + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0xaa}, + {value: 0x0018, lo: 0xab, hi: 0xb0}, + {value: 0x0008, lo: 0xb1, hi: 0xb8}, + {value: 0x0040, lo: 0xb9, hi: 0xbf}, + // Block 0x2e, offset 0x199 + {value: 0x0000, lo: 0x0b}, + {value: 0x0008, lo: 0x80, hi: 0x8c}, + {value: 0x0040, lo: 0x8d, hi: 0x8d}, + {value: 0x0008, lo: 0x8e, hi: 0x91}, + {value: 0x3308, lo: 0x92, hi: 0x93}, + {value: 0x3b08, lo: 0x94, hi: 0x94}, + {value: 0x0040, lo: 0x95, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xb1}, + {value: 0x3308, lo: 0xb2, hi: 0xb3}, + {value: 0x3b08, lo: 0xb4, hi: 0xb4}, + {value: 0x0018, lo: 0xb5, hi: 0xb6}, + {value: 0x0040, lo: 0xb7, hi: 0xbf}, + // Block 0x2f, offset 0x1a5 + {value: 0x0000, lo: 0x09}, + {value: 0x0008, lo: 0x80, hi: 0x91}, + {value: 0x3308, lo: 0x92, hi: 0x93}, + {value: 0x0040, lo: 0x94, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xac}, + {value: 0x0040, lo: 0xad, hi: 0xad}, + {value: 0x0008, lo: 0xae, hi: 0xb0}, + {value: 0x0040, lo: 0xb1, hi: 0xb1}, + {value: 0x3308, lo: 0xb2, hi: 0xb3}, + {value: 0x0040, lo: 0xb4, hi: 0xbf}, + // Block 0x30, offset 0x1af + {value: 0x0000, lo: 0x05}, + {value: 0x0008, lo: 0x80, hi: 0xb3}, + {value: 0x3340, lo: 0xb4, hi: 0xb5}, + {value: 0x3008, lo: 0xb6, hi: 0xb6}, + {value: 0x3308, lo: 0xb7, hi: 0xbd}, + {value: 0x3008, lo: 0xbe, hi: 0xbf}, + // Block 0x31, offset 0x1b5 + {value: 0x0000, lo: 0x10}, + {value: 0x3008, lo: 0x80, hi: 0x85}, + {value: 0x3308, lo: 0x86, hi: 0x86}, + {value: 0x3008, lo: 0x87, hi: 0x88}, + {value: 0x3308, lo: 0x89, hi: 0x91}, + {value: 0x3b08, lo: 0x92, hi: 0x92}, + {value: 0x3308, lo: 0x93, hi: 0x93}, + {value: 0x0018, lo: 0x94, hi: 0x96}, + {value: 0x0008, lo: 0x97, hi: 0x97}, + {value: 0x0018, lo: 0x98, hi: 0x9b}, + {value: 0x0008, lo: 0x9c, hi: 0x9c}, + {value: 0x3308, lo: 0x9d, hi: 0x9d}, + {value: 0x0040, lo: 0x9e, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa9}, + {value: 0x0040, lo: 0xaa, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xb9}, + {value: 0x0040, lo: 0xba, hi: 0xbf}, + // Block 0x32, offset 0x1c6 + {value: 0x0000, lo: 0x09}, + {value: 0x0018, lo: 0x80, hi: 0x85}, + {value: 0x0040, lo: 0x86, hi: 0x86}, + {value: 0x0218, lo: 0x87, hi: 0x87}, + {value: 0x0018, lo: 0x88, hi: 0x8a}, + {value: 0x33c0, lo: 0x8b, hi: 0x8d}, + {value: 0x0040, lo: 0x8e, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9f}, + {value: 0x0208, lo: 0xa0, hi: 0xbf}, + // Block 0x33, offset 0x1d0 + {value: 0x0000, lo: 0x02}, + {value: 0x0208, lo: 0x80, hi: 0xb8}, + {value: 0x0040, lo: 0xb9, hi: 0xbf}, + // Block 0x34, offset 0x1d3 + {value: 0x0000, lo: 0x07}, + {value: 0x0008, lo: 0x80, hi: 0x84}, + {value: 0x3308, lo: 0x85, hi: 0x86}, + {value: 0x0208, lo: 0x87, hi: 0xa8}, + {value: 0x3308, lo: 0xa9, hi: 0xa9}, + {value: 0x0208, lo: 0xaa, hi: 0xaa}, + {value: 0x0040, lo: 0xab, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbf}, + // Block 0x35, offset 0x1db + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0xb5}, + {value: 0x0040, lo: 0xb6, hi: 0xbf}, + // Block 0x36, offset 0x1de + {value: 0x0000, lo: 0x0c}, + {value: 0x0008, lo: 0x80, hi: 0x9e}, + {value: 0x0040, lo: 0x9f, hi: 0x9f}, + {value: 0x3308, lo: 0xa0, hi: 0xa2}, + {value: 0x3008, lo: 0xa3, hi: 0xa6}, + {value: 0x3308, lo: 0xa7, hi: 0xa8}, + {value: 0x3008, lo: 0xa9, hi: 0xab}, + {value: 0x0040, lo: 0xac, hi: 0xaf}, + {value: 0x3008, lo: 0xb0, hi: 0xb1}, + {value: 0x3308, lo: 0xb2, hi: 0xb2}, + {value: 0x3008, lo: 0xb3, hi: 0xb8}, + {value: 0x3308, lo: 0xb9, hi: 0xbb}, + {value: 0x0040, lo: 0xbc, hi: 0xbf}, + // Block 0x37, offset 0x1eb + {value: 0x0000, lo: 0x07}, + {value: 0x0018, lo: 0x80, hi: 0x80}, + {value: 0x0040, lo: 0x81, hi: 0x83}, + {value: 0x0018, lo: 0x84, hi: 0x85}, + {value: 0x0008, lo: 0x86, hi: 0xad}, + {value: 0x0040, lo: 0xae, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xb4}, + {value: 0x0040, lo: 0xb5, hi: 0xbf}, + // Block 0x38, offset 0x1f3 + {value: 0x0000, lo: 0x03}, + {value: 0x0008, lo: 0x80, hi: 0xab}, + {value: 0x0040, lo: 0xac, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbf}, + // Block 0x39, offset 0x1f7 + {value: 0x0000, lo: 0x06}, + {value: 0x0008, lo: 0x80, hi: 0x89}, + {value: 0x0040, lo: 0x8a, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0028, lo: 0x9a, hi: 0x9a}, + {value: 0x0040, lo: 0x9b, hi: 0x9d}, + {value: 0x0018, lo: 0x9e, hi: 0xbf}, + // Block 0x3a, offset 0x1fe + {value: 0x0000, lo: 0x07}, + {value: 0x0008, lo: 0x80, hi: 0x96}, + {value: 0x3308, lo: 0x97, hi: 0x98}, + {value: 0x3008, lo: 0x99, hi: 0x9a}, + {value: 0x3308, lo: 0x9b, hi: 0x9b}, + {value: 0x0040, lo: 0x9c, hi: 0x9d}, + {value: 0x0018, lo: 0x9e, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xbf}, + // Block 0x3b, offset 0x206 + {value: 0x0000, lo: 0x0f}, + {value: 0x0008, lo: 0x80, hi: 0x94}, + {value: 0x3008, lo: 0x95, hi: 0x95}, + {value: 0x3308, lo: 0x96, hi: 0x96}, + {value: 0x3008, lo: 0x97, hi: 0x97}, + {value: 0x3308, lo: 0x98, hi: 0x9e}, + {value: 0x0040, lo: 0x9f, hi: 0x9f}, + {value: 0x3b08, lo: 0xa0, hi: 0xa0}, + {value: 0x3008, lo: 0xa1, hi: 0xa1}, + {value: 0x3308, lo: 0xa2, hi: 0xa2}, + {value: 0x3008, lo: 0xa3, hi: 0xa4}, + {value: 0x3308, lo: 0xa5, hi: 0xac}, + {value: 0x3008, lo: 0xad, hi: 0xb2}, + {value: 0x3308, lo: 0xb3, hi: 0xbc}, + {value: 0x0040, lo: 0xbd, hi: 0xbe}, + {value: 0x3308, lo: 0xbf, hi: 0xbf}, + // Block 0x3c, offset 0x216 + {value: 0x0000, lo: 0x0b}, + {value: 0x0008, lo: 0x80, hi: 0x89}, + {value: 0x0040, lo: 0x8a, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xa6}, + {value: 0x0008, lo: 0xa7, hi: 0xa7}, + {value: 0x0018, lo: 0xa8, hi: 0xad}, + {value: 0x0040, lo: 0xae, hi: 0xaf}, + {value: 0x3308, lo: 0xb0, hi: 0xbd}, + {value: 0x3318, lo: 0xbe, hi: 0xbe}, + {value: 0x0040, lo: 0xbf, hi: 0xbf}, + // Block 0x3d, offset 0x222 + {value: 0x0000, lo: 0x01}, + {value: 0x0040, lo: 0x80, hi: 0xbf}, + // Block 0x3e, offset 0x224 + {value: 0x0000, lo: 0x09}, + {value: 0x3308, lo: 0x80, hi: 0x83}, + {value: 0x3008, lo: 0x84, hi: 0x84}, + {value: 0x0008, lo: 0x85, hi: 0xb3}, + {value: 0x3308, lo: 0xb4, hi: 0xb4}, + {value: 0x3008, lo: 0xb5, hi: 0xb5}, + {value: 0x3308, lo: 0xb6, hi: 0xba}, + {value: 0x3008, lo: 0xbb, hi: 0xbb}, + {value: 0x3308, lo: 0xbc, hi: 0xbc}, + {value: 0x3008, lo: 0xbd, hi: 0xbf}, + // Block 0x3f, offset 0x22e + {value: 0x0000, lo: 0x0b}, + {value: 0x3008, lo: 0x80, hi: 0x81}, + {value: 0x3308, lo: 0x82, hi: 0x82}, + {value: 0x3008, lo: 0x83, hi: 0x83}, + {value: 0x3808, lo: 0x84, hi: 0x84}, + {value: 0x0008, lo: 0x85, hi: 0x8b}, + {value: 0x0040, lo: 0x8c, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0018, lo: 0x9a, hi: 0xaa}, + {value: 0x3308, lo: 0xab, hi: 0xb3}, + {value: 0x0018, lo: 0xb4, hi: 0xbc}, + {value: 0x0040, lo: 0xbd, hi: 0xbf}, + // Block 0x40, offset 0x23a + {value: 0x0000, lo: 0x0b}, + {value: 0x3308, lo: 0x80, hi: 0x81}, + {value: 0x3008, lo: 0x82, hi: 0x82}, + {value: 0x0008, lo: 0x83, hi: 0xa0}, + {value: 0x3008, lo: 0xa1, hi: 0xa1}, + {value: 0x3308, lo: 0xa2, hi: 0xa5}, + {value: 0x3008, lo: 0xa6, hi: 0xa7}, + {value: 0x3308, lo: 0xa8, hi: 0xa9}, + {value: 0x3808, lo: 0xaa, hi: 0xaa}, + {value: 0x3b08, lo: 0xab, hi: 0xab}, + {value: 0x3308, lo: 0xac, hi: 0xad}, + {value: 0x0008, lo: 0xae, hi: 0xbf}, + // Block 0x41, offset 0x246 + {value: 0x0000, lo: 0x0b}, + {value: 0x0008, lo: 0x80, hi: 0xa5}, + {value: 0x3308, lo: 0xa6, hi: 0xa6}, + {value: 0x3008, lo: 0xa7, hi: 0xa7}, + {value: 0x3308, lo: 0xa8, hi: 0xa9}, + {value: 0x3008, lo: 0xaa, hi: 0xac}, + {value: 0x3308, lo: 0xad, hi: 0xad}, + {value: 0x3008, lo: 0xae, hi: 0xae}, + {value: 0x3308, lo: 0xaf, hi: 0xb1}, + {value: 0x3808, lo: 0xb2, hi: 0xb3}, + {value: 0x0040, lo: 0xb4, hi: 0xbb}, + {value: 0x0018, lo: 0xbc, hi: 0xbf}, + // Block 0x42, offset 0x252 + {value: 0x0000, lo: 0x07}, + {value: 0x0008, lo: 0x80, hi: 0xa3}, + {value: 0x3008, lo: 0xa4, hi: 0xab}, + {value: 0x3308, lo: 0xac, hi: 0xb3}, + {value: 0x3008, lo: 0xb4, hi: 0xb5}, + {value: 0x3308, lo: 0xb6, hi: 0xb7}, + {value: 0x0040, lo: 0xb8, hi: 0xba}, + {value: 0x0018, lo: 0xbb, hi: 0xbf}, + // Block 0x43, offset 0x25a + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0x89}, + {value: 0x0040, lo: 0x8a, hi: 0x8c}, + {value: 0x0008, lo: 0x8d, hi: 0xbd}, + {value: 0x0018, lo: 0xbe, hi: 0xbf}, + // Block 0x44, offset 0x25f + {value: 0x0000, lo: 0x0c}, + {value: 0x0e29, lo: 0x80, hi: 0x80}, + {value: 0x0e41, lo: 0x81, hi: 0x81}, + {value: 0x0e59, lo: 0x82, hi: 0x82}, + {value: 0x0e71, lo: 0x83, hi: 0x83}, + {value: 0x0e89, lo: 0x84, hi: 0x85}, + {value: 0x0ea1, lo: 0x86, hi: 0x86}, + {value: 0x0eb9, lo: 0x87, hi: 0x87}, + {value: 0x057d, lo: 0x88, hi: 0x88}, + {value: 0x0040, lo: 0x89, hi: 0x8f}, + {value: 0x059d, lo: 0x90, hi: 0xba}, + {value: 0x0040, lo: 0xbb, hi: 0xbc}, + {value: 0x059d, lo: 0xbd, hi: 0xbf}, + // Block 0x45, offset 0x26c + {value: 0x0000, lo: 0x10}, + {value: 0x0018, lo: 0x80, hi: 0x87}, + {value: 0x0040, lo: 0x88, hi: 0x8f}, + {value: 0x3308, lo: 0x90, hi: 0x92}, + {value: 0x0018, lo: 0x93, hi: 0x93}, + {value: 0x3308, lo: 0x94, hi: 0xa0}, + {value: 0x3008, lo: 0xa1, hi: 0xa1}, + {value: 0x3308, lo: 0xa2, hi: 0xa8}, + {value: 0x0008, lo: 0xa9, hi: 0xac}, + {value: 0x3308, lo: 0xad, hi: 0xad}, + {value: 0x0008, lo: 0xae, hi: 0xb3}, + {value: 0x3308, lo: 0xb4, hi: 0xb4}, + {value: 0x0008, lo: 0xb5, hi: 0xb6}, + {value: 0x3008, lo: 0xb7, hi: 0xb7}, + {value: 0x3308, lo: 0xb8, hi: 0xb9}, + {value: 0x0008, lo: 0xba, hi: 0xba}, + {value: 0x0040, lo: 0xbb, hi: 0xbf}, + // Block 0x46, offset 0x27d + {value: 0x0000, lo: 0x03}, + {value: 0x3308, lo: 0x80, hi: 0xb9}, + {value: 0x0040, lo: 0xba, hi: 0xba}, + {value: 0x3308, lo: 0xbb, hi: 0xbf}, + // Block 0x47, offset 0x281 + {value: 0x0000, lo: 0x0a}, + {value: 0x0008, lo: 0x80, hi: 0x87}, + {value: 0xe045, lo: 0x88, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x95}, + {value: 0x0040, lo: 0x96, hi: 0x97}, + {value: 0xe045, lo: 0x98, hi: 0x9d}, + {value: 0x0040, lo: 0x9e, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa7}, + {value: 0xe045, lo: 0xa8, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xb7}, + {value: 0xe045, lo: 0xb8, hi: 0xbf}, + // Block 0x48, offset 0x28c + {value: 0x0000, lo: 0x03}, + {value: 0x0040, lo: 0x80, hi: 0x8f}, + {value: 0x3318, lo: 0x90, hi: 0xb0}, + {value: 0x0040, lo: 0xb1, hi: 0xbf}, + // Block 0x49, offset 0x290 + {value: 0x0000, lo: 0x08}, + {value: 0x0018, lo: 0x80, hi: 0x82}, + {value: 0x0040, lo: 0x83, hi: 0x83}, + {value: 0x0008, lo: 0x84, hi: 0x84}, + {value: 0x0018, lo: 0x85, hi: 0x88}, + {value: 0x24c1, lo: 0x89, hi: 0x89}, + {value: 0x0018, lo: 0x8a, hi: 0x8b}, + {value: 0x0040, lo: 0x8c, hi: 0x8f}, + {value: 0x0018, lo: 0x90, hi: 0xbf}, + // Block 0x4a, offset 0x299 + {value: 0x0000, lo: 0x07}, + {value: 0x0018, lo: 0x80, hi: 0xab}, + {value: 0x24f1, lo: 0xac, hi: 0xac}, + {value: 0x2529, lo: 0xad, hi: 0xad}, + {value: 0x0018, lo: 0xae, hi: 0xae}, + {value: 0x2579, lo: 0xaf, hi: 0xaf}, + {value: 0x25b1, lo: 0xb0, hi: 0xb0}, + {value: 0x0018, lo: 0xb1, hi: 0xbf}, + // Block 0x4b, offset 0x2a1 + {value: 0x0000, lo: 0x05}, + {value: 0x0018, lo: 0x80, hi: 0x9f}, + {value: 0x0080, lo: 0xa0, hi: 0xa0}, + {value: 0x0018, lo: 0xa1, hi: 0xad}, + {value: 0x0080, lo: 0xae, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xbf}, + // Block 0x4c, offset 0x2a7 + {value: 0x0000, lo: 0x04}, + {value: 0x0018, lo: 0x80, hi: 0xa8}, + {value: 0x09dd, lo: 0xa9, hi: 0xa9}, + {value: 0x09fd, lo: 0xaa, hi: 0xaa}, + {value: 0x0018, lo: 0xab, hi: 0xbf}, + // Block 0x4d, offset 0x2ac + {value: 0x0000, lo: 0x02}, + {value: 0x0018, lo: 0x80, hi: 0xa6}, + {value: 0x0040, lo: 0xa7, hi: 0xbf}, + // Block 0x4e, offset 0x2af + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0x8b}, + {value: 0x28c1, lo: 0x8c, hi: 0x8c}, + {value: 0x0018, lo: 0x8d, hi: 0xbf}, + // Block 0x4f, offset 0x2b3 + {value: 0x0000, lo: 0x05}, + {value: 0x0018, lo: 0x80, hi: 0xb3}, + {value: 0x0e7e, lo: 0xb4, hi: 0xb4}, + {value: 0x292a, lo: 0xb5, hi: 0xb5}, + {value: 0x0e9e, lo: 0xb6, hi: 0xb6}, + {value: 0x0018, lo: 0xb7, hi: 0xbf}, + // Block 0x50, offset 0x2b9 + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0x9b}, + {value: 0x2941, lo: 0x9c, hi: 0x9c}, + {value: 0x0018, lo: 0x9d, hi: 0xbf}, + // Block 0x51, offset 0x2bd + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0xb3}, + {value: 0x0040, lo: 0xb4, hi: 0xb5}, + {value: 0x0018, lo: 0xb6, hi: 0xbf}, + // Block 0x52, offset 0x2c1 + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0x95}, + {value: 0x0040, lo: 0x96, hi: 0x97}, + {value: 0x0018, lo: 0x98, hi: 0xbf}, + // Block 0x53, offset 0x2c5 + {value: 0x0000, lo: 0x05}, + {value: 0xe185, lo: 0x80, hi: 0x8f}, + {value: 0x03f5, lo: 0x90, hi: 0x9f}, + {value: 0x0ebd, lo: 0xa0, hi: 0xae}, + {value: 0x0040, lo: 0xaf, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbf}, + // Block 0x54, offset 0x2cb + {value: 0x0000, lo: 0x07}, + {value: 0x0008, lo: 0x80, hi: 0xa5}, + {value: 0x0040, lo: 0xa6, hi: 0xa6}, + {value: 0x0008, lo: 0xa7, hi: 0xa7}, + {value: 0x0040, lo: 0xa8, hi: 0xac}, + {value: 0x0008, lo: 0xad, hi: 0xad}, + {value: 0x0040, lo: 0xae, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbf}, + // Block 0x55, offset 0x2d3 + {value: 0x0000, lo: 0x06}, + {value: 0x0008, lo: 0x80, hi: 0xa7}, + {value: 0x0040, lo: 0xa8, hi: 0xae}, + {value: 0xe075, lo: 0xaf, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xb0}, + {value: 0x0040, lo: 0xb1, hi: 0xbe}, + {value: 0x3b08, lo: 0xbf, hi: 0xbf}, + // Block 0x56, offset 0x2da + {value: 0x0000, lo: 0x0a}, + {value: 0x0008, lo: 0x80, hi: 0x96}, + {value: 0x0040, lo: 0x97, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa6}, + {value: 0x0040, lo: 0xa7, hi: 0xa7}, + {value: 0x0008, lo: 0xa8, hi: 0xae}, + {value: 0x0040, lo: 0xaf, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xb6}, + {value: 0x0040, lo: 0xb7, hi: 0xb7}, + {value: 0x0008, lo: 0xb8, hi: 0xbe}, + {value: 0x0040, lo: 0xbf, hi: 0xbf}, + // Block 0x57, offset 0x2e5 + {value: 0x0000, lo: 0x09}, + {value: 0x0008, lo: 0x80, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0x87}, + {value: 0x0008, lo: 0x88, hi: 0x8e}, + {value: 0x0040, lo: 0x8f, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x96}, + {value: 0x0040, lo: 0x97, hi: 0x97}, + {value: 0x0008, lo: 0x98, hi: 0x9e}, + {value: 0x0040, lo: 0x9f, hi: 0x9f}, + {value: 0x3308, lo: 0xa0, hi: 0xbf}, + // Block 0x58, offset 0x2ef + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0xae}, + {value: 0x0008, lo: 0xaf, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xbf}, + // Block 0x59, offset 0x2f3 + {value: 0x0000, lo: 0x02}, + {value: 0x0018, lo: 0x80, hi: 0x8f}, + {value: 0x0040, lo: 0x90, hi: 0xbf}, + // Block 0x5a, offset 0x2f6 + {value: 0x0000, lo: 0x05}, + {value: 0x0018, lo: 0x80, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9a}, + {value: 0x0018, lo: 0x9b, hi: 0x9e}, + {value: 0x0ef5, lo: 0x9f, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xbf}, + // Block 0x5b, offset 0x2fc + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0xb2}, + {value: 0x0f15, lo: 0xb3, hi: 0xb3}, + {value: 0x0040, lo: 0xb4, hi: 0xbf}, + // Block 0x5c, offset 0x300 + {value: 0x0020, lo: 0x01}, + {value: 0x0f35, lo: 0x80, hi: 0xbf}, + // Block 0x5d, offset 0x302 + {value: 0x0020, lo: 0x02}, + {value: 0x1735, lo: 0x80, hi: 0x8f}, + {value: 0x1915, lo: 0x90, hi: 0xbf}, + // Block 0x5e, offset 0x305 + {value: 0x0020, lo: 0x01}, + {value: 0x1f15, lo: 0x80, hi: 0xbf}, + // Block 0x5f, offset 0x307 + {value: 0x0000, lo: 0x02}, + {value: 0x0040, lo: 0x80, hi: 0x80}, + {value: 0x0008, lo: 0x81, hi: 0xbf}, + // Block 0x60, offset 0x30a + {value: 0x0000, lo: 0x09}, + {value: 0x0008, lo: 0x80, hi: 0x96}, + {value: 0x0040, lo: 0x97, hi: 0x98}, + {value: 0x3308, lo: 0x99, hi: 0x9a}, + {value: 0x29e2, lo: 0x9b, hi: 0x9b}, + {value: 0x2a0a, lo: 0x9c, hi: 0x9c}, + {value: 0x0008, lo: 0x9d, hi: 0x9e}, + {value: 0x2a31, lo: 0x9f, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xa0}, + {value: 0x0008, lo: 0xa1, hi: 0xbf}, + // Block 0x61, offset 0x314 + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0xbe}, + {value: 0x2a69, lo: 0xbf, hi: 0xbf}, + // Block 0x62, offset 0x317 + {value: 0x0000, lo: 0x0e}, + {value: 0x0040, lo: 0x80, hi: 0x84}, + {value: 0x0008, lo: 0x85, hi: 0xaf}, + {value: 0x0040, lo: 0xb0, hi: 0xb0}, + {value: 0x2a35, lo: 0xb1, hi: 0xb1}, + {value: 0x2a55, lo: 0xb2, hi: 0xb2}, + {value: 0x2a75, lo: 0xb3, hi: 0xb3}, + {value: 0x2a95, lo: 0xb4, hi: 0xb4}, + {value: 0x2a75, lo: 0xb5, hi: 0xb5}, + {value: 0x2ab5, lo: 0xb6, hi: 0xb6}, + {value: 0x2ad5, lo: 0xb7, hi: 0xb7}, + {value: 0x2af5, lo: 0xb8, hi: 0xb9}, + {value: 0x2b15, lo: 0xba, hi: 0xbb}, + {value: 0x2b35, lo: 0xbc, hi: 0xbd}, + {value: 0x2b15, lo: 0xbe, hi: 0xbf}, + // Block 0x63, offset 0x326 + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0xa3}, + {value: 0x0040, lo: 0xa4, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbf}, + // Block 0x64, offset 0x32a + {value: 0x0030, lo: 0x04}, + {value: 0x2aa2, lo: 0x80, hi: 0x9d}, + {value: 0x305a, lo: 0x9e, hi: 0x9e}, + {value: 0x0040, lo: 0x9f, hi: 0x9f}, + {value: 0x30a2, lo: 0xa0, hi: 0xbf}, + // Block 0x65, offset 0x32f + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0xaf}, + {value: 0x0040, lo: 0xb0, hi: 0xbf}, + // Block 0x66, offset 0x332 + {value: 0x0000, lo: 0x03}, + {value: 0x0008, lo: 0x80, hi: 0x8c}, + {value: 0x0040, lo: 0x8d, hi: 0x8f}, + {value: 0x0018, lo: 0x90, hi: 0xbf}, + // Block 0x67, offset 0x336 + {value: 0x0000, lo: 0x04}, + {value: 0x0018, lo: 0x80, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0xbd}, + {value: 0x0018, lo: 0xbe, hi: 0xbf}, + // Block 0x68, offset 0x33b + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0x8c}, + {value: 0x0018, lo: 0x8d, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0xab}, + {value: 0x0040, lo: 0xac, hi: 0xbf}, + // Block 0x69, offset 0x340 + {value: 0x0000, lo: 0x05}, + {value: 0x0008, lo: 0x80, hi: 0xa5}, + {value: 0x0018, lo: 0xa6, hi: 0xaf}, + {value: 0x3308, lo: 0xb0, hi: 0xb1}, + {value: 0x0018, lo: 0xb2, hi: 0xb7}, + {value: 0x0040, lo: 0xb8, hi: 0xbf}, + // Block 0x6a, offset 0x346 + {value: 0x0000, lo: 0x0b}, + {value: 0x0040, lo: 0x80, hi: 0x81}, + {value: 0xe00d, lo: 0x82, hi: 0x82}, + {value: 0x0008, lo: 0x83, hi: 0x83}, + {value: 0x03f5, lo: 0x84, hi: 0x84}, + {value: 0x1329, lo: 0x85, hi: 0x85}, + {value: 0x447d, lo: 0x86, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0xb6}, + {value: 0x0008, lo: 0xb7, hi: 0xb7}, + {value: 0x2009, lo: 0xb8, hi: 0xb8}, + {value: 0x6e89, lo: 0xb9, hi: 0xb9}, + {value: 0x0008, lo: 0xba, hi: 0xbf}, + // Block 0x6b, offset 0x352 + {value: 0x0000, lo: 0x0e}, + {value: 0x0008, lo: 0x80, hi: 0x81}, + {value: 0x3308, lo: 0x82, hi: 0x82}, + {value: 0x0008, lo: 0x83, hi: 0x85}, + {value: 0x3b08, lo: 0x86, hi: 0x86}, + {value: 0x0008, lo: 0x87, hi: 0x8a}, + {value: 0x3308, lo: 0x8b, hi: 0x8b}, + {value: 0x0008, lo: 0x8c, hi: 0xa2}, + {value: 0x3008, lo: 0xa3, hi: 0xa4}, + {value: 0x3308, lo: 0xa5, hi: 0xa6}, + {value: 0x3008, lo: 0xa7, hi: 0xa7}, + {value: 0x0018, lo: 0xa8, hi: 0xab}, + {value: 0x0040, lo: 0xac, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xb9}, + {value: 0x0040, lo: 0xba, hi: 0xbf}, + // Block 0x6c, offset 0x361 + {value: 0x0000, lo: 0x05}, + {value: 0x0208, lo: 0x80, hi: 0xb1}, + {value: 0x0108, lo: 0xb2, hi: 0xb2}, + {value: 0x0008, lo: 0xb3, hi: 0xb3}, + {value: 0x0018, lo: 0xb4, hi: 0xb7}, + {value: 0x0040, lo: 0xb8, hi: 0xbf}, + // Block 0x6d, offset 0x367 + {value: 0x0000, lo: 0x03}, + {value: 0x3008, lo: 0x80, hi: 0x81}, + {value: 0x0008, lo: 0x82, hi: 0xb3}, + {value: 0x3008, lo: 0xb4, hi: 0xbf}, + // Block 0x6e, offset 0x36b + {value: 0x0000, lo: 0x0e}, + {value: 0x3008, lo: 0x80, hi: 0x83}, + {value: 0x3b08, lo: 0x84, hi: 0x84}, + {value: 0x3308, lo: 0x85, hi: 0x85}, + {value: 0x0040, lo: 0x86, hi: 0x8d}, + {value: 0x0018, lo: 0x8e, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9f}, + {value: 0x3308, lo: 0xa0, hi: 0xb1}, + {value: 0x0008, lo: 0xb2, hi: 0xb7}, + {value: 0x0018, lo: 0xb8, hi: 0xba}, + {value: 0x0008, lo: 0xbb, hi: 0xbb}, + {value: 0x0018, lo: 0xbc, hi: 0xbc}, + {value: 0x0008, lo: 0xbd, hi: 0xbe}, + {value: 0x3308, lo: 0xbf, hi: 0xbf}, + // Block 0x6f, offset 0x37a + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0xa5}, + {value: 0x3308, lo: 0xa6, hi: 0xad}, + {value: 0x0018, lo: 0xae, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbf}, + // Block 0x70, offset 0x37f + {value: 0x0000, lo: 0x07}, + {value: 0x0008, lo: 0x80, hi: 0x86}, + {value: 0x3308, lo: 0x87, hi: 0x91}, + {value: 0x3008, lo: 0x92, hi: 0x92}, + {value: 0x3808, lo: 0x93, hi: 0x93}, + {value: 0x0040, lo: 0x94, hi: 0x9e}, + {value: 0x0018, lo: 0x9f, hi: 0xbc}, + {value: 0x0040, lo: 0xbd, hi: 0xbf}, + // Block 0x71, offset 0x387 + {value: 0x0000, lo: 0x09}, + {value: 0x3308, lo: 0x80, hi: 0x82}, + {value: 0x3008, lo: 0x83, hi: 0x83}, + {value: 0x0008, lo: 0x84, hi: 0xb2}, + {value: 0x3308, lo: 0xb3, hi: 0xb3}, + {value: 0x3008, lo: 0xb4, hi: 0xb5}, + {value: 0x3308, lo: 0xb6, hi: 0xb9}, + {value: 0x3008, lo: 0xba, hi: 0xbb}, + {value: 0x3308, lo: 0xbc, hi: 0xbd}, + {value: 0x3008, lo: 0xbe, hi: 0xbf}, + // Block 0x72, offset 0x391 + {value: 0x0000, lo: 0x0a}, + {value: 0x3808, lo: 0x80, hi: 0x80}, + {value: 0x0018, lo: 0x81, hi: 0x8d}, + {value: 0x0040, lo: 0x8e, hi: 0x8e}, + {value: 0x0008, lo: 0x8f, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9d}, + {value: 0x0018, lo: 0x9e, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa4}, + {value: 0x3308, lo: 0xa5, hi: 0xa5}, + {value: 0x0008, lo: 0xa6, hi: 0xbe}, + {value: 0x0040, lo: 0xbf, hi: 0xbf}, + // Block 0x73, offset 0x39c + {value: 0x0000, lo: 0x07}, + {value: 0x0008, lo: 0x80, hi: 0xa8}, + {value: 0x3308, lo: 0xa9, hi: 0xae}, + {value: 0x3008, lo: 0xaf, hi: 0xb0}, + {value: 0x3308, lo: 0xb1, hi: 0xb2}, + {value: 0x3008, lo: 0xb3, hi: 0xb4}, + {value: 0x3308, lo: 0xb5, hi: 0xb6}, + {value: 0x0040, lo: 0xb7, hi: 0xbf}, + // Block 0x74, offset 0x3a4 + {value: 0x0000, lo: 0x10}, + {value: 0x0008, lo: 0x80, hi: 0x82}, + {value: 0x3308, lo: 0x83, hi: 0x83}, + {value: 0x0008, lo: 0x84, hi: 0x8b}, + {value: 0x3308, lo: 0x8c, hi: 0x8c}, + {value: 0x3008, lo: 0x8d, hi: 0x8d}, + {value: 0x0040, lo: 0x8e, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9b}, + {value: 0x0018, lo: 0x9c, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xb6}, + {value: 0x0018, lo: 0xb7, hi: 0xb9}, + {value: 0x0008, lo: 0xba, hi: 0xba}, + {value: 0x3008, lo: 0xbb, hi: 0xbb}, + {value: 0x3308, lo: 0xbc, hi: 0xbc}, + {value: 0x3008, lo: 0xbd, hi: 0xbd}, + {value: 0x0008, lo: 0xbe, hi: 0xbf}, + // Block 0x75, offset 0x3b5 + {value: 0x0000, lo: 0x08}, + {value: 0x0008, lo: 0x80, hi: 0xaf}, + {value: 0x3308, lo: 0xb0, hi: 0xb0}, + {value: 0x0008, lo: 0xb1, hi: 0xb1}, + {value: 0x3308, lo: 0xb2, hi: 0xb4}, + {value: 0x0008, lo: 0xb5, hi: 0xb6}, + {value: 0x3308, lo: 0xb7, hi: 0xb8}, + {value: 0x0008, lo: 0xb9, hi: 0xbd}, + {value: 0x3308, lo: 0xbe, hi: 0xbf}, + // Block 0x76, offset 0x3be + {value: 0x0000, lo: 0x0f}, + {value: 0x0008, lo: 0x80, hi: 0x80}, + {value: 0x3308, lo: 0x81, hi: 0x81}, + {value: 0x0008, lo: 0x82, hi: 0x82}, + {value: 0x0040, lo: 0x83, hi: 0x9a}, + {value: 0x0008, lo: 0x9b, hi: 0x9d}, + {value: 0x0018, lo: 0x9e, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xaa}, + {value: 0x3008, lo: 0xab, hi: 0xab}, + {value: 0x3308, lo: 0xac, hi: 0xad}, + {value: 0x3008, lo: 0xae, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xb1}, + {value: 0x0008, lo: 0xb2, hi: 0xb4}, + {value: 0x3008, lo: 0xb5, hi: 0xb5}, + {value: 0x3b08, lo: 0xb6, hi: 0xb6}, + {value: 0x0040, lo: 0xb7, hi: 0xbf}, + // Block 0x77, offset 0x3ce + {value: 0x0000, lo: 0x0c}, + {value: 0x0040, lo: 0x80, hi: 0x80}, + {value: 0x0008, lo: 0x81, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0x88}, + {value: 0x0008, lo: 0x89, hi: 0x8e}, + {value: 0x0040, lo: 0x8f, hi: 0x90}, + {value: 0x0008, lo: 0x91, hi: 0x96}, + {value: 0x0040, lo: 0x97, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa6}, + {value: 0x0040, lo: 0xa7, hi: 0xa7}, + {value: 0x0008, lo: 0xa8, hi: 0xae}, + {value: 0x0040, lo: 0xaf, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbf}, + // Block 0x78, offset 0x3db + {value: 0x0000, lo: 0x09}, + {value: 0x0008, lo: 0x80, hi: 0x9a}, + {value: 0x0018, lo: 0x9b, hi: 0x9b}, + {value: 0x449d, lo: 0x9c, hi: 0x9c}, + {value: 0x44b5, lo: 0x9d, hi: 0x9d}, + {value: 0x2971, lo: 0x9e, hi: 0x9e}, + {value: 0xe06d, lo: 0x9f, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa7}, + {value: 0x0040, lo: 0xa8, hi: 0xaf}, + {value: 0x44cd, lo: 0xb0, hi: 0xbf}, + // Block 0x79, offset 0x3e5 + {value: 0x0000, lo: 0x04}, + {value: 0x44ed, lo: 0x80, hi: 0x8f}, + {value: 0x450d, lo: 0x90, hi: 0x9f}, + {value: 0x452d, lo: 0xa0, hi: 0xaf}, + {value: 0x450d, lo: 0xb0, hi: 0xbf}, + // Block 0x7a, offset 0x3ea + {value: 0x0000, lo: 0x0c}, + {value: 0x0008, lo: 0x80, hi: 0xa2}, + {value: 0x3008, lo: 0xa3, hi: 0xa4}, + {value: 0x3308, lo: 0xa5, hi: 0xa5}, + {value: 0x3008, lo: 0xa6, hi: 0xa7}, + {value: 0x3308, lo: 0xa8, hi: 0xa8}, + {value: 0x3008, lo: 0xa9, hi: 0xaa}, + {value: 0x0018, lo: 0xab, hi: 0xab}, + {value: 0x3008, lo: 0xac, hi: 0xac}, + {value: 0x3b08, lo: 0xad, hi: 0xad}, + {value: 0x0040, lo: 0xae, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xb9}, + {value: 0x0040, lo: 0xba, hi: 0xbf}, + // Block 0x7b, offset 0x3f7 + {value: 0x0000, lo: 0x03}, + {value: 0x0008, lo: 0x80, hi: 0xa3}, + {value: 0x0040, lo: 0xa4, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xbf}, + // Block 0x7c, offset 0x3fb + {value: 0x0000, lo: 0x04}, + {value: 0x0018, lo: 0x80, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0x8a}, + {value: 0x0018, lo: 0x8b, hi: 0xbb}, + {value: 0x0040, lo: 0xbc, hi: 0xbf}, + // Block 0x7d, offset 0x400 + {value: 0x0020, lo: 0x01}, + {value: 0x454d, lo: 0x80, hi: 0xbf}, + // Block 0x7e, offset 0x402 + {value: 0x0020, lo: 0x03}, + {value: 0x4d4d, lo: 0x80, hi: 0x94}, + {value: 0x4b0d, lo: 0x95, hi: 0x95}, + {value: 0x4fed, lo: 0x96, hi: 0xbf}, + // Block 0x7f, offset 0x406 + {value: 0x0020, lo: 0x01}, + {value: 0x552d, lo: 0x80, hi: 0xbf}, + // Block 0x80, offset 0x408 + {value: 0x0020, lo: 0x03}, + {value: 0x5d2d, lo: 0x80, hi: 0x84}, + {value: 0x568d, lo: 0x85, hi: 0x85}, + {value: 0x5dcd, lo: 0x86, hi: 0xbf}, + // Block 0x81, offset 0x40c + {value: 0x0020, lo: 0x08}, + {value: 0x6b8d, lo: 0x80, hi: 0x8f}, + {value: 0x6d4d, lo: 0x90, hi: 0x90}, + {value: 0x6d8d, lo: 0x91, hi: 0xab}, + {value: 0x6ea1, lo: 0xac, hi: 0xac}, + {value: 0x70ed, lo: 0xad, hi: 0xad}, + {value: 0x0040, lo: 0xae, hi: 0xae}, + {value: 0x0040, lo: 0xaf, hi: 0xaf}, + {value: 0x710d, lo: 0xb0, hi: 0xbf}, + // Block 0x82, offset 0x415 + {value: 0x0020, lo: 0x05}, + {value: 0x730d, lo: 0x80, hi: 0xad}, + {value: 0x656d, lo: 0xae, hi: 0xae}, + {value: 0x78cd, lo: 0xaf, hi: 0xb5}, + {value: 0x6f8d, lo: 0xb6, hi: 0xb6}, + {value: 0x79ad, lo: 0xb7, hi: 0xbf}, + // Block 0x83, offset 0x41b + {value: 0x0028, lo: 0x03}, + {value: 0x7c21, lo: 0x80, hi: 0x82}, + {value: 0x7be1, lo: 0x83, hi: 0x83}, + {value: 0x7c99, lo: 0x84, hi: 0xbf}, + // Block 0x84, offset 0x41f + {value: 0x0038, lo: 0x0f}, + {value: 0x9db1, lo: 0x80, hi: 0x83}, + {value: 0x9e59, lo: 0x84, hi: 0x85}, + {value: 0x9e91, lo: 0x86, hi: 0x87}, + {value: 0x9ec9, lo: 0x88, hi: 0x8f}, + {value: 0x0040, lo: 0x90, hi: 0x90}, + {value: 0x0040, lo: 0x91, hi: 0x91}, + {value: 0xa089, lo: 0x92, hi: 0x97}, + {value: 0xa1a1, lo: 0x98, hi: 0x9c}, + {value: 0xa281, lo: 0x9d, hi: 0xb3}, + {value: 0x9d41, lo: 0xb4, hi: 0xb4}, + {value: 0x9db1, lo: 0xb5, hi: 0xb5}, + {value: 0xa789, lo: 0xb6, hi: 0xbb}, + {value: 0xa869, lo: 0xbc, hi: 0xbc}, + {value: 0xa7f9, lo: 0xbd, hi: 0xbd}, + {value: 0xa8d9, lo: 0xbe, hi: 0xbf}, + // Block 0x85, offset 0x42f + {value: 0x0000, lo: 0x09}, + {value: 0x0008, lo: 0x80, hi: 0x8b}, + {value: 0x0040, lo: 0x8c, hi: 0x8c}, + {value: 0x0008, lo: 0x8d, hi: 0xa6}, + {value: 0x0040, lo: 0xa7, hi: 0xa7}, + {value: 0x0008, lo: 0xa8, hi: 0xba}, + {value: 0x0040, lo: 0xbb, hi: 0xbb}, + {value: 0x0008, lo: 0xbc, hi: 0xbd}, + {value: 0x0040, lo: 0xbe, hi: 0xbe}, + {value: 0x0008, lo: 0xbf, hi: 0xbf}, + // Block 0x86, offset 0x439 + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0x8d}, + {value: 0x0040, lo: 0x8e, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x9d}, + {value: 0x0040, lo: 0x9e, hi: 0xbf}, + // Block 0x87, offset 0x43e + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0xba}, + {value: 0x0040, lo: 0xbb, hi: 0xbf}, + // Block 0x88, offset 0x441 + {value: 0x0000, lo: 0x05}, + {value: 0x0018, lo: 0x80, hi: 0x82}, + {value: 0x0040, lo: 0x83, hi: 0x86}, + {value: 0x0018, lo: 0x87, hi: 0xb3}, + {value: 0x0040, lo: 0xb4, hi: 0xb6}, + {value: 0x0018, lo: 0xb7, hi: 0xbf}, + // Block 0x89, offset 0x447 + {value: 0x0000, lo: 0x06}, + {value: 0x0018, lo: 0x80, hi: 0x8e}, + {value: 0x0040, lo: 0x8f, hi: 0x8f}, + {value: 0x0018, lo: 0x90, hi: 0x9b}, + {value: 0x0040, lo: 0x9c, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xa0}, + {value: 0x0040, lo: 0xa1, hi: 0xbf}, + // Block 0x8a, offset 0x44e + {value: 0x0000, lo: 0x04}, + {value: 0x0040, lo: 0x80, hi: 0x8f}, + {value: 0x0018, lo: 0x90, hi: 0xbc}, + {value: 0x3308, lo: 0xbd, hi: 0xbd}, + {value: 0x0040, lo: 0xbe, hi: 0xbf}, + // Block 0x8b, offset 0x453 + {value: 0x0000, lo: 0x03}, + {value: 0x0008, lo: 0x80, hi: 0x9c}, + {value: 0x0040, lo: 0x9d, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xbf}, + // Block 0x8c, offset 0x457 + {value: 0x0000, lo: 0x05}, + {value: 0x0008, lo: 0x80, hi: 0x90}, + {value: 0x0040, lo: 0x91, hi: 0x9f}, + {value: 0x3308, lo: 0xa0, hi: 0xa0}, + {value: 0x0018, lo: 0xa1, hi: 0xbb}, + {value: 0x0040, lo: 0xbc, hi: 0xbf}, + // Block 0x8d, offset 0x45d + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xa3}, + {value: 0x0040, lo: 0xa4, hi: 0xac}, + {value: 0x0008, lo: 0xad, hi: 0xbf}, + // Block 0x8e, offset 0x462 + {value: 0x0000, lo: 0x08}, + {value: 0x0008, lo: 0x80, hi: 0x80}, + {value: 0x0018, lo: 0x81, hi: 0x81}, + {value: 0x0008, lo: 0x82, hi: 0x89}, + {value: 0x0018, lo: 0x8a, hi: 0x8a}, + {value: 0x0040, lo: 0x8b, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0xb5}, + {value: 0x3308, lo: 0xb6, hi: 0xba}, + {value: 0x0040, lo: 0xbb, hi: 0xbf}, + // Block 0x8f, offset 0x46b + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0x9d}, + {value: 0x0040, lo: 0x9e, hi: 0x9e}, + {value: 0x0018, lo: 0x9f, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xbf}, + // Block 0x90, offset 0x470 + {value: 0x0000, lo: 0x05}, + {value: 0x0008, lo: 0x80, hi: 0x83}, + {value: 0x0040, lo: 0x84, hi: 0x87}, + {value: 0x0008, lo: 0x88, hi: 0x8f}, + {value: 0x0018, lo: 0x90, hi: 0x95}, + {value: 0x0040, lo: 0x96, hi: 0xbf}, + // Block 0x91, offset 0x476 + {value: 0x0000, lo: 0x06}, + {value: 0xe145, lo: 0x80, hi: 0x87}, + {value: 0xe1c5, lo: 0x88, hi: 0x8f}, + {value: 0xe145, lo: 0x90, hi: 0x97}, + {value: 0x8b0d, lo: 0x98, hi: 0x9f}, + {value: 0x8b25, lo: 0xa0, hi: 0xa7}, + {value: 0x0008, lo: 0xa8, hi: 0xbf}, + // Block 0x92, offset 0x47d + {value: 0x0000, lo: 0x06}, + {value: 0x0008, lo: 0x80, hi: 0x9d}, + {value: 0x0040, lo: 0x9e, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa9}, + {value: 0x0040, lo: 0xaa, hi: 0xaf}, + {value: 0x8b25, lo: 0xb0, hi: 0xb7}, + {value: 0x8b0d, lo: 0xb8, hi: 0xbf}, + // Block 0x93, offset 0x484 + {value: 0x0000, lo: 0x06}, + {value: 0xe145, lo: 0x80, hi: 0x87}, + {value: 0xe1c5, lo: 0x88, hi: 0x8f}, + {value: 0xe145, lo: 0x90, hi: 0x93}, + {value: 0x0040, lo: 0x94, hi: 0x97}, + {value: 0x0008, lo: 0x98, hi: 0xbb}, + {value: 0x0040, lo: 0xbc, hi: 0xbf}, + // Block 0x94, offset 0x48b + {value: 0x0000, lo: 0x03}, + {value: 0x0008, lo: 0x80, hi: 0xa7}, + {value: 0x0040, lo: 0xa8, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbf}, + // Block 0x95, offset 0x48f + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0xa3}, + {value: 0x0040, lo: 0xa4, hi: 0xae}, + {value: 0x0018, lo: 0xaf, hi: 0xaf}, + {value: 0x0040, lo: 0xb0, hi: 0xbf}, + // Block 0x96, offset 0x494 + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0xb6}, + {value: 0x0040, lo: 0xb7, hi: 0xbf}, + // Block 0x97, offset 0x497 + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0x95}, + {value: 0x0040, lo: 0x96, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa7}, + {value: 0x0040, lo: 0xa8, hi: 0xbf}, + // Block 0x98, offset 0x49c + {value: 0x0000, lo: 0x0b}, + {value: 0x0808, lo: 0x80, hi: 0x85}, + {value: 0x0040, lo: 0x86, hi: 0x87}, + {value: 0x0808, lo: 0x88, hi: 0x88}, + {value: 0x0040, lo: 0x89, hi: 0x89}, + {value: 0x0808, lo: 0x8a, hi: 0xb5}, + {value: 0x0040, lo: 0xb6, hi: 0xb6}, + {value: 0x0808, lo: 0xb7, hi: 0xb8}, + {value: 0x0040, lo: 0xb9, hi: 0xbb}, + {value: 0x0808, lo: 0xbc, hi: 0xbc}, + {value: 0x0040, lo: 0xbd, hi: 0xbe}, + {value: 0x0808, lo: 0xbf, hi: 0xbf}, + // Block 0x99, offset 0x4a8 + {value: 0x0000, lo: 0x05}, + {value: 0x0808, lo: 0x80, hi: 0x95}, + {value: 0x0040, lo: 0x96, hi: 0x96}, + {value: 0x0818, lo: 0x97, hi: 0x9f}, + {value: 0x0808, lo: 0xa0, hi: 0xb6}, + {value: 0x0818, lo: 0xb7, hi: 0xbf}, + // Block 0x9a, offset 0x4ae + {value: 0x0000, lo: 0x04}, + {value: 0x0808, lo: 0x80, hi: 0x9e}, + {value: 0x0040, lo: 0x9f, hi: 0xa6}, + {value: 0x0818, lo: 0xa7, hi: 0xaf}, + {value: 0x0040, lo: 0xb0, hi: 0xbf}, + // Block 0x9b, offset 0x4b3 + {value: 0x0000, lo: 0x06}, + {value: 0x0040, lo: 0x80, hi: 0x9f}, + {value: 0x0808, lo: 0xa0, hi: 0xb2}, + {value: 0x0040, lo: 0xb3, hi: 0xb3}, + {value: 0x0808, lo: 0xb4, hi: 0xb5}, + {value: 0x0040, lo: 0xb6, hi: 0xba}, + {value: 0x0818, lo: 0xbb, hi: 0xbf}, + // Block 0x9c, offset 0x4ba + {value: 0x0000, lo: 0x07}, + {value: 0x0808, lo: 0x80, hi: 0x95}, + {value: 0x0818, lo: 0x96, hi: 0x9b}, + {value: 0x0040, lo: 0x9c, hi: 0x9e}, + {value: 0x0018, lo: 0x9f, hi: 0x9f}, + {value: 0x0808, lo: 0xa0, hi: 0xb9}, + {value: 0x0040, lo: 0xba, hi: 0xbe}, + {value: 0x0818, lo: 0xbf, hi: 0xbf}, + // Block 0x9d, offset 0x4c2 + {value: 0x0000, lo: 0x04}, + {value: 0x0808, lo: 0x80, hi: 0xb7}, + {value: 0x0040, lo: 0xb8, hi: 0xbb}, + {value: 0x0818, lo: 0xbc, hi: 0xbd}, + {value: 0x0808, lo: 0xbe, hi: 0xbf}, + // Block 0x9e, offset 0x4c7 + {value: 0x0000, lo: 0x03}, + {value: 0x0818, lo: 0x80, hi: 0x8f}, + {value: 0x0040, lo: 0x90, hi: 0x91}, + {value: 0x0818, lo: 0x92, hi: 0xbf}, + // Block 0x9f, offset 0x4cb + {value: 0x0000, lo: 0x0f}, + {value: 0x0808, lo: 0x80, hi: 0x80}, + {value: 0x3308, lo: 0x81, hi: 0x83}, + {value: 0x0040, lo: 0x84, hi: 0x84}, + {value: 0x3308, lo: 0x85, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0x8b}, + {value: 0x3308, lo: 0x8c, hi: 0x8f}, + {value: 0x0808, lo: 0x90, hi: 0x93}, + {value: 0x0040, lo: 0x94, hi: 0x94}, + {value: 0x0808, lo: 0x95, hi: 0x97}, + {value: 0x0040, lo: 0x98, hi: 0x98}, + {value: 0x0808, lo: 0x99, hi: 0xb5}, + {value: 0x0040, lo: 0xb6, hi: 0xb7}, + {value: 0x3308, lo: 0xb8, hi: 0xba}, + {value: 0x0040, lo: 0xbb, hi: 0xbe}, + {value: 0x3b08, lo: 0xbf, hi: 0xbf}, + // Block 0xa0, offset 0x4db + {value: 0x0000, lo: 0x06}, + {value: 0x0818, lo: 0x80, hi: 0x88}, + {value: 0x0040, lo: 0x89, hi: 0x8f}, + {value: 0x0818, lo: 0x90, hi: 0x98}, + {value: 0x0040, lo: 0x99, hi: 0x9f}, + {value: 0x0808, lo: 0xa0, hi: 0xbc}, + {value: 0x0818, lo: 0xbd, hi: 0xbf}, + // Block 0xa1, offset 0x4e2 + {value: 0x0000, lo: 0x03}, + {value: 0x0808, lo: 0x80, hi: 0x9c}, + {value: 0x0818, lo: 0x9d, hi: 0x9f}, + {value: 0x0040, lo: 0xa0, hi: 0xbf}, + // Block 0xa2, offset 0x4e6 + {value: 0x0000, lo: 0x03}, + {value: 0x0808, lo: 0x80, hi: 0xb5}, + {value: 0x0040, lo: 0xb6, hi: 0xb8}, + {value: 0x0018, lo: 0xb9, hi: 0xbf}, + // Block 0xa3, offset 0x4ea + {value: 0x0000, lo: 0x06}, + {value: 0x0808, lo: 0x80, hi: 0x95}, + {value: 0x0040, lo: 0x96, hi: 0x97}, + {value: 0x0818, lo: 0x98, hi: 0x9f}, + {value: 0x0808, lo: 0xa0, hi: 0xb2}, + {value: 0x0040, lo: 0xb3, hi: 0xb7}, + {value: 0x0818, lo: 0xb8, hi: 0xbf}, + // Block 0xa4, offset 0x4f1 + {value: 0x0000, lo: 0x01}, + {value: 0x0808, lo: 0x80, hi: 0xbf}, + // Block 0xa5, offset 0x4f3 + {value: 0x0000, lo: 0x02}, + {value: 0x0808, lo: 0x80, hi: 0x88}, + {value: 0x0040, lo: 0x89, hi: 0xbf}, + // Block 0xa6, offset 0x4f6 + {value: 0x0000, lo: 0x02}, + {value: 0x03dd, lo: 0x80, hi: 0xb2}, + {value: 0x0040, lo: 0xb3, hi: 0xbf}, + // Block 0xa7, offset 0x4f9 + {value: 0x0000, lo: 0x03}, + {value: 0x0808, lo: 0x80, hi: 0xb2}, + {value: 0x0040, lo: 0xb3, hi: 0xb9}, + {value: 0x0818, lo: 0xba, hi: 0xbf}, + // Block 0xa8, offset 0x4fd + {value: 0x0000, lo: 0x08}, + {value: 0x0908, lo: 0x80, hi: 0x80}, + {value: 0x0a08, lo: 0x81, hi: 0xa1}, + {value: 0x0c08, lo: 0xa2, hi: 0xa2}, + {value: 0x0a08, lo: 0xa3, hi: 0xa3}, + {value: 0x3308, lo: 0xa4, hi: 0xa7}, + {value: 0x0040, lo: 0xa8, hi: 0xaf}, + {value: 0x0808, lo: 0xb0, hi: 0xb9}, + {value: 0x0040, lo: 0xba, hi: 0xbf}, + // Block 0xa9, offset 0x506 + {value: 0x0000, lo: 0x03}, + {value: 0x0040, lo: 0x80, hi: 0x9f}, + {value: 0x0818, lo: 0xa0, hi: 0xbe}, + {value: 0x0040, lo: 0xbf, hi: 0xbf}, + // Block 0xaa, offset 0x50a + {value: 0x0000, lo: 0x07}, + {value: 0x0808, lo: 0x80, hi: 0x9c}, + {value: 0x0818, lo: 0x9d, hi: 0xa6}, + {value: 0x0808, lo: 0xa7, hi: 0xa7}, + {value: 0x0040, lo: 0xa8, hi: 0xaf}, + {value: 0x0a08, lo: 0xb0, hi: 0xb2}, + {value: 0x0c08, lo: 0xb3, hi: 0xb3}, + {value: 0x0a08, lo: 0xb4, hi: 0xbf}, + // Block 0xab, offset 0x512 + {value: 0x0000, lo: 0x07}, + {value: 0x0a08, lo: 0x80, hi: 0x84}, + {value: 0x0808, lo: 0x85, hi: 0x85}, + {value: 0x3308, lo: 0x86, hi: 0x90}, + {value: 0x0a18, lo: 0x91, hi: 0x93}, + {value: 0x0c18, lo: 0x94, hi: 0x94}, + {value: 0x0818, lo: 0x95, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0xbf}, + // Block 0xac, offset 0x51a + {value: 0x0000, lo: 0x03}, + {value: 0x0040, lo: 0x80, hi: 0x9f}, + {value: 0x0808, lo: 0xa0, hi: 0xb6}, + {value: 0x0040, lo: 0xb7, hi: 0xbf}, + // Block 0xad, offset 0x51e + {value: 0x0000, lo: 0x05}, + {value: 0x3008, lo: 0x80, hi: 0x80}, + {value: 0x3308, lo: 0x81, hi: 0x81}, + {value: 0x3008, lo: 0x82, hi: 0x82}, + {value: 0x0008, lo: 0x83, hi: 0xb7}, + {value: 0x3308, lo: 0xb8, hi: 0xbf}, + // Block 0xae, offset 0x524 + {value: 0x0000, lo: 0x08}, + {value: 0x3308, lo: 0x80, hi: 0x85}, + {value: 0x3b08, lo: 0x86, hi: 0x86}, + {value: 0x0018, lo: 0x87, hi: 0x8d}, + {value: 0x0040, lo: 0x8e, hi: 0x91}, + {value: 0x0018, lo: 0x92, hi: 0xa5}, + {value: 0x0008, lo: 0xa6, hi: 0xaf}, + {value: 0x0040, lo: 0xb0, hi: 0xbe}, + {value: 0x3b08, lo: 0xbf, hi: 0xbf}, + // Block 0xaf, offset 0x52d + {value: 0x0000, lo: 0x0b}, + {value: 0x3308, lo: 0x80, hi: 0x81}, + {value: 0x3008, lo: 0x82, hi: 0x82}, + {value: 0x0008, lo: 0x83, hi: 0xaf}, + {value: 0x3008, lo: 0xb0, hi: 0xb2}, + {value: 0x3308, lo: 0xb3, hi: 0xb6}, + {value: 0x3008, lo: 0xb7, hi: 0xb8}, + {value: 0x3b08, lo: 0xb9, hi: 0xb9}, + {value: 0x3308, lo: 0xba, hi: 0xba}, + {value: 0x0018, lo: 0xbb, hi: 0xbc}, + {value: 0x0040, lo: 0xbd, hi: 0xbd}, + {value: 0x0018, lo: 0xbe, hi: 0xbf}, + // Block 0xb0, offset 0x539 + {value: 0x0000, lo: 0x06}, + {value: 0x0018, lo: 0x80, hi: 0x81}, + {value: 0x0040, lo: 0x82, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0xa8}, + {value: 0x0040, lo: 0xa9, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xb9}, + {value: 0x0040, lo: 0xba, hi: 0xbf}, + // Block 0xb1, offset 0x540 + {value: 0x0000, lo: 0x08}, + {value: 0x3308, lo: 0x80, hi: 0x82}, + {value: 0x0008, lo: 0x83, hi: 0xa6}, + {value: 0x3308, lo: 0xa7, hi: 0xab}, + {value: 0x3008, lo: 0xac, hi: 0xac}, + {value: 0x3308, lo: 0xad, hi: 0xb2}, + {value: 0x3b08, lo: 0xb3, hi: 0xb4}, + {value: 0x0040, lo: 0xb5, hi: 0xb5}, + {value: 0x0008, lo: 0xb6, hi: 0xbf}, + // Block 0xb2, offset 0x549 + {value: 0x0000, lo: 0x09}, + {value: 0x0018, lo: 0x80, hi: 0x83}, + {value: 0x0008, lo: 0x84, hi: 0x84}, + {value: 0x3008, lo: 0x85, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0xb2}, + {value: 0x3308, lo: 0xb3, hi: 0xb3}, + {value: 0x0018, lo: 0xb4, hi: 0xb5}, + {value: 0x0008, lo: 0xb6, hi: 0xb6}, + {value: 0x0040, lo: 0xb7, hi: 0xbf}, + // Block 0xb3, offset 0x553 + {value: 0x0000, lo: 0x06}, + {value: 0x3308, lo: 0x80, hi: 0x81}, + {value: 0x3008, lo: 0x82, hi: 0x82}, + {value: 0x0008, lo: 0x83, hi: 0xb2}, + {value: 0x3008, lo: 0xb3, hi: 0xb5}, + {value: 0x3308, lo: 0xb6, hi: 0xbe}, + {value: 0x3008, lo: 0xbf, hi: 0xbf}, + // Block 0xb4, offset 0x55a + {value: 0x0000, lo: 0x0d}, + {value: 0x3808, lo: 0x80, hi: 0x80}, + {value: 0x0008, lo: 0x81, hi: 0x84}, + {value: 0x0018, lo: 0x85, hi: 0x88}, + {value: 0x3308, lo: 0x89, hi: 0x8c}, + {value: 0x0018, lo: 0x8d, hi: 0x8d}, + {value: 0x0040, lo: 0x8e, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x9a}, + {value: 0x0018, lo: 0x9b, hi: 0x9b}, + {value: 0x0008, lo: 0x9c, hi: 0x9c}, + {value: 0x0018, lo: 0x9d, hi: 0x9f}, + {value: 0x0040, lo: 0xa0, hi: 0xa0}, + {value: 0x0018, lo: 0xa1, hi: 0xb4}, + {value: 0x0040, lo: 0xb5, hi: 0xbf}, + // Block 0xb5, offset 0x568 + {value: 0x0000, lo: 0x0c}, + {value: 0x0008, lo: 0x80, hi: 0x91}, + {value: 0x0040, lo: 0x92, hi: 0x92}, + {value: 0x0008, lo: 0x93, hi: 0xab}, + {value: 0x3008, lo: 0xac, hi: 0xae}, + {value: 0x3308, lo: 0xaf, hi: 0xb1}, + {value: 0x3008, lo: 0xb2, hi: 0xb3}, + {value: 0x3308, lo: 0xb4, hi: 0xb4}, + {value: 0x3808, lo: 0xb5, hi: 0xb5}, + {value: 0x3308, lo: 0xb6, hi: 0xb7}, + {value: 0x0018, lo: 0xb8, hi: 0xbd}, + {value: 0x3308, lo: 0xbe, hi: 0xbe}, + {value: 0x0040, lo: 0xbf, hi: 0xbf}, + // Block 0xb6, offset 0x575 + {value: 0x0000, lo: 0x0c}, + {value: 0x0008, lo: 0x80, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0x87}, + {value: 0x0008, lo: 0x88, hi: 0x88}, + {value: 0x0040, lo: 0x89, hi: 0x89}, + {value: 0x0008, lo: 0x8a, hi: 0x8d}, + {value: 0x0040, lo: 0x8e, hi: 0x8e}, + {value: 0x0008, lo: 0x8f, hi: 0x9d}, + {value: 0x0040, lo: 0x9e, hi: 0x9e}, + {value: 0x0008, lo: 0x9f, hi: 0xa8}, + {value: 0x0018, lo: 0xa9, hi: 0xa9}, + {value: 0x0040, lo: 0xaa, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbf}, + // Block 0xb7, offset 0x582 + {value: 0x0000, lo: 0x08}, + {value: 0x0008, lo: 0x80, hi: 0x9e}, + {value: 0x3308, lo: 0x9f, hi: 0x9f}, + {value: 0x3008, lo: 0xa0, hi: 0xa2}, + {value: 0x3308, lo: 0xa3, hi: 0xa9}, + {value: 0x3b08, lo: 0xaa, hi: 0xaa}, + {value: 0x0040, lo: 0xab, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xb9}, + {value: 0x0040, lo: 0xba, hi: 0xbf}, + // Block 0xb8, offset 0x58b + {value: 0x0000, lo: 0x03}, + {value: 0x0008, lo: 0x80, hi: 0xb4}, + {value: 0x3008, lo: 0xb5, hi: 0xb7}, + {value: 0x3308, lo: 0xb8, hi: 0xbf}, + // Block 0xb9, offset 0x58f + {value: 0x0000, lo: 0x0f}, + {value: 0x3008, lo: 0x80, hi: 0x81}, + {value: 0x3b08, lo: 0x82, hi: 0x82}, + {value: 0x3308, lo: 0x83, hi: 0x84}, + {value: 0x3008, lo: 0x85, hi: 0x85}, + {value: 0x3308, lo: 0x86, hi: 0x86}, + {value: 0x0008, lo: 0x87, hi: 0x8a}, + {value: 0x0018, lo: 0x8b, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9a}, + {value: 0x0018, lo: 0x9b, hi: 0x9b}, + {value: 0x0040, lo: 0x9c, hi: 0x9c}, + {value: 0x0018, lo: 0x9d, hi: 0x9d}, + {value: 0x3308, lo: 0x9e, hi: 0x9e}, + {value: 0x0008, lo: 0x9f, hi: 0x9f}, + {value: 0x0040, lo: 0xa0, hi: 0xbf}, + // Block 0xba, offset 0x59f + {value: 0x0000, lo: 0x07}, + {value: 0x0008, lo: 0x80, hi: 0xaf}, + {value: 0x3008, lo: 0xb0, hi: 0xb2}, + {value: 0x3308, lo: 0xb3, hi: 0xb8}, + {value: 0x3008, lo: 0xb9, hi: 0xb9}, + {value: 0x3308, lo: 0xba, hi: 0xba}, + {value: 0x3008, lo: 0xbb, hi: 0xbe}, + {value: 0x3308, lo: 0xbf, hi: 0xbf}, + // Block 0xbb, offset 0x5a7 + {value: 0x0000, lo: 0x0a}, + {value: 0x3308, lo: 0x80, hi: 0x80}, + {value: 0x3008, lo: 0x81, hi: 0x81}, + {value: 0x3b08, lo: 0x82, hi: 0x82}, + {value: 0x3308, lo: 0x83, hi: 0x83}, + {value: 0x0008, lo: 0x84, hi: 0x85}, + {value: 0x0018, lo: 0x86, hi: 0x86}, + {value: 0x0008, lo: 0x87, hi: 0x87}, + {value: 0x0040, lo: 0x88, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0xbf}, + // Block 0xbc, offset 0x5b2 + {value: 0x0000, lo: 0x08}, + {value: 0x0008, lo: 0x80, hi: 0xae}, + {value: 0x3008, lo: 0xaf, hi: 0xb1}, + {value: 0x3308, lo: 0xb2, hi: 0xb5}, + {value: 0x0040, lo: 0xb6, hi: 0xb7}, + {value: 0x3008, lo: 0xb8, hi: 0xbb}, + {value: 0x3308, lo: 0xbc, hi: 0xbd}, + {value: 0x3008, lo: 0xbe, hi: 0xbe}, + {value: 0x3b08, lo: 0xbf, hi: 0xbf}, + // Block 0xbd, offset 0x5bb + {value: 0x0000, lo: 0x05}, + {value: 0x3308, lo: 0x80, hi: 0x80}, + {value: 0x0018, lo: 0x81, hi: 0x97}, + {value: 0x0008, lo: 0x98, hi: 0x9b}, + {value: 0x3308, lo: 0x9c, hi: 0x9d}, + {value: 0x0040, lo: 0x9e, hi: 0xbf}, + // Block 0xbe, offset 0x5c1 + {value: 0x0000, lo: 0x07}, + {value: 0x0008, lo: 0x80, hi: 0xaf}, + {value: 0x3008, lo: 0xb0, hi: 0xb2}, + {value: 0x3308, lo: 0xb3, hi: 0xba}, + {value: 0x3008, lo: 0xbb, hi: 0xbc}, + {value: 0x3308, lo: 0xbd, hi: 0xbd}, + {value: 0x3008, lo: 0xbe, hi: 0xbe}, + {value: 0x3b08, lo: 0xbf, hi: 0xbf}, + // Block 0xbf, offset 0x5c9 + {value: 0x0000, lo: 0x08}, + {value: 0x3308, lo: 0x80, hi: 0x80}, + {value: 0x0018, lo: 0x81, hi: 0x83}, + {value: 0x0008, lo: 0x84, hi: 0x84}, + {value: 0x0040, lo: 0x85, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xac}, + {value: 0x0040, lo: 0xad, hi: 0xbf}, + // Block 0xc0, offset 0x5d2 + {value: 0x0000, lo: 0x0a}, + {value: 0x0008, lo: 0x80, hi: 0xaa}, + {value: 0x3308, lo: 0xab, hi: 0xab}, + {value: 0x3008, lo: 0xac, hi: 0xac}, + {value: 0x3308, lo: 0xad, hi: 0xad}, + {value: 0x3008, lo: 0xae, hi: 0xaf}, + {value: 0x3308, lo: 0xb0, hi: 0xb5}, + {value: 0x3808, lo: 0xb6, hi: 0xb6}, + {value: 0x3308, lo: 0xb7, hi: 0xb7}, + {value: 0x0008, lo: 0xb8, hi: 0xb8}, + {value: 0x0040, lo: 0xb9, hi: 0xbf}, + // Block 0xc1, offset 0x5dd + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0x89}, + {value: 0x0040, lo: 0x8a, hi: 0xbf}, + // Block 0xc2, offset 0x5e0 + {value: 0x0000, lo: 0x0b}, + {value: 0x0008, lo: 0x80, hi: 0x9a}, + {value: 0x0040, lo: 0x9b, hi: 0x9c}, + {value: 0x3308, lo: 0x9d, hi: 0x9f}, + {value: 0x3008, lo: 0xa0, hi: 0xa1}, + {value: 0x3308, lo: 0xa2, hi: 0xa5}, + {value: 0x3008, lo: 0xa6, hi: 0xa6}, + {value: 0x3308, lo: 0xa7, hi: 0xaa}, + {value: 0x3b08, lo: 0xab, hi: 0xab}, + {value: 0x0040, lo: 0xac, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xb9}, + {value: 0x0018, lo: 0xba, hi: 0xbf}, + // Block 0xc3, offset 0x5ec + {value: 0x0000, lo: 0x08}, + {value: 0x0008, lo: 0x80, hi: 0xab}, + {value: 0x3008, lo: 0xac, hi: 0xae}, + {value: 0x3308, lo: 0xaf, hi: 0xb7}, + {value: 0x3008, lo: 0xb8, hi: 0xb8}, + {value: 0x3b08, lo: 0xb9, hi: 0xb9}, + {value: 0x3308, lo: 0xba, hi: 0xba}, + {value: 0x0018, lo: 0xbb, hi: 0xbb}, + {value: 0x0040, lo: 0xbc, hi: 0xbf}, + // Block 0xc4, offset 0x5f5 + {value: 0x0000, lo: 0x02}, + {value: 0x0040, lo: 0x80, hi: 0x9f}, + {value: 0x049d, lo: 0xa0, hi: 0xbf}, + // Block 0xc5, offset 0x5f8 + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0xa9}, + {value: 0x0018, lo: 0xaa, hi: 0xb2}, + {value: 0x0040, lo: 0xb3, hi: 0xbe}, + {value: 0x0008, lo: 0xbf, hi: 0xbf}, + // Block 0xc6, offset 0x5fd + {value: 0x0000, lo: 0x04}, + {value: 0x0040, lo: 0x80, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa7}, + {value: 0x0040, lo: 0xa8, hi: 0xa9}, + {value: 0x0008, lo: 0xaa, hi: 0xbf}, + // Block 0xc7, offset 0x602 + {value: 0x0000, lo: 0x0c}, + {value: 0x0008, lo: 0x80, hi: 0x90}, + {value: 0x3008, lo: 0x91, hi: 0x93}, + {value: 0x3308, lo: 0x94, hi: 0x97}, + {value: 0x0040, lo: 0x98, hi: 0x99}, + {value: 0x3308, lo: 0x9a, hi: 0x9b}, + {value: 0x3008, lo: 0x9c, hi: 0x9f}, + {value: 0x3b08, lo: 0xa0, hi: 0xa0}, + {value: 0x0008, lo: 0xa1, hi: 0xa1}, + {value: 0x0018, lo: 0xa2, hi: 0xa2}, + {value: 0x0008, lo: 0xa3, hi: 0xa3}, + {value: 0x3008, lo: 0xa4, hi: 0xa4}, + {value: 0x0040, lo: 0xa5, hi: 0xbf}, + // Block 0xc8, offset 0x60f + {value: 0x0000, lo: 0x0a}, + {value: 0x0008, lo: 0x80, hi: 0x80}, + {value: 0x3308, lo: 0x81, hi: 0x8a}, + {value: 0x0008, lo: 0x8b, hi: 0xb2}, + {value: 0x3308, lo: 0xb3, hi: 0xb3}, + {value: 0x3b08, lo: 0xb4, hi: 0xb4}, + {value: 0x3308, lo: 0xb5, hi: 0xb8}, + {value: 0x3008, lo: 0xb9, hi: 0xb9}, + {value: 0x0008, lo: 0xba, hi: 0xba}, + {value: 0x3308, lo: 0xbb, hi: 0xbe}, + {value: 0x0018, lo: 0xbf, hi: 0xbf}, + // Block 0xc9, offset 0x61a + {value: 0x0000, lo: 0x08}, + {value: 0x0018, lo: 0x80, hi: 0x86}, + {value: 0x3b08, lo: 0x87, hi: 0x87}, + {value: 0x0040, lo: 0x88, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x90}, + {value: 0x3308, lo: 0x91, hi: 0x96}, + {value: 0x3008, lo: 0x97, hi: 0x98}, + {value: 0x3308, lo: 0x99, hi: 0x9b}, + {value: 0x0008, lo: 0x9c, hi: 0xbf}, + // Block 0xca, offset 0x623 + {value: 0x0000, lo: 0x09}, + {value: 0x0008, lo: 0x80, hi: 0x89}, + {value: 0x3308, lo: 0x8a, hi: 0x96}, + {value: 0x3008, lo: 0x97, hi: 0x97}, + {value: 0x3308, lo: 0x98, hi: 0x98}, + {value: 0x3b08, lo: 0x99, hi: 0x99}, + {value: 0x0018, lo: 0x9a, hi: 0x9c}, + {value: 0x0008, lo: 0x9d, hi: 0x9d}, + {value: 0x0018, lo: 0x9e, hi: 0xa2}, + {value: 0x0040, lo: 0xa3, hi: 0xbf}, + // Block 0xcb, offset 0x62d + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0xb8}, + {value: 0x0040, lo: 0xb9, hi: 0xbf}, + // Block 0xcc, offset 0x630 + {value: 0x0000, lo: 0x09}, + {value: 0x0008, lo: 0x80, hi: 0x88}, + {value: 0x0040, lo: 0x89, hi: 0x89}, + {value: 0x0008, lo: 0x8a, hi: 0xae}, + {value: 0x3008, lo: 0xaf, hi: 0xaf}, + {value: 0x3308, lo: 0xb0, hi: 0xb6}, + {value: 0x0040, lo: 0xb7, hi: 0xb7}, + {value: 0x3308, lo: 0xb8, hi: 0xbd}, + {value: 0x3008, lo: 0xbe, hi: 0xbe}, + {value: 0x3b08, lo: 0xbf, hi: 0xbf}, + // Block 0xcd, offset 0x63a + {value: 0x0000, lo: 0x08}, + {value: 0x0008, lo: 0x80, hi: 0x80}, + {value: 0x0018, lo: 0x81, hi: 0x85}, + {value: 0x0040, lo: 0x86, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0018, lo: 0x9a, hi: 0xac}, + {value: 0x0040, lo: 0xad, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xb1}, + {value: 0x0008, lo: 0xb2, hi: 0xbf}, + // Block 0xce, offset 0x643 + {value: 0x0000, lo: 0x0b}, + {value: 0x0008, lo: 0x80, hi: 0x8f}, + {value: 0x0040, lo: 0x90, hi: 0x91}, + {value: 0x3308, lo: 0x92, hi: 0xa7}, + {value: 0x0040, lo: 0xa8, hi: 0xa8}, + {value: 0x3008, lo: 0xa9, hi: 0xa9}, + {value: 0x3308, lo: 0xaa, hi: 0xb0}, + {value: 0x3008, lo: 0xb1, hi: 0xb1}, + {value: 0x3308, lo: 0xb2, hi: 0xb3}, + {value: 0x3008, lo: 0xb4, hi: 0xb4}, + {value: 0x3308, lo: 0xb5, hi: 0xb6}, + {value: 0x0040, lo: 0xb7, hi: 0xbf}, + // Block 0xcf, offset 0x64f + {value: 0x0000, lo: 0x0c}, + {value: 0x0008, lo: 0x80, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0x87}, + {value: 0x0008, lo: 0x88, hi: 0x89}, + {value: 0x0040, lo: 0x8a, hi: 0x8a}, + {value: 0x0008, lo: 0x8b, hi: 0xb0}, + {value: 0x3308, lo: 0xb1, hi: 0xb6}, + {value: 0x0040, lo: 0xb7, hi: 0xb9}, + {value: 0x3308, lo: 0xba, hi: 0xba}, + {value: 0x0040, lo: 0xbb, hi: 0xbb}, + {value: 0x3308, lo: 0xbc, hi: 0xbd}, + {value: 0x0040, lo: 0xbe, hi: 0xbe}, + {value: 0x3308, lo: 0xbf, hi: 0xbf}, + // Block 0xd0, offset 0x65c + {value: 0x0000, lo: 0x0c}, + {value: 0x3308, lo: 0x80, hi: 0x83}, + {value: 0x3b08, lo: 0x84, hi: 0x85}, + {value: 0x0008, lo: 0x86, hi: 0x86}, + {value: 0x3308, lo: 0x87, hi: 0x87}, + {value: 0x0040, lo: 0x88, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa5}, + {value: 0x0040, lo: 0xa6, hi: 0xa6}, + {value: 0x0008, lo: 0xa7, hi: 0xa8}, + {value: 0x0040, lo: 0xa9, hi: 0xa9}, + {value: 0x0008, lo: 0xaa, hi: 0xbf}, + // Block 0xd1, offset 0x669 + {value: 0x0000, lo: 0x0d}, + {value: 0x0008, lo: 0x80, hi: 0x89}, + {value: 0x3008, lo: 0x8a, hi: 0x8e}, + {value: 0x0040, lo: 0x8f, hi: 0x8f}, + {value: 0x3308, lo: 0x90, hi: 0x91}, + {value: 0x0040, lo: 0x92, hi: 0x92}, + {value: 0x3008, lo: 0x93, hi: 0x94}, + {value: 0x3308, lo: 0x95, hi: 0x95}, + {value: 0x3008, lo: 0x96, hi: 0x96}, + {value: 0x3b08, lo: 0x97, hi: 0x97}, + {value: 0x0008, lo: 0x98, hi: 0x98}, + {value: 0x0040, lo: 0x99, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa9}, + {value: 0x0040, lo: 0xaa, hi: 0xbf}, + // Block 0xd2, offset 0x677 + {value: 0x0000, lo: 0x06}, + {value: 0x0040, lo: 0x80, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xb2}, + {value: 0x3308, lo: 0xb3, hi: 0xb4}, + {value: 0x3008, lo: 0xb5, hi: 0xb6}, + {value: 0x0018, lo: 0xb7, hi: 0xb8}, + {value: 0x0040, lo: 0xb9, hi: 0xbf}, + // Block 0xd3, offset 0x67e + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0xb1}, + {value: 0x0040, lo: 0xb2, hi: 0xbe}, + {value: 0x0018, lo: 0xbf, hi: 0xbf}, + // Block 0xd4, offset 0x682 + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0xbf}, + // Block 0xd5, offset 0x685 + {value: 0x0000, lo: 0x04}, + {value: 0x0018, lo: 0x80, hi: 0xae}, + {value: 0x0040, lo: 0xaf, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xb4}, + {value: 0x0040, lo: 0xb5, hi: 0xbf}, + // Block 0xd6, offset 0x68a + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0x83}, + {value: 0x0040, lo: 0x84, hi: 0xbf}, + // Block 0xd7, offset 0x68d + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0xae}, + {value: 0x0040, lo: 0xaf, hi: 0xaf}, + {value: 0x0340, lo: 0xb0, hi: 0xb8}, + {value: 0x0040, lo: 0xb9, hi: 0xbf}, + // Block 0xd8, offset 0x692 + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0xbf}, + // Block 0xd9, offset 0x695 + {value: 0x0000, lo: 0x06}, + {value: 0x0008, lo: 0x80, hi: 0x9e}, + {value: 0x0040, lo: 0x9f, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa9}, + {value: 0x0040, lo: 0xaa, hi: 0xad}, + {value: 0x0018, lo: 0xae, hi: 0xaf}, + {value: 0x0040, lo: 0xb0, hi: 0xbf}, + // Block 0xda, offset 0x69c + {value: 0x0000, lo: 0x06}, + {value: 0x0040, lo: 0x80, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0xad}, + {value: 0x0040, lo: 0xae, hi: 0xaf}, + {value: 0x3308, lo: 0xb0, hi: 0xb4}, + {value: 0x0018, lo: 0xb5, hi: 0xb5}, + {value: 0x0040, lo: 0xb6, hi: 0xbf}, + // Block 0xdb, offset 0x6a3 + {value: 0x0000, lo: 0x03}, + {value: 0x0008, lo: 0x80, hi: 0xaf}, + {value: 0x3308, lo: 0xb0, hi: 0xb6}, + {value: 0x0018, lo: 0xb7, hi: 0xbf}, + // Block 0xdc, offset 0x6a7 + {value: 0x0000, lo: 0x0a}, + {value: 0x0008, lo: 0x80, hi: 0x83}, + {value: 0x0018, lo: 0x84, hi: 0x85}, + {value: 0x0040, lo: 0x86, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9a}, + {value: 0x0018, lo: 0x9b, hi: 0xa1}, + {value: 0x0040, lo: 0xa2, hi: 0xa2}, + {value: 0x0008, lo: 0xa3, hi: 0xb7}, + {value: 0x0040, lo: 0xb8, hi: 0xbc}, + {value: 0x0008, lo: 0xbd, hi: 0xbf}, + // Block 0xdd, offset 0x6b2 + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0x8f}, + {value: 0x0040, lo: 0x90, hi: 0xbf}, + // Block 0xde, offset 0x6b5 + {value: 0x0000, lo: 0x02}, + {value: 0xe105, lo: 0x80, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xbf}, + // Block 0xdf, offset 0x6b8 + {value: 0x0000, lo: 0x02}, + {value: 0x0018, lo: 0x80, hi: 0x9a}, + {value: 0x0040, lo: 0x9b, hi: 0xbf}, + // Block 0xe0, offset 0x6bb + {value: 0x0000, lo: 0x05}, + {value: 0x0008, lo: 0x80, hi: 0x8a}, + {value: 0x0040, lo: 0x8b, hi: 0x8e}, + {value: 0x3308, lo: 0x8f, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x90}, + {value: 0x3008, lo: 0x91, hi: 0xbf}, + // Block 0xe1, offset 0x6c1 + {value: 0x0000, lo: 0x05}, + {value: 0x3008, lo: 0x80, hi: 0x87}, + {value: 0x0040, lo: 0x88, hi: 0x8e}, + {value: 0x3308, lo: 0x8f, hi: 0x92}, + {value: 0x0008, lo: 0x93, hi: 0x9f}, + {value: 0x0040, lo: 0xa0, hi: 0xbf}, + // Block 0xe2, offset 0x6c7 + {value: 0x0000, lo: 0x05}, + {value: 0x0040, lo: 0x80, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xa1}, + {value: 0x0018, lo: 0xa2, hi: 0xa2}, + {value: 0x0008, lo: 0xa3, hi: 0xa3}, + {value: 0x0040, lo: 0xa4, hi: 0xbf}, + // Block 0xe3, offset 0x6cd + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0xb7}, + {value: 0x0040, lo: 0xb8, hi: 0xbf}, + // Block 0xe4, offset 0x6d0 + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0xb2}, + {value: 0x0040, lo: 0xb3, hi: 0xbf}, + // Block 0xe5, offset 0x6d3 + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0x9e}, + {value: 0x0040, lo: 0x9f, hi: 0xbf}, + // Block 0xe6, offset 0x6d6 + {value: 0x0000, lo: 0x06}, + {value: 0x0040, lo: 0x80, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x92}, + {value: 0x0040, lo: 0x93, hi: 0xa3}, + {value: 0x0008, lo: 0xa4, hi: 0xa7}, + {value: 0x0040, lo: 0xa8, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbf}, + // Block 0xe7, offset 0x6dd + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0xbb}, + {value: 0x0040, lo: 0xbc, hi: 0xbf}, + // Block 0xe8, offset 0x6e0 + {value: 0x0000, lo: 0x04}, + {value: 0x0008, lo: 0x80, hi: 0xaa}, + {value: 0x0040, lo: 0xab, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbc}, + {value: 0x0040, lo: 0xbd, hi: 0xbf}, + // Block 0xe9, offset 0x6e5 + {value: 0x0000, lo: 0x09}, + {value: 0x0008, lo: 0x80, hi: 0x88}, + {value: 0x0040, lo: 0x89, hi: 0x8f}, + {value: 0x0008, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9b}, + {value: 0x0018, lo: 0x9c, hi: 0x9c}, + {value: 0x3308, lo: 0x9d, hi: 0x9e}, + {value: 0x0018, lo: 0x9f, hi: 0x9f}, + {value: 0x03c0, lo: 0xa0, hi: 0xa3}, + {value: 0x0040, lo: 0xa4, hi: 0xbf}, + // Block 0xea, offset 0x6ef + {value: 0x0000, lo: 0x02}, + {value: 0x0018, lo: 0x80, hi: 0xb5}, + {value: 0x0040, lo: 0xb6, hi: 0xbf}, + // Block 0xeb, offset 0x6f2 + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0xa6}, + {value: 0x0040, lo: 0xa7, hi: 0xa8}, + {value: 0x0018, lo: 0xa9, hi: 0xbf}, + // Block 0xec, offset 0x6f6 + {value: 0x0000, lo: 0x0e}, + {value: 0x0018, lo: 0x80, hi: 0x9d}, + {value: 0xb5b9, lo: 0x9e, hi: 0x9e}, + {value: 0xb601, lo: 0x9f, hi: 0x9f}, + {value: 0xb649, lo: 0xa0, hi: 0xa0}, + {value: 0xb6b1, lo: 0xa1, hi: 0xa1}, + {value: 0xb719, lo: 0xa2, hi: 0xa2}, + {value: 0xb781, lo: 0xa3, hi: 0xa3}, + {value: 0xb7e9, lo: 0xa4, hi: 0xa4}, + {value: 0x3018, lo: 0xa5, hi: 0xa6}, + {value: 0x3318, lo: 0xa7, hi: 0xa9}, + {value: 0x0018, lo: 0xaa, hi: 0xac}, + {value: 0x3018, lo: 0xad, hi: 0xb2}, + {value: 0x0340, lo: 0xb3, hi: 0xba}, + {value: 0x3318, lo: 0xbb, hi: 0xbf}, + // Block 0xed, offset 0x705 + {value: 0x0000, lo: 0x0b}, + {value: 0x3318, lo: 0x80, hi: 0x82}, + {value: 0x0018, lo: 0x83, hi: 0x84}, + {value: 0x3318, lo: 0x85, hi: 0x8b}, + {value: 0x0018, lo: 0x8c, hi: 0xa9}, + {value: 0x3318, lo: 0xaa, hi: 0xad}, + {value: 0x0018, lo: 0xae, hi: 0xba}, + {value: 0xb851, lo: 0xbb, hi: 0xbb}, + {value: 0xb899, lo: 0xbc, hi: 0xbc}, + {value: 0xb8e1, lo: 0xbd, hi: 0xbd}, + {value: 0xb949, lo: 0xbe, hi: 0xbe}, + {value: 0xb9b1, lo: 0xbf, hi: 0xbf}, + // Block 0xee, offset 0x711 + {value: 0x0000, lo: 0x03}, + {value: 0xba19, lo: 0x80, hi: 0x80}, + {value: 0x0018, lo: 0x81, hi: 0xa8}, + {value: 0x0040, lo: 0xa9, hi: 0xbf}, + // Block 0xef, offset 0x715 + {value: 0x0000, lo: 0x04}, + {value: 0x0018, lo: 0x80, hi: 0x81}, + {value: 0x3318, lo: 0x82, hi: 0x84}, + {value: 0x0018, lo: 0x85, hi: 0x85}, + {value: 0x0040, lo: 0x86, hi: 0xbf}, + // Block 0xf0, offset 0x71a + {value: 0x0000, lo: 0x03}, + {value: 0x0040, lo: 0x80, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xb3}, + {value: 0x0040, lo: 0xb4, hi: 0xbf}, + // Block 0xf1, offset 0x71e + {value: 0x0000, lo: 0x04}, + {value: 0x0018, lo: 0x80, hi: 0x96}, + {value: 0x0040, lo: 0x97, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xb8}, + {value: 0x0040, lo: 0xb9, hi: 0xbf}, + // Block 0xf2, offset 0x723 + {value: 0x0000, lo: 0x03}, + {value: 0x3308, lo: 0x80, hi: 0xb6}, + {value: 0x0018, lo: 0xb7, hi: 0xba}, + {value: 0x3308, lo: 0xbb, hi: 0xbf}, + // Block 0xf3, offset 0x727 + {value: 0x0000, lo: 0x04}, + {value: 0x3308, lo: 0x80, hi: 0xac}, + {value: 0x0018, lo: 0xad, hi: 0xb4}, + {value: 0x3308, lo: 0xb5, hi: 0xb5}, + {value: 0x0018, lo: 0xb6, hi: 0xbf}, + // Block 0xf4, offset 0x72c + {value: 0x0000, lo: 0x08}, + {value: 0x0018, lo: 0x80, hi: 0x83}, + {value: 0x3308, lo: 0x84, hi: 0x84}, + {value: 0x0018, lo: 0x85, hi: 0x8b}, + {value: 0x0040, lo: 0x8c, hi: 0x9a}, + {value: 0x3308, lo: 0x9b, hi: 0x9f}, + {value: 0x0040, lo: 0xa0, hi: 0xa0}, + {value: 0x3308, lo: 0xa1, hi: 0xaf}, + {value: 0x0040, lo: 0xb0, hi: 0xbf}, + // Block 0xf5, offset 0x735 + {value: 0x0000, lo: 0x0a}, + {value: 0x3308, lo: 0x80, hi: 0x86}, + {value: 0x0040, lo: 0x87, hi: 0x87}, + {value: 0x3308, lo: 0x88, hi: 0x98}, + {value: 0x0040, lo: 0x99, hi: 0x9a}, + {value: 0x3308, lo: 0x9b, hi: 0xa1}, + {value: 0x0040, lo: 0xa2, hi: 0xa2}, + {value: 0x3308, lo: 0xa3, hi: 0xa4}, + {value: 0x0040, lo: 0xa5, hi: 0xa5}, + {value: 0x3308, lo: 0xa6, hi: 0xaa}, + {value: 0x0040, lo: 0xab, hi: 0xbf}, + // Block 0xf6, offset 0x740 + {value: 0x0000, lo: 0x05}, + {value: 0x0008, lo: 0x80, hi: 0xac}, + {value: 0x0040, lo: 0xad, hi: 0xaf}, + {value: 0x3308, lo: 0xb0, hi: 0xb6}, + {value: 0x0008, lo: 0xb7, hi: 0xbd}, + {value: 0x0040, lo: 0xbe, hi: 0xbf}, + // Block 0xf7, offset 0x746 + {value: 0x0000, lo: 0x05}, + {value: 0x0008, lo: 0x80, hi: 0x89}, + {value: 0x0040, lo: 0x8a, hi: 0x8d}, + {value: 0x0008, lo: 0x8e, hi: 0x8e}, + {value: 0x0018, lo: 0x8f, hi: 0x8f}, + {value: 0x0040, lo: 0x90, hi: 0xbf}, + // Block 0xf8, offset 0x74c + {value: 0x0000, lo: 0x05}, + {value: 0x0008, lo: 0x80, hi: 0xab}, + {value: 0x3308, lo: 0xac, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xb9}, + {value: 0x0040, lo: 0xba, hi: 0xbe}, + {value: 0x0018, lo: 0xbf, hi: 0xbf}, + // Block 0xf9, offset 0x752 + {value: 0x0000, lo: 0x05}, + {value: 0x0808, lo: 0x80, hi: 0x84}, + {value: 0x0040, lo: 0x85, hi: 0x86}, + {value: 0x0818, lo: 0x87, hi: 0x8f}, + {value: 0x3308, lo: 0x90, hi: 0x96}, + {value: 0x0040, lo: 0x97, hi: 0xbf}, + // Block 0xfa, offset 0x758 + {value: 0x0000, lo: 0x08}, + {value: 0x0a08, lo: 0x80, hi: 0x83}, + {value: 0x3308, lo: 0x84, hi: 0x8a}, + {value: 0x0b08, lo: 0x8b, hi: 0x8b}, + {value: 0x0040, lo: 0x8c, hi: 0x8f}, + {value: 0x0808, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9d}, + {value: 0x0818, lo: 0x9e, hi: 0x9f}, + {value: 0x0040, lo: 0xa0, hi: 0xbf}, + // Block 0xfb, offset 0x761 + {value: 0x0000, lo: 0x02}, + {value: 0x0040, lo: 0x80, hi: 0xb0}, + {value: 0x0818, lo: 0xb1, hi: 0xbf}, + // Block 0xfc, offset 0x764 + {value: 0x0000, lo: 0x02}, + {value: 0x0818, lo: 0x80, hi: 0xb4}, + {value: 0x0040, lo: 0xb5, hi: 0xbf}, + // Block 0xfd, offset 0x767 + {value: 0x0000, lo: 0x03}, + {value: 0x0040, lo: 0x80, hi: 0x80}, + {value: 0x0818, lo: 0x81, hi: 0xbd}, + {value: 0x0040, lo: 0xbe, hi: 0xbf}, + // Block 0xfe, offset 0x76b + {value: 0x0000, lo: 0x03}, + {value: 0x0040, lo: 0x80, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xb1}, + {value: 0x0040, lo: 0xb2, hi: 0xbf}, + // Block 0xff, offset 0x76f + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0xab}, + {value: 0x0040, lo: 0xac, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xbf}, + // Block 0x100, offset 0x773 + {value: 0x0000, lo: 0x05}, + {value: 0x0018, lo: 0x80, hi: 0x93}, + {value: 0x0040, lo: 0x94, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xae}, + {value: 0x0040, lo: 0xaf, hi: 0xb0}, + {value: 0x0018, lo: 0xb1, hi: 0xbf}, + // Block 0x101, offset 0x779 + {value: 0x0000, lo: 0x05}, + {value: 0x0040, lo: 0x80, hi: 0x80}, + {value: 0x0018, lo: 0x81, hi: 0x8f}, + {value: 0x0040, lo: 0x90, hi: 0x90}, + {value: 0x0018, lo: 0x91, hi: 0xb5}, + {value: 0x0040, lo: 0xb6, hi: 0xbf}, + // Block 0x102, offset 0x77f + {value: 0x0000, lo: 0x04}, + {value: 0x0018, lo: 0x80, hi: 0x8f}, + {value: 0xc1d9, lo: 0x90, hi: 0x90}, + {value: 0x0018, lo: 0x91, hi: 0xac}, + {value: 0x0040, lo: 0xad, hi: 0xbf}, + // Block 0x103, offset 0x784 + {value: 0x0000, lo: 0x02}, + {value: 0x0040, lo: 0x80, hi: 0xa5}, + {value: 0x0018, lo: 0xa6, hi: 0xbf}, + // Block 0x104, offset 0x787 + {value: 0x0000, lo: 0x0f}, + {value: 0xc801, lo: 0x80, hi: 0x80}, + {value: 0xc851, lo: 0x81, hi: 0x81}, + {value: 0xc8a1, lo: 0x82, hi: 0x82}, + {value: 0xc8f1, lo: 0x83, hi: 0x83}, + {value: 0xc941, lo: 0x84, hi: 0x84}, + {value: 0xc991, lo: 0x85, hi: 0x85}, + {value: 0xc9e1, lo: 0x86, hi: 0x86}, + {value: 0xca31, lo: 0x87, hi: 0x87}, + {value: 0xca81, lo: 0x88, hi: 0x88}, + {value: 0x0040, lo: 0x89, hi: 0x8f}, + {value: 0xcad1, lo: 0x90, hi: 0x90}, + {value: 0xcaf1, lo: 0x91, hi: 0x91}, + {value: 0x0040, lo: 0x92, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xa5}, + {value: 0x0040, lo: 0xa6, hi: 0xbf}, + // Block 0x105, offset 0x797 + {value: 0x0000, lo: 0x06}, + {value: 0x0018, lo: 0x80, hi: 0x95}, + {value: 0x0040, lo: 0x96, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xac}, + {value: 0x0040, lo: 0xad, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xba}, + {value: 0x0040, lo: 0xbb, hi: 0xbf}, + // Block 0x106, offset 0x79e + {value: 0x0000, lo: 0x02}, + {value: 0x0018, lo: 0x80, hi: 0xb3}, + {value: 0x0040, lo: 0xb4, hi: 0xbf}, + // Block 0x107, offset 0x7a1 + {value: 0x0000, lo: 0x04}, + {value: 0x0018, lo: 0x80, hi: 0x98}, + {value: 0x0040, lo: 0x99, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xab}, + {value: 0x0040, lo: 0xac, hi: 0xbf}, + // Block 0x108, offset 0x7a6 + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0x8b}, + {value: 0x0040, lo: 0x8c, hi: 0x8f}, + {value: 0x0018, lo: 0x90, hi: 0xbf}, + // Block 0x109, offset 0x7aa + {value: 0x0000, lo: 0x05}, + {value: 0x0018, lo: 0x80, hi: 0x87}, + {value: 0x0040, lo: 0x88, hi: 0x8f}, + {value: 0x0018, lo: 0x90, hi: 0x99}, + {value: 0x0040, lo: 0x9a, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xbf}, + // Block 0x10a, offset 0x7b0 + {value: 0x0000, lo: 0x04}, + {value: 0x0018, lo: 0x80, hi: 0x87}, + {value: 0x0040, lo: 0x88, hi: 0x8f}, + {value: 0x0018, lo: 0x90, hi: 0xad}, + {value: 0x0040, lo: 0xae, hi: 0xbf}, + // Block 0x10b, offset 0x7b5 + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0x8b}, + {value: 0x0040, lo: 0x8c, hi: 0x8c}, + {value: 0x0018, lo: 0x8d, hi: 0xbf}, + // Block 0x10c, offset 0x7b9 + {value: 0x0000, lo: 0x05}, + {value: 0x0018, lo: 0x80, hi: 0xb1}, + {value: 0x0040, lo: 0xb2, hi: 0xb2}, + {value: 0x0018, lo: 0xb3, hi: 0xb6}, + {value: 0x0040, lo: 0xb7, hi: 0xb9}, + {value: 0x0018, lo: 0xba, hi: 0xbf}, + // Block 0x10d, offset 0x7bf + {value: 0x0000, lo: 0x05}, + {value: 0x0018, lo: 0x80, hi: 0xa2}, + {value: 0x0040, lo: 0xa3, hi: 0xa4}, + {value: 0x0018, lo: 0xa5, hi: 0xaa}, + {value: 0x0040, lo: 0xab, hi: 0xad}, + {value: 0x0018, lo: 0xae, hi: 0xbf}, + // Block 0x10e, offset 0x7c5 + {value: 0x0000, lo: 0x03}, + {value: 0x0018, lo: 0x80, hi: 0x8a}, + {value: 0x0040, lo: 0x8b, hi: 0x8c}, + {value: 0x0018, lo: 0x8d, hi: 0xbf}, + // Block 0x10f, offset 0x7c9 + {value: 0x0000, lo: 0x08}, + {value: 0x0018, lo: 0x80, hi: 0x93}, + {value: 0x0040, lo: 0x94, hi: 0x9f}, + {value: 0x0018, lo: 0xa0, hi: 0xad}, + {value: 0x0040, lo: 0xae, hi: 0xaf}, + {value: 0x0018, lo: 0xb0, hi: 0xb3}, + {value: 0x0040, lo: 0xb4, hi: 0xb7}, + {value: 0x0018, lo: 0xb8, hi: 0xba}, + {value: 0x0040, lo: 0xbb, hi: 0xbf}, + // Block 0x110, offset 0x7d2 + {value: 0x0000, lo: 0x04}, + {value: 0x0018, lo: 0x80, hi: 0x82}, + {value: 0x0040, lo: 0x83, hi: 0x8f}, + {value: 0x0018, lo: 0x90, hi: 0x95}, + {value: 0x0040, lo: 0x96, hi: 0xbf}, + // Block 0x111, offset 0x7d7 + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0x96}, + {value: 0x0040, lo: 0x97, hi: 0xbf}, + // Block 0x112, offset 0x7da + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0xb4}, + {value: 0x0040, lo: 0xb5, hi: 0xbf}, + // Block 0x113, offset 0x7dd + {value: 0x0000, lo: 0x03}, + {value: 0x0008, lo: 0x80, hi: 0x9d}, + {value: 0x0040, lo: 0x9e, hi: 0x9f}, + {value: 0x0008, lo: 0xa0, hi: 0xbf}, + // Block 0x114, offset 0x7e1 + {value: 0x0000, lo: 0x03}, + {value: 0x0008, lo: 0x80, hi: 0xa1}, + {value: 0x0040, lo: 0xa2, hi: 0xaf}, + {value: 0x0008, lo: 0xb0, hi: 0xbf}, + // Block 0x115, offset 0x7e5 + {value: 0x0000, lo: 0x02}, + {value: 0x0008, lo: 0x80, hi: 0xa0}, + {value: 0x0040, lo: 0xa1, hi: 0xbf}, + // Block 0x116, offset 0x7e8 + {value: 0x0020, lo: 0x0f}, + {value: 0xded1, lo: 0x80, hi: 0x89}, + {value: 0x8e35, lo: 0x8a, hi: 0x8a}, + {value: 0xe011, lo: 0x8b, hi: 0x9c}, + {value: 0x8e55, lo: 0x9d, hi: 0x9d}, + {value: 0xe251, lo: 0x9e, hi: 0xa2}, + {value: 0x8e75, lo: 0xa3, hi: 0xa3}, + {value: 0xe2f1, lo: 0xa4, hi: 0xab}, + {value: 0x7f0d, lo: 0xac, hi: 0xac}, + {value: 0xe3f1, lo: 0xad, hi: 0xaf}, + {value: 0x8e95, lo: 0xb0, hi: 0xb0}, + {value: 0xe451, lo: 0xb1, hi: 0xb6}, + {value: 0x8eb5, lo: 0xb7, hi: 0xb9}, + {value: 0xe511, lo: 0xba, hi: 0xba}, + {value: 0x8f15, lo: 0xbb, hi: 0xbb}, + {value: 0xe531, lo: 0xbc, hi: 0xbf}, + // Block 0x117, offset 0x7f8 + {value: 0x0020, lo: 0x10}, + {value: 0x93b5, lo: 0x80, hi: 0x80}, + {value: 0xf0b1, lo: 0x81, hi: 0x86}, + {value: 0x93d5, lo: 0x87, hi: 0x8a}, + {value: 0xda11, lo: 0x8b, hi: 0x8b}, + {value: 0xf171, lo: 0x8c, hi: 0x96}, + {value: 0x9455, lo: 0x97, hi: 0x97}, + {value: 0xf2d1, lo: 0x98, hi: 0xa3}, + {value: 0x9475, lo: 0xa4, hi: 0xa6}, + {value: 0xf451, lo: 0xa7, hi: 0xaa}, + {value: 0x94d5, lo: 0xab, hi: 0xab}, + {value: 0xf4d1, lo: 0xac, hi: 0xac}, + {value: 0x94f5, lo: 0xad, hi: 0xad}, + {value: 0xf4f1, lo: 0xae, hi: 0xaf}, + {value: 0x9515, lo: 0xb0, hi: 0xb1}, + {value: 0xf531, lo: 0xb2, hi: 0xbe}, + {value: 0x2040, lo: 0xbf, hi: 0xbf}, + // Block 0x118, offset 0x809 + {value: 0x0000, lo: 0x04}, + {value: 0x0040, lo: 0x80, hi: 0x80}, + {value: 0x0340, lo: 0x81, hi: 0x81}, + {value: 0x0040, lo: 0x82, hi: 0x9f}, + {value: 0x0340, lo: 0xa0, hi: 0xbf}, + // Block 0x119, offset 0x80e + {value: 0x0000, lo: 0x01}, + {value: 0x0340, lo: 0x80, hi: 0xbf}, + // Block 0x11a, offset 0x810 + {value: 0x0000, lo: 0x01}, + {value: 0x33c0, lo: 0x80, hi: 0xbf}, + // Block 0x11b, offset 0x812 + {value: 0x0000, lo: 0x02}, + {value: 0x33c0, lo: 0x80, hi: 0xaf}, + {value: 0x0040, lo: 0xb0, hi: 0xbf}, +} + +// Total table size 42780 bytes (41KiB); checksum: 29936AB9 diff --git a/vendor/golang.org/x/net/internal/timeseries/timeseries.go b/vendor/golang.org/x/net/internal/timeseries/timeseries.go index 685f0e7ea23..dc5225b6d47 100644 --- a/vendor/golang.org/x/net/internal/timeseries/timeseries.go +++ b/vendor/golang.org/x/net/internal/timeseries/timeseries.go @@ -403,9 +403,9 @@ func (ts *timeSeries) extract(l *tsLevel, start, finish time.Time, num int, resu // Where should scanning start? if dstStart.After(srcStart) { - advance := dstStart.Sub(srcStart) / srcInterval - srcIndex += int(advance) - srcStart = srcStart.Add(advance * srcInterval) + advance := int(dstStart.Sub(srcStart) / srcInterval) + srcIndex += advance + srcStart = srcStart.Add(time.Duration(advance) * srcInterval) } // The i'th value is computed as show below. diff --git a/vendor/modules.txt b/vendor/modules.txt index 06a0a3232a2..eac5d329d20 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -21,7 +21,7 @@ github.com/apparentlymart/go-cidr/cidr github.com/apparentlymart/go-textseg/textseg # github.com/armon/go-radix v1.0.0 github.com/armon/go-radix -# github.com/aws/aws-sdk-go v1.28.9 +# github.com/aws/aws-sdk-go v1.29.7 github.com/aws/aws-sdk-go/aws github.com/aws/aws-sdk-go/aws/arn github.com/aws/aws-sdk-go/aws/awserr @@ -42,6 +42,7 @@ github.com/aws/aws-sdk-go/aws/endpoints github.com/aws/aws-sdk-go/aws/request github.com/aws/aws-sdk-go/aws/session github.com/aws/aws-sdk-go/aws/signer/v4 +github.com/aws/aws-sdk-go/internal/context github.com/aws/aws-sdk-go/internal/ini github.com/aws/aws-sdk-go/internal/s3err github.com/aws/aws-sdk-go/internal/sdkio @@ -50,6 +51,7 @@ github.com/aws/aws-sdk-go/internal/sdkrand github.com/aws/aws-sdk-go/internal/sdkuri github.com/aws/aws-sdk-go/internal/shareddefaults github.com/aws/aws-sdk-go/internal/strings +github.com/aws/aws-sdk-go/internal/sync/singleflight github.com/aws/aws-sdk-go/private/protocol github.com/aws/aws-sdk-go/private/protocol/ec2query github.com/aws/aws-sdk-go/private/protocol/eventstream @@ -639,7 +641,7 @@ github.com/pelletier/go-toml # github.com/pierrec/lz4 v2.0.5+incompatible github.com/pierrec/lz4 github.com/pierrec/lz4/internal/xxh32 -# github.com/pkg/errors v0.8.1 +# github.com/pkg/errors v0.9.1 github.com/pkg/errors # github.com/pmezard/go-difflib v1.0.0 github.com/pmezard/go-difflib/difflib @@ -746,7 +748,7 @@ golang.org/x/crypto/ssh # golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee golang.org/x/mod/module golang.org/x/mod/semver -# golang.org/x/net v0.0.0-20191009170851-d66e71096ffb +# golang.org/x/net v0.0.0-20200202094626-16171245cfb2 golang.org/x/net/context golang.org/x/net/context/ctxhttp golang.org/x/net/html