diff --git a/staging/copy.sh b/staging/copy.sh index b6bfb786372..4b4f0ca6c98 100755 --- a/staging/copy.sh +++ b/staging/copy.sh @@ -76,8 +76,8 @@ cd "${CLIENT_REPO}" # save copies code from client-go into the temp folder to make sure we don't lose it by accident # TODO this is temporary until everything in certain directories is authoritative function save() { - mkdir -p "${CLIENT_REPO_TEMP}/$1" - cp -r "${CLIENT_REPO}/$1/"* "${CLIENT_REPO_TEMP}/$1" + mkdir -p "$(dirname "${CLIENT_REPO_TEMP}/$1")" + cp -r "${CLIENT_REPO}/$1"* "${CLIENT_REPO_TEMP}/" } # save everything for which the staging directory is the source of truth @@ -90,8 +90,8 @@ save "transport" save "third_party" save "plugin" save "util" - - +save "examples" +save "OWNERS" # mkcp copies file from the main repo to the client repo, it creates the directory if it doesn't exist in the client repo. function mkcp() { diff --git a/staging/src/k8s.io/client-go/Godeps/Godeps.json b/staging/src/k8s.io/client-go/Godeps/Godeps.json index d975747d111..58658ce96a7 100644 --- a/staging/src/k8s.io/client-go/Godeps/Godeps.json +++ b/staging/src/k8s.io/client-go/Godeps/Godeps.json @@ -66,12 +66,12 @@ }, { "ImportPath": "github.com/docker/distribution/digest", - "Comment": "v2.4.0-rc.1-38-gcd27f17", + "Comment": "v2.4.0-rc.1-38-gcd27f179", "Rev": "cd27f179f2c10c5d300e6d09025b538c475b0d51" }, { "ImportPath": "github.com/docker/distribution/reference", - "Comment": "v2.4.0-rc.1-38-gcd27f17", + "Comment": "v2.4.0-rc.1-38-gcd27f179", "Rev": "cd27f179f2c10c5d300e6d09025b538c475b0d51" }, { @@ -111,12 +111,12 @@ }, { "ImportPath": "github.com/gogo/protobuf/proto", - "Comment": "v0.2-33-ge18d7aa", + "Comment": "v0.2-33-ge18d7aa8", "Rev": "e18d7aa8f8c624c915db340349aad4c49b10d173" }, { "ImportPath": "github.com/gogo/protobuf/sortkeys", - "Comment": "v0.2-33-ge18d7aa", + "Comment": "v0.2-33-ge18d7aa8", "Rev": "e18d7aa8f8c624c915db340349aad4c49b10d173" }, { @@ -313,178 +313,6 @@ { "ImportPath": "gopkg.in/yaml.v2", "Rev": "53feefa2559fb8dfa8d81baad31be332c97d6c77" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/api/equality", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/api/errors", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/api/meta", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/api/resource", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/apimachinery", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/apimachinery/announced", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/apimachinery/registered", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/conversion", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/conversion/queryparams", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/fields", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/labels", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/openapi", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/runtime", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/runtime/schema", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/json", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/protobuf", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/recognizer", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/streaming", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/versioning", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/selection", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/types", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/diff", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/errors", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/framer", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/httpstream", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/intstr", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/json", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/net", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/rand", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/runtime", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/sets", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/strategicpatch", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/validation", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/validation/field", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/wait", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/util/yaml", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/version", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/pkg/watch", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/third_party/forked/golang/json", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" - }, - { - "ImportPath": "k8s.io/apimachinery/third_party/forked/golang/reflect", - "Rev": "7080e31e90e981181435294bca96c80a37db8941" } ] } diff --git a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apimachinery/announced/group_factory.go b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apimachinery/announced/group_factory.go index 2f4b0898255..afb03295dd9 100644 --- a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apimachinery/announced/group_factory.go +++ b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apimachinery/announced/group_factory.go @@ -42,10 +42,16 @@ type GroupVersionFactoryArgs struct { // GroupMetaFactoryArgs contains the group-level args of a GroupMetaFactory. type GroupMetaFactoryArgs struct { + // GroupName is the name of the API-Group + // + // example: 'servicecatalog.k8s.io' GroupName string VersionPreferenceOrder []string - ImportPrefix string - + // ImportPrefix is the base go package of the API-Group + // + // example: 'k8s.io/kubernetes/pkg/apis/autoscaling' + ImportPrefix string + // RootScopedKinds are resources that are not namespaced. RootScopedKinds sets.String // nil is allowed IgnoredKinds sets.String // nil is allowed diff --git a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apis/meta/v1/helpers.go b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apis/meta/v1/helpers.go index 877aa193d34..b62dd9ee02c 100644 --- a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apis/meta/v1/helpers.go +++ b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apis/meta/v1/helpers.go @@ -226,3 +226,9 @@ func NewUIDPreconditions(uid string) *Preconditions { u := types.UID(uid) return &Preconditions{UID: &u} } + +// HasObjectMetaSystemFieldValues returns true if fields that are managed by the system on ObjectMeta have values. +func HasObjectMetaSystemFieldValues(meta *ObjectMeta) bool { + return !meta.CreationTimestamp.Time.IsZero() || + len(meta.UID) != 0 +} diff --git a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apis/meta/v1/register.go b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apis/meta/v1/register.go index 3b8580340b2..44a9b718e4f 100644 --- a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apis/meta/v1/register.go +++ b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apis/meta/v1/register.go @@ -55,6 +55,10 @@ func AddToGroupVersion(scheme *runtime.Scheme, groupVersion schema.GroupVersion) Convert_watch_Event_to_versioned_Event, Convert_versioned_Event_to_versioned_InternalEvent, ) + + // register manually. This usually goes through the SchemeBuilder, which we cannot use here. + scheme.AddGeneratedDeepCopyFuncs(GetGeneratedDeepCopyFuncs()...) + RegisterDefaults(scheme) } // scheme is the registry for the common types that adhere to the meta v1 API spec. @@ -70,4 +74,8 @@ func init() { &GetOptions{}, &DeleteOptions{}, ) + + // register manually. This usually goes through the SchemeBuilder, which we cannot use here. + scheme.AddGeneratedDeepCopyFuncs(GetGeneratedDeepCopyFuncs()...) + RegisterDefaults(scheme) } diff --git a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go index 653e8e714a0..e9bade7690a 100644 --- a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go +++ b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go @@ -71,6 +71,11 @@ type ListMeta struct { ResourceVersion string `json:"resourceVersion,omitempty" protobuf:"bytes,2,opt,name=resourceVersion"` } +// These are internal finalizer values for Kubernetes-like APIs, must be qualified name unless defined here +const ( + FinalizerOrphan string = "orphan" +) + // ObjectMeta is metadata that all persisted resources must have, which includes all objects // users must create. type ObjectMeta struct { diff --git a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/openapi/common.go b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/openapi/common.go index e81dac9ed20..605776ed8f0 100644 --- a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/openapi/common.go +++ b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/openapi/common.go @@ -19,6 +19,7 @@ package openapi import ( "github.com/emicklei/go-restful" "github.com/go-openapi/spec" + "strings" ) // OpenAPIDefinition describes single type. Normally these definitions are auto-generated using gen-openapi. @@ -27,8 +28,10 @@ type OpenAPIDefinition struct { Dependencies []string } +type ReferenceCallback func(path string) spec.Ref + // OpenAPIDefinitions is collection of all definitions. -type OpenAPIDefinitions map[string]OpenAPIDefinition +type GetOpenAPIDefinitions func(ReferenceCallback) map[string]OpenAPIDefinition // OpenAPIDefinitionGetter gets openAPI definitions for a given type. If a type implements this interface, // the definition returned by it will be used, otherwise the auto-generated definitions will be used. See @@ -59,11 +62,18 @@ type Config struct { // OpenAPIDefinitions should provide definition for all models used by routes. Failure to provide this map // or any of the models will result in spec generation failure. - Definitions *OpenAPIDefinitions + GetDefinitions GetOpenAPIDefinitions // GetOperationIDAndTags returns operation id and tags for a restful route. It is an optional function to customize operation IDs. GetOperationIDAndTags func(servePath string, r *restful.Route) (string, []string, error) + // GetDefinitionName returns a friendly name for a definition base on the serving path. parameter `name` is the full name of the definition. + // It is an optional function to customize model names. + GetDefinitionName func(servePath string, name string) (string, spec.Extensions) + + // PostProcessSpec runs after the spec is ready to serve. It allows a final modification to the spec before serving. + PostProcessSpec func(*spec.Swagger) (*spec.Swagger, error) + // SecurityDefinitions is list of all security definitions for OpenAPI service. If this is not nil, the user of config // is responsible to provide DefaultSecurity and (maybe) add unauthorized response to CommonResponses. SecurityDefinitions *spec.SecurityDefinitions @@ -141,3 +151,10 @@ func GetOpenAPITypeFormat(typeName string) (string, string) { } return mapped[0], mapped[1] } + +func EscapeJsonPointer(p string) string { + // Escaping reference name using rfc6901 + p = strings.Replace(p, "~", "~0", -1) + p = strings.Replace(p, "/", "~1", -1) + return p +} diff --git a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/mergepatch/errors.go b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/mergepatch/errors.go new file mode 100644 index 00000000000..b9d3e6017fd --- /dev/null +++ b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/mergepatch/errors.go @@ -0,0 +1,66 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package mergepatch + +import ( + "errors" + "fmt" +) + +var ErrBadJSONDoc = errors.New("Invalid JSON document") +var ErrNoListOfLists = errors.New("Lists of lists are not supported") +var ErrBadPatchFormatForPrimitiveList = errors.New("Invalid patch format of primitive list") + +// IsPreconditionFailed returns true if the provided error indicates +// a precondition failed. +func IsPreconditionFailed(err error) bool { + _, ok := err.(ErrPreconditionFailed) + return ok +} + +type ErrPreconditionFailed struct { + message string +} + +func NewErrPreconditionFailed(target map[string]interface{}) ErrPreconditionFailed { + s := fmt.Sprintf("precondition failed for: %v", target) + return ErrPreconditionFailed{s} +} + +func (err ErrPreconditionFailed) Error() string { + return err.message +} + +type ErrConflict struct { + message string +} + +func NewErrConflict(patch, current string) ErrConflict { + s := fmt.Sprintf("patch:\n%s\nconflicts with changes made from original to current:\n%s\n", patch, current) + return ErrConflict{s} +} + +func (err ErrConflict) Error() string { + return err.message +} + +// IsConflict returns true if the provided error indicates +// a conflict between the patch and the current configuration. +func IsConflict(err error) bool { + _, ok := err.(ErrConflict) + return ok +} diff --git a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/mergepatch/util.go b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/mergepatch/util.go new file mode 100644 index 00000000000..591884e5c8c --- /dev/null +++ b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/mergepatch/util.go @@ -0,0 +1,126 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package mergepatch + +import ( + "fmt" + "reflect" + + "github.com/davecgh/go-spew/spew" + "github.com/ghodss/yaml" +) + +// PreconditionFunc asserts that an incompatible change is not present within a patch. +type PreconditionFunc func(interface{}) bool + +// RequireKeyUnchanged returns a precondition function that fails if the provided key +// is present in the patch (indicating that its value has changed). +func RequireKeyUnchanged(key string) PreconditionFunc { + return func(patch interface{}) bool { + patchMap, ok := patch.(map[string]interface{}) + if !ok { + return true + } + + // The presence of key means that its value has been changed, so the test fails. + _, ok = patchMap[key] + return !ok + } +} + +// RequireMetadataKeyUnchanged creates a precondition function that fails +// if the metadata.key is present in the patch (indicating its value +// has changed). +func RequireMetadataKeyUnchanged(key string) PreconditionFunc { + return func(patch interface{}) bool { + patchMap, ok := patch.(map[string]interface{}) + if !ok { + return true + } + patchMap1, ok := patchMap["metadata"] + if !ok { + return true + } + patchMap2, ok := patchMap1.(map[string]interface{}) + if !ok { + return true + } + _, ok = patchMap2[key] + return !ok + } +} + +func ToYAMLOrError(v interface{}) string { + y, err := toYAML(v) + if err != nil { + return err.Error() + } + + return y +} + +func toYAML(v interface{}) (string, error) { + y, err := yaml.Marshal(v) + if err != nil { + return "", fmt.Errorf("yaml marshal failed:%v\n%v\n", err, spew.Sdump(v)) + } + + return string(y), nil +} + +// HasConflicts returns true if the left and right JSON interface objects overlap with +// different values in any key. All keys are required to be strings. Since patches of the +// same Type have congruent keys, this is valid for multiple patch types. This method +// supports JSON merge patch semantics. +func HasConflicts(left, right interface{}) (bool, error) { + switch typedLeft := left.(type) { + case map[string]interface{}: + switch typedRight := right.(type) { + case map[string]interface{}: + for key, leftValue := range typedLeft { + rightValue, ok := typedRight[key] + if !ok { + return false, nil + } + return HasConflicts(leftValue, rightValue) + } + + return false, nil + default: + return true, nil + } + case []interface{}: + switch typedRight := right.(type) { + case []interface{}: + if len(typedLeft) != len(typedRight) { + return true, nil + } + + for i := range typedLeft { + return HasConflicts(typedLeft[i], typedRight[i]) + } + + return false, nil + default: + return true, nil + } + case string, float64, bool, int, int64, nil: + return !reflect.DeepEqual(left, right), nil + default: + return true, fmt.Errorf("unknown type: %v", reflect.TypeOf(left)) + } +} diff --git a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/strategicpatch/patch.go b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/strategicpatch/patch.go index 1694aea3376..4b1f42de070 100644 --- a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/strategicpatch/patch.go +++ b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/strategicpatch/patch.go @@ -23,10 +23,8 @@ import ( "strings" "k8s.io/apimachinery/pkg/util/json" + "k8s.io/apimachinery/pkg/util/mergepatch" forkedjson "k8s.io/apimachinery/third_party/forked/golang/json" - - "github.com/davecgh/go-spew/spew" - "github.com/ghodss/yaml" ) // An alternate implementation of JSON Merge Patch @@ -55,110 +53,26 @@ const ( // json marshaling and/or unmarshaling operations. type JSONMap map[string]interface{} -// IsPreconditionFailed returns true if the provided error indicates -// a precondition failed. -func IsPreconditionFailed(err error) bool { - _, ok := err.(errPreconditionFailed) - return ok -} - -type errPreconditionFailed struct { - message string -} - -func newErrPreconditionFailed(target map[string]interface{}) errPreconditionFailed { - s := fmt.Sprintf("precondition failed for: %v", target) - return errPreconditionFailed{s} -} - -func (err errPreconditionFailed) Error() string { - return err.message -} - -type errConflict struct { - message string -} - -func newErrConflict(patch, current string) errConflict { - s := fmt.Sprintf("patch:\n%s\nconflicts with changes made from original to current:\n%s\n", patch, current) - return errConflict{s} -} - -func (err errConflict) Error() string { - return err.message -} - -// IsConflict returns true if the provided error indicates -// a conflict between the patch and the current configuration. -func IsConflict(err error) bool { - _, ok := err.(errConflict) - return ok -} - -var errBadJSONDoc = fmt.Errorf("Invalid JSON document") -var errNoListOfLists = fmt.Errorf("Lists of lists are not supported") -var errBadPatchFormatForPrimitiveList = fmt.Errorf("Invalid patch format of primitive list") - // The following code is adapted from github.com/openshift/origin/pkg/util/jsonmerge. // Instead of defining a Delta that holds an original, a patch and a set of preconditions, // the reconcile method accepts a set of preconditions as an argument. -// PreconditionFunc asserts that an incompatible change is not present within a patch. -type PreconditionFunc func(interface{}) bool - -// RequireKeyUnchanged returns a precondition function that fails if the provided key -// is present in the patch (indicating that its value has changed). -func RequireKeyUnchanged(key string) PreconditionFunc { - return func(patch interface{}) bool { - patchMap, ok := patch.(map[string]interface{}) - if !ok { - return true - } - - // The presence of key means that its value has been changed, so the test fails. - _, ok = patchMap[key] - return !ok - } -} - -// RequireMetadataKeyUnchanged creates a precondition function that fails -// if the metadata.key is present in the patch (indicating its value -// has changed). -func RequireMetadataKeyUnchanged(key string) PreconditionFunc { - return func(patch interface{}) bool { - patchMap, ok := patch.(map[string]interface{}) - if !ok { - return true - } - patchMap1, ok := patchMap["metadata"] - if !ok { - return true - } - patchMap2, ok := patchMap1.(map[string]interface{}) - if !ok { - return true - } - _, ok = patchMap2[key] - return !ok - } -} - // CreateTwoWayMergePatch creates a patch that can be passed to StrategicMergePatch from an original // document and a modified document, which are passed to the method as json encoded content. It will // return a patch that yields the modified document when applied to the original document, or an error // if either of the two documents is invalid. -func CreateTwoWayMergePatch(original, modified []byte, dataStruct interface{}, fns ...PreconditionFunc) ([]byte, error) { +func CreateTwoWayMergePatch(original, modified []byte, dataStruct interface{}, fns ...mergepatch.PreconditionFunc) ([]byte, error) { originalMap := map[string]interface{}{} if len(original) > 0 { if err := json.Unmarshal(original, &originalMap); err != nil { - return nil, errBadJSONDoc + return nil, mergepatch.ErrBadJSONDoc } } modifiedMap := map[string]interface{}{} if len(modified) > 0 { if err := json.Unmarshal(modified, &modifiedMap); err != nil { - return nil, errBadJSONDoc + return nil, mergepatch.ErrBadJSONDoc } } @@ -173,7 +87,7 @@ func CreateTwoWayMergePatch(original, modified []byte, dataStruct interface{}, f // CreateTwoWayMergeMapPatch creates a patch from an original and modified JSON objects, // encoded JSONMap. // The serialized version of the map can then be passed to StrategicMergeMapPatch. -func CreateTwoWayMergeMapPatch(original, modified JSONMap, dataStruct interface{}, fns ...PreconditionFunc) (JSONMap, error) { +func CreateTwoWayMergeMapPatch(original, modified JSONMap, dataStruct interface{}, fns ...mergepatch.PreconditionFunc) (JSONMap, error) { t, err := getTagStructType(dataStruct) if err != nil { return nil, err @@ -187,7 +101,7 @@ func CreateTwoWayMergeMapPatch(original, modified JSONMap, dataStruct interface{ // Apply the preconditions to the patch, and return an error if any of them fail. for _, fn := range fns { if !fn(patchMap) { - return nil, newErrPreconditionFailed(patchMap) + return nil, mergepatch.NewErrPreconditionFailed(patchMap) } } @@ -332,7 +246,7 @@ func diffLists(original, modified []interface{}, t reflect.Type, mergeKey string return patchList, nil, err case reflect.Slice: // Lists of Lists are not permitted by the api - return nil, nil, errNoListOfLists + return nil, nil, mergepatch.ErrNoListOfLists default: return diffListsOfScalars(original, modified, ignoreChangesAndAdditions, ignoreDeletions) } @@ -523,13 +437,13 @@ func StrategicMergePatch(original, patch []byte, dataStruct interface{}) ([]byte originalMap := map[string]interface{}{} err := json.Unmarshal(original, &originalMap) if err != nil { - return nil, errBadJSONDoc + return nil, mergepatch.ErrBadJSONDoc } patchMap := map[string]interface{}{} err = json.Unmarshal(patch, &patchMap) if err != nil { - return nil, errBadJSONDoc + return nil, mergepatch.ErrBadJSONDoc } result, err := StrategicMergeMapPatch(originalMap, patchMap, dataStruct) @@ -615,7 +529,7 @@ func mergeMap(original, patch map[string]interface{}, t reflect.Type, mergeDelet } substrings := strings.SplitN(k, "/", 2) if len(substrings) <= 1 { - return nil, errBadPatchFormatForPrimitiveList + return nil, mergepatch.ErrBadPatchFormatForPrimitiveList } isDeleteList = true k = substrings[1] @@ -871,7 +785,7 @@ func sortMergeListsByNameMap(s map[string]interface{}, t reflect.Type) (map[stri if strings.HasPrefix(k, deleteFromPrimitiveListDirectivePrefix) { typedV, ok := v.([]interface{}) if !ok { - return nil, errBadPatchFormatForPrimitiveList + return nil, mergepatch.ErrBadPatchFormatForPrimitiveList } v = uniqifyAndSortScalars(typedV) } else if k != directiveMarker { @@ -1052,7 +966,7 @@ func sliceElementType(slices ...[]interface{}) (reflect.Type, error) { prevType = currentType // We don't support lists of lists yet. if prevType.Kind() == reflect.Slice { - return nil, errNoListOfLists + return nil, mergepatch.ErrNoListOfLists } } else { if prevType != currentType { @@ -1070,49 +984,6 @@ func sliceElementType(slices ...[]interface{}) (reflect.Type, error) { return prevType, nil } -// HasConflicts returns true if the left and right JSON interface objects overlap with -// different values in any key. All keys are required to be strings. Since patches of the -// same Type have congruent keys, this is valid for multiple patch types. This method -// supports JSON merge patch semantics. -func HasConflicts(left, right interface{}) (bool, error) { - switch typedLeft := left.(type) { - case map[string]interface{}: - switch typedRight := right.(type) { - case map[string]interface{}: - for key, leftValue := range typedLeft { - rightValue, ok := typedRight[key] - if !ok { - return false, nil - } - return HasConflicts(leftValue, rightValue) - } - - return false, nil - default: - return true, nil - } - case []interface{}: - switch typedRight := right.(type) { - case []interface{}: - if len(typedLeft) != len(typedRight) { - return true, nil - } - - for i := range typedLeft { - return HasConflicts(typedLeft[i], typedRight[i]) - } - - return false, nil - default: - return true, nil - } - case string, float64, bool, int, int64, nil: - return !reflect.DeepEqual(left, right), nil - default: - return true, fmt.Errorf("unknown type: %v", reflect.TypeOf(left)) - } -} - // MergingMapsHaveConflicts returns true if the left and right JSON interface // objects overlap with different values in any key. All keys are required to be // strings. Since patches of the same Type have congruent keys, this is valid @@ -1291,25 +1162,25 @@ func mapsOfMapsHaveConflicts(typedLeft, typedRight map[string]interface{}, struc // in a way that is different from how it is changed in current (e.g., deleting it, changing its // value). We also propagate values fields that do not exist in original but are explicitly // defined in modified. -func CreateThreeWayMergePatch(original, modified, current []byte, dataStruct interface{}, overwrite bool, fns ...PreconditionFunc) ([]byte, error) { +func CreateThreeWayMergePatch(original, modified, current []byte, dataStruct interface{}, overwrite bool, fns ...mergepatch.PreconditionFunc) ([]byte, error) { originalMap := map[string]interface{}{} if len(original) > 0 { if err := json.Unmarshal(original, &originalMap); err != nil { - return nil, errBadJSONDoc + return nil, mergepatch.ErrBadJSONDoc } } modifiedMap := map[string]interface{}{} if len(modified) > 0 { if err := json.Unmarshal(modified, &modifiedMap); err != nil { - return nil, errBadJSONDoc + return nil, mergepatch.ErrBadJSONDoc } } currentMap := map[string]interface{}{} if len(current) > 0 { if err := json.Unmarshal(current, ¤tMap); err != nil { - return nil, errBadJSONDoc + return nil, mergepatch.ErrBadJSONDoc } } @@ -1340,7 +1211,7 @@ func CreateThreeWayMergePatch(original, modified, current []byte, dataStruct int // Apply the preconditions to the patch, and return an error if any of them fail. for _, fn := range fns { if !fn(patchMap) { - return nil, newErrPreconditionFailed(patchMap) + return nil, mergepatch.NewErrPreconditionFailed(patchMap) } } @@ -1358,27 +1229,9 @@ func CreateThreeWayMergePatch(original, modified, current []byte, dataStruct int } if hasConflicts { - return nil, newErrConflict(toYAMLOrError(patchMap), toYAMLOrError(changedMap)) + return nil, mergepatch.NewErrConflict(mergepatch.ToYAMLOrError(patchMap), mergepatch.ToYAMLOrError(changedMap)) } } return json.Marshal(patchMap) } - -func toYAMLOrError(v interface{}) string { - y, err := toYAML(v) - if err != nil { - return err.Error() - } - - return y -} - -func toYAML(v interface{}) (string, error) { - y, err := yaml.Marshal(v) - if err != nil { - return "", fmt.Errorf("yaml marshal failed:%v\n%v\n", err, spew.Sdump(v)) - } - - return string(y), nil -} diff --git a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/watch/until.go b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/watch/until.go index 31ed280ddc9..6e139de5907 100644 --- a/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/watch/until.go +++ b/staging/src/k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/watch/until.go @@ -17,6 +17,7 @@ limitations under the License. package watch import ( + "errors" "time" "k8s.io/apimachinery/pkg/util/wait" @@ -28,6 +29,9 @@ import ( // from false to true). type ConditionFunc func(event Event) (bool, error) +// errWatchClosed is returned when the watch channel is closed before timeout in Until. +var errWatchClosed = errors.New("watch closed before Until timeout") + // Until reads items from the watch until each provided condition succeeds, and then returns the last watch // encountered. The first condition that returns an error terminates the watch (and the event is also returned). // If no event has been received, the returned event will be nil. @@ -61,7 +65,7 @@ func Until(timeout time.Duration, watcher Interface, conditions ...ConditionFunc select { case event, ok := <-ch: if !ok { - return lastEvent, wait.ErrWaitTimeout + return lastEvent, errWatchClosed } lastEvent = &event diff --git a/staging/src/k8s.io/client-go/kubernetes/clientset.go b/staging/src/k8s.io/client-go/kubernetes/clientset.go index 5e0c99ec7f2..dcf4891d91f 100644 --- a/staging/src/k8s.io/client-go/kubernetes/clientset.go +++ b/staging/src/k8s.io/client-go/kubernetes/clientset.go @@ -20,9 +20,12 @@ import ( "github.com/golang/glog" discovery "k8s.io/client-go/discovery" v1beta1apps "k8s.io/client-go/kubernetes/typed/apps/v1beta1" + v1authentication "k8s.io/client-go/kubernetes/typed/authentication/v1" v1beta1authentication "k8s.io/client-go/kubernetes/typed/authentication/v1beta1" + v1authorization "k8s.io/client-go/kubernetes/typed/authorization/v1" v1beta1authorization "k8s.io/client-go/kubernetes/typed/authorization/v1beta1" v1autoscaling "k8s.io/client-go/kubernetes/typed/autoscaling/v1" + v2alpha1autoscaling "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1" v1batch "k8s.io/client-go/kubernetes/typed/batch/v1" v2alpha1batch "k8s.io/client-go/kubernetes/typed/batch/v2alpha1" v1beta1certificates "k8s.io/client-go/kubernetes/typed/certificates/v1beta1" @@ -45,15 +48,21 @@ type Interface interface { AppsV1beta1() v1beta1apps.AppsV1beta1Interface // Deprecated: please explicitly pick a version if possible. Apps() v1beta1apps.AppsV1beta1Interface + AuthenticationV1() v1authentication.AuthenticationV1Interface + // Deprecated: please explicitly pick a version if possible. + Authentication() v1authentication.AuthenticationV1Interface AuthenticationV1beta1() v1beta1authentication.AuthenticationV1beta1Interface + + AuthorizationV1() v1authorization.AuthorizationV1Interface // Deprecated: please explicitly pick a version if possible. - Authentication() v1beta1authentication.AuthenticationV1beta1Interface + Authorization() v1authorization.AuthorizationV1Interface AuthorizationV1beta1() v1beta1authorization.AuthorizationV1beta1Interface - // Deprecated: please explicitly pick a version if possible. - Authorization() v1beta1authorization.AuthorizationV1beta1Interface + AutoscalingV1() v1autoscaling.AutoscalingV1Interface // Deprecated: please explicitly pick a version if possible. Autoscaling() v1autoscaling.AutoscalingV1Interface + AutoscalingV2alpha1() v2alpha1autoscaling.AutoscalingV2alpha1Interface + BatchV1() v1batch.BatchV1Interface // Deprecated: please explicitly pick a version if possible. Batch() v1batch.BatchV1Interface @@ -84,9 +93,12 @@ type Clientset struct { *discovery.DiscoveryClient *v1core.CoreV1Client *v1beta1apps.AppsV1beta1Client + *v1authentication.AuthenticationV1Client *v1beta1authentication.AuthenticationV1beta1Client + *v1authorization.AuthorizationV1Client *v1beta1authorization.AuthorizationV1beta1Client *v1autoscaling.AutoscalingV1Client + *v2alpha1autoscaling.AutoscalingV2alpha1Client *v1batch.BatchV1Client *v2alpha1batch.BatchV2alpha1Client *v1beta1certificates.CertificatesV1beta1Client @@ -131,6 +143,23 @@ func (c *Clientset) Apps() v1beta1apps.AppsV1beta1Interface { return c.AppsV1beta1Client } +// AuthenticationV1 retrieves the AuthenticationV1Client +func (c *Clientset) AuthenticationV1() v1authentication.AuthenticationV1Interface { + if c == nil { + return nil + } + return c.AuthenticationV1Client +} + +// Deprecated: Authentication retrieves the default version of AuthenticationClient. +// Please explicitly pick a version. +func (c *Clientset) Authentication() v1authentication.AuthenticationV1Interface { + if c == nil { + return nil + } + return c.AuthenticationV1Client +} + // AuthenticationV1beta1 retrieves the AuthenticationV1beta1Client func (c *Clientset) AuthenticationV1beta1() v1beta1authentication.AuthenticationV1beta1Interface { if c == nil { @@ -139,26 +168,25 @@ func (c *Clientset) AuthenticationV1beta1() v1beta1authentication.Authentication return c.AuthenticationV1beta1Client } -// Deprecated: Authentication retrieves the default version of AuthenticationClient. -// Please explicitly pick a version. -func (c *Clientset) Authentication() v1beta1authentication.AuthenticationV1beta1Interface { +// AuthorizationV1 retrieves the AuthorizationV1Client +func (c *Clientset) AuthorizationV1() v1authorization.AuthorizationV1Interface { if c == nil { return nil } - return c.AuthenticationV1beta1Client -} - -// AuthorizationV1beta1 retrieves the AuthorizationV1beta1Client -func (c *Clientset) AuthorizationV1beta1() v1beta1authorization.AuthorizationV1beta1Interface { - if c == nil { - return nil - } - return c.AuthorizationV1beta1Client + return c.AuthorizationV1Client } // Deprecated: Authorization retrieves the default version of AuthorizationClient. // Please explicitly pick a version. -func (c *Clientset) Authorization() v1beta1authorization.AuthorizationV1beta1Interface { +func (c *Clientset) Authorization() v1authorization.AuthorizationV1Interface { + if c == nil { + return nil + } + return c.AuthorizationV1Client +} + +// AuthorizationV1beta1 retrieves the AuthorizationV1beta1Client +func (c *Clientset) AuthorizationV1beta1() v1beta1authorization.AuthorizationV1beta1Interface { if c == nil { return nil } @@ -182,6 +210,14 @@ func (c *Clientset) Autoscaling() v1autoscaling.AutoscalingV1Interface { return c.AutoscalingV1Client } +// AutoscalingV2alpha1 retrieves the AutoscalingV2alpha1Client +func (c *Clientset) AutoscalingV2alpha1() v2alpha1autoscaling.AutoscalingV2alpha1Interface { + if c == nil { + return nil + } + return c.AutoscalingV2alpha1Client +} + // BatchV1 retrieves the BatchV1Client func (c *Clientset) BatchV1() v1batch.BatchV1Interface { if c == nil { @@ -324,10 +360,18 @@ func NewForConfig(c *rest.Config) (*Clientset, error) { if err != nil { return nil, err } + cs.AuthenticationV1Client, err = v1authentication.NewForConfig(&configShallowCopy) + if err != nil { + return nil, err + } cs.AuthenticationV1beta1Client, err = v1beta1authentication.NewForConfig(&configShallowCopy) if err != nil { return nil, err } + cs.AuthorizationV1Client, err = v1authorization.NewForConfig(&configShallowCopy) + if err != nil { + return nil, err + } cs.AuthorizationV1beta1Client, err = v1beta1authorization.NewForConfig(&configShallowCopy) if err != nil { return nil, err @@ -336,6 +380,10 @@ func NewForConfig(c *rest.Config) (*Clientset, error) { if err != nil { return nil, err } + cs.AutoscalingV2alpha1Client, err = v2alpha1autoscaling.NewForConfig(&configShallowCopy) + if err != nil { + return nil, err + } cs.BatchV1Client, err = v1batch.NewForConfig(&configShallowCopy) if err != nil { return nil, err @@ -383,9 +431,12 @@ func NewForConfigOrDie(c *rest.Config) *Clientset { var cs Clientset cs.CoreV1Client = v1core.NewForConfigOrDie(c) cs.AppsV1beta1Client = v1beta1apps.NewForConfigOrDie(c) + cs.AuthenticationV1Client = v1authentication.NewForConfigOrDie(c) cs.AuthenticationV1beta1Client = v1beta1authentication.NewForConfigOrDie(c) + cs.AuthorizationV1Client = v1authorization.NewForConfigOrDie(c) cs.AuthorizationV1beta1Client = v1beta1authorization.NewForConfigOrDie(c) cs.AutoscalingV1Client = v1autoscaling.NewForConfigOrDie(c) + cs.AutoscalingV2alpha1Client = v2alpha1autoscaling.NewForConfigOrDie(c) cs.BatchV1Client = v1batch.NewForConfigOrDie(c) cs.BatchV2alpha1Client = v2alpha1batch.NewForConfigOrDie(c) cs.CertificatesV1beta1Client = v1beta1certificates.NewForConfigOrDie(c) @@ -404,9 +455,12 @@ func New(c rest.Interface) *Clientset { var cs Clientset cs.CoreV1Client = v1core.New(c) cs.AppsV1beta1Client = v1beta1apps.New(c) + cs.AuthenticationV1Client = v1authentication.New(c) cs.AuthenticationV1beta1Client = v1beta1authentication.New(c) + cs.AuthorizationV1Client = v1authorization.New(c) cs.AuthorizationV1beta1Client = v1beta1authorization.New(c) cs.AutoscalingV1Client = v1autoscaling.New(c) + cs.AutoscalingV2alpha1Client = v2alpha1autoscaling.New(c) cs.BatchV1Client = v1batch.New(c) cs.BatchV2alpha1Client = v2alpha1batch.New(c) cs.CertificatesV1beta1Client = v1beta1certificates.New(c) diff --git a/staging/src/k8s.io/client-go/kubernetes/fake/clientset_generated.go b/staging/src/k8s.io/client-go/kubernetes/fake/clientset_generated.go index 2c2d3770288..afcde1c8bd0 100644 --- a/staging/src/k8s.io/client-go/kubernetes/fake/clientset_generated.go +++ b/staging/src/k8s.io/client-go/kubernetes/fake/clientset_generated.go @@ -24,12 +24,18 @@ import ( kubernetes "k8s.io/client-go/kubernetes" v1beta1apps "k8s.io/client-go/kubernetes/typed/apps/v1beta1" fakev1beta1apps "k8s.io/client-go/kubernetes/typed/apps/v1beta1/fake" + v1authentication "k8s.io/client-go/kubernetes/typed/authentication/v1" + fakev1authentication "k8s.io/client-go/kubernetes/typed/authentication/v1/fake" v1beta1authentication "k8s.io/client-go/kubernetes/typed/authentication/v1beta1" fakev1beta1authentication "k8s.io/client-go/kubernetes/typed/authentication/v1beta1/fake" + v1authorization "k8s.io/client-go/kubernetes/typed/authorization/v1" + fakev1authorization "k8s.io/client-go/kubernetes/typed/authorization/v1/fake" v1beta1authorization "k8s.io/client-go/kubernetes/typed/authorization/v1beta1" fakev1beta1authorization "k8s.io/client-go/kubernetes/typed/authorization/v1beta1/fake" v1autoscaling "k8s.io/client-go/kubernetes/typed/autoscaling/v1" fakev1autoscaling "k8s.io/client-go/kubernetes/typed/autoscaling/v1/fake" + v2alpha1autoscaling "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1" + fakev2alpha1autoscaling "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake" v1batch "k8s.io/client-go/kubernetes/typed/batch/v1" fakev1batch "k8s.io/client-go/kubernetes/typed/batch/v1/fake" v2alpha1batch "k8s.io/client-go/kubernetes/typed/batch/v2alpha1" @@ -105,14 +111,29 @@ func (c *Clientset) Apps() v1beta1apps.AppsV1beta1Interface { return &fakev1beta1apps.FakeAppsV1beta1{Fake: &c.Fake} } +// AuthenticationV1 retrieves the AuthenticationV1Client +func (c *Clientset) AuthenticationV1() v1authentication.AuthenticationV1Interface { + return &fakev1authentication.FakeAuthenticationV1{Fake: &c.Fake} +} + +// Authentication retrieves the AuthenticationV1Client +func (c *Clientset) Authentication() v1authentication.AuthenticationV1Interface { + return &fakev1authentication.FakeAuthenticationV1{Fake: &c.Fake} +} + // AuthenticationV1beta1 retrieves the AuthenticationV1beta1Client func (c *Clientset) AuthenticationV1beta1() v1beta1authentication.AuthenticationV1beta1Interface { return &fakev1beta1authentication.FakeAuthenticationV1beta1{Fake: &c.Fake} } -// Authentication retrieves the AuthenticationV1beta1Client -func (c *Clientset) Authentication() v1beta1authentication.AuthenticationV1beta1Interface { - return &fakev1beta1authentication.FakeAuthenticationV1beta1{Fake: &c.Fake} +// AuthorizationV1 retrieves the AuthorizationV1Client +func (c *Clientset) AuthorizationV1() v1authorization.AuthorizationV1Interface { + return &fakev1authorization.FakeAuthorizationV1{Fake: &c.Fake} +} + +// Authorization retrieves the AuthorizationV1Client +func (c *Clientset) Authorization() v1authorization.AuthorizationV1Interface { + return &fakev1authorization.FakeAuthorizationV1{Fake: &c.Fake} } // AuthorizationV1beta1 retrieves the AuthorizationV1beta1Client @@ -120,11 +141,6 @@ func (c *Clientset) AuthorizationV1beta1() v1beta1authorization.AuthorizationV1b return &fakev1beta1authorization.FakeAuthorizationV1beta1{Fake: &c.Fake} } -// Authorization retrieves the AuthorizationV1beta1Client -func (c *Clientset) Authorization() v1beta1authorization.AuthorizationV1beta1Interface { - return &fakev1beta1authorization.FakeAuthorizationV1beta1{Fake: &c.Fake} -} - // AutoscalingV1 retrieves the AutoscalingV1Client func (c *Clientset) AutoscalingV1() v1autoscaling.AutoscalingV1Interface { return &fakev1autoscaling.FakeAutoscalingV1{Fake: &c.Fake} @@ -135,6 +151,11 @@ func (c *Clientset) Autoscaling() v1autoscaling.AutoscalingV1Interface { return &fakev1autoscaling.FakeAutoscalingV1{Fake: &c.Fake} } +// AutoscalingV2alpha1 retrieves the AutoscalingV2alpha1Client +func (c *Clientset) AutoscalingV2alpha1() v2alpha1autoscaling.AutoscalingV2alpha1Interface { + return &fakev2alpha1autoscaling.FakeAutoscalingV2alpha1{Fake: &c.Fake} +} + // BatchV1 retrieves the BatchV1Client func (c *Clientset) BatchV1() v1batch.BatchV1Interface { return &fakev1batch.FakeBatchV1{Fake: &c.Fake} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/authentication_client.go b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/authentication_client.go new file mode 100644 index 00000000000..c2aae4f88f4 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/authentication_client.go @@ -0,0 +1,97 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + fmt "fmt" + schema "k8s.io/apimachinery/pkg/runtime/schema" + serializer "k8s.io/apimachinery/pkg/runtime/serializer" + api "k8s.io/client-go/pkg/api" + rest "k8s.io/client-go/rest" +) + +type AuthenticationV1Interface interface { + RESTClient() rest.Interface + TokenReviewsGetter +} + +// AuthenticationV1Client is used to interact with features provided by the authentication.k8s.io group. +type AuthenticationV1Client struct { + restClient rest.Interface +} + +func (c *AuthenticationV1Client) TokenReviews() TokenReviewInterface { + return newTokenReviews(c) +} + +// NewForConfig creates a new AuthenticationV1Client for the given config. +func NewForConfig(c *rest.Config) (*AuthenticationV1Client, error) { + config := *c + if err := setConfigDefaults(&config); err != nil { + return nil, err + } + client, err := rest.RESTClientFor(&config) + if err != nil { + return nil, err + } + return &AuthenticationV1Client{client}, nil +} + +// NewForConfigOrDie creates a new AuthenticationV1Client for the given config and +// panics if there is an error in the config. +func NewForConfigOrDie(c *rest.Config) *AuthenticationV1Client { + client, err := NewForConfig(c) + if err != nil { + panic(err) + } + return client +} + +// New creates a new AuthenticationV1Client for the given RESTClient. +func New(c rest.Interface) *AuthenticationV1Client { + return &AuthenticationV1Client{c} +} + +func setConfigDefaults(config *rest.Config) error { + gv, err := schema.ParseGroupVersion("authentication.k8s.io/v1") + if err != nil { + return err + } + // if authentication.k8s.io/v1 is not enabled, return an error + if !api.Registry.IsEnabledVersion(gv) { + return fmt.Errorf("authentication.k8s.io/v1 is not enabled") + } + config.APIPath = "/apis" + if config.UserAgent == "" { + config.UserAgent = rest.DefaultKubernetesUserAgent() + } + copyGroupVersion := gv + config.GroupVersion = ©GroupVersion + + config.NegotiatedSerializer = serializer.DirectCodecFactory{CodecFactory: api.Codecs} + + return nil +} + +// RESTClient returns a RESTClient that is used to communicate +// with API server by this client implementation. +func (c *AuthenticationV1Client) RESTClient() rest.Interface { + if c == nil { + return nil + } + return c.restClient +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/doc.go b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/doc.go new file mode 100644 index 00000000000..54673bfa738 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/doc.go @@ -0,0 +1,20 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This package is generated by client-gen with custom arguments. + +// This package has the automatically generated typed clients. +package v1 diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/fake/doc.go b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/fake/doc.go new file mode 100644 index 00000000000..c6548330a0d --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/fake/doc.go @@ -0,0 +1,20 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This package is generated by client-gen with custom arguments. + +// Package fake has the automatically generated clients. +package fake diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/fake/fake_authentication_client.go b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/fake/fake_authentication_client.go new file mode 100644 index 00000000000..85eb00ddfda --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/fake/fake_authentication_client.go @@ -0,0 +1,38 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package fake + +import ( + v1 "k8s.io/client-go/kubernetes/typed/authentication/v1" + rest "k8s.io/client-go/rest" + testing "k8s.io/client-go/testing" +) + +type FakeAuthenticationV1 struct { + *testing.Fake +} + +func (c *FakeAuthenticationV1) TokenReviews() v1.TokenReviewInterface { + return &FakeTokenReviews{c} +} + +// RESTClient returns a RESTClient that is used to communicate +// with API server by this client implementation. +func (c *FakeAuthenticationV1) RESTClient() rest.Interface { + var ret *rest.RESTClient + return ret +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/fake/fake_tokenreview.go b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/fake/fake_tokenreview.go new file mode 100644 index 00000000000..b1c527a7113 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/fake/fake_tokenreview.go @@ -0,0 +1,22 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package fake + +// FakeTokenReviews implements TokenReviewInterface +type FakeTokenReviews struct { + Fake *FakeAuthenticationV1 +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/fake/fake_tokenreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/fake/fake_tokenreview_expansion.go new file mode 100644 index 00000000000..7bd52459809 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/fake/fake_tokenreview_expansion.go @@ -0,0 +1,27 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package fake + +import ( + authenticationapi "k8s.io/client-go/pkg/apis/authentication/v1" + core "k8s.io/client-go/testing" +) + +func (c *FakeTokenReviews) Create(tokenReview *authenticationapi.TokenReview) (result *authenticationapi.TokenReview, err error) { + obj, err := c.Fake.Invokes(core.NewRootCreateAction(authenticationapi.SchemeGroupVersion.WithResource("tokenreviews"), tokenReview), &authenticationapi.TokenReview{}) + return obj.(*authenticationapi.TokenReview), err +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/generated_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/generated_expansion.go new file mode 100644 index 00000000000..42e76d5e43c --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/generated_expansion.go @@ -0,0 +1,17 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/tokenreview.go b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/tokenreview.go new file mode 100644 index 00000000000..9cfef4e6ac0 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/tokenreview.go @@ -0,0 +1,44 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + rest "k8s.io/client-go/rest" +) + +// TokenReviewsGetter has a method to return a TokenReviewInterface. +// A group's client should implement this interface. +type TokenReviewsGetter interface { + TokenReviews() TokenReviewInterface +} + +// TokenReviewInterface has methods to work with TokenReview resources. +type TokenReviewInterface interface { + TokenReviewExpansion +} + +// tokenReviews implements TokenReviewInterface +type tokenReviews struct { + client rest.Interface +} + +// newTokenReviews returns a TokenReviews +func newTokenReviews(c *AuthenticationV1Client) *tokenReviews { + return &tokenReviews{ + client: c.RESTClient(), + } +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/tokenreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/tokenreview_expansion.go new file mode 100644 index 00000000000..fb41782fe52 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/tokenreview_expansion.go @@ -0,0 +1,35 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + authenticationapi "k8s.io/client-go/pkg/apis/authentication/v1" +) + +type TokenReviewExpansion interface { + Create(tokenReview *authenticationapi.TokenReview) (result *authenticationapi.TokenReview, err error) +} + +func (c *tokenReviews) Create(tokenReview *authenticationapi.TokenReview) (result *authenticationapi.TokenReview, err error) { + result = &authenticationapi.TokenReview{} + err = c.client.Post(). + Resource("tokenreviews"). + Body(tokenReview). + Do(). + Into(result) + return +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/authorization_client.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/authorization_client.go new file mode 100644 index 00000000000..879c0209aa7 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/authorization_client.go @@ -0,0 +1,107 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + fmt "fmt" + schema "k8s.io/apimachinery/pkg/runtime/schema" + serializer "k8s.io/apimachinery/pkg/runtime/serializer" + api "k8s.io/client-go/pkg/api" + rest "k8s.io/client-go/rest" +) + +type AuthorizationV1Interface interface { + RESTClient() rest.Interface + LocalSubjectAccessReviewsGetter + SelfSubjectAccessReviewsGetter + SubjectAccessReviewsGetter +} + +// AuthorizationV1Client is used to interact with features provided by the authorization.k8s.io group. +type AuthorizationV1Client struct { + restClient rest.Interface +} + +func (c *AuthorizationV1Client) LocalSubjectAccessReviews(namespace string) LocalSubjectAccessReviewInterface { + return newLocalSubjectAccessReviews(c, namespace) +} + +func (c *AuthorizationV1Client) SelfSubjectAccessReviews() SelfSubjectAccessReviewInterface { + return newSelfSubjectAccessReviews(c) +} + +func (c *AuthorizationV1Client) SubjectAccessReviews() SubjectAccessReviewInterface { + return newSubjectAccessReviews(c) +} + +// NewForConfig creates a new AuthorizationV1Client for the given config. +func NewForConfig(c *rest.Config) (*AuthorizationV1Client, error) { + config := *c + if err := setConfigDefaults(&config); err != nil { + return nil, err + } + client, err := rest.RESTClientFor(&config) + if err != nil { + return nil, err + } + return &AuthorizationV1Client{client}, nil +} + +// NewForConfigOrDie creates a new AuthorizationV1Client for the given config and +// panics if there is an error in the config. +func NewForConfigOrDie(c *rest.Config) *AuthorizationV1Client { + client, err := NewForConfig(c) + if err != nil { + panic(err) + } + return client +} + +// New creates a new AuthorizationV1Client for the given RESTClient. +func New(c rest.Interface) *AuthorizationV1Client { + return &AuthorizationV1Client{c} +} + +func setConfigDefaults(config *rest.Config) error { + gv, err := schema.ParseGroupVersion("authorization.k8s.io/v1") + if err != nil { + return err + } + // if authorization.k8s.io/v1 is not enabled, return an error + if !api.Registry.IsEnabledVersion(gv) { + return fmt.Errorf("authorization.k8s.io/v1 is not enabled") + } + config.APIPath = "/apis" + if config.UserAgent == "" { + config.UserAgent = rest.DefaultKubernetesUserAgent() + } + copyGroupVersion := gv + config.GroupVersion = ©GroupVersion + + config.NegotiatedSerializer = serializer.DirectCodecFactory{CodecFactory: api.Codecs} + + return nil +} + +// RESTClient returns a RESTClient that is used to communicate +// with API server by this client implementation. +func (c *AuthorizationV1Client) RESTClient() rest.Interface { + if c == nil { + return nil + } + return c.restClient +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/doc.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/doc.go new file mode 100644 index 00000000000..54673bfa738 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/doc.go @@ -0,0 +1,20 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This package is generated by client-gen with custom arguments. + +// This package has the automatically generated typed clients. +package v1 diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/doc.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/doc.go new file mode 100644 index 00000000000..c6548330a0d --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/doc.go @@ -0,0 +1,20 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This package is generated by client-gen with custom arguments. + +// Package fake has the automatically generated clients. +package fake diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_authorization_client.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_authorization_client.go new file mode 100644 index 00000000000..5107d5fc8b2 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_authorization_client.go @@ -0,0 +1,46 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package fake + +import ( + v1 "k8s.io/client-go/kubernetes/typed/authorization/v1" + rest "k8s.io/client-go/rest" + testing "k8s.io/client-go/testing" +) + +type FakeAuthorizationV1 struct { + *testing.Fake +} + +func (c *FakeAuthorizationV1) LocalSubjectAccessReviews(namespace string) v1.LocalSubjectAccessReviewInterface { + return &FakeLocalSubjectAccessReviews{c, namespace} +} + +func (c *FakeAuthorizationV1) SelfSubjectAccessReviews() v1.SelfSubjectAccessReviewInterface { + return &FakeSelfSubjectAccessReviews{c} +} + +func (c *FakeAuthorizationV1) SubjectAccessReviews() v1.SubjectAccessReviewInterface { + return &FakeSubjectAccessReviews{c} +} + +// RESTClient returns a RESTClient that is used to communicate +// with API server by this client implementation. +func (c *FakeAuthorizationV1) RESTClient() rest.Interface { + var ret *rest.RESTClient + return ret +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_localsubjectaccessreview.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_localsubjectaccessreview.go new file mode 100644 index 00000000000..a49fc9b7295 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_localsubjectaccessreview.go @@ -0,0 +1,23 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package fake + +// FakeLocalSubjectAccessReviews implements LocalSubjectAccessReviewInterface +type FakeLocalSubjectAccessReviews struct { + Fake *FakeAuthorizationV1 + ns string +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_localsubjectaccessreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_localsubjectaccessreview_expansion.go new file mode 100644 index 00000000000..e587d203288 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_localsubjectaccessreview_expansion.go @@ -0,0 +1,27 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package fake + +import ( + authorizationapi "k8s.io/client-go/pkg/apis/authorization/v1" + core "k8s.io/client-go/testing" +) + +func (c *FakeLocalSubjectAccessReviews) Create(sar *authorizationapi.LocalSubjectAccessReview) (result *authorizationapi.LocalSubjectAccessReview, err error) { + obj, err := c.Fake.Invokes(core.NewCreateAction(authorizationapi.SchemeGroupVersion.WithResource("localsubjectaccessreviews"), c.ns, sar), &authorizationapi.SubjectAccessReview{}) + return obj.(*authorizationapi.LocalSubjectAccessReview), err +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_selfsubjectaccessreview.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_selfsubjectaccessreview.go new file mode 100644 index 00000000000..26d9011b4c9 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_selfsubjectaccessreview.go @@ -0,0 +1,22 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package fake + +// FakeSelfSubjectAccessReviews implements SelfSubjectAccessReviewInterface +type FakeSelfSubjectAccessReviews struct { + Fake *FakeAuthorizationV1 +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_selfsubjectaccessreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_selfsubjectaccessreview_expansion.go new file mode 100644 index 00000000000..e0bbcb1efcf --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_selfsubjectaccessreview_expansion.go @@ -0,0 +1,27 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package fake + +import ( + authorizationapi "k8s.io/client-go/pkg/apis/authorization/v1" + core "k8s.io/client-go/testing" +) + +func (c *FakeSelfSubjectAccessReviews) Create(sar *authorizationapi.SelfSubjectAccessReview) (result *authorizationapi.SelfSubjectAccessReview, err error) { + obj, err := c.Fake.Invokes(core.NewRootCreateAction(authorizationapi.SchemeGroupVersion.WithResource("selfsubjectaccessreviews"), sar), &authorizationapi.SelfSubjectAccessReview{}) + return obj.(*authorizationapi.SelfSubjectAccessReview), err +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_subjectaccessreview.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_subjectaccessreview.go new file mode 100644 index 00000000000..778d06e593b --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_subjectaccessreview.go @@ -0,0 +1,22 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package fake + +// FakeSubjectAccessReviews implements SubjectAccessReviewInterface +type FakeSubjectAccessReviews struct { + Fake *FakeAuthorizationV1 +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_subjectaccessreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_subjectaccessreview_expansion.go new file mode 100644 index 00000000000..823d1542c31 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_subjectaccessreview_expansion.go @@ -0,0 +1,27 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package fake + +import ( + authorizationapi "k8s.io/client-go/pkg/apis/authorization/v1" + core "k8s.io/client-go/testing" +) + +func (c *FakeSubjectAccessReviews) Create(sar *authorizationapi.SubjectAccessReview) (result *authorizationapi.SubjectAccessReview, err error) { + obj, err := c.Fake.Invokes(core.NewRootCreateAction(authorizationapi.SchemeGroupVersion.WithResource("subjectaccessreviews"), sar), &authorizationapi.SubjectAccessReview{}) + return obj.(*authorizationapi.SubjectAccessReview), err +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/generated_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/generated_expansion.go new file mode 100644 index 00000000000..42e76d5e43c --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/generated_expansion.go @@ -0,0 +1,17 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/localsubjectaccessreview.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/localsubjectaccessreview.go new file mode 100644 index 00000000000..b2085bceb23 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/localsubjectaccessreview.go @@ -0,0 +1,46 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + rest "k8s.io/client-go/rest" +) + +// LocalSubjectAccessReviewsGetter has a method to return a LocalSubjectAccessReviewInterface. +// A group's client should implement this interface. +type LocalSubjectAccessReviewsGetter interface { + LocalSubjectAccessReviews(namespace string) LocalSubjectAccessReviewInterface +} + +// LocalSubjectAccessReviewInterface has methods to work with LocalSubjectAccessReview resources. +type LocalSubjectAccessReviewInterface interface { + LocalSubjectAccessReviewExpansion +} + +// localSubjectAccessReviews implements LocalSubjectAccessReviewInterface +type localSubjectAccessReviews struct { + client rest.Interface + ns string +} + +// newLocalSubjectAccessReviews returns a LocalSubjectAccessReviews +func newLocalSubjectAccessReviews(c *AuthorizationV1Client, namespace string) *localSubjectAccessReviews { + return &localSubjectAccessReviews{ + client: c.RESTClient(), + ns: namespace, + } +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/localsubjectaccessreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/localsubjectaccessreview_expansion.go new file mode 100644 index 00000000000..c3b487c72c1 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/localsubjectaccessreview_expansion.go @@ -0,0 +1,36 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + authorizationapi "k8s.io/client-go/pkg/apis/authorization/v1" +) + +type LocalSubjectAccessReviewExpansion interface { + Create(sar *authorizationapi.LocalSubjectAccessReview) (result *authorizationapi.LocalSubjectAccessReview, err error) +} + +func (c *localSubjectAccessReviews) Create(sar *authorizationapi.LocalSubjectAccessReview) (result *authorizationapi.LocalSubjectAccessReview, err error) { + result = &authorizationapi.LocalSubjectAccessReview{} + err = c.client.Post(). + Namespace(c.ns). + Resource("localsubjectaccessreviews"). + Body(sar). + Do(). + Into(result) + return +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectaccessreview.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectaccessreview.go new file mode 100644 index 00000000000..cfb019eaaf2 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectaccessreview.go @@ -0,0 +1,44 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + rest "k8s.io/client-go/rest" +) + +// SelfSubjectAccessReviewsGetter has a method to return a SelfSubjectAccessReviewInterface. +// A group's client should implement this interface. +type SelfSubjectAccessReviewsGetter interface { + SelfSubjectAccessReviews() SelfSubjectAccessReviewInterface +} + +// SelfSubjectAccessReviewInterface has methods to work with SelfSubjectAccessReview resources. +type SelfSubjectAccessReviewInterface interface { + SelfSubjectAccessReviewExpansion +} + +// selfSubjectAccessReviews implements SelfSubjectAccessReviewInterface +type selfSubjectAccessReviews struct { + client rest.Interface +} + +// newSelfSubjectAccessReviews returns a SelfSubjectAccessReviews +func newSelfSubjectAccessReviews(c *AuthorizationV1Client) *selfSubjectAccessReviews { + return &selfSubjectAccessReviews{ + client: c.RESTClient(), + } +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectaccessreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectaccessreview_expansion.go new file mode 100644 index 00000000000..10761508016 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectaccessreview_expansion.go @@ -0,0 +1,35 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + authorizationapi "k8s.io/client-go/pkg/apis/authorization/v1" +) + +type SelfSubjectAccessReviewExpansion interface { + Create(sar *authorizationapi.SelfSubjectAccessReview) (result *authorizationapi.SelfSubjectAccessReview, err error) +} + +func (c *selfSubjectAccessReviews) Create(sar *authorizationapi.SelfSubjectAccessReview) (result *authorizationapi.SelfSubjectAccessReview, err error) { + result = &authorizationapi.SelfSubjectAccessReview{} + err = c.client.Post(). + Resource("selfsubjectaccessreviews"). + Body(sar). + Do(). + Into(result) + return +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/subjectaccessreview.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/subjectaccessreview.go new file mode 100644 index 00000000000..08f6d60952c --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/subjectaccessreview.go @@ -0,0 +1,44 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + rest "k8s.io/client-go/rest" +) + +// SubjectAccessReviewsGetter has a method to return a SubjectAccessReviewInterface. +// A group's client should implement this interface. +type SubjectAccessReviewsGetter interface { + SubjectAccessReviews() SubjectAccessReviewInterface +} + +// SubjectAccessReviewInterface has methods to work with SubjectAccessReview resources. +type SubjectAccessReviewInterface interface { + SubjectAccessReviewExpansion +} + +// subjectAccessReviews implements SubjectAccessReviewInterface +type subjectAccessReviews struct { + client rest.Interface +} + +// newSubjectAccessReviews returns a SubjectAccessReviews +func newSubjectAccessReviews(c *AuthorizationV1Client) *subjectAccessReviews { + return &subjectAccessReviews{ + client: c.RESTClient(), + } +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/subjectaccessreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/subjectaccessreview_expansion.go new file mode 100644 index 00000000000..dfdf6521ae8 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/subjectaccessreview_expansion.go @@ -0,0 +1,36 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + authorizationapi "k8s.io/client-go/pkg/apis/authorization/v1" +) + +// The SubjectAccessReviewExpansion interface allows manually adding extra methods to the AuthorizationInterface. +type SubjectAccessReviewExpansion interface { + Create(sar *authorizationapi.SubjectAccessReview) (result *authorizationapi.SubjectAccessReview, err error) +} + +func (c *subjectAccessReviews) Create(sar *authorizationapi.SubjectAccessReview) (result *authorizationapi.SubjectAccessReview, err error) { + result = &authorizationapi.SubjectAccessReview{} + err = c.client.Post(). + Resource("subjectaccessreviews"). + Body(sar). + Do(). + Into(result) + return +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/autoscaling_client.go b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/autoscaling_client.go new file mode 100644 index 00000000000..c6d3bcf6f5e --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/autoscaling_client.go @@ -0,0 +1,97 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v2alpha1 + +import ( + fmt "fmt" + schema "k8s.io/apimachinery/pkg/runtime/schema" + serializer "k8s.io/apimachinery/pkg/runtime/serializer" + api "k8s.io/client-go/pkg/api" + rest "k8s.io/client-go/rest" +) + +type AutoscalingV2alpha1Interface interface { + RESTClient() rest.Interface + HorizontalPodAutoscalersGetter +} + +// AutoscalingV2alpha1Client is used to interact with features provided by the autoscaling group. +type AutoscalingV2alpha1Client struct { + restClient rest.Interface +} + +func (c *AutoscalingV2alpha1Client) HorizontalPodAutoscalers(namespace string) HorizontalPodAutoscalerInterface { + return newHorizontalPodAutoscalers(c, namespace) +} + +// NewForConfig creates a new AutoscalingV2alpha1Client for the given config. +func NewForConfig(c *rest.Config) (*AutoscalingV2alpha1Client, error) { + config := *c + if err := setConfigDefaults(&config); err != nil { + return nil, err + } + client, err := rest.RESTClientFor(&config) + if err != nil { + return nil, err + } + return &AutoscalingV2alpha1Client{client}, nil +} + +// NewForConfigOrDie creates a new AutoscalingV2alpha1Client for the given config and +// panics if there is an error in the config. +func NewForConfigOrDie(c *rest.Config) *AutoscalingV2alpha1Client { + client, err := NewForConfig(c) + if err != nil { + panic(err) + } + return client +} + +// New creates a new AutoscalingV2alpha1Client for the given RESTClient. +func New(c rest.Interface) *AutoscalingV2alpha1Client { + return &AutoscalingV2alpha1Client{c} +} + +func setConfigDefaults(config *rest.Config) error { + gv, err := schema.ParseGroupVersion("autoscaling/v2alpha1") + if err != nil { + return err + } + // if autoscaling/v2alpha1 is not enabled, return an error + if !api.Registry.IsEnabledVersion(gv) { + return fmt.Errorf("autoscaling/v2alpha1 is not enabled") + } + config.APIPath = "/apis" + if config.UserAgent == "" { + config.UserAgent = rest.DefaultKubernetesUserAgent() + } + copyGroupVersion := gv + config.GroupVersion = ©GroupVersion + + config.NegotiatedSerializer = serializer.DirectCodecFactory{CodecFactory: api.Codecs} + + return nil +} + +// RESTClient returns a RESTClient that is used to communicate +// with API server by this client implementation. +func (c *AutoscalingV2alpha1Client) RESTClient() rest.Interface { + if c == nil { + return nil + } + return c.restClient +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/doc.go b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/doc.go new file mode 100644 index 00000000000..d29bd3f4e1c --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/doc.go @@ -0,0 +1,20 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This package is generated by client-gen with custom arguments. + +// This package has the automatically generated typed clients. +package v2alpha1 diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake/doc.go b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake/doc.go new file mode 100644 index 00000000000..c6548330a0d --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake/doc.go @@ -0,0 +1,20 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This package is generated by client-gen with custom arguments. + +// Package fake has the automatically generated clients. +package fake diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake/fake_autoscaling_client.go b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake/fake_autoscaling_client.go new file mode 100644 index 00000000000..d9518a7180e --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake/fake_autoscaling_client.go @@ -0,0 +1,38 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package fake + +import ( + v2alpha1 "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1" + rest "k8s.io/client-go/rest" + testing "k8s.io/client-go/testing" +) + +type FakeAutoscalingV2alpha1 struct { + *testing.Fake +} + +func (c *FakeAutoscalingV2alpha1) HorizontalPodAutoscalers(namespace string) v2alpha1.HorizontalPodAutoscalerInterface { + return &FakeHorizontalPodAutoscalers{c, namespace} +} + +// RESTClient returns a RESTClient that is used to communicate +// with API server by this client implementation. +func (c *FakeAutoscalingV2alpha1) RESTClient() rest.Interface { + var ret *rest.RESTClient + return ret +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake/fake_horizontalpodautoscaler.go b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake/fake_horizontalpodautoscaler.go new file mode 100644 index 00000000000..f47662a0e4e --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake/fake_horizontalpodautoscaler.go @@ -0,0 +1,128 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package fake + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + labels "k8s.io/apimachinery/pkg/labels" + schema "k8s.io/apimachinery/pkg/runtime/schema" + types "k8s.io/apimachinery/pkg/types" + watch "k8s.io/apimachinery/pkg/watch" + v2alpha1 "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1" + testing "k8s.io/client-go/testing" +) + +// FakeHorizontalPodAutoscalers implements HorizontalPodAutoscalerInterface +type FakeHorizontalPodAutoscalers struct { + Fake *FakeAutoscalingV2alpha1 + ns string +} + +var horizontalpodautoscalersResource = schema.GroupVersionResource{Group: "autoscaling", Version: "v2alpha1", Resource: "horizontalpodautoscalers"} + +func (c *FakeHorizontalPodAutoscalers) Create(horizontalPodAutoscaler *v2alpha1.HorizontalPodAutoscaler) (result *v2alpha1.HorizontalPodAutoscaler, err error) { + obj, err := c.Fake. + Invokes(testing.NewCreateAction(horizontalpodautoscalersResource, c.ns, horizontalPodAutoscaler), &v2alpha1.HorizontalPodAutoscaler{}) + + if obj == nil { + return nil, err + } + return obj.(*v2alpha1.HorizontalPodAutoscaler), err +} + +func (c *FakeHorizontalPodAutoscalers) Update(horizontalPodAutoscaler *v2alpha1.HorizontalPodAutoscaler) (result *v2alpha1.HorizontalPodAutoscaler, err error) { + obj, err := c.Fake. + Invokes(testing.NewUpdateAction(horizontalpodautoscalersResource, c.ns, horizontalPodAutoscaler), &v2alpha1.HorizontalPodAutoscaler{}) + + if obj == nil { + return nil, err + } + return obj.(*v2alpha1.HorizontalPodAutoscaler), err +} + +func (c *FakeHorizontalPodAutoscalers) UpdateStatus(horizontalPodAutoscaler *v2alpha1.HorizontalPodAutoscaler) (*v2alpha1.HorizontalPodAutoscaler, error) { + obj, err := c.Fake. + Invokes(testing.NewUpdateSubresourceAction(horizontalpodautoscalersResource, "status", c.ns, horizontalPodAutoscaler), &v2alpha1.HorizontalPodAutoscaler{}) + + if obj == nil { + return nil, err + } + return obj.(*v2alpha1.HorizontalPodAutoscaler), err +} + +func (c *FakeHorizontalPodAutoscalers) Delete(name string, options *v1.DeleteOptions) error { + _, err := c.Fake. + Invokes(testing.NewDeleteAction(horizontalpodautoscalersResource, c.ns, name), &v2alpha1.HorizontalPodAutoscaler{}) + + return err +} + +func (c *FakeHorizontalPodAutoscalers) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error { + action := testing.NewDeleteCollectionAction(horizontalpodautoscalersResource, c.ns, listOptions) + + _, err := c.Fake.Invokes(action, &v2alpha1.HorizontalPodAutoscalerList{}) + return err +} + +func (c *FakeHorizontalPodAutoscalers) Get(name string, options v1.GetOptions) (result *v2alpha1.HorizontalPodAutoscaler, err error) { + obj, err := c.Fake. + Invokes(testing.NewGetAction(horizontalpodautoscalersResource, c.ns, name), &v2alpha1.HorizontalPodAutoscaler{}) + + if obj == nil { + return nil, err + } + return obj.(*v2alpha1.HorizontalPodAutoscaler), err +} + +func (c *FakeHorizontalPodAutoscalers) List(opts v1.ListOptions) (result *v2alpha1.HorizontalPodAutoscalerList, err error) { + obj, err := c.Fake. + Invokes(testing.NewListAction(horizontalpodautoscalersResource, c.ns, opts), &v2alpha1.HorizontalPodAutoscalerList{}) + + if obj == nil { + return nil, err + } + + label, _, _ := testing.ExtractFromListOptions(opts) + if label == nil { + label = labels.Everything() + } + list := &v2alpha1.HorizontalPodAutoscalerList{} + for _, item := range obj.(*v2alpha1.HorizontalPodAutoscalerList).Items { + if label.Matches(labels.Set(item.Labels)) { + list.Items = append(list.Items, item) + } + } + return list, err +} + +// Watch returns a watch.Interface that watches the requested horizontalPodAutoscalers. +func (c *FakeHorizontalPodAutoscalers) Watch(opts v1.ListOptions) (watch.Interface, error) { + return c.Fake. + InvokesWatch(testing.NewWatchAction(horizontalpodautoscalersResource, c.ns, opts)) + +} + +// Patch applies the patch and returns the patched horizontalPodAutoscaler. +func (c *FakeHorizontalPodAutoscalers) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v2alpha1.HorizontalPodAutoscaler, err error) { + obj, err := c.Fake. + Invokes(testing.NewPatchSubresourceAction(horizontalpodautoscalersResource, c.ns, name, data, subresources...), &v2alpha1.HorizontalPodAutoscaler{}) + + if obj == nil { + return nil, err + } + return obj.(*v2alpha1.HorizontalPodAutoscaler), err +} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/generated_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/generated_expansion.go new file mode 100644 index 00000000000..e40f2c5a138 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/generated_expansion.go @@ -0,0 +1,19 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v2alpha1 + +type HorizontalPodAutoscalerExpansion interface{} diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/horizontalpodautoscaler.go b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/horizontalpodautoscaler.go new file mode 100644 index 00000000000..3b02028d7f0 --- /dev/null +++ b/staging/src/k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/horizontalpodautoscaler.go @@ -0,0 +1,172 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v2alpha1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + types "k8s.io/apimachinery/pkg/types" + watch "k8s.io/apimachinery/pkg/watch" + api "k8s.io/client-go/pkg/api" + v2alpha1 "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1" + rest "k8s.io/client-go/rest" +) + +// HorizontalPodAutoscalersGetter has a method to return a HorizontalPodAutoscalerInterface. +// A group's client should implement this interface. +type HorizontalPodAutoscalersGetter interface { + HorizontalPodAutoscalers(namespace string) HorizontalPodAutoscalerInterface +} + +// HorizontalPodAutoscalerInterface has methods to work with HorizontalPodAutoscaler resources. +type HorizontalPodAutoscalerInterface interface { + Create(*v2alpha1.HorizontalPodAutoscaler) (*v2alpha1.HorizontalPodAutoscaler, error) + Update(*v2alpha1.HorizontalPodAutoscaler) (*v2alpha1.HorizontalPodAutoscaler, error) + UpdateStatus(*v2alpha1.HorizontalPodAutoscaler) (*v2alpha1.HorizontalPodAutoscaler, error) + Delete(name string, options *v1.DeleteOptions) error + DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error + Get(name string, options v1.GetOptions) (*v2alpha1.HorizontalPodAutoscaler, error) + List(opts v1.ListOptions) (*v2alpha1.HorizontalPodAutoscalerList, error) + Watch(opts v1.ListOptions) (watch.Interface, error) + Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v2alpha1.HorizontalPodAutoscaler, err error) + HorizontalPodAutoscalerExpansion +} + +// horizontalPodAutoscalers implements HorizontalPodAutoscalerInterface +type horizontalPodAutoscalers struct { + client rest.Interface + ns string +} + +// newHorizontalPodAutoscalers returns a HorizontalPodAutoscalers +func newHorizontalPodAutoscalers(c *AutoscalingV2alpha1Client, namespace string) *horizontalPodAutoscalers { + return &horizontalPodAutoscalers{ + client: c.RESTClient(), + ns: namespace, + } +} + +// Create takes the representation of a horizontalPodAutoscaler and creates it. Returns the server's representation of the horizontalPodAutoscaler, and an error, if there is any. +func (c *horizontalPodAutoscalers) Create(horizontalPodAutoscaler *v2alpha1.HorizontalPodAutoscaler) (result *v2alpha1.HorizontalPodAutoscaler, err error) { + result = &v2alpha1.HorizontalPodAutoscaler{} + err = c.client.Post(). + Namespace(c.ns). + Resource("horizontalpodautoscalers"). + Body(horizontalPodAutoscaler). + Do(). + Into(result) + return +} + +// Update takes the representation of a horizontalPodAutoscaler and updates it. Returns the server's representation of the horizontalPodAutoscaler, and an error, if there is any. +func (c *horizontalPodAutoscalers) Update(horizontalPodAutoscaler *v2alpha1.HorizontalPodAutoscaler) (result *v2alpha1.HorizontalPodAutoscaler, err error) { + result = &v2alpha1.HorizontalPodAutoscaler{} + err = c.client.Put(). + Namespace(c.ns). + Resource("horizontalpodautoscalers"). + Name(horizontalPodAutoscaler.Name). + Body(horizontalPodAutoscaler). + Do(). + Into(result) + return +} + +// UpdateStatus was generated because the type contains a Status member. +// Add a +genclientstatus=false comment above the type to avoid generating UpdateStatus(). + +func (c *horizontalPodAutoscalers) UpdateStatus(horizontalPodAutoscaler *v2alpha1.HorizontalPodAutoscaler) (result *v2alpha1.HorizontalPodAutoscaler, err error) { + result = &v2alpha1.HorizontalPodAutoscaler{} + err = c.client.Put(). + Namespace(c.ns). + Resource("horizontalpodautoscalers"). + Name(horizontalPodAutoscaler.Name). + SubResource("status"). + Body(horizontalPodAutoscaler). + Do(). + Into(result) + return +} + +// Delete takes name of the horizontalPodAutoscaler and deletes it. Returns an error if one occurs. +func (c *horizontalPodAutoscalers) Delete(name string, options *v1.DeleteOptions) error { + return c.client.Delete(). + Namespace(c.ns). + Resource("horizontalpodautoscalers"). + Name(name). + Body(options). + Do(). + Error() +} + +// DeleteCollection deletes a collection of objects. +func (c *horizontalPodAutoscalers) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error { + return c.client.Delete(). + Namespace(c.ns). + Resource("horizontalpodautoscalers"). + VersionedParams(&listOptions, api.ParameterCodec). + Body(options). + Do(). + Error() +} + +// Get takes name of the horizontalPodAutoscaler, and returns the corresponding horizontalPodAutoscaler object, and an error if there is any. +func (c *horizontalPodAutoscalers) Get(name string, options v1.GetOptions) (result *v2alpha1.HorizontalPodAutoscaler, err error) { + result = &v2alpha1.HorizontalPodAutoscaler{} + err = c.client.Get(). + Namespace(c.ns). + Resource("horizontalpodautoscalers"). + Name(name). + VersionedParams(&options, api.ParameterCodec). + Do(). + Into(result) + return +} + +// List takes label and field selectors, and returns the list of HorizontalPodAutoscalers that match those selectors. +func (c *horizontalPodAutoscalers) List(opts v1.ListOptions) (result *v2alpha1.HorizontalPodAutoscalerList, err error) { + result = &v2alpha1.HorizontalPodAutoscalerList{} + err = c.client.Get(). + Namespace(c.ns). + Resource("horizontalpodautoscalers"). + VersionedParams(&opts, api.ParameterCodec). + Do(). + Into(result) + return +} + +// Watch returns a watch.Interface that watches the requested horizontalPodAutoscalers. +func (c *horizontalPodAutoscalers) Watch(opts v1.ListOptions) (watch.Interface, error) { + return c.client.Get(). + Prefix("watch"). + Namespace(c.ns). + Resource("horizontalpodautoscalers"). + VersionedParams(&opts, api.ParameterCodec). + Watch() +} + +// Patch applies the patch and returns the patched horizontalPodAutoscaler. +func (c *horizontalPodAutoscalers) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v2alpha1.HorizontalPodAutoscaler, err error) { + result = &v2alpha1.HorizontalPodAutoscaler{} + err = c.client.Patch(pt). + Namespace(c.ns). + Resource("horizontalpodautoscalers"). + SubResource(subresources...). + Name(name). + Body(data). + Do(). + Into(result) + return +} diff --git a/staging/src/k8s.io/client-go/pkg/api/helpers.go b/staging/src/k8s.io/client-go/pkg/api/helpers.go index 283dc8062c4..256cfbcd4fe 100644 --- a/staging/src/k8s.io/client-go/pkg/api/helpers.go +++ b/staging/src/k8s.io/client-go/pkg/api/helpers.go @@ -244,7 +244,7 @@ func IsServiceIPRequested(service *Service) bool { var standardFinalizers = sets.NewString( string(FinalizerKubernetes), - FinalizerOrphan, + metav1.FinalizerOrphan, ) // HasAnnotation returns a bool if passed in annotation exists @@ -466,6 +466,11 @@ const ( // is at-your-own-risk. Pods that attempt to set an unsafe sysctl that is not enabled for a kubelet // will fail to launch. UnsafeSysctlsPodAnnotationKey string = "security.alpha.kubernetes.io/unsafe-sysctls" + + // ObjectTTLAnnotations represents a suggestion for kubelet for how long it can cache + // an object (e.g. secret, config map) before fetching it again from apiserver. + // This annotation can be attached to node. + ObjectTTLAnnotationKey string = "node.alpha.kubernetes.io/ttl" ) // TolerationToleratesTaint checks if the toleration tolerates the taint. diff --git a/staging/src/k8s.io/client-go/pkg/api/types.go b/staging/src/k8s.io/client-go/pkg/api/types.go index 3fbdb1029b4..80e6f430421 100644 --- a/staging/src/k8s.io/client-go/pkg/api/types.go +++ b/staging/src/k8s.io/client-go/pkg/api/types.go @@ -2800,10 +2800,10 @@ type NamespaceSpec struct { // FinalizerName is the name identifying a finalizer during namespace lifecycle. type FinalizerName string -// These are internal finalizer values to Kubernetes, must be qualified name unless defined here +// These are internal finalizer values to Kubernetes, must be qualified name unless defined here or +// in metav1. const ( FinalizerKubernetes FinalizerName = "kubernetes" - FinalizerOrphan string = "orphan" ) // NamespaceStatus is information about the current status of a Namespace. diff --git a/staging/src/k8s.io/client-go/pkg/api/v1/conversion.go b/staging/src/k8s.io/client-go/pkg/api/v1/conversion.go index c03da073a39..c6085166ca3 100644 --- a/staging/src/k8s.io/client-go/pkg/api/v1/conversion.go +++ b/staging/src/k8s.io/client-go/pkg/api/v1/conversion.go @@ -29,14 +29,6 @@ import ( "k8s.io/client-go/pkg/apis/extensions" ) -const ( - // Annotation key used to identify mirror pods. - mirrorAnnotationKey = "kubernetes.io/config.mirror" - - // Value used to identify mirror pods from pre-v1.1 kubelet. - mirrorAnnotationValue_1_0 = "mirror" -) - // This is a "fast-path" that avoids reflection for common types. It focuses on the objects that are // converted the most in the cluster. // TODO: generate one of these for every external API group - this is to prove the impact @@ -587,17 +579,6 @@ func Convert_api_Pod_To_v1_Pod(in *api.Pod, out *Pod, s conversion.Scope) error out.Annotations[PodInitContainerStatusesBetaAnnotationKey] = string(value) } - // We need to reset certain fields for mirror pods from pre-v1.1 kubelet - // (#15960). - // TODO: Remove this code after we drop support for v1.0 kubelets. - if value, ok := in.Annotations[mirrorAnnotationKey]; ok && value == mirrorAnnotationValue_1_0 { - // Reset the TerminationGracePeriodSeconds. - out.Spec.TerminationGracePeriodSeconds = nil - // Reset the resource requests. - for i := range out.Spec.Containers { - out.Spec.Containers[i].Resources.Requests = nil - } - } return nil } diff --git a/staging/src/k8s.io/client-go/pkg/api/v1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/api/v1/generated.pb.go index efa2e071e2e..95ab63cc595 100644 --- a/staging/src/k8s.io/client-go/pkg/api/v1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/api/v1/generated.pb.go @@ -6200,6 +6200,20 @@ func (m *PodSpec) MarshalTo(data []byte) (int, error) { i++ i = encodeVarintGenerated(data, i, uint64(len(m.SchedulerName))) i += copy(data[i:], m.SchedulerName) + if len(m.InitContainers) > 0 { + for _, msg := range m.InitContainers { + data[i] = 0xa2 + i++ + data[i] = 0x1 + i++ + i = encodeVarintGenerated(data, i, uint64(msg.Size())) + n, err := msg.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n + } + } return i, nil } @@ -6276,6 +6290,18 @@ func (m *PodStatus) MarshalTo(data []byte) (int, error) { i++ i = encodeVarintGenerated(data, i, uint64(len(m.QOSClass))) i += copy(data[i:], m.QOSClass) + if len(m.InitContainerStatuses) > 0 { + for _, msg := range m.InitContainerStatuses { + data[i] = 0x52 + i++ + i = encodeVarintGenerated(data, i, uint64(msg.Size())) + n, err := msg.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n + } + } return i, nil } @@ -10398,6 +10424,12 @@ func (m *PodSpec) Size() (n int) { } l = len(m.SchedulerName) n += 2 + l + sovGenerated(uint64(l)) + if len(m.InitContainers) > 0 { + for _, e := range m.InitContainers { + l = e.Size() + n += 2 + l + sovGenerated(uint64(l)) + } + } return n } @@ -10432,6 +10464,12 @@ func (m *PodStatus) Size() (n int) { } l = len(m.QOSClass) n += 1 + l + sovGenerated(uint64(l)) + if len(m.InitContainerStatuses) > 0 { + for _, e := range m.InitContainerStatuses { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } return n } @@ -12800,6 +12838,7 @@ func (this *PodSpec) String() string { `Subdomain:` + fmt.Sprintf("%v", this.Subdomain) + `,`, `Affinity:` + strings.Replace(fmt.Sprintf("%v", this.Affinity), "Affinity", "Affinity", 1) + `,`, `SchedulerName:` + fmt.Sprintf("%v", this.SchedulerName) + `,`, + `InitContainers:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.InitContainers), "Container", "Container", 1), `&`, ``, 1) + `,`, `}`, }, "") return s @@ -12818,6 +12857,7 @@ func (this *PodStatus) String() string { `StartTime:` + strings.Replace(fmt.Sprintf("%v", this.StartTime), "Time", "k8s_io_apimachinery_pkg_apis_meta_v1.Time", 1) + `,`, `ContainerStatuses:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.ContainerStatuses), "ContainerStatus", "ContainerStatus", 1), `&`, ``, 1) + `,`, `QOSClass:` + fmt.Sprintf("%v", this.QOSClass) + `,`, + `InitContainerStatuses:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.InitContainerStatuses), "ContainerStatus", "ContainerStatus", 1), `&`, ``, 1) + `,`, `}`, }, "") return s @@ -31869,6 +31909,37 @@ func (m *PodSpec) Unmarshal(data []byte) error { } m.SchedulerName = string(data[iNdEx:postIndex]) iNdEx = postIndex + case 20: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InitContainers", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.InitContainers = append(m.InitContainers, Container{}) + if err := m.InitContainers[len(m.InitContainers)-1].Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(data[iNdEx:]) @@ -32188,6 +32259,37 @@ func (m *PodStatus) Unmarshal(data []byte) error { } m.QOSClass = PodQOSClass(data[iNdEx:postIndex]) iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InitContainerStatuses", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.InitContainerStatuses = append(m.InitContainerStatuses, ContainerStatus{}) + if err := m.InitContainerStatuses[len(m.InitContainerStatuses)-1].Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(data[iNdEx:]) @@ -40241,653 +40343,657 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 10365 bytes of a gzipped FileDescriptorProto + // 10422 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xec, 0x7d, 0x6d, 0x6c, 0x24, 0xc7, 0x95, 0x98, 0x7b, 0x86, 0x5f, 0xf3, 0xf8, 0xb9, 0xb5, 0x1f, 0xa2, 0x68, 0x69, 0xb9, 0x6a, 0x59, 0xf2, 0x4a, 0x5a, 0x91, 0xde, 0x95, 0x64, 0xad, 0x2d, 0x47, 0x36, 0xc9, 0x21, 0x77, 0xe9, 0xfd, 0x1a, 0xd5, 0x70, 0x77, 0x65, 0x5b, 0xb1, 0xd4, 0x9c, 0x2e, 0x92, 0xad, 0xed, 0xe9, 0x1e, 0x75, 0xf7, 0x70, 0x97, 0x76, 0x0c, 0xdc, 0xf9, 0x0c, 0x5f, 0x82, 0x38, 0x89, 0x83, 0x83, 0x81, 0x20, 0x09, 0xe0, 0x4b, 0x80, 0x04, 0x4e, 0x0e, 0x41, 0xe2, 0x18, 0x67, 0xfb, 0x10, 0x5f, 0x82, 0x5c, - 0xce, 0x8e, 0x2f, 0x48, 0x0e, 0x06, 0x0e, 0xc9, 0x5d, 0x72, 0x09, 0xef, 0x44, 0x27, 0xf7, 0x33, - 0x3f, 0x72, 0xff, 0x98, 0x20, 0x09, 0xea, 0xb3, 0xab, 0x7a, 0x66, 0xd8, 0x3d, 0xd4, 0x92, 0x96, - 0x0f, 0xf7, 0x6f, 0xe6, 0xbd, 0x57, 0xaf, 0x3e, 0xba, 0xea, 0xd5, 0x7b, 0xaf, 0x5e, 0xbd, 0x82, - 0x0b, 0xf7, 0x2e, 0xc7, 0x73, 0x5e, 0x38, 0x7f, 0xaf, 0xbd, 0x4e, 0xa2, 0x80, 0x24, 0x24, 0x9e, - 0x6f, 0xdd, 0xdb, 0x9c, 0x77, 0x5a, 0xde, 0xfc, 0xf6, 0xc5, 0xf9, 0x4d, 0x12, 0x90, 0xc8, 0x49, - 0x88, 0x3b, 0xd7, 0x8a, 0xc2, 0x24, 0x44, 0x8f, 0x71, 0xea, 0xb9, 0x94, 0x7a, 0xae, 0x75, 0x6f, - 0x73, 0xce, 0x69, 0x79, 0x73, 0xdb, 0x17, 0x67, 0x9e, 0xdf, 0xf4, 0x92, 0xad, 0xf6, 0xfa, 0x5c, - 0x23, 0x6c, 0xce, 0x6f, 0x86, 0x9b, 0xe1, 0x3c, 0x2b, 0xb4, 0xde, 0xde, 0x60, 0xff, 0xd8, 0x1f, - 0xf6, 0x8b, 0x33, 0x9b, 0x79, 0x51, 0x54, 0xed, 0xb4, 0xbc, 0xa6, 0xd3, 0xd8, 0xf2, 0x02, 0x12, - 0xed, 0xa8, 0xca, 0x23, 0x12, 0x87, 0xed, 0xa8, 0x41, 0xb2, 0x4d, 0x38, 0xb0, 0x54, 0x3c, 0xdf, - 0x24, 0x89, 0xd3, 0xa5, 0xe1, 0x33, 0xf3, 0xbd, 0x4a, 0x45, 0xed, 0x20, 0xf1, 0x9a, 0x9d, 0xd5, - 0x7c, 0x34, 0xaf, 0x40, 0xdc, 0xd8, 0x22, 0x4d, 0xa7, 0xa3, 0xdc, 0x0b, 0xbd, 0xca, 0xb5, 0x13, - 0xcf, 0x9f, 0xf7, 0x82, 0x24, 0x4e, 0xa2, 0x6c, 0x21, 0xfb, 0xf7, 0x2d, 0x38, 0xb7, 0x70, 0xb7, - 0xbe, 0xec, 0x3b, 0x71, 0xe2, 0x35, 0x16, 0xfd, 0xb0, 0x71, 0xaf, 0x9e, 0x84, 0x11, 0xb9, 0x13, - 0xfa, 0xed, 0x26, 0xa9, 0xb3, 0x81, 0x40, 0x17, 0x60, 0x64, 0x9b, 0xfd, 0x5f, 0xad, 0x4e, 0x5b, - 0xe7, 0xac, 0xf3, 0x95, 0xc5, 0xa9, 0x1f, 0xef, 0xce, 0x7e, 0x60, 0x6f, 0x77, 0x76, 0xe4, 0x8e, - 0x80, 0x63, 0x45, 0x81, 0x9e, 0x86, 0xa1, 0x8d, 0x78, 0x6d, 0xa7, 0x45, 0xa6, 0x4b, 0x8c, 0x76, - 0x42, 0xd0, 0x0e, 0xad, 0xd4, 0x29, 0x14, 0x0b, 0x2c, 0x9a, 0x87, 0x4a, 0xcb, 0x89, 0x12, 0x2f, - 0xf1, 0xc2, 0x60, 0xba, 0x7c, 0xce, 0x3a, 0x3f, 0xb8, 0x78, 0x42, 0x90, 0x56, 0x6a, 0x12, 0x81, - 0x53, 0x1a, 0xda, 0x8c, 0x88, 0x38, 0xee, 0xad, 0xc0, 0xdf, 0x99, 0x1e, 0x38, 0x67, 0x9d, 0x1f, - 0x49, 0x9b, 0x81, 0x05, 0x1c, 0x2b, 0x0a, 0xfb, 0xfb, 0x25, 0x18, 0x59, 0xd8, 0xd8, 0xf0, 0x02, - 0x2f, 0xd9, 0x41, 0x6f, 0xc1, 0x58, 0x10, 0xba, 0x44, 0xfe, 0x67, 0xbd, 0x18, 0xbd, 0xf4, 0xec, - 0xdc, 0x41, 0x93, 0x6a, 0xee, 0xa6, 0x56, 0x62, 0x71, 0x6a, 0x6f, 0x77, 0x76, 0x4c, 0x87, 0x60, - 0x83, 0x23, 0x7a, 0x03, 0x46, 0x5b, 0xa1, 0xab, 0x2a, 0x28, 0xb1, 0x0a, 0x9e, 0x39, 0xb8, 0x82, - 0x5a, 0x5a, 0x60, 0x71, 0x72, 0x6f, 0x77, 0x76, 0x54, 0x03, 0x60, 0x9d, 0x1d, 0xf2, 0x61, 0x92, - 0xfe, 0x0d, 0x12, 0x4f, 0xd5, 0x50, 0x66, 0x35, 0x3c, 0x9f, 0x5f, 0x83, 0x56, 0x68, 0xf1, 0xe4, - 0xde, 0xee, 0xec, 0x64, 0x06, 0x88, 0xb3, 0xac, 0xed, 0x2f, 0xc0, 0xc4, 0x42, 0x92, 0x38, 0x8d, - 0x2d, 0xe2, 0xf2, 0xef, 0x8b, 0x5e, 0x84, 0x81, 0xc0, 0x69, 0x12, 0xf1, 0xf5, 0xcf, 0x89, 0x61, - 0x1f, 0xb8, 0xe9, 0x34, 0xc9, 0xfe, 0xee, 0xec, 0xd4, 0xed, 0xc0, 0x7b, 0xa7, 0x2d, 0xe6, 0x0c, - 0x85, 0x61, 0x46, 0x8d, 0x2e, 0x01, 0xb8, 0x64, 0xdb, 0x6b, 0x90, 0x9a, 0x93, 0x6c, 0x89, 0xd9, - 0x80, 0x44, 0x59, 0xa8, 0x2a, 0x0c, 0xd6, 0xa8, 0xec, 0x2f, 0x5b, 0x50, 0x59, 0xd8, 0x0e, 0x3d, - 0xb7, 0x16, 0xba, 0x31, 0x6a, 0xc3, 0x64, 0x2b, 0x22, 0x1b, 0x24, 0x52, 0xa0, 0x69, 0xeb, 0x5c, - 0xf9, 0xfc, 0xe8, 0xa5, 0x4b, 0x39, 0xfd, 0x36, 0x0b, 0x2d, 0x07, 0x49, 0xb4, 0xb3, 0xf8, 0x88, - 0xa8, 0x7a, 0x32, 0x83, 0xc5, 0xd9, 0x3a, 0xec, 0xbf, 0x59, 0x82, 0xd3, 0x0b, 0x5f, 0x68, 0x47, - 0xa4, 0xea, 0xc5, 0xf7, 0xb2, 0x4b, 0xc1, 0xf5, 0xe2, 0x7b, 0x37, 0xd3, 0xc1, 0x50, 0x73, 0xb0, - 0x2a, 0xe0, 0x58, 0x51, 0xa0, 0xe7, 0x61, 0x98, 0xfe, 0xbe, 0x8d, 0x57, 0x45, 0xef, 0x4f, 0x0a, - 0xe2, 0xd1, 0xaa, 0x93, 0x38, 0x55, 0x8e, 0xc2, 0x92, 0x06, 0xdd, 0x80, 0xd1, 0x06, 0x5b, 0xb9, - 0x9b, 0x37, 0x42, 0x97, 0xb0, 0x2f, 0x5c, 0x59, 0x7c, 0x8e, 0x92, 0x2f, 0xa5, 0xe0, 0xfd, 0xdd, - 0xd9, 0x69, 0xde, 0x36, 0xc1, 0x42, 0xc3, 0x61, 0xbd, 0x3c, 0xb2, 0xd5, 0x42, 0x1c, 0x60, 0x9c, - 0xa0, 0xcb, 0x22, 0x3c, 0xaf, 0xad, 0xa9, 0x41, 0xb6, 0xa6, 0xc6, 0x7a, 0xac, 0xa7, 0x7f, 0x6c, - 0x89, 0x31, 0x59, 0xf1, 0x7c, 0x53, 0x3c, 0x5c, 0x02, 0x88, 0x49, 0x23, 0x22, 0x89, 0x36, 0x2a, - 0xea, 0x33, 0xd7, 0x15, 0x06, 0x6b, 0x54, 0x74, 0xf1, 0xc7, 0x5b, 0x4e, 0xc4, 0x66, 0x8b, 0x18, - 0x1b, 0xb5, 0xf8, 0xeb, 0x12, 0x81, 0x53, 0x1a, 0x63, 0xf1, 0x97, 0x73, 0x17, 0xff, 0x6f, 0x59, - 0x30, 0xbc, 0xe8, 0x05, 0xae, 0x17, 0x6c, 0xa2, 0xb7, 0x60, 0x84, 0xca, 0x66, 0xd7, 0x49, 0x1c, - 0xb1, 0xee, 0x3f, 0x22, 0x27, 0x8f, 0x2e, 0x2a, 0xe5, 0xf4, 0x89, 0xe7, 0x28, 0x35, 0x9d, 0x44, - 0xb7, 0xd6, 0xdf, 0x26, 0x8d, 0xe4, 0x06, 0x49, 0x9c, 0xb4, 0x3b, 0x29, 0x0c, 0x2b, 0xae, 0xe8, - 0x36, 0x0c, 0x25, 0x4e, 0xb4, 0x49, 0x12, 0xb1, 0xec, 0x73, 0x16, 0x25, 0xe7, 0x81, 0xe9, 0x94, - 0x23, 0x41, 0x83, 0xa4, 0x02, 0x72, 0x8d, 0x31, 0xc1, 0x82, 0x99, 0xdd, 0x80, 0xb1, 0x25, 0xa7, - 0xe5, 0xac, 0x7b, 0xbe, 0x97, 0x78, 0x24, 0x46, 0x1f, 0x86, 0xb2, 0xe3, 0xba, 0x6c, 0x01, 0x54, - 0x16, 0x4f, 0xef, 0xed, 0xce, 0x96, 0x17, 0x5c, 0x77, 0x7f, 0x77, 0x16, 0x14, 0xd5, 0x0e, 0xa6, - 0x14, 0xe8, 0x59, 0x18, 0x70, 0xa3, 0xb0, 0x35, 0x5d, 0x62, 0x94, 0x67, 0xe8, 0x4a, 0xad, 0x46, - 0x61, 0x2b, 0x43, 0xca, 0x68, 0xec, 0x1f, 0x96, 0x00, 0x2d, 0x91, 0xd6, 0xd6, 0x4a, 0xdd, 0xf8, - 0xa6, 0xe7, 0x61, 0xa4, 0x19, 0x06, 0x5e, 0x12, 0x46, 0xb1, 0xa8, 0x90, 0xcd, 0x8b, 0x1b, 0x02, - 0x86, 0x15, 0x16, 0x9d, 0x83, 0x81, 0x56, 0xba, 0xbc, 0xc7, 0xa4, 0x68, 0x60, 0x0b, 0x9b, 0x61, - 0x28, 0x45, 0x3b, 0x26, 0x91, 0x98, 0xcf, 0x8a, 0xe2, 0x76, 0x4c, 0x22, 0xcc, 0x30, 0xe9, 0x0c, - 0xa2, 0x73, 0x4b, 0xcc, 0xd6, 0xcc, 0x0c, 0xa2, 0x18, 0xac, 0x51, 0xa1, 0x37, 0xa1, 0xc2, 0xff, - 0x61, 0xb2, 0xc1, 0xa6, 0x6e, 0xae, 0x50, 0xb8, 0x1e, 0x36, 0x1c, 0x3f, 0x3b, 0xf8, 0xe3, 0x6c, - 0xc6, 0x49, 0x46, 0x38, 0xe5, 0x69, 0xcc, 0xb8, 0xa1, 0xdc, 0x19, 0xf7, 0xb7, 0x2c, 0x40, 0x4b, - 0x5e, 0xe0, 0x92, 0xe8, 0x18, 0xb6, 0xce, 0xfe, 0x16, 0xc3, 0x1f, 0xd2, 0xa6, 0x85, 0xcd, 0x56, - 0x18, 0x90, 0x20, 0x59, 0x0a, 0x03, 0x97, 0x6f, 0xa7, 0x1f, 0x87, 0x81, 0x84, 0x56, 0xc5, 0x9b, - 0xf5, 0xb4, 0xfc, 0x2c, 0xb4, 0x82, 0xfd, 0xdd, 0xd9, 0x33, 0x9d, 0x25, 0x58, 0x13, 0x58, 0x19, - 0xf4, 0x31, 0x18, 0x8a, 0x13, 0x27, 0x69, 0xc7, 0xa2, 0xa1, 0x4f, 0xc8, 0x86, 0xd6, 0x19, 0x74, - 0x7f, 0x77, 0x76, 0x52, 0x15, 0xe3, 0x20, 0x2c, 0x0a, 0xa0, 0x67, 0x60, 0xb8, 0x49, 0xe2, 0xd8, - 0xd9, 0x94, 0x02, 0x6e, 0x52, 0x94, 0x1d, 0xbe, 0xc1, 0xc1, 0x58, 0xe2, 0xd1, 0x93, 0x30, 0x48, - 0xa2, 0x28, 0x8c, 0xc4, 0x8c, 0x18, 0x17, 0x84, 0x83, 0xcb, 0x14, 0x88, 0x39, 0xce, 0xfe, 0xcf, - 0x16, 0x4c, 0xaa, 0xb6, 0xf2, 0xba, 0x8e, 0x61, 0xc9, 0xbb, 0x00, 0x0d, 0xd9, 0xc1, 0x98, 0x2d, - 0x34, 0xad, 0x8e, 0xee, 0xd3, 0xaf, 0x73, 0x40, 0xd3, 0x3a, 0x14, 0x28, 0xc6, 0x1a, 0x5f, 0xfb, - 0xdf, 0x5a, 0x70, 0x32, 0xd3, 0xb7, 0xeb, 0x5e, 0x9c, 0xa0, 0x37, 0x3a, 0xfa, 0x37, 0x57, 0xac, - 0x7f, 0xb4, 0x34, 0xeb, 0x9d, 0x9a, 0x2f, 0x12, 0xa2, 0xf5, 0x0d, 0xc3, 0xa0, 0x97, 0x90, 0xa6, - 0xec, 0xd6, 0xf3, 0x05, 0xbb, 0xc5, 0xdb, 0x97, 0x7e, 0xa5, 0x55, 0xca, 0x03, 0x73, 0x56, 0xf6, - 0xff, 0xb6, 0xa0, 0xb2, 0x14, 0x06, 0x1b, 0xde, 0xe6, 0x0d, 0xa7, 0x75, 0x0c, 0xdf, 0xa7, 0x0e, - 0x03, 0x8c, 0x3b, 0xef, 0xc2, 0xc5, 0xbc, 0x2e, 0x88, 0x86, 0xcd, 0xd1, 0x3d, 0x95, 0x2b, 0x0b, - 0x4a, 0x4c, 0x51, 0x10, 0x66, 0xcc, 0x66, 0x5e, 0x86, 0x8a, 0x22, 0x40, 0x53, 0x50, 0xbe, 0x47, - 0xb8, 0x26, 0x59, 0xc1, 0xf4, 0x27, 0x3a, 0x05, 0x83, 0xdb, 0x8e, 0xdf, 0x16, 0x8b, 0x17, 0xf3, - 0x3f, 0x1f, 0x2f, 0x5d, 0xb6, 0xec, 0x1f, 0xb2, 0x15, 0x28, 0x2a, 0x59, 0x0e, 0xb6, 0x85, 0x70, - 0xf8, 0x8a, 0x05, 0xa7, 0xfc, 0x2e, 0x42, 0x49, 0x8c, 0xc9, 0x61, 0xc4, 0xd9, 0x63, 0xa2, 0xd9, - 0xa7, 0xba, 0x61, 0x71, 0xd7, 0xda, 0xa8, 0xac, 0x0f, 0x5b, 0x74, 0xc2, 0x39, 0x3e, 0x6b, 0xba, - 0xd0, 0x01, 0x6e, 0x09, 0x18, 0x56, 0x58, 0xfb, 0x4f, 0x2c, 0x38, 0xa5, 0xfa, 0x71, 0x8d, 0xec, - 0xd4, 0x89, 0x4f, 0x1a, 0x49, 0x18, 0xbd, 0x5f, 0x7a, 0xf2, 0x38, 0xff, 0x26, 0x5c, 0x26, 0x8d, - 0x0a, 0x06, 0xe5, 0x6b, 0x64, 0x87, 0x7f, 0x20, 0xbd, 0xa3, 0xe5, 0x03, 0x3b, 0xfa, 0x2f, 0x2c, - 0x18, 0x57, 0x1d, 0x3d, 0x86, 0x25, 0x77, 0xdd, 0x5c, 0x72, 0x1f, 0x2e, 0x38, 0x5f, 0x7b, 0x2c, - 0xb6, 0xdf, 0x29, 0xc1, 0x69, 0x45, 0x63, 0x6c, 0x47, 0xef, 0x93, 0xef, 0xd4, 0x5f, 0x77, 0xaf, - 0x91, 0x9d, 0xb5, 0x90, 0xea, 0x13, 0xdd, 0xbb, 0x8b, 0x2e, 0xc2, 0xa8, 0x4b, 0x36, 0x9c, 0xb6, - 0x9f, 0x28, 0xb5, 0x79, 0x90, 0xdb, 0x53, 0xd5, 0x14, 0x8c, 0x75, 0x1a, 0x63, 0x26, 0x0c, 0x1c, - 0x38, 0x13, 0xbe, 0x39, 0xca, 0x04, 0x57, 0xe2, 0xd0, 0xcf, 0x4b, 0x55, 0x19, 0xcd, 0x0e, 0x1a, - 0xd3, 0xed, 0x20, 0x61, 0xf3, 0x3c, 0x09, 0x83, 0x5e, 0x93, 0x6e, 0x6e, 0x25, 0x73, 0xcf, 0x5a, - 0xa5, 0x40, 0xcc, 0x71, 0xe8, 0x29, 0x18, 0x6e, 0x84, 0xcd, 0xa6, 0x13, 0xb8, 0xd3, 0x65, 0xa6, - 0x5c, 0x8d, 0xd2, 0xfd, 0x6f, 0x89, 0x83, 0xb0, 0xc4, 0xa1, 0xc7, 0x60, 0xc0, 0x89, 0x36, 0xe3, - 0xe9, 0x01, 0x46, 0x33, 0x42, 0x6b, 0x5a, 0x88, 0x36, 0x63, 0xcc, 0xa0, 0x54, 0x69, 0xba, 0x1f, - 0x46, 0xf7, 0xbc, 0x60, 0xb3, 0xea, 0x45, 0x4c, 0x03, 0xd2, 0x94, 0xa6, 0xbb, 0x0a, 0x83, 0x35, - 0x2a, 0x54, 0x83, 0xc1, 0x56, 0x18, 0x25, 0xf1, 0xf4, 0x10, 0x1b, 0xf8, 0xe7, 0x72, 0xe7, 0x19, - 0xef, 0x77, 0x2d, 0x8c, 0x92, 0xb4, 0x2b, 0xf4, 0x5f, 0x8c, 0x39, 0x23, 0xb4, 0x04, 0x65, 0x12, - 0x6c, 0x4f, 0x0f, 0x33, 0x7e, 0x1f, 0x3a, 0x98, 0xdf, 0x72, 0xb0, 0x7d, 0xc7, 0x89, 0xd2, 0x85, - 0xb9, 0x1c, 0x6c, 0x63, 0x5a, 0x1a, 0x35, 0xa0, 0x22, 0xbd, 0x2e, 0xf1, 0xf4, 0x48, 0x91, 0xa9, - 0x88, 0x05, 0x39, 0x26, 0xef, 0xb4, 0xbd, 0x88, 0x34, 0x49, 0x90, 0xc4, 0xa9, 0x05, 0x21, 0xb1, - 0x31, 0x4e, 0xf9, 0xa2, 0x06, 0x8c, 0x71, 0x45, 0xeb, 0x46, 0xd8, 0x0e, 0x92, 0x78, 0xba, 0xc2, - 0x9a, 0x9c, 0x63, 0xa2, 0xdf, 0x49, 0x4b, 0x2c, 0x9e, 0x12, 0xec, 0xc7, 0x34, 0x60, 0x8c, 0x0d, - 0xa6, 0xe8, 0x0d, 0x18, 0xf7, 0xbd, 0x6d, 0x12, 0x90, 0x38, 0xae, 0x45, 0xe1, 0x3a, 0x99, 0x06, - 0xd6, 0x9b, 0x27, 0xf3, 0xcc, 0xd5, 0x70, 0x9d, 0x2c, 0x9e, 0xd8, 0xdb, 0x9d, 0x1d, 0xbf, 0xae, - 0x97, 0xc6, 0x26, 0x33, 0xf4, 0x26, 0x4c, 0x50, 0xad, 0xce, 0x4b, 0xd9, 0x8f, 0x16, 0x67, 0x8f, - 0xf6, 0x76, 0x67, 0x27, 0xb0, 0x51, 0x1c, 0x67, 0xd8, 0xa1, 0x35, 0xa8, 0xf8, 0xde, 0x06, 0x69, - 0xec, 0x34, 0x7c, 0x32, 0x3d, 0xc6, 0x78, 0xe7, 0x2c, 0xce, 0xeb, 0x92, 0x9c, 0x6b, 0xd2, 0xea, - 0x2f, 0x4e, 0x19, 0xa1, 0x3b, 0x70, 0x26, 0x21, 0x51, 0xd3, 0x0b, 0x1c, 0xba, 0xa8, 0x84, 0x9a, - 0xc7, 0x7c, 0x02, 0xe3, 0x6c, 0xd6, 0x9e, 0x15, 0x03, 0x7b, 0x66, 0xad, 0x2b, 0x15, 0xee, 0x51, - 0x1a, 0xdd, 0x82, 0x49, 0xb6, 0x9e, 0x6a, 0x6d, 0xdf, 0xaf, 0x85, 0xbe, 0xd7, 0xd8, 0x99, 0x9e, - 0x60, 0x0c, 0x9f, 0x92, 0x96, 0xfe, 0xaa, 0x89, 0xa6, 0x16, 0x50, 0xfa, 0x0f, 0x67, 0x4b, 0x23, - 0x1f, 0x26, 0x63, 0xd2, 0x68, 0x47, 0x5e, 0xb2, 0x43, 0xe7, 0x3e, 0x79, 0x90, 0x4c, 0x4f, 0x16, - 0xb1, 0xe8, 0xea, 0x66, 0x21, 0xee, 0x66, 0xc9, 0x00, 0x71, 0x96, 0x35, 0x15, 0x15, 0x71, 0xe2, - 0x7a, 0xc1, 0xf4, 0x14, 0x93, 0x40, 0x6a, 0x7d, 0xd5, 0x29, 0x10, 0x73, 0x1c, 0x33, 0x94, 0xe9, - 0x8f, 0x5b, 0x54, 0x4a, 0x9f, 0x60, 0x84, 0xa9, 0xa1, 0x2c, 0x11, 0x38, 0xa5, 0xa1, 0x7b, 0x60, - 0x92, 0xec, 0x4c, 0x23, 0x46, 0xaa, 0x96, 0xda, 0xda, 0xda, 0x67, 0x30, 0x85, 0xa3, 0x3b, 0x30, - 0x4c, 0x82, 0xed, 0x95, 0x28, 0x6c, 0x4e, 0x9f, 0x2c, 0x22, 0x03, 0x96, 0x39, 0x31, 0xdf, 0x3f, - 0x52, 0x5d, 0x5d, 0x80, 0xb1, 0x64, 0x86, 0x1e, 0xc0, 0x74, 0x97, 0xaf, 0xc4, 0x3f, 0xca, 0x29, - 0xf6, 0x51, 0x3e, 0x21, 0xca, 0x4e, 0xaf, 0xf5, 0xa0, 0xdb, 0x3f, 0x00, 0x87, 0x7b, 0x72, 0xb7, - 0xd7, 0x61, 0x42, 0x09, 0x2a, 0xf6, 0xbd, 0xd1, 0x2c, 0x0c, 0x52, 0x59, 0x2c, 0x2d, 0xd7, 0x0a, - 0x1d, 0x54, 0x2a, 0xa2, 0x63, 0xcc, 0xe1, 0x6c, 0x50, 0xbd, 0x2f, 0x90, 0xc5, 0x9d, 0x84, 0x70, - 0x0b, 0xa6, 0xac, 0x0d, 0xaa, 0x44, 0xe0, 0x94, 0xc6, 0xfe, 0xbf, 0x5c, 0x1f, 0x48, 0xa5, 0x61, - 0x81, 0x9d, 0xe0, 0x02, 0x8c, 0x6c, 0x85, 0x71, 0x42, 0xa9, 0x59, 0x1d, 0x83, 0xa9, 0x06, 0x70, - 0x55, 0xc0, 0xb1, 0xa2, 0x40, 0xaf, 0xc0, 0x78, 0x43, 0xaf, 0x40, 0x6c, 0x63, 0xa7, 0x45, 0x11, - 0xb3, 0x76, 0x6c, 0xd2, 0xa2, 0xcb, 0x30, 0xc2, 0xdc, 0xb9, 0x8d, 0xd0, 0x17, 0xb6, 0x92, 0xdc, - 0x95, 0x47, 0x6a, 0x02, 0xbe, 0xaf, 0xfd, 0xc6, 0x8a, 0x9a, 0x5a, 0x9c, 0xb4, 0x09, 0xab, 0x35, - 0xb1, 0x81, 0x28, 0x8b, 0xf3, 0x2a, 0x83, 0x62, 0x81, 0xb5, 0xff, 0x59, 0x49, 0x1b, 0x65, 0xaa, - 0xe9, 0x13, 0xf4, 0x59, 0x18, 0xbe, 0xef, 0x78, 0x89, 0x17, 0x6c, 0x0a, 0xed, 0xe1, 0x85, 0x82, - 0xbb, 0x09, 0x2b, 0x7e, 0x97, 0x17, 0xe5, 0x3b, 0x9f, 0xf8, 0x83, 0x25, 0x43, 0xca, 0x3b, 0x6a, - 0x07, 0x01, 0xe5, 0x5d, 0xea, 0x9f, 0x37, 0xe6, 0x45, 0x39, 0x6f, 0xf1, 0x07, 0x4b, 0x86, 0x68, - 0x03, 0x40, 0xce, 0x25, 0xe2, 0x0a, 0x37, 0xea, 0x47, 0xfb, 0x61, 0xbf, 0xa6, 0x4a, 0x2f, 0x4e, - 0xd0, 0xbd, 0x36, 0xfd, 0x8f, 0x35, 0xce, 0x76, 0xc2, 0x94, 0xb0, 0xce, 0x66, 0xa1, 0xcf, 0xd1, - 0x25, 0xed, 0x44, 0x09, 0x71, 0x17, 0x92, 0xac, 0x27, 0xfa, 0x60, 0x5d, 0x72, 0xcd, 0x6b, 0x12, - 0x7d, 0xf9, 0x0b, 0x26, 0x38, 0xe5, 0x67, 0x7f, 0xaf, 0x0c, 0xd3, 0xbd, 0x9a, 0x4b, 0xa7, 0x24, - 0x79, 0xe0, 0x25, 0x4b, 0x54, 0x4d, 0xb2, 0xcc, 0x29, 0xb9, 0x2c, 0xe0, 0x58, 0x51, 0xd0, 0xb9, - 0x11, 0x7b, 0x9b, 0xd2, 0x2a, 0x18, 0x4c, 0xe7, 0x46, 0x9d, 0x41, 0xb1, 0xc0, 0x52, 0xba, 0x88, - 0x38, 0xb1, 0xf0, 0xe2, 0x6b, 0x73, 0x08, 0x33, 0x28, 0x16, 0x58, 0xdd, 0xf2, 0x1f, 0xc8, 0xb1, - 0xfc, 0x8d, 0x21, 0x1a, 0x7c, 0xb8, 0x43, 0x84, 0x3e, 0x0f, 0xb0, 0xe1, 0x05, 0x5e, 0xbc, 0xc5, - 0xb8, 0x0f, 0xf5, 0xcd, 0x5d, 0x29, 0x59, 0x2b, 0x8a, 0x0b, 0xd6, 0x38, 0xa2, 0x97, 0x60, 0x54, - 0x2d, 0xcf, 0xd5, 0xea, 0xf4, 0xb0, 0xe9, 0xf9, 0x4d, 0x65, 0x55, 0x15, 0xeb, 0x74, 0xf6, 0xdb, - 0xd9, 0xf9, 0x22, 0x56, 0x85, 0x36, 0xbe, 0x56, 0xd1, 0xf1, 0x2d, 0x1d, 0x3c, 0xbe, 0xf6, 0x7f, - 0x2a, 0xc3, 0xa4, 0x51, 0x59, 0x3b, 0x2e, 0x20, 0xd1, 0x5e, 0xa3, 0x1b, 0x96, 0x93, 0x10, 0xb1, - 0x26, 0x2f, 0xf4, 0xb3, 0x68, 0xf4, 0xed, 0x8d, 0xae, 0x05, 0xce, 0x09, 0x6d, 0x41, 0xc5, 0x77, - 0x62, 0xe6, 0x3b, 0x20, 0x62, 0x2d, 0xf6, 0xc7, 0x36, 0x35, 0x3f, 0x9c, 0x38, 0xd1, 0x76, 0x0f, - 0x5e, 0x4b, 0xca, 0x9c, 0xee, 0xb6, 0x54, 0xd9, 0x91, 0x47, 0x47, 0xaa, 0x39, 0x54, 0x23, 0xda, - 0xc1, 0x1c, 0x87, 0x2e, 0xc3, 0x58, 0x44, 0xd8, 0x4c, 0x59, 0xa2, 0xfa, 0x1c, 0x9b, 0x7a, 0x83, - 0xa9, 0xe2, 0x87, 0x35, 0x1c, 0x36, 0x28, 0x53, 0xbd, 0x7f, 0xe8, 0x00, 0xbd, 0xff, 0x19, 0x18, - 0x66, 0x3f, 0xd4, 0xac, 0x50, 0x5f, 0x68, 0x95, 0x83, 0xb1, 0xc4, 0x67, 0x27, 0xd1, 0x48, 0xc1, - 0x49, 0xf4, 0x2c, 0x4c, 0x54, 0x1d, 0xd2, 0x0c, 0x83, 0xe5, 0xc0, 0x6d, 0x85, 0x5e, 0x90, 0xa0, - 0x69, 0x18, 0x60, 0xfb, 0x09, 0x5f, 0xef, 0x03, 0x94, 0x03, 0x1e, 0xa0, 0xba, 0xbb, 0xfd, 0xff, - 0x2c, 0x18, 0xaf, 0x12, 0x9f, 0x24, 0x84, 0xdb, 0x3d, 0x31, 0x5a, 0x01, 0xb4, 0x19, 0x39, 0x0d, - 0x52, 0x23, 0x91, 0x17, 0xba, 0x75, 0xd2, 0x08, 0x03, 0x76, 0xe2, 0x42, 0x37, 0xc8, 0x33, 0x7b, - 0xbb, 0xb3, 0xe8, 0x4a, 0x07, 0x16, 0x77, 0x29, 0x81, 0x5c, 0x18, 0x6f, 0x45, 0xc4, 0x70, 0x90, - 0x59, 0xf9, 0xaa, 0x46, 0x4d, 0x2f, 0xc2, 0xb5, 0x61, 0x03, 0x84, 0x4d, 0xa6, 0xe8, 0x53, 0x30, - 0x15, 0x46, 0xad, 0x2d, 0x27, 0xa8, 0x92, 0x16, 0x09, 0x5c, 0x6a, 0x02, 0x08, 0xb3, 0xfe, 0xd4, - 0xde, 0xee, 0xec, 0xd4, 0xad, 0x0c, 0x0e, 0x77, 0x50, 0xdb, 0xbf, 0x56, 0x82, 0xd3, 0xd5, 0xf0, - 0x7e, 0x70, 0xdf, 0x89, 0xdc, 0x85, 0xda, 0x2a, 0xd7, 0xeb, 0x99, 0x77, 0x59, 0x7a, 0xb5, 0xad, - 0x9e, 0x5e, 0xed, 0xcf, 0xc1, 0xc8, 0x86, 0x47, 0x7c, 0x17, 0x93, 0x0d, 0xd1, 0xbd, 0x8b, 0x45, - 0xdc, 0xfe, 0x2b, 0xb4, 0x8c, 0xf4, 0x9b, 0x70, 0xab, 0x73, 0x45, 0xb0, 0xc1, 0x8a, 0x21, 0x6a, - 0xc3, 0x94, 0x34, 0x5c, 0x24, 0x56, 0xac, 0x8e, 0x17, 0x8a, 0xd9, 0x45, 0x66, 0x35, 0x6c, 0x3c, - 0x70, 0x86, 0x21, 0xee, 0xa8, 0x82, 0x1a, 0x9c, 0x4d, 0xba, 0x37, 0x0c, 0xb0, 0xb9, 0xc2, 0x0c, - 0x4e, 0x66, 0x3b, 0x33, 0xa8, 0xfd, 0x0f, 0x2d, 0x78, 0xa4, 0x63, 0xb4, 0x84, 0x63, 0xe1, 0x75, - 0x69, 0xd1, 0xf3, 0xe3, 0xb9, 0x9c, 0x56, 0x76, 0x1d, 0xf3, 0x62, 0xd6, 0x7d, 0x29, 0xdf, 0xba, - 0xb7, 0x6f, 0xc1, 0xa9, 0xe5, 0x66, 0x2b, 0xd9, 0xa9, 0x7a, 0xa6, 0x33, 0xfe, 0x65, 0x18, 0x6a, - 0x12, 0xd7, 0x6b, 0x37, 0xc5, 0x67, 0x9d, 0x95, 0x82, 0xf4, 0x06, 0x83, 0xee, 0xef, 0xce, 0x8e, - 0xd7, 0x93, 0x30, 0x72, 0x36, 0x09, 0x07, 0x60, 0x41, 0x6e, 0xbf, 0x6b, 0xc1, 0xa4, 0x5c, 0x50, - 0x0b, 0xae, 0x1b, 0x91, 0x38, 0x46, 0x33, 0x50, 0xf2, 0x5a, 0x82, 0x11, 0x08, 0x46, 0xa5, 0xd5, - 0x1a, 0x2e, 0x79, 0x2d, 0xf4, 0x59, 0xa8, 0xf0, 0x33, 0x9c, 0x74, 0x72, 0xf4, 0x79, 0x26, 0xc4, - 0x8c, 0xa9, 0x35, 0xc9, 0x03, 0xa7, 0xec, 0xa4, 0x5a, 0xc9, 0x44, 0x75, 0xd9, 0x3c, 0x51, 0xb8, - 0x2a, 0xe0, 0x58, 0x51, 0xa0, 0xf3, 0x30, 0x12, 0x84, 0x2e, 0x3f, 0x66, 0xe3, 0x9b, 0x2e, 0x9b, - 0x72, 0x37, 0x05, 0x0c, 0x2b, 0xac, 0xfd, 0x35, 0x0b, 0xc6, 0x64, 0x1f, 0x0b, 0x6a, 0xb8, 0x74, - 0x91, 0xa4, 0xda, 0x6d, 0xba, 0x48, 0xa8, 0x86, 0xca, 0x30, 0x86, 0x62, 0x5a, 0xee, 0x47, 0x31, - 0xb5, 0x7f, 0xa3, 0x04, 0x13, 0xb2, 0x39, 0xf5, 0xf6, 0x7a, 0x4c, 0xe8, 0xbe, 0x5d, 0x71, 0xf8, - 0xe0, 0x13, 0x39, 0xcf, 0x9e, 0xcf, 0x33, 0x5e, 0x8c, 0x6f, 0x96, 0xea, 0x05, 0x0b, 0x92, 0x0f, - 0x4e, 0x59, 0xa2, 0x6d, 0x38, 0x11, 0x84, 0x09, 0xdb, 0x0f, 0x14, 0xbe, 0x98, 0x0f, 0x3c, 0x5b, - 0xcf, 0xa3, 0xa2, 0x9e, 0x13, 0x37, 0xb3, 0xfc, 0x70, 0x67, 0x15, 0xe8, 0x96, 0x74, 0xca, 0x94, - 0x59, 0x5d, 0xcf, 0x16, 0xab, 0xab, 0xb7, 0x4f, 0xc6, 0xfe, 0x91, 0x05, 0x15, 0x49, 0x76, 0x1c, - 0x87, 0x21, 0x77, 0x61, 0x38, 0x66, 0x9f, 0x48, 0x0e, 0xd7, 0x85, 0x62, 0x5d, 0xe0, 0xdf, 0x35, - 0xdd, 0x04, 0xf9, 0xff, 0x18, 0x4b, 0x6e, 0xcc, 0x0d, 0xab, 0x3a, 0xf2, 0xbe, 0x73, 0xc3, 0xaa, - 0x96, 0xf5, 0x3e, 0xf3, 0x18, 0x37, 0xcc, 0x67, 0xaa, 0xc9, 0xb5, 0x22, 0xb2, 0xe1, 0x3d, 0xc8, - 0x6a, 0x72, 0x35, 0x06, 0xc5, 0x02, 0x8b, 0x36, 0x60, 0xac, 0x21, 0xfd, 0xb7, 0xa9, 0x08, 0xf9, - 0x48, 0x41, 0xaf, 0xb0, 0x3a, 0x60, 0xe0, 0x41, 0x2b, 0x4b, 0x1a, 0x27, 0x6c, 0xf0, 0xa5, 0x72, - 0x2a, 0x3d, 0x43, 0x2d, 0x17, 0xf4, 0x74, 0x44, 0x24, 0x49, 0x6b, 0xe8, 0x79, 0x7c, 0x6a, 0x7f, - 0xcb, 0x82, 0x21, 0xee, 0xf0, 0x2b, 0xe6, 0x35, 0xd5, 0x8e, 0x4e, 0xd2, 0xf1, 0xbc, 0x43, 0x81, - 0xe2, 0x24, 0x05, 0xdd, 0x85, 0x0a, 0xfb, 0xc1, 0x9c, 0x17, 0xe5, 0x22, 0x11, 0x3c, 0xbc, 0x7e, - 0xbd, 0xa9, 0x77, 0x24, 0x03, 0x9c, 0xf2, 0xb2, 0x7f, 0x50, 0xa6, 0xa2, 0x2f, 0x25, 0x35, 0xf6, - 0x76, 0xeb, 0x38, 0xf6, 0xf6, 0xd2, 0xd1, 0xef, 0xed, 0xef, 0xc0, 0x64, 0x43, 0x3b, 0xba, 0x49, - 0xbf, 0xf8, 0xa5, 0x82, 0xd3, 0x4a, 0x3b, 0xef, 0xe1, 0x0e, 0xae, 0x25, 0x93, 0x1d, 0xce, 0xf2, - 0x47, 0x04, 0xc6, 0xf8, 0x7c, 0x10, 0xf5, 0x0d, 0xb0, 0xfa, 0xe6, 0x8b, 0xcc, 0x30, 0xbd, 0x32, - 0x36, 0x8b, 0xeb, 0x1a, 0x23, 0x6c, 0xb0, 0xb5, 0xff, 0xf6, 0x20, 0x0c, 0x2e, 0x6f, 0x93, 0x20, - 0x39, 0x06, 0x51, 0xd7, 0x84, 0x09, 0x2f, 0xd8, 0x0e, 0xfd, 0x6d, 0xe2, 0x72, 0xfc, 0xe1, 0xb6, - 0xf7, 0x33, 0xa2, 0x92, 0x89, 0x55, 0x83, 0x19, 0xce, 0x30, 0x3f, 0x0a, 0xd3, 0xfa, 0x35, 0x18, - 0xe2, 0x33, 0x43, 0xd8, 0xd5, 0x39, 0x0e, 0x70, 0x36, 0xb0, 0x62, 0x05, 0xa5, 0x0e, 0x00, 0xee, - 0x7b, 0x17, 0x8c, 0xd0, 0xdb, 0x30, 0xb1, 0xe1, 0x45, 0x71, 0x42, 0xad, 0xe3, 0x38, 0x71, 0x9a, - 0xad, 0x43, 0x18, 0xd5, 0x6a, 0x44, 0x56, 0x0c, 0x4e, 0x38, 0xc3, 0x19, 0x6d, 0xc2, 0x38, 0xb5, - 0xe9, 0xd2, 0xaa, 0x86, 0xfb, 0xae, 0x4a, 0xf9, 0xd4, 0xae, 0xeb, 0x8c, 0xb0, 0xc9, 0x97, 0x8a, - 0xa4, 0x06, 0xb3, 0x01, 0x47, 0x98, 0x76, 0xa3, 0x44, 0x12, 0x37, 0xfe, 0x38, 0x8e, 0x4a, 0x36, - 0x16, 0x43, 0x51, 0x31, 0x25, 0x5b, 0x1a, 0x29, 0x61, 0x7f, 0x87, 0xee, 0xc5, 0x74, 0x0c, 0x8f, - 0x61, 0xfb, 0xba, 0x6a, 0x6e, 0x5f, 0x4f, 0x16, 0xf8, 0xb2, 0x3d, 0xb6, 0xae, 0xb7, 0x60, 0x54, - 0xfb, 0xf0, 0x68, 0x1e, 0x2a, 0x0d, 0x79, 0xcc, 0x2f, 0xa4, 0xb8, 0x52, 0xa5, 0xd4, 0xf9, 0x3f, - 0x4e, 0x69, 0xe8, 0xb8, 0x50, 0x15, 0x34, 0x1b, 0x14, 0x44, 0x15, 0x54, 0xcc, 0x30, 0xf6, 0x0b, - 0x00, 0xcb, 0x0f, 0x48, 0x63, 0xa1, 0xc1, 0x62, 0x51, 0xb4, 0x03, 0x31, 0xab, 0xf7, 0x81, 0x98, - 0xfd, 0x6d, 0x0b, 0x26, 0x56, 0x96, 0x0c, 0x9d, 0x7e, 0x0e, 0x80, 0xeb, 0xc6, 0x77, 0xef, 0xde, - 0x94, 0x0e, 0x5f, 0xee, 0x95, 0x53, 0x50, 0xac, 0x51, 0xa0, 0x47, 0xa1, 0xec, 0xb7, 0x03, 0xa1, - 0xb2, 0x0e, 0xef, 0xed, 0xce, 0x96, 0xaf, 0xb7, 0x03, 0x4c, 0x61, 0x5a, 0xf4, 0x4d, 0xb9, 0x70, - 0xf4, 0x4d, 0x7e, 0x1c, 0xea, 0x37, 0xca, 0x30, 0xb5, 0xe2, 0x93, 0x07, 0x46, 0xab, 0x9f, 0x86, - 0x21, 0x37, 0xf2, 0xb6, 0x49, 0x94, 0x55, 0x04, 0xaa, 0x0c, 0x8a, 0x05, 0xb6, 0x70, 0x40, 0xd0, - 0x9b, 0x9d, 0x1b, 0xf9, 0xd1, 0x05, 0x43, 0xe5, 0xf6, 0x19, 0x6d, 0xc0, 0x30, 0x3f, 0x40, 0x8d, - 0xa7, 0x07, 0xd9, 0x54, 0x7c, 0xe5, 0xe0, 0xc6, 0x64, 0xc7, 0x67, 0x4e, 0x38, 0x24, 0x78, 0x28, - 0x86, 0x92, 0x65, 0x02, 0x8a, 0x25, 0xf3, 0x99, 0x8f, 0xc3, 0x98, 0x4e, 0xd9, 0x57, 0x4c, 0xc6, - 0x2f, 0x59, 0x70, 0x72, 0xc5, 0x0f, 0x1b, 0xf7, 0x32, 0x11, 0x5b, 0x2f, 0xc1, 0x28, 0x5d, 0x4c, - 0xb1, 0x11, 0xce, 0x68, 0xc4, 0x6d, 0x0a, 0x14, 0xd6, 0xe9, 0xb4, 0x62, 0xb7, 0x6f, 0xaf, 0x56, - 0xbb, 0x85, 0x7b, 0x0a, 0x14, 0xd6, 0xe9, 0xec, 0xdf, 0xb5, 0xe0, 0xf1, 0x2b, 0x4b, 0xcb, 0x35, - 0x12, 0xc5, 0x5e, 0x9c, 0x90, 0x20, 0xe9, 0x88, 0x38, 0xa5, 0x3a, 0xa3, 0xab, 0x35, 0x25, 0xd5, - 0x19, 0xab, 0xac, 0x15, 0x02, 0xfb, 0x7e, 0x09, 0xbb, 0xfe, 0x96, 0x05, 0x27, 0xaf, 0x78, 0x09, - 0x26, 0xad, 0x30, 0x1b, 0x24, 0x1a, 0x91, 0x56, 0x18, 0x7b, 0x49, 0x18, 0xed, 0x64, 0x83, 0x44, - 0xb1, 0xc2, 0x60, 0x8d, 0x8a, 0xd7, 0xbc, 0xed, 0xc5, 0xb4, 0xa5, 0x25, 0xd3, 0xd4, 0xc5, 0x02, - 0x8e, 0x15, 0x05, 0xed, 0x98, 0xeb, 0x45, 0x4c, 0x65, 0xd8, 0x11, 0x2b, 0x58, 0x75, 0xac, 0x2a, - 0x11, 0x38, 0xa5, 0xb1, 0xff, 0xae, 0x05, 0xa7, 0xaf, 0xf8, 0xed, 0x38, 0x21, 0xd1, 0x46, 0x6c, - 0x34, 0xf6, 0x05, 0xa8, 0x10, 0xa9, 0xdc, 0x8b, 0xb6, 0xaa, 0x4d, 0x43, 0x69, 0xfd, 0x3c, 0x42, - 0x55, 0xd1, 0x15, 0x08, 0x84, 0xec, 0x2f, 0x6c, 0xef, 0x37, 0x4b, 0x30, 0x7e, 0x75, 0x6d, 0xad, - 0x76, 0x85, 0x24, 0x42, 0x4a, 0xe6, 0x3b, 0xa5, 0xb0, 0x66, 0x91, 0x1f, 0xa4, 0xfc, 0xb4, 0x13, - 0xcf, 0x9f, 0xe3, 0x57, 0x02, 0xe6, 0x56, 0x83, 0xe4, 0x56, 0x54, 0x4f, 0x22, 0x2f, 0xd8, 0xec, - 0x6a, 0xc3, 0x4b, 0x59, 0x5e, 0xee, 0x25, 0xcb, 0xd1, 0x0b, 0x30, 0xc4, 0xee, 0x24, 0x48, 0xe5, - 0xe3, 0x83, 0x4a, 0x4f, 0x60, 0xd0, 0xfd, 0xdd, 0xd9, 0xca, 0x6d, 0xbc, 0xca, 0xff, 0x60, 0x41, - 0x8a, 0xde, 0x84, 0xd1, 0xad, 0x24, 0x69, 0x5d, 0x25, 0x8e, 0x4b, 0x22, 0x29, 0x27, 0xce, 0x1f, - 0x2c, 0x27, 0xe8, 0x70, 0xf0, 0x02, 0xe9, 0xd2, 0x4a, 0x61, 0x31, 0xd6, 0x39, 0xda, 0x75, 0x80, - 0x14, 0xf7, 0x90, 0x6c, 0x10, 0xfb, 0x17, 0x4b, 0x30, 0x7c, 0xd5, 0x09, 0x5c, 0x9f, 0x44, 0x68, - 0x05, 0x06, 0xc8, 0x03, 0xd2, 0x10, 0x1b, 0x79, 0x4e, 0xd3, 0xd3, 0xcd, 0x8e, 0xfb, 0xd5, 0xe8, - 0x7f, 0xcc, 0xca, 0x23, 0x0c, 0xc3, 0xb4, 0xdd, 0x57, 0x54, 0xfc, 0xf0, 0x73, 0xf9, 0xa3, 0xa0, - 0x26, 0x05, 0xdf, 0x29, 0x05, 0x08, 0x4b, 0x46, 0xcc, 0x03, 0xd5, 0x68, 0xd5, 0xa9, 0x78, 0x4b, - 0x8a, 0x59, 0x76, 0x6b, 0x4b, 0x35, 0x4e, 0x2e, 0xf8, 0x72, 0x0f, 0x94, 0x04, 0xe2, 0x94, 0x9d, - 0x7d, 0x19, 0x4e, 0xb1, 0x03, 0x4c, 0x27, 0xd9, 0x32, 0x56, 0x4d, 0xee, 0xf4, 0xb4, 0xff, 0x5e, - 0x09, 0x4e, 0xac, 0xd6, 0x97, 0xea, 0xa6, 0xef, 0xf0, 0x32, 0x8c, 0xf1, 0x0d, 0x9a, 0x4e, 0x3a, - 0xc7, 0x17, 0xe5, 0x95, 0xd3, 0x7d, 0x4d, 0xc3, 0x61, 0x83, 0x12, 0x3d, 0x0e, 0x65, 0xef, 0x9d, - 0x20, 0x1b, 0xef, 0xb5, 0xfa, 0xda, 0x4d, 0x4c, 0xe1, 0x14, 0x4d, 0xf7, 0x7a, 0x2e, 0xe4, 0x14, - 0x5a, 0xed, 0xf7, 0xaf, 0xc2, 0x84, 0x17, 0x37, 0x62, 0x6f, 0x35, 0xa0, 0x12, 0xc0, 0x69, 0xc8, - 0xe9, 0x9b, 0x2a, 0xe7, 0xb4, 0xa9, 0x0a, 0x8b, 0x33, 0xd4, 0x9a, 0xc4, 0x1d, 0x2c, 0xac, 0x2f, - 0xe4, 0x07, 0x12, 0xbf, 0x0d, 0x15, 0x15, 0xf0, 0x24, 0x03, 0xda, 0xac, 0x1e, 0x01, 0x6d, 0xf9, - 0x22, 0x47, 0x7a, 0x74, 0xcb, 0x5d, 0x3d, 0xba, 0xff, 0xc4, 0x82, 0x34, 0x62, 0x03, 0x61, 0xa8, - 0xb4, 0x42, 0x76, 0x5c, 0x12, 0xc9, 0x73, 0xc9, 0xa7, 0x72, 0x66, 0x22, 0x5f, 0x09, 0x7c, 0xae, - 0xd4, 0x64, 0x59, 0x9c, 0xb2, 0x41, 0xd7, 0x61, 0xb8, 0x15, 0x91, 0x7a, 0xc2, 0xa2, 0xd1, 0xfb, - 0xe0, 0xc8, 0x66, 0x75, 0x8d, 0x97, 0xc4, 0x92, 0x85, 0xfd, 0x2f, 0x2d, 0x80, 0xeb, 0x5e, 0xd3, - 0x4b, 0xb0, 0x13, 0x6c, 0x92, 0x63, 0x30, 0xf7, 0x6e, 0xc2, 0x40, 0xdc, 0x22, 0x8d, 0x62, 0x07, - 0x5e, 0x69, 0xcb, 0xea, 0x2d, 0xd2, 0x48, 0x3f, 0x07, 0xfd, 0x87, 0x19, 0x1f, 0xfb, 0xfb, 0x00, - 0x13, 0x29, 0x19, 0x55, 0xb9, 0xd1, 0xf3, 0x46, 0x18, 0xf6, 0xa3, 0x99, 0x30, 0xec, 0x0a, 0xa3, - 0xd6, 0x22, 0xaf, 0x13, 0x28, 0x37, 0x9d, 0x07, 0x42, 0xc3, 0x7f, 0xa9, 0x68, 0x83, 0x68, 0x4d, - 0x73, 0x37, 0x9c, 0x07, 0x5c, 0xa1, 0x7a, 0x4e, 0x4e, 0xa4, 0x1b, 0xce, 0x83, 0x7d, 0x7e, 0xac, - 0xc5, 0x56, 0x22, 0x35, 0x29, 0xbe, 0xfc, 0x47, 0xe9, 0x7f, 0x26, 0x1c, 0x69, 0x75, 0xac, 0x56, - 0x2f, 0x10, 0x0e, 0xca, 0x3e, 0x6b, 0xf5, 0x82, 0x6c, 0xad, 0x5e, 0x50, 0xa0, 0x56, 0x2f, 0x40, - 0x5f, 0xb1, 0x60, 0x58, 0xf8, 0xf5, 0x59, 0x0c, 0xdc, 0xe8, 0xa5, 0x8f, 0xf5, 0x55, 0xb5, 0x38, - 0x20, 0xe0, 0xd5, 0xcf, 0x4b, 0x2d, 0x52, 0x40, 0x73, 0x9b, 0x20, 0xab, 0x46, 0xbf, 0x6a, 0xc1, - 0x84, 0xf8, 0x8d, 0xc9, 0x3b, 0x6d, 0x12, 0x27, 0x62, 0xb7, 0xfa, 0xd4, 0x61, 0x5a, 0x23, 0x58, - 0xf0, 0x46, 0x7d, 0x54, 0x8a, 0x1a, 0x13, 0x99, 0xdb, 0xb6, 0x4c, 0x7b, 0xd0, 0xf7, 0x2d, 0x38, - 0xd5, 0x74, 0x1e, 0xf0, 0x1a, 0x39, 0x0c, 0x3b, 0x89, 0x17, 0x8a, 0x38, 0xbf, 0x95, 0x7e, 0xe7, - 0x49, 0x07, 0x23, 0xde, 0x5c, 0x19, 0xc2, 0x73, 0xaa, 0x1b, 0x49, 0x6e, 0xa3, 0xbb, 0xb6, 0x70, - 0x66, 0x03, 0x46, 0xe4, 0xc4, 0xec, 0xa2, 0xbf, 0x57, 0xf5, 0x4d, 0x39, 0xc7, 0x5a, 0x9e, 0x93, - 0x3e, 0xaf, 0xb9, 0xd7, 0xda, 0x4e, 0x90, 0x78, 0xc9, 0x8e, 0xa6, 0xef, 0xb3, 0x7a, 0xc4, 0x54, - 0x3c, 0xd2, 0x7a, 0xde, 0x86, 0x31, 0x7d, 0xde, 0x1d, 0x69, 0x5d, 0xef, 0xc0, 0xc9, 0x2e, 0xb3, - 0xea, 0x48, 0xab, 0xbc, 0x0f, 0x8f, 0xf6, 0x9c, 0x1f, 0x47, 0x59, 0xb1, 0xfd, 0x9b, 0x96, 0x2e, - 0x3a, 0x8f, 0xc1, 0x9b, 0x72, 0xc3, 0xf4, 0xa6, 0x9c, 0x2f, 0xba, 0x86, 0x7a, 0xb8, 0x54, 0x36, - 0xf4, 0xe6, 0xd3, 0x2d, 0x01, 0xad, 0xc1, 0x90, 0x4f, 0x21, 0xf2, 0x30, 0xeb, 0x42, 0x3f, 0xab, - 0x34, 0xd5, 0x36, 0x18, 0x3c, 0xc6, 0x82, 0x97, 0xfd, 0x7d, 0x0b, 0x06, 0x7e, 0x86, 0x97, 0x44, - 0x3a, 0x58, 0x8b, 0x5b, 0xcb, 0x73, 0xd8, 0xb9, 0xbf, 0xfc, 0x20, 0x21, 0x41, 0xcc, 0x94, 0xcb, - 0xae, 0x43, 0xf4, 0x6b, 0x25, 0x18, 0xa5, 0x55, 0xc9, 0x70, 0x84, 0x57, 0x60, 0xdc, 0x77, 0xd6, - 0x89, 0x2f, 0x3d, 0xc1, 0x59, 0x53, 0xec, 0xba, 0x8e, 0xc4, 0x26, 0x2d, 0x2d, 0xbc, 0xa1, 0x3b, - 0xca, 0x85, 0x92, 0xa4, 0x0a, 0x1b, 0x5e, 0x74, 0x6c, 0xd2, 0x52, 0x5b, 0xe0, 0xbe, 0x93, 0x34, - 0xb6, 0x84, 0x99, 0xa6, 0x9a, 0x7b, 0x97, 0x02, 0x31, 0xc7, 0xa1, 0x05, 0x98, 0x94, 0x33, 0xf6, - 0x0e, 0xb5, 0xdf, 0xc3, 0x40, 0x28, 0x90, 0xea, 0xa2, 0x29, 0x36, 0xd1, 0x38, 0x4b, 0x8f, 0x3e, - 0x0e, 0x13, 0x74, 0x70, 0xc2, 0x76, 0x22, 0x83, 0x2d, 0x06, 0x59, 0xb0, 0x05, 0x8b, 0xd5, 0x5d, - 0x33, 0x30, 0x38, 0x43, 0x69, 0xbf, 0x09, 0x27, 0xaf, 0x87, 0x8e, 0xbb, 0xe8, 0xf8, 0x4e, 0xd0, - 0x20, 0xd1, 0x6a, 0xb0, 0x99, 0x7b, 0x2e, 0xad, 0x9f, 0x1d, 0x97, 0xf2, 0xce, 0x8e, 0xed, 0x08, - 0x90, 0x5e, 0x81, 0x08, 0x13, 0x7a, 0x03, 0x86, 0x3d, 0x5e, 0x95, 0x98, 0xb6, 0x17, 0xf3, 0x1c, - 0x4d, 0x1d, 0x6d, 0xd4, 0xc2, 0x5e, 0x38, 0x00, 0x4b, 0x96, 0xd4, 0xb6, 0xe8, 0xe6, 0x99, 0xca, - 0x37, 0xdf, 0xec, 0xbf, 0x62, 0xc1, 0xe4, 0xcd, 0xcc, 0x2d, 0xc6, 0xa7, 0x61, 0x28, 0x26, 0x51, - 0x17, 0x37, 0x5b, 0x9d, 0x41, 0xb1, 0xc0, 0x3e, 0x74, 0xd3, 0xfd, 0x57, 0x4a, 0x50, 0x61, 0x01, - 0xa7, 0x2d, 0x6a, 0x27, 0x1c, 0xbd, 0x9a, 0x7a, 0xc3, 0x50, 0x53, 0x73, 0xcc, 0x47, 0xd5, 0xb0, - 0x5e, 0x5a, 0x2a, 0xba, 0xad, 0x6e, 0xf7, 0x15, 0xb2, 0x1c, 0x53, 0x86, 0xfc, 0x06, 0xd8, 0x84, - 0x79, 0x19, 0x50, 0xde, 0xfc, 0x63, 0xa7, 0xb9, 0x8a, 0xf6, 0x7d, 0x77, 0x9a, 0xab, 0x5a, 0xd6, - 0x43, 0x38, 0xd5, 0xb4, 0xc6, 0x33, 0xf1, 0xfd, 0x49, 0x16, 0x46, 0xe8, 0xf8, 0xde, 0x17, 0x88, - 0xba, 0x24, 0x3b, 0x2b, 0xc2, 0x02, 0x05, 0x74, 0x9f, 0xc9, 0x19, 0xf1, 0x8f, 0xdf, 0x81, 0x4e, - 0x8b, 0xd8, 0x57, 0x61, 0x32, 0x33, 0x74, 0xe8, 0x25, 0x18, 0x6c, 0x6d, 0x39, 0x31, 0xc9, 0x04, - 0xa8, 0x0c, 0xd6, 0x28, 0x70, 0x7f, 0x77, 0x76, 0x42, 0x15, 0x60, 0x10, 0xcc, 0xa9, 0xed, 0xaf, - 0x94, 0x60, 0xe0, 0x66, 0xe8, 0x1e, 0xc7, 0x54, 0xbb, 0x6a, 0x4c, 0xb5, 0xa7, 0xf3, 0x33, 0x28, - 0xf4, 0x9c, 0x65, 0xb5, 0xcc, 0x2c, 0x3b, 0x5f, 0x80, 0xd7, 0xc1, 0x13, 0xac, 0x09, 0xa3, 0x2c, - 0x43, 0x83, 0x88, 0xd0, 0x79, 0xc1, 0xb0, 0xac, 0x66, 0x33, 0x96, 0xd5, 0xa4, 0x46, 0xaa, 0xd9, - 0x57, 0xcf, 0xc0, 0xb0, 0x88, 0x08, 0xc9, 0x06, 0x51, 0x0a, 0x5a, 0x2c, 0xf1, 0xf6, 0x3f, 0x2f, - 0x83, 0x91, 0x11, 0x02, 0xfd, 0xc8, 0x82, 0xb9, 0x88, 0x5f, 0x48, 0x71, 0xab, 0xed, 0xc8, 0x0b, - 0x36, 0xeb, 0x8d, 0x2d, 0xe2, 0xb6, 0x7d, 0x2f, 0xd8, 0x5c, 0xdd, 0x0c, 0x42, 0x05, 0x5e, 0x7e, - 0x40, 0x1a, 0x6d, 0xe6, 0x80, 0x2d, 0x9c, 0x88, 0x42, 0x9d, 0x86, 0x5e, 0xda, 0xdb, 0x9d, 0x9d, - 0xc3, 0x7d, 0xd5, 0x82, 0xfb, 0x6c, 0x15, 0xfa, 0x03, 0x0b, 0xe6, 0x79, 0x4e, 0x84, 0xe2, 0x3d, - 0x29, 0x64, 0x91, 0xd6, 0x24, 0xd3, 0x94, 0xdd, 0x1a, 0x89, 0x9a, 0x8b, 0x2f, 0x8b, 0x41, 0x9e, - 0xaf, 0xf5, 0x57, 0x2b, 0xee, 0xb7, 0x99, 0xf6, 0xbf, 0x2e, 0xc3, 0x38, 0x1d, 0xcf, 0xf4, 0x1e, - 0xf4, 0x4b, 0xc6, 0x34, 0x79, 0x22, 0x33, 0x4d, 0x4e, 0x18, 0xc4, 0x0f, 0xe7, 0x0a, 0x74, 0x0c, - 0x27, 0x7c, 0x27, 0x4e, 0xae, 0x12, 0x27, 0x4a, 0xd6, 0x89, 0xc3, 0x0e, 0x1d, 0xb3, 0x01, 0x0d, - 0x05, 0xce, 0x31, 0x55, 0x94, 0xd1, 0xf5, 0x2c, 0x33, 0xdc, 0xc9, 0x1f, 0x6d, 0x03, 0x62, 0x07, - 0x9c, 0x91, 0x13, 0xc4, 0xbc, 0x2f, 0x9e, 0x70, 0xd8, 0xf6, 0x57, 0xeb, 0x8c, 0xa8, 0x15, 0x5d, - 0xef, 0xe0, 0x86, 0xbb, 0xd4, 0xa0, 0x1d, 0x61, 0x0f, 0x16, 0x3d, 0xc2, 0x1e, 0xca, 0x89, 0x5e, - 0xfe, 0xaa, 0x05, 0x27, 0xe9, 0x67, 0x31, 0x23, 0x5d, 0x63, 0x14, 0xc2, 0x24, 0x9d, 0x76, 0x3e, - 0x49, 0x24, 0x4c, 0xac, 0xaf, 0x1c, 0xcd, 0xda, 0xe4, 0x93, 0xaa, 0x6f, 0xd7, 0x4c, 0x66, 0x38, - 0xcb, 0xdd, 0xfe, 0xb6, 0x05, 0x2c, 0x94, 0xee, 0x18, 0x36, 0xb3, 0x2b, 0xe6, 0x66, 0x66, 0xe7, - 0x4b, 0x8c, 0x1e, 0xfb, 0xd8, 0x8b, 0x30, 0x45, 0xb1, 0xb5, 0x28, 0x7c, 0xb0, 0x23, 0x15, 0xed, - 0x7c, 0xcf, 0xed, 0x57, 0x4b, 0x7c, 0xd9, 0xa8, 0x9b, 0x75, 0xe8, 0x97, 0x2d, 0x18, 0x69, 0x38, - 0x2d, 0xa7, 0xc1, 0xf3, 0xe9, 0x14, 0xf0, 0xce, 0x18, 0xe5, 0xe7, 0x96, 0x44, 0x59, 0xee, 0x59, - 0xf8, 0x88, 0xec, 0xba, 0x04, 0xe7, 0x7a, 0x13, 0x54, 0xe5, 0x33, 0xf7, 0x60, 0xdc, 0x60, 0x76, - 0xa4, 0x66, 0xe8, 0x2f, 0x5b, 0x5c, 0xe8, 0x2b, 0x53, 0xe1, 0x3e, 0x9c, 0x08, 0xb4, 0xff, 0x54, - 0x9c, 0x49, 0xcd, 0x78, 0xae, 0xb8, 0x58, 0x67, 0x52, 0x50, 0x0b, 0x1b, 0xcc, 0x30, 0xc4, 0x9d, - 0x75, 0xd8, 0x7f, 0xdf, 0x82, 0x47, 0x74, 0x42, 0xed, 0x2a, 0x64, 0x9e, 0xdf, 0xb8, 0x0a, 0x23, - 0x61, 0x8b, 0x44, 0x4e, 0x6a, 0x16, 0x9d, 0x97, 0xe3, 0x7f, 0x4b, 0xc0, 0xf7, 0x77, 0x67, 0x4f, - 0xe9, 0xdc, 0x25, 0x1c, 0xab, 0x92, 0xc8, 0x86, 0x21, 0x36, 0x2e, 0xb1, 0xb8, 0xc4, 0xca, 0xf2, - 0xcb, 0xb0, 0xd3, 0x92, 0x18, 0x0b, 0x8c, 0xfd, 0x37, 0x2c, 0x3e, 0xdd, 0xf4, 0xa6, 0xa3, 0x2f, - 0xc2, 0x54, 0x93, 0x5a, 0x50, 0xcb, 0x0f, 0x5a, 0x74, 0x23, 0x65, 0xe7, 0xc4, 0x56, 0x91, 0xed, - 0xa3, 0x47, 0x77, 0x17, 0xa7, 0x45, 0xeb, 0xa7, 0x6e, 0x64, 0xd8, 0xe2, 0x8e, 0x8a, 0xec, 0xff, - 0x22, 0xd6, 0x2c, 0xd3, 0xe1, 0x9e, 0x81, 0xe1, 0x56, 0xe8, 0x2e, 0xad, 0x56, 0xb1, 0x18, 0x2b, - 0x25, 0x74, 0x6a, 0x1c, 0x8c, 0x25, 0x1e, 0x5d, 0x02, 0x20, 0x0f, 0x12, 0x12, 0x05, 0x8e, 0xaf, - 0xce, 0x77, 0x95, 0xaa, 0xb4, 0xac, 0x30, 0x58, 0xa3, 0xa2, 0x65, 0x5a, 0x51, 0xb8, 0xed, 0xb9, - 0x2c, 0x86, 0xbf, 0x6c, 0x96, 0xa9, 0x29, 0x0c, 0xd6, 0xa8, 0xa8, 0xdd, 0xda, 0x0e, 0x62, 0xbe, - 0x8d, 0x39, 0xeb, 0x22, 0x1d, 0xca, 0x48, 0x6a, 0xb7, 0xde, 0xd6, 0x91, 0xd8, 0xa4, 0xb5, 0xff, - 0x63, 0x05, 0x20, 0x55, 0x94, 0xd0, 0x57, 0x3a, 0xd7, 0xe8, 0x47, 0x8b, 0x6a, 0x59, 0x0f, 0x6f, - 0x81, 0xa2, 0xaf, 0x5b, 0x30, 0xea, 0xf8, 0x7e, 0xd8, 0x70, 0x12, 0xd6, 0xa3, 0x52, 0x51, 0x69, - 0x21, 0x5a, 0xb2, 0x90, 0x96, 0xe5, 0x8d, 0x79, 0x41, 0x1e, 0xfe, 0x69, 0x98, 0xdc, 0xf6, 0xe8, - 0x4d, 0x40, 0x1f, 0x91, 0x8a, 0x36, 0xff, 0x28, 0x33, 0x59, 0x45, 0xbb, 0xc2, 0x64, 0xa4, 0xa6, - 0x63, 0xa3, 0x37, 0x8d, 0x8c, 0x1f, 0x03, 0x45, 0xee, 0x4e, 0x1a, 0xaa, 0x43, 0x5e, 0xb2, 0x0f, - 0xf4, 0x59, 0x3d, 0xbc, 0x79, 0xb0, 0xc8, 0xe5, 0x64, 0x4d, 0x83, 0xcd, 0x09, 0x6d, 0x4e, 0x60, - 0xd2, 0x35, 0x37, 0x4b, 0x11, 0xa2, 0x75, 0x31, 0xbf, 0x86, 0xcc, 0x2e, 0x9b, 0x6e, 0x8f, 0x19, - 0x04, 0xce, 0x56, 0x81, 0x3e, 0xcb, 0x83, 0xcf, 0x57, 0x83, 0x8d, 0x50, 0x84, 0x69, 0x5d, 0x28, - 0xf0, 0xcd, 0x77, 0xe2, 0x84, 0x34, 0x69, 0x99, 0x74, 0x3f, 0xbc, 0x29, 0xb8, 0x60, 0xc5, 0x0f, - 0xad, 0xc1, 0x10, 0xbb, 0x2a, 0x13, 0x4f, 0x8f, 0x14, 0x71, 0x9e, 0x99, 0x37, 0x44, 0x53, 0x25, - 0x84, 0xfd, 0x8d, 0xb1, 0xe0, 0x85, 0xae, 0xca, 0x3b, 0xe2, 0xf1, 0x6a, 0x70, 0x3b, 0x26, 0xec, - 0x8e, 0x78, 0x65, 0xf1, 0x43, 0xe9, 0xa5, 0x6f, 0x0e, 0xef, 0x9a, 0xf3, 0xcc, 0x28, 0x49, 0x75, - 0x11, 0xf1, 0x5f, 0xa6, 0x52, 0x9b, 0x86, 0x22, 0x0d, 0x35, 0x13, 0xaf, 0xa5, 0x83, 0x7d, 0xc7, - 0x64, 0x86, 0xb3, 0xdc, 0x8f, 0x75, 0x17, 0x9c, 0x09, 0x60, 0x2a, 0xbb, 0x28, 0x8f, 0x74, 0xd7, - 0xfd, 0xe9, 0x00, 0x4c, 0x98, 0x93, 0x03, 0xcd, 0x43, 0x45, 0x30, 0x51, 0xa9, 0x95, 0xd4, 0x1a, - 0xb8, 0x21, 0x11, 0x38, 0xa5, 0x61, 0x49, 0xa6, 0x58, 0x71, 0x2d, 0x40, 0x27, 0x4d, 0x32, 0xa5, - 0x30, 0x58, 0xa3, 0xa2, 0xca, 0xeb, 0x7a, 0x18, 0x26, 0x4a, 0x78, 0xab, 0x79, 0xb3, 0xc8, 0xa0, - 0x58, 0x60, 0xa9, 0xd0, 0xbe, 0x47, 0x3f, 0xa6, 0x6f, 0x3a, 0x02, 0x95, 0xd0, 0xbe, 0xa6, 0x23, - 0xb1, 0x49, 0x4b, 0x37, 0xa1, 0x30, 0x66, 0x13, 0x51, 0xa8, 0xc8, 0x69, 0xc0, 0x53, 0x9d, 0x5f, - 0x1f, 0x93, 0x78, 0xf4, 0x19, 0x78, 0x44, 0xdd, 0xf6, 0xc2, 0xdc, 0xb1, 0x2a, 0x6b, 0x1c, 0x32, - 0xac, 0xdc, 0x47, 0x96, 0xba, 0x93, 0xe1, 0x5e, 0xe5, 0xd1, 0xab, 0x30, 0x21, 0xd4, 0x5b, 0xc9, - 0x71, 0xd8, 0x3c, 0x0d, 0xbf, 0x66, 0x60, 0x71, 0x86, 0x1a, 0x55, 0x61, 0x8a, 0x42, 0x98, 0x5e, - 0x29, 0x39, 0xf0, 0x5b, 0x6b, 0x6a, 0x77, 0xbe, 0x96, 0xc1, 0xe3, 0x8e, 0x12, 0x68, 0x01, 0x26, - 0xb9, 0x7e, 0x41, 0x6d, 0x39, 0xf6, 0x1d, 0x44, 0x6c, 0xa5, 0x5a, 0x08, 0xb7, 0x4c, 0x34, 0xce, - 0xd2, 0xa3, 0xcb, 0x30, 0xe6, 0x44, 0x8d, 0x2d, 0x2f, 0x21, 0x8d, 0xa4, 0x1d, 0xf1, 0x0c, 0x0c, - 0x5a, 0x38, 0xc1, 0x82, 0x86, 0xc3, 0x06, 0xa5, 0xfd, 0x05, 0x38, 0xd9, 0x25, 0x90, 0x9b, 0x4e, - 0x1c, 0xa7, 0xe5, 0xc9, 0x3e, 0x65, 0x42, 0x97, 0x16, 0x6a, 0xab, 0xb2, 0x37, 0x1a, 0x15, 0x9d, - 0x9d, 0xcc, 0xa3, 0xac, 0x65, 0x3e, 0x54, 0xb3, 0x73, 0x45, 0x22, 0x70, 0x4a, 0x63, 0xff, 0x69, - 0x05, 0x34, 0x87, 0x4b, 0x81, 0x70, 0x95, 0xcb, 0x30, 0x26, 0x93, 0x79, 0x6a, 0x49, 0xf4, 0x54, - 0x37, 0xaf, 0x68, 0x38, 0x6c, 0x50, 0xd2, 0xb6, 0x05, 0xd2, 0x8d, 0x94, 0x0d, 0x94, 0x52, 0xfe, - 0x25, 0x9c, 0xd2, 0xa0, 0x0b, 0x30, 0x12, 0x13, 0x7f, 0xe3, 0xba, 0x17, 0xdc, 0x13, 0x13, 0x5b, - 0x49, 0xe6, 0xba, 0x80, 0x63, 0x45, 0x81, 0x16, 0xa1, 0xdc, 0xf6, 0x5c, 0x31, 0x95, 0xa5, 0xda, - 0x50, 0xbe, 0xbd, 0x5a, 0xdd, 0xdf, 0x9d, 0x7d, 0xa2, 0x57, 0x8e, 0x52, 0x6a, 0x52, 0xc7, 0x73, - 0x74, 0xf9, 0xd1, 0xc2, 0xdd, 0x5c, 0xeb, 0x43, 0x7d, 0xba, 0xd6, 0x2f, 0x01, 0x88, 0x5e, 0xcb, - 0xb9, 0x5c, 0x4e, 0xbf, 0xda, 0x15, 0x85, 0xc1, 0x1a, 0x15, 0x35, 0xcc, 0x1b, 0x11, 0x71, 0xa4, - 0xed, 0xca, 0x03, 0x8c, 0x47, 0x0e, 0x6f, 0x98, 0x2f, 0x65, 0x99, 0xe1, 0x4e, 0xfe, 0x28, 0x84, - 0x13, 0x2e, 0x5d, 0x48, 0x46, 0xa5, 0x95, 0xfe, 0xa3, 0x9a, 0x69, 0x85, 0xd5, 0x2c, 0x23, 0xdc, - 0xc9, 0x1b, 0x7d, 0x1e, 0x66, 0x24, 0xb0, 0xf3, 0x3e, 0x27, 0x5b, 0x2e, 0xe5, 0xc5, 0xb3, 0x7b, - 0xbb, 0xb3, 0x33, 0xd5, 0x9e, 0x54, 0xf8, 0x00, 0x0e, 0xe8, 0x0d, 0x18, 0x62, 0x47, 0x31, 0xf1, - 0xf4, 0x28, 0xdb, 0xf1, 0x5e, 0x2c, 0x12, 0x1b, 0x4f, 0x67, 0xfd, 0x1c, 0x3b, 0xd0, 0x11, 0x51, - 0x9f, 0xe9, 0xf9, 0x16, 0x03, 0x62, 0xc1, 0x13, 0xb5, 0x60, 0xd4, 0x09, 0x82, 0x30, 0x71, 0xb8, - 0x22, 0x36, 0x56, 0x44, 0x97, 0xd4, 0xaa, 0x58, 0x48, 0xcb, 0xf2, 0x7a, 0x54, 0x20, 0x99, 0x86, - 0xc1, 0x7a, 0x15, 0xe8, 0x3e, 0x4c, 0x86, 0xf7, 0xa9, 0xc0, 0x94, 0xa7, 0x11, 0xf1, 0xf4, 0xb8, - 0xd9, 0xb1, 0x1c, 0xdf, 0xaa, 0x51, 0x58, 0x93, 0x64, 0x26, 0x53, 0x9c, 0xad, 0x05, 0xcd, 0x19, - 0x1e, 0xe6, 0x89, 0x34, 0xb6, 0x39, 0xf5, 0x30, 0xeb, 0x0e, 0x65, 0x76, 0x67, 0x98, 0xc7, 0x33, - 0x32, 0x89, 0x30, 0x99, 0xb9, 0x33, 0x9c, 0xa2, 0xb0, 0x4e, 0x37, 0xf3, 0x31, 0x18, 0xd5, 0x06, - 0xbe, 0x9f, 0x20, 0xda, 0x99, 0x57, 0x61, 0x2a, 0x3b, 0xa0, 0x7d, 0x05, 0xe1, 0xfe, 0xaf, 0x12, - 0x4c, 0x76, 0x39, 0xea, 0xb9, 0xe7, 0xb1, 0x40, 0x70, 0x43, 0xf4, 0x5d, 0xf3, 0x02, 0x17, 0x33, - 0x8c, 0x29, 0xc0, 0x4a, 0x05, 0x04, 0x98, 0x94, 0xa6, 0xe5, 0x9e, 0xd2, 0x54, 0x08, 0xad, 0x81, - 0xf7, 0x22, 0xb4, 0xcc, 0x7d, 0x62, 0xb0, 0xd0, 0x3e, 0xf1, 0x10, 0x04, 0x9d, 0xb1, 0xd5, 0x0c, - 0x17, 0xd8, 0x6a, 0xbe, 0x55, 0x82, 0xa9, 0x34, 0xe0, 0x58, 0x64, 0xf8, 0x3d, 0xfa, 0x93, 0x83, - 0x35, 0xe3, 0xe4, 0x20, 0x2f, 0x81, 0x6f, 0xa6, 0x7d, 0x3d, 0x4f, 0x11, 0xde, 0xc8, 0x9c, 0x22, - 0xbc, 0xd8, 0x27, 0xdf, 0x83, 0x4f, 0x14, 0xbe, 0x57, 0x82, 0xd3, 0xd9, 0x22, 0x4b, 0xbe, 0xe3, - 0x35, 0x8f, 0x61, 0xbc, 0x3e, 0x63, 0x8c, 0xd7, 0xcb, 0xfd, 0xf5, 0x8b, 0x35, 0xb2, 0xe7, 0xa0, - 0x39, 0x99, 0x41, 0xfb, 0xd8, 0x61, 0x98, 0x1f, 0x3c, 0x72, 0xbf, 0x67, 0xc1, 0xa3, 0x5d, 0xcb, - 0x1d, 0x83, 0xaf, 0xf4, 0x75, 0xd3, 0x57, 0xfa, 0xc2, 0x21, 0x7a, 0xd7, 0xc3, 0x79, 0xfa, 0xdf, - 0x4b, 0x3d, 0x7a, 0xc5, 0xbc, 0x49, 0xb7, 0x60, 0xd4, 0x69, 0x34, 0x48, 0x1c, 0xdf, 0x08, 0x5d, - 0x95, 0x7d, 0xe8, 0x79, 0xb6, 0xb7, 0xa4, 0xe0, 0xfd, 0xdd, 0xd9, 0x99, 0x2c, 0x8b, 0x14, 0x8d, - 0x75, 0x0e, 0x66, 0x5e, 0xb4, 0xd2, 0x11, 0xe5, 0x45, 0xbb, 0x04, 0xb0, 0xad, 0xac, 0xd8, 0xac, - 0x93, 0x4a, 0xb3, 0x6f, 0x35, 0x2a, 0xf4, 0x17, 0x99, 0x46, 0xc8, 0xe3, 0x2a, 0x06, 0xcc, 0xbb, - 0x8b, 0x39, 0xdf, 0x4f, 0x8f, 0xd1, 0xe0, 0x57, 0x24, 0x95, 0x43, 0x4f, 0xb1, 0xb4, 0xbf, 0x5b, - 0x86, 0x0f, 0x1e, 0x30, 0xe9, 0xd0, 0x82, 0x79, 0x4c, 0xfa, 0x5c, 0xd6, 0x7b, 0x33, 0xd3, 0xb5, - 0xb0, 0xe1, 0xce, 0xc9, 0x7c, 0xab, 0xd2, 0x7b, 0xfe, 0x56, 0xdf, 0xd0, 0x7d, 0x6d, 0x3c, 0x50, - 0xf2, 0xca, 0xa1, 0x97, 0xd5, 0xcf, 0xab, 0x77, 0xfc, 0xcb, 0x16, 0x3c, 0xd1, 0xb5, 0x5b, 0x46, - 0x58, 0xc6, 0x3c, 0x54, 0x1a, 0x14, 0xa8, 0xdd, 0x6a, 0x49, 0xaf, 0x93, 0x49, 0x04, 0x4e, 0x69, - 0x8c, 0xe8, 0x8b, 0x52, 0x6e, 0xf4, 0xc5, 0xef, 0x58, 0x70, 0x2a, 0xdb, 0x88, 0x63, 0x90, 0x3a, - 0x75, 0x53, 0xea, 0xcc, 0xf5, 0xf7, 0xf1, 0x7b, 0x08, 0x9c, 0x5f, 0x1d, 0x87, 0x33, 0x1d, 0x7b, - 0x16, 0x1f, 0xc5, 0x5f, 0xb0, 0xe0, 0xc4, 0x26, 0xd3, 0xbd, 0xb5, 0xab, 0x43, 0xa2, 0x5f, 0x39, - 0xf7, 0xad, 0x0e, 0xbc, 0x71, 0xc4, 0x2d, 0x89, 0x0e, 0x12, 0xdc, 0x59, 0x19, 0xfa, 0x9a, 0x05, - 0xa7, 0x9c, 0xfb, 0x71, 0xc7, 0xeb, 0x11, 0x62, 0x22, 0xbd, 0x9a, 0xe3, 0xea, 0xca, 0x79, 0x77, - 0x62, 0x71, 0x7a, 0x6f, 0x77, 0xf6, 0x54, 0x37, 0x2a, 0xdc, 0xb5, 0x56, 0xfa, 0x7d, 0xb7, 0xc4, - 0xc5, 0x84, 0x62, 0x97, 0xe0, 0xba, 0x5d, 0x63, 0xe0, 0x42, 0x49, 0x62, 0xb0, 0xe2, 0x88, 0xde, - 0x82, 0xca, 0xa6, 0xbc, 0x2d, 0x94, 0x15, 0x7a, 0x3d, 0x86, 0xb9, 0xdb, 0xe5, 0x22, 0x1e, 0x2c, - 0xaf, 0x50, 0x38, 0x65, 0x8a, 0xae, 0x42, 0x39, 0xd8, 0x88, 0xc5, 0xbd, 0xdc, 0xbc, 0xa0, 0x1b, - 0x33, 0xd4, 0x89, 0x5f, 0x65, 0xbc, 0xb9, 0x52, 0xc7, 0x94, 0x05, 0xe5, 0x14, 0xad, 0xbb, 0xc2, - 0xc7, 0x9b, 0xc3, 0x09, 0x2f, 0x56, 0x3b, 0x39, 0xe1, 0xc5, 0x2a, 0xa6, 0x2c, 0x50, 0x0d, 0x06, - 0xd9, 0xb5, 0x07, 0xe1, 0xc0, 0xcd, 0xb9, 0xbc, 0xdd, 0x71, 0xb9, 0x83, 0x27, 0xdf, 0x63, 0x60, - 0xcc, 0x19, 0xa1, 0x35, 0x18, 0x6a, 0xb0, 0x44, 0xe9, 0xc2, 0xb2, 0xce, 0x4b, 0x6b, 0xd0, 0x91, - 0x54, 0x9d, 0x1f, 0x34, 0x71, 0x38, 0x16, 0xbc, 0x18, 0x57, 0xd2, 0xda, 0xda, 0x88, 0x85, 0xe9, - 0x9c, 0xc7, 0xb5, 0x23, 0xe5, 0xbd, 0xe0, 0xca, 0xe0, 0x58, 0xf0, 0x42, 0x55, 0x28, 0x6d, 0x34, - 0x44, 0x0e, 0xcf, 0x1c, 0xc7, 0xad, 0x79, 0x2f, 0x75, 0x71, 0x68, 0x6f, 0x77, 0xb6, 0xb4, 0xb2, - 0x84, 0x4b, 0x1b, 0x0d, 0xf4, 0x3a, 0x0c, 0x6f, 0xf0, 0x9b, 0x86, 0x22, 0x5f, 0xe7, 0xc5, 0xbc, - 0xeb, 0x90, 0x1d, 0xd7, 0x12, 0xf9, 0x85, 0x08, 0x81, 0xc0, 0x92, 0x1d, 0x4b, 0x65, 0xa6, 0xee, - 0x4e, 0x8a, 0x84, 0x9d, 0x73, 0xfd, 0xdd, 0xb5, 0x14, 0x16, 0xa5, 0x82, 0x62, 0x8d, 0x23, 0x9d, - 0xf3, 0x8e, 0x7c, 0xf3, 0x81, 0x25, 0xeb, 0xcc, 0x9d, 0xf3, 0x5d, 0x9f, 0x88, 0xe0, 0x73, 0x5e, - 0xa1, 0x70, 0xca, 0x14, 0xb5, 0x61, 0x7c, 0x3b, 0x6e, 0x6d, 0x11, 0xb9, 0xf4, 0x59, 0x06, 0xcf, - 0xd1, 0x4b, 0x9f, 0xc8, 0x49, 0xcb, 0x2a, 0x8a, 0x78, 0x51, 0xd2, 0x76, 0xfc, 0x0e, 0x09, 0xc6, - 0x72, 0x47, 0xdd, 0xd1, 0xd9, 0x62, 0xb3, 0x16, 0xfa, 0x49, 0xde, 0x69, 0x87, 0xeb, 0x3b, 0x09, - 0x11, 0x19, 0x3e, 0x73, 0x3e, 0xc9, 0x6b, 0x9c, 0xb8, 0xf3, 0x93, 0x08, 0x04, 0x96, 0xec, 0xd4, - 0x90, 0x31, 0x69, 0x3c, 0x55, 0x78, 0xc8, 0x3a, 0xfa, 0x90, 0x0e, 0x19, 0x93, 0xbe, 0x29, 0x53, - 0x26, 0x75, 0x5b, 0x5b, 0x61, 0x12, 0x06, 0x19, 0xd9, 0x7f, 0xa2, 0x88, 0xd4, 0xad, 0x75, 0x29, - 0xd9, 0x29, 0x75, 0xbb, 0x51, 0xe1, 0xae, 0xb5, 0xda, 0xff, 0x75, 0xb0, 0x73, 0xbb, 0x65, 0xea, - 0xf0, 0x5f, 0xef, 0x3c, 0x7d, 0xfc, 0x54, 0xff, 0x56, 0xdf, 0x43, 0x3c, 0x87, 0xfc, 0x9a, 0x05, - 0x67, 0x5a, 0x5d, 0x37, 0x53, 0xb1, 0x61, 0xf5, 0x6b, 0x3c, 0xf2, 0x01, 0x53, 0xe9, 0x6b, 0xbb, - 0xe3, 0x71, 0x8f, 0x3a, 0xb3, 0x2a, 0x68, 0xf9, 0x3d, 0xab, 0xa0, 0x77, 0x61, 0x84, 0xe9, 0x4c, - 0x69, 0xae, 0x8d, 0x3e, 0xd3, 0x52, 0xb0, 0xad, 0x6f, 0x49, 0xb0, 0xc0, 0x8a, 0x19, 0x1d, 0xb8, - 0xc7, 0xb3, 0x9d, 0xc0, 0x84, 0xa1, 0x45, 0x8a, 0x57, 0xee, 0xed, 0x58, 0x11, 0x23, 0xf1, 0x78, - 0xed, 0x20, 0xe2, 0xfd, 0x3c, 0x02, 0x7c, 0x70, 0x65, 0xc7, 0xab, 0xd2, 0xfe, 0x23, 0xab, 0x8b, - 0x06, 0xc6, 0xcd, 0x90, 0x4f, 0x98, 0x66, 0xc8, 0xd3, 0x59, 0x33, 0xa4, 0xc3, 0x75, 0x60, 0x58, - 0x20, 0xc5, 0xd3, 0x35, 0x16, 0x4d, 0x03, 0x62, 0xfb, 0x70, 0x2e, 0x6f, 0x79, 0xb3, 0x58, 0x1f, - 0x57, 0x1d, 0x99, 0xa5, 0xb1, 0x3e, 0xee, 0x6a, 0x15, 0x33, 0x4c, 0xd1, 0x9b, 0xe4, 0xf6, 0x2f, - 0x96, 0xa0, 0x5c, 0x0b, 0xdd, 0x63, 0x70, 0x85, 0x5c, 0x31, 0x5c, 0x21, 0x4f, 0xe5, 0xbe, 0x79, - 0xd5, 0xd3, 0xf1, 0x71, 0x2b, 0xe3, 0xf8, 0xf8, 0x70, 0x3e, 0xab, 0x83, 0xdd, 0x1c, 0xdf, 0x2f, - 0x83, 0xfe, 0x6a, 0x17, 0xfa, 0x0f, 0x87, 0x09, 0x01, 0x2d, 0x17, 0x7b, 0xc8, 0x4b, 0xd4, 0xc1, - 0x42, 0x85, 0xe4, 0xc5, 0xb1, 0x9f, 0xdb, 0x48, 0xd0, 0xbb, 0xc4, 0xdb, 0xdc, 0x4a, 0x88, 0x9b, - 0xed, 0xd8, 0xf1, 0x45, 0x82, 0xfe, 0x89, 0x05, 0x93, 0x99, 0xda, 0x91, 0xdf, 0xed, 0xc6, 0xc9, - 0x21, 0x9d, 0x1b, 0x27, 0x72, 0xaf, 0xa8, 0xcc, 0x01, 0x28, 0x1f, 0xb5, 0x74, 0x41, 0x30, 0x6d, - 0x4c, 0x39, 0xb1, 0x63, 0xac, 0x51, 0xa0, 0x97, 0x60, 0x34, 0x09, 0x5b, 0xa1, 0x1f, 0x6e, 0xee, - 0x5c, 0x23, 0x32, 0xc7, 0x81, 0xf2, 0xef, 0xaf, 0xa5, 0x28, 0xac, 0xd3, 0xd9, 0x3f, 0x28, 0x43, - 0xf6, 0xcd, 0xb7, 0x3f, 0x9f, 0xa7, 0x3f, 0x3f, 0xf3, 0xf4, 0xf7, 0x2d, 0x98, 0xa2, 0xb5, 0xb3, - 0x40, 0x0f, 0x19, 0xb1, 0xa9, 0x72, 0xc7, 0x5b, 0x07, 0xe4, 0x8e, 0x7f, 0x9a, 0x4a, 0x3b, 0x37, - 0x6c, 0x27, 0xc2, 0x69, 0xa2, 0x09, 0x31, 0x0a, 0xc5, 0x02, 0x2b, 0xe8, 0x48, 0x14, 0x89, 0xab, - 0x2d, 0x3a, 0x1d, 0x89, 0x22, 0x2c, 0xb0, 0x32, 0xb5, 0xfc, 0x40, 0x8f, 0xd4, 0xf2, 0x2c, 0x4b, - 0x90, 0x08, 0x2e, 0x10, 0x0a, 0x81, 0x96, 0x25, 0x48, 0x46, 0x1d, 0xa4, 0x34, 0xf6, 0x77, 0xca, - 0x30, 0x56, 0x0b, 0xdd, 0x34, 0x14, 0xfb, 0x45, 0x23, 0x14, 0xfb, 0x5c, 0x26, 0x14, 0x7b, 0x4a, - 0xa7, 0x7d, 0x38, 0x91, 0xd8, 0x22, 0x9b, 0x14, 0x7b, 0xfc, 0xe0, 0x90, 0x51, 0xd8, 0x46, 0x36, - 0x29, 0xc5, 0x08, 0x9b, 0x7c, 0xff, 0x2c, 0x45, 0x5f, 0xff, 0x1f, 0x0b, 0x26, 0x6a, 0xa1, 0x4b, - 0x27, 0xe8, 0x9f, 0xa5, 0xd9, 0xa8, 0xe7, 0xa0, 0x1a, 0x3a, 0x20, 0x07, 0xd5, 0x3f, 0xb5, 0x60, - 0xb8, 0x16, 0xba, 0xc7, 0xe0, 0x50, 0x5c, 0x31, 0x1d, 0x8a, 0x4f, 0xe4, 0x4a, 0xde, 0x1e, 0x3e, - 0xc4, 0xef, 0x96, 0x61, 0x9c, 0xb6, 0x38, 0xdc, 0x94, 0xdf, 0xcb, 0x18, 0x1b, 0xab, 0xc0, 0xd8, - 0x50, 0x95, 0x30, 0xf4, 0xfd, 0xf0, 0x7e, 0xf6, 0xdb, 0xad, 0x30, 0x28, 0x16, 0x58, 0x74, 0x01, - 0x46, 0x5a, 0x11, 0xd9, 0xf6, 0xc2, 0x76, 0x9c, 0xbd, 0x26, 0x57, 0x13, 0x70, 0xac, 0x28, 0xd0, - 0x8b, 0x30, 0x16, 0x7b, 0x41, 0x83, 0xc8, 0xd0, 0x83, 0x01, 0x16, 0x7a, 0xc0, 0xd3, 0xfd, 0x69, - 0x70, 0x6c, 0x50, 0xa1, 0xbb, 0x50, 0x61, 0xff, 0xd9, 0x0a, 0xea, 0x3f, 0x37, 0x3c, 0xcf, 0x71, - 0x25, 0x19, 0xe0, 0x94, 0x17, 0xba, 0x04, 0x90, 0xc8, 0x20, 0x89, 0x58, 0x64, 0xea, 0x50, 0x7a, - 0xa9, 0x0a, 0x9f, 0x88, 0xb1, 0x46, 0x85, 0x9e, 0x83, 0x4a, 0xe2, 0x78, 0xfe, 0x75, 0x2f, 0x20, - 0xb1, 0x08, 0x32, 0x11, 0xa9, 0x7b, 0x05, 0x10, 0xa7, 0x78, 0xba, 0xdf, 0xb3, 0x4b, 0xba, 0xfc, - 0xdd, 0x89, 0x11, 0x46, 0xcd, 0xf6, 0xfb, 0xeb, 0x0a, 0x8a, 0x35, 0x0a, 0xfb, 0x32, 0x9c, 0xae, - 0x85, 0x6e, 0x2d, 0x8c, 0x92, 0x95, 0x30, 0xba, 0xef, 0x44, 0xae, 0xfc, 0x7e, 0xb3, 0x32, 0x63, - 0x2c, 0xdd, 0x93, 0x07, 0xb9, 0x8f, 0xcd, 0xc8, 0x00, 0xfb, 0x02, 0xdb, 0xf1, 0xfb, 0x8c, 0xf1, - 0xff, 0x49, 0x09, 0x50, 0x8d, 0x85, 0x71, 0x18, 0xcf, 0x94, 0x6c, 0xc1, 0x44, 0x4c, 0xae, 0x7b, - 0x41, 0xfb, 0x81, 0x60, 0x55, 0xec, 0x52, 0x45, 0x7d, 0x59, 0x2f, 0xc3, 0x6f, 0xb4, 0x9a, 0x30, - 0x9c, 0xe1, 0x4b, 0x07, 0x33, 0x6a, 0x07, 0x0b, 0xf1, 0xed, 0x98, 0x44, 0xe2, 0x59, 0x0e, 0x36, - 0x98, 0x58, 0x02, 0x71, 0x8a, 0xa7, 0x93, 0x87, 0xfd, 0xb9, 0x19, 0x06, 0x38, 0x0c, 0x13, 0x39, - 0xdd, 0x58, 0x9a, 0x76, 0x0d, 0x8e, 0x0d, 0x2a, 0xb4, 0x02, 0x28, 0x6e, 0xb7, 0x5a, 0x3e, 0x3b, - 0x19, 0x73, 0xfc, 0x2b, 0x51, 0xd8, 0x6e, 0xf1, 0x68, 0x5e, 0x91, 0xe1, 0xbc, 0xde, 0x81, 0xc5, - 0x5d, 0x4a, 0x50, 0x61, 0xb1, 0x11, 0xb3, 0xdf, 0xe2, 0xc6, 0x2e, 0xf7, 0xcf, 0xd5, 0x19, 0x08, - 0x4b, 0x9c, 0xfd, 0x25, 0xb6, 0xc1, 0xb1, 0xf7, 0x12, 0x92, 0x76, 0x44, 0x50, 0x13, 0xc6, 0x5b, - 0x6c, 0x13, 0x4b, 0xa2, 0xd0, 0xf7, 0x89, 0xd4, 0x2f, 0x0f, 0x17, 0x48, 0xc2, 0x33, 0xa4, 0xeb, - 0xec, 0xb0, 0xc9, 0xdd, 0xfe, 0xc3, 0x51, 0x26, 0xab, 0xc4, 0xe1, 0xe4, 0xb0, 0x08, 0x19, 0x15, - 0x9a, 0xdc, 0x87, 0x8a, 0xbc, 0x7c, 0x94, 0xee, 0x03, 0x22, 0x00, 0x15, 0x4b, 0x2e, 0xe8, 0x73, - 0x2c, 0x20, 0x9a, 0x0b, 0x88, 0xe2, 0x0f, 0x97, 0x71, 0x7a, 0x23, 0x18, 0x5a, 0xb0, 0xc0, 0x1a, - 0x3b, 0x74, 0x1d, 0xc6, 0x45, 0x7a, 0x7d, 0xe1, 0x60, 0x28, 0x1b, 0x26, 0xf6, 0x38, 0xd6, 0x91, - 0xfb, 0x59, 0x00, 0x36, 0x0b, 0xa3, 0x4d, 0x78, 0x5c, 0x7b, 0x3e, 0xa6, 0x4b, 0xd0, 0x13, 0x97, - 0x3c, 0x4f, 0xec, 0xed, 0xce, 0x3e, 0xbe, 0x76, 0x10, 0x21, 0x3e, 0x98, 0x0f, 0xba, 0x05, 0xa7, - 0x9d, 0x46, 0xe2, 0x6d, 0x93, 0x2a, 0x71, 0x5c, 0xdf, 0x0b, 0x88, 0x79, 0xad, 0xfb, 0xd1, 0xbd, - 0xdd, 0xd9, 0xd3, 0x0b, 0xdd, 0x08, 0x70, 0xf7, 0x72, 0xe8, 0x13, 0x50, 0x71, 0x83, 0x58, 0x8c, - 0xc1, 0x90, 0xf1, 0x5a, 0x52, 0xa5, 0x7a, 0xb3, 0xae, 0xfa, 0x9f, 0xfe, 0xc1, 0x69, 0x01, 0xf4, - 0x0e, 0x7f, 0xf6, 0x5a, 0x59, 0x33, 0xfc, 0x95, 0xae, 0x97, 0x0b, 0xd9, 0xcf, 0xc6, 0x65, 0x0b, - 0xee, 0x7b, 0x53, 0xc1, 0x85, 0xc6, 0x3d, 0x0c, 0xa3, 0x0a, 0xf4, 0x69, 0x40, 0x31, 0x89, 0xb6, - 0xbd, 0x06, 0x59, 0x68, 0xb0, 0x1c, 0x99, 0xec, 0x90, 0x6f, 0xc4, 0x88, 0xb2, 0x47, 0xf5, 0x0e, - 0x0a, 0xdc, 0xa5, 0x14, 0xba, 0x4a, 0x25, 0x8f, 0x0e, 0x15, 0xb1, 0xa0, 0x52, 0x31, 0x9c, 0xae, - 0x92, 0x56, 0x44, 0x1a, 0x4e, 0x42, 0x5c, 0x93, 0x23, 0xce, 0x94, 0xa3, 0xfb, 0x92, 0x4a, 0x83, - 0x0e, 0x66, 0x04, 0x63, 0x67, 0x2a, 0x74, 0x6a, 0x67, 0x6d, 0x85, 0x71, 0x72, 0x93, 0x24, 0xf7, - 0xc3, 0xe8, 0x1e, 0xf3, 0xd9, 0x8f, 0x68, 0x09, 0xc7, 0x52, 0x14, 0xd6, 0xe9, 0xa8, 0x0e, 0xc5, - 0x0e, 0x8b, 0x56, 0xab, 0xcc, 0x13, 0x3f, 0x92, 0xae, 0x9d, 0xab, 0x1c, 0x8c, 0x25, 0x5e, 0x92, - 0xae, 0xd6, 0x96, 0x98, 0x57, 0x3d, 0x43, 0xba, 0x5a, 0x5b, 0xc2, 0x12, 0x8f, 0xc2, 0xce, 0x37, - 0xa9, 0x26, 0x8a, 0x9c, 0x70, 0x74, 0x4a, 0xf2, 0x82, 0xcf, 0x52, 0x3d, 0x80, 0x29, 0xf5, 0x2e, - 0x16, 0xcf, 0x05, 0x19, 0x4f, 0x4f, 0x16, 0x79, 0x74, 0xbb, 0x6b, 0x4a, 0x49, 0x15, 0xfc, 0xbb, - 0x9a, 0xe1, 0x89, 0x3b, 0x6a, 0x31, 0xd2, 0x13, 0x4c, 0xe5, 0xa6, 0xb6, 0x9f, 0x87, 0x4a, 0xdc, - 0x5e, 0x77, 0xc3, 0xa6, 0xe3, 0x05, 0xcc, 0xf5, 0xad, 0x3f, 0x21, 0x2d, 0x11, 0x38, 0xa5, 0x41, - 0x35, 0x18, 0x71, 0xe4, 0xeb, 0xe9, 0xa8, 0xc8, 0xf5, 0x65, 0xf5, 0x6c, 0x3a, 0xf3, 0x8b, 0xaa, - 0xf7, 0xd2, 0x15, 0x17, 0xf4, 0x0a, 0x8c, 0x8b, 0xdb, 0x37, 0x24, 0x62, 0xad, 0x3e, 0x69, 0x86, - 0x7d, 0xd7, 0x25, 0x92, 0x4d, 0x30, 0x93, 0x76, 0xe6, 0x93, 0x70, 0xa2, 0x63, 0x89, 0xf5, 0x15, - 0x3c, 0xf7, 0xef, 0x06, 0xa0, 0xa2, 0x3c, 0x54, 0x68, 0xde, 0x74, 0x46, 0x3e, 0x9a, 0x75, 0x46, - 0x8e, 0x50, 0x85, 0x40, 0xf7, 0x3f, 0x7e, 0xbe, 0xcb, 0x13, 0xb6, 0xcf, 0xe6, 0xce, 0xa9, 0xe2, - 0xf7, 0x59, 0xfa, 0x78, 0xe8, 0x37, 0xb5, 0x52, 0x06, 0x0e, 0xb4, 0x52, 0x0a, 0xbe, 0x56, 0x45, - 0xed, 0x91, 0x56, 0xe8, 0xae, 0xd6, 0xb2, 0x8f, 0xb1, 0xd4, 0x28, 0x10, 0x73, 0x1c, 0xd3, 0x23, - 0xe9, 0x1e, 0xc1, 0xf4, 0xc8, 0xe1, 0x43, 0xea, 0x91, 0x92, 0x01, 0x4e, 0x79, 0xa1, 0x6d, 0x38, - 0xd1, 0x30, 0xdf, 0xd6, 0x51, 0xb7, 0x54, 0x9e, 0xef, 0xe3, 0x6d, 0x9b, 0xb6, 0xf6, 0x8e, 0xc0, - 0x52, 0x96, 0x1f, 0xee, 0xac, 0x02, 0xbd, 0x02, 0x23, 0xef, 0x84, 0xf1, 0x92, 0xef, 0xc4, 0xb1, - 0x10, 0x94, 0xf2, 0x36, 0xc0, 0xc8, 0x6b, 0xb7, 0xea, 0x0c, 0xbe, 0xbf, 0x3b, 0x3b, 0x5a, 0x0b, - 0x5d, 0xf9, 0x17, 0xab, 0x02, 0xf6, 0x6f, 0x73, 0x6f, 0x98, 0xb0, 0x8f, 0x49, 0xdc, 0xf6, 0x8f, - 0x23, 0x9d, 0xf6, 0x2d, 0xc3, 0x74, 0x7f, 0x08, 0xfe, 0xd8, 0x7f, 0x6f, 0x31, 0x7f, 0xec, 0x1a, - 0x69, 0xb6, 0x7c, 0x27, 0x39, 0x8e, 0xb0, 0xc6, 0xcf, 0xc1, 0x48, 0x22, 0x6a, 0x2b, 0x96, 0x0b, - 0x5c, 0x6b, 0x1e, 0xf3, 0x53, 0x2b, 0x19, 0x27, 0xa1, 0x58, 0x31, 0xb4, 0xff, 0x15, 0xff, 0x2a, - 0x12, 0x73, 0x0c, 0x46, 0xe7, 0x4d, 0xd3, 0xe8, 0x7c, 0xa6, 0x70, 0x5f, 0x7a, 0x18, 0x9f, 0x3f, - 0x30, 0x7b, 0xc0, 0x54, 0xd1, 0x9f, 0x9f, 0x03, 0x03, 0xfb, 0x16, 0x98, 0x6f, 0x10, 0xa1, 0x57, - 0x79, 0xa0, 0x30, 0x17, 0xb2, 0x17, 0xfa, 0x0e, 0x12, 0xb6, 0x7f, 0xbd, 0x04, 0xa7, 0xb8, 0xcb, - 0x70, 0x61, 0x3b, 0xf4, 0xdc, 0x5a, 0xe8, 0x8a, 0xb0, 0x69, 0x17, 0xc6, 0x5a, 0x9a, 0xa9, 0x50, - 0x2c, 0x33, 0x84, 0x6e, 0x5c, 0xa4, 0xea, 0x99, 0x0e, 0xc5, 0x06, 0x57, 0x5a, 0x0b, 0xd9, 0xf6, - 0x1a, 0xca, 0x03, 0x55, 0xea, 0x5b, 0xee, 0xa9, 0x5a, 0x96, 0x35, 0x3e, 0xd8, 0xe0, 0x7a, 0x04, - 0x69, 0xeb, 0xed, 0x7f, 0x60, 0xc1, 0x23, 0x3d, 0xb2, 0x47, 0xd0, 0xea, 0xee, 0x33, 0x37, 0xad, - 0x78, 0xe4, 0x4a, 0x55, 0xc7, 0x9d, 0xb7, 0x58, 0x60, 0xd1, 0x3a, 0x00, 0x77, 0xbe, 0xb2, 0x27, - 0x8f, 0x4b, 0x45, 0xa2, 0x25, 0x3a, 0xee, 0x68, 0x6b, 0xd7, 0x77, 0xd5, 0x23, 0xc7, 0x1a, 0x57, - 0xfb, 0xdb, 0x65, 0x18, 0xe4, 0x6f, 0xa9, 0xd6, 0x60, 0x78, 0x8b, 0x67, 0xb3, 0xec, 0x2f, 0x99, - 0x66, 0xaa, 0x0a, 0x72, 0x00, 0x96, 0x6c, 0xd0, 0x0d, 0x38, 0x49, 0xf5, 0x0e, 0xcf, 0xf1, 0xab, - 0xc4, 0x77, 0x76, 0xa4, 0x6d, 0xc1, 0x73, 0x99, 0xcb, 0xa4, 0xbb, 0x27, 0x57, 0x3b, 0x49, 0x70, - 0xb7, 0x72, 0xe8, 0xd5, 0x8e, 0xe4, 0x53, 0x3c, 0x4b, 0xa8, 0xba, 0xf1, 0x75, 0x70, 0x02, 0x2a, - 0xaa, 0xfd, 0xb4, 0x3a, 0xac, 0x28, 0xed, 0xc9, 0x4a, 0xd3, 0x72, 0x32, 0x69, 0x51, 0x15, 0xa6, - 0xe2, 0x36, 0x3b, 0xbb, 0x5e, 0xdb, 0x8a, 0x48, 0xbc, 0x15, 0xfa, 0xae, 0x78, 0x6d, 0x4d, 0x69, - 0x8c, 0xf5, 0x0c, 0x1e, 0x77, 0x94, 0xa0, 0x5c, 0x36, 0x1c, 0xcf, 0x6f, 0x47, 0x24, 0xe5, 0x32, - 0x64, 0x72, 0x59, 0xc9, 0xe0, 0x71, 0x47, 0x09, 0xfb, 0x8f, 0x2d, 0x38, 0xd9, 0x25, 0xc0, 0x83, - 0x87, 0x1d, 0x6e, 0x7a, 0x71, 0xa2, 0x32, 0x56, 0x6b, 0x61, 0x87, 0x1c, 0x8e, 0x15, 0x05, 0x9d, - 0x85, 0xdc, 0x34, 0xce, 0x1e, 0x9b, 0x8a, 0x23, 0x6c, 0x81, 0xed, 0x2f, 0x95, 0x14, 0x3a, 0x07, - 0x03, 0xed, 0x98, 0x44, 0xf2, 0xf1, 0x26, 0x29, 0xa2, 0x98, 0x37, 0x84, 0x61, 0xa8, 0xb2, 0xb3, - 0xa9, 0x1c, 0x11, 0x9a, 0xb2, 0xc3, 0x5d, 0x11, 0x1c, 0x67, 0x7f, 0xa3, 0x0c, 0x93, 0x99, 0x40, - 0x2f, 0xda, 0x90, 0x66, 0x18, 0x78, 0x49, 0xa8, 0xd2, 0x17, 0xf1, 0xf7, 0x62, 0x48, 0x6b, 0xeb, - 0x86, 0x80, 0x63, 0x45, 0x81, 0x9e, 0x36, 0x1f, 0xb6, 0x4e, 0xdb, 0xbc, 0x58, 0x35, 0xde, 0xb8, - 0x2b, 0x9a, 0x45, 0xff, 0x49, 0x18, 0x68, 0x85, 0xea, 0xbd, 0x52, 0x35, 0xe9, 0xf1, 0x62, 0xb5, - 0x16, 0x86, 0x3e, 0x66, 0x48, 0xf4, 0x94, 0xe8, 0x7d, 0xc6, 0x7f, 0x8b, 0x1d, 0x37, 0x8c, 0xb5, - 0x21, 0x78, 0x06, 0x86, 0xef, 0x91, 0x9d, 0xc8, 0x0b, 0x36, 0xb3, 0xde, 0xeb, 0x6b, 0x1c, 0x8c, - 0x25, 0xde, 0xcc, 0x94, 0x3f, 0x7c, 0xc4, 0x99, 0xf2, 0x47, 0x72, 0x63, 0x55, 0xbf, 0x6b, 0xc1, - 0x24, 0xcb, 0xe9, 0x27, 0xae, 0xd3, 0x7a, 0x61, 0x70, 0x0c, 0xdb, 0xe3, 0x93, 0x30, 0x18, 0xd1, - 0x4a, 0xb3, 0xa9, 0xae, 0x59, 0x4b, 0x30, 0xc7, 0xa1, 0xc7, 0x60, 0x80, 0x35, 0x81, 0x7e, 0xc6, - 0x31, 0x9e, 0x3a, 0xb8, 0xea, 0x24, 0x0e, 0x66, 0x50, 0x76, 0x33, 0x02, 0x93, 0x96, 0xef, 0xf1, - 0x46, 0xa7, 0x4e, 0xa7, 0xf7, 0xdb, 0xcd, 0x88, 0xae, 0x8d, 0x7c, 0x58, 0x37, 0x23, 0xba, 0x33, - 0x3f, 0x58, 0x45, 0xfd, 0x9f, 0x25, 0x38, 0xdb, 0xb5, 0x5c, 0x7a, 0x0e, 0xb6, 0x62, 0x9c, 0x83, - 0x5d, 0xca, 0x9c, 0x83, 0xd9, 0x07, 0x97, 0x7e, 0x38, 0x27, 0x63, 0xdd, 0x0f, 0xac, 0xca, 0xc7, - 0x78, 0x60, 0x35, 0x50, 0x54, 0x75, 0x18, 0xcc, 0x51, 0x1d, 0x7e, 0xcf, 0x82, 0x47, 0xbb, 0x0e, - 0xd9, 0xfb, 0xee, 0x2a, 0x4a, 0xd7, 0x56, 0xf6, 0x50, 0xac, 0x7f, 0xa5, 0xdc, 0xa3, 0x57, 0x4c, - 0xc5, 0x3e, 0x4f, 0xa5, 0x10, 0x43, 0xc6, 0x42, 0x29, 0x1a, 0xe3, 0x12, 0x88, 0xc3, 0xb0, 0xc2, - 0xa2, 0x58, 0xbb, 0xca, 0xc1, 0x1b, 0xb9, 0x7c, 0xc8, 0x05, 0x35, 0x67, 0x7a, 0x0b, 0xf5, 0x3b, - 0xc2, 0x99, 0x0b, 0x1e, 0xe8, 0xae, 0x66, 0x34, 0x95, 0x0f, 0x63, 0x34, 0x8d, 0x75, 0x37, 0x98, - 0xd0, 0x02, 0x4c, 0x36, 0xbd, 0x80, 0x3d, 0xb0, 0x67, 0x6a, 0x25, 0xea, 0x3e, 0xdd, 0x0d, 0x13, - 0x8d, 0xb3, 0xf4, 0x33, 0xaf, 0xc0, 0xf8, 0xe1, 0x7d, 0x32, 0xef, 0x96, 0xe1, 0x83, 0x07, 0x08, - 0x05, 0xbe, 0x3b, 0x18, 0xdf, 0x45, 0xdb, 0x1d, 0x3a, 0xbe, 0x4d, 0x0d, 0x4e, 0x6d, 0xb4, 0x7d, - 0x7f, 0x87, 0x45, 0x91, 0x10, 0x57, 0x52, 0x08, 0x8d, 0x4f, 0x3d, 0x7d, 0xbb, 0xd2, 0x85, 0x06, - 0x77, 0x2d, 0x89, 0x3e, 0x0d, 0x28, 0x5c, 0x67, 0x59, 0x2f, 0xdd, 0xf4, 0x0e, 0x34, 0xfb, 0x04, - 0xe5, 0x74, 0xa9, 0xde, 0xea, 0xa0, 0xc0, 0x5d, 0x4a, 0x51, 0xfd, 0x8f, 0xbd, 0x9a, 0xab, 0x9a, - 0x95, 0xd1, 0xff, 0xb0, 0x8e, 0xc4, 0x26, 0x2d, 0xba, 0x02, 0x27, 0x9c, 0x6d, 0xc7, 0xe3, 0x59, - 0x6c, 0x24, 0x03, 0xae, 0x00, 0x2a, 0xaf, 0xc7, 0x42, 0x96, 0x00, 0x77, 0x96, 0x41, 0x2d, 0xc3, - 0x8d, 0xc5, 0xf3, 0x5d, 0x7f, 0xe2, 0x10, 0x33, 0xb8, 0xb0, 0x63, 0xcb, 0xfe, 0x6f, 0x16, 0xdd, - 0xfa, 0xba, 0xbc, 0xc5, 0x66, 0x3c, 0xe2, 0xae, 0x5d, 0x6e, 0xe9, 0x7c, 0xc4, 0x9d, 0xfb, 0x03, - 0x0d, 0x5a, 0x3e, 0x35, 0xe2, 0x34, 0x1c, 0xd5, 0xd0, 0x36, 0xc5, 0xad, 0x2e, 0x45, 0x81, 0x3e, - 0x03, 0xc3, 0xae, 0xb7, 0xed, 0xc5, 0x61, 0x24, 0x16, 0x50, 0x9f, 0x21, 0x8e, 0xa9, 0xbc, 0xac, - 0x72, 0x36, 0x58, 0xf2, 0xb3, 0xbf, 0x59, 0x82, 0x71, 0x59, 0xe3, 0x6b, 0xed, 0x30, 0x71, 0x8e, - 0x61, 0x4b, 0x7f, 0xcd, 0xd8, 0xd2, 0xe7, 0x8b, 0x5d, 0x72, 0x63, 0x8d, 0xeb, 0xb9, 0x95, 0x7f, - 0x26, 0xb3, 0x95, 0x5f, 0xec, 0x87, 0xe9, 0xc1, 0x5b, 0xf8, 0xbf, 0xb1, 0xe0, 0x84, 0x41, 0x7f, - 0x0c, 0x3b, 0x49, 0xcd, 0xdc, 0x49, 0x9e, 0xeb, 0xa3, 0x37, 0x3d, 0x76, 0x90, 0xef, 0x94, 0x32, - 0xbd, 0x60, 0x3b, 0xc7, 0x17, 0x61, 0x60, 0xcb, 0x89, 0xdc, 0x62, 0x29, 0xdd, 0x3a, 0x8a, 0xcf, - 0x5d, 0x75, 0x22, 0x97, 0xcb, 0xff, 0x0b, 0xea, 0xa5, 0x18, 0x27, 0x72, 0x73, 0xa3, 0xb4, 0x59, - 0xa5, 0xe8, 0x32, 0x0c, 0xc5, 0x8d, 0xb0, 0xa5, 0xa2, 0xe1, 0xce, 0xf1, 0x57, 0x64, 0x28, 0x64, - 0x7f, 0x77, 0x16, 0x99, 0xd5, 0x51, 0x30, 0x16, 0xf4, 0x33, 0x9b, 0x50, 0x51, 0x55, 0x1f, 0x69, - 0x3c, 0xf0, 0xff, 0x28, 0xc3, 0xc9, 0x2e, 0x73, 0x05, 0x7d, 0xc9, 0x18, 0xb7, 0x57, 0xfa, 0x9e, - 0x6c, 0xef, 0x71, 0xe4, 0xbe, 0xc4, 0x2c, 0x25, 0x57, 0xcc, 0x8e, 0x43, 0x54, 0x7f, 0x3b, 0x26, - 0xd9, 0xea, 0x29, 0x28, 0xbf, 0x7a, 0x5a, 0xed, 0xb1, 0x0d, 0x3f, 0xad, 0x48, 0xb5, 0xf4, 0x48, - 0xbf, 0xf3, 0x5f, 0x1e, 0x80, 0x53, 0xdd, 0x6e, 0xd3, 0xa2, 0xaf, 0x5a, 0x99, 0xbc, 0xed, 0xaf, - 0xf6, 0x7f, 0x25, 0x97, 0x27, 0x73, 0x17, 0x19, 0x28, 0xe6, 0xcc, 0x4c, 0xee, 0xb9, 0x23, 0x2e, - 0x6a, 0x67, 0xf7, 0x2b, 0x22, 0x9e, 0x83, 0x5f, 0x4a, 0x85, 0x4f, 0x1d, 0xa2, 0x29, 0x22, 0x8d, - 0x7f, 0x9c, 0xb9, 0x5f, 0x21, 0xc1, 0xf9, 0xf7, 0x2b, 0x64, 0x1b, 0x66, 0x3c, 0x18, 0xd5, 0xfa, - 0x75, 0xa4, 0xd3, 0xe0, 0x1e, 0xdd, 0xa2, 0xb4, 0x76, 0x1f, 0xe9, 0x54, 0xf8, 0x3b, 0x16, 0x64, - 0x42, 0x57, 0x94, 0x5b, 0xc6, 0xea, 0xe9, 0x96, 0x39, 0x07, 0x03, 0x51, 0xe8, 0x93, 0x6c, 0x4e, - 0x71, 0x1c, 0xfa, 0x04, 0x33, 0x8c, 0x7a, 0x3c, 0xb2, 0xdc, 0xeb, 0xf1, 0x48, 0x6a, 0xa7, 0xfb, - 0x64, 0x9b, 0x48, 0x27, 0x89, 0x12, 0xe3, 0xd7, 0x29, 0x10, 0x73, 0x9c, 0xfd, 0xbb, 0x65, 0x18, - 0xe2, 0x9e, 0x88, 0x63, 0xd8, 0xa7, 0x6b, 0xc2, 0x29, 0x50, 0xe8, 0x8e, 0x2b, 0x6f, 0xd5, 0x5c, - 0xd5, 0x49, 0x1c, 0x3e, 0xb9, 0x54, 0x1f, 0x53, 0x47, 0x02, 0x9a, 0x33, 0x46, 0x61, 0x26, 0x63, - 0xeb, 0x02, 0xe7, 0xa1, 0x8d, 0xc9, 0x16, 0x40, 0xcc, 0x1e, 0x2b, 0xa3, 0x3c, 0x44, 0x1e, 0xbe, - 0x17, 0x0b, 0xb5, 0xa3, 0xae, 0x8a, 0xf1, 0xd6, 0xa4, 0xc9, 0xbf, 0x14, 0x02, 0x6b, 0xbc, 0x67, - 0x5e, 0x86, 0x8a, 0x22, 0xce, 0x33, 0x02, 0xc6, 0xf4, 0xc9, 0xf9, 0x17, 0x60, 0x32, 0x53, 0x57, - 0x5f, 0x36, 0xc4, 0x6f, 0x59, 0x30, 0x99, 0x79, 0x67, 0x19, 0x7d, 0xc5, 0x82, 0x53, 0x7e, 0x17, - 0x47, 0x94, 0xf8, 0xcc, 0x87, 0x71, 0x61, 0x29, 0xf3, 0xa1, 0x1b, 0x16, 0x77, 0xad, 0x8d, 0x9a, - 0x95, 0xfc, 0xed, 0x45, 0xc7, 0x17, 0x91, 0x80, 0x63, 0x3c, 0x69, 0x28, 0x87, 0x61, 0x85, 0xb5, - 0x7f, 0x6a, 0xc1, 0x89, 0x8e, 0xa7, 0x7c, 0xdf, 0x2f, 0xdd, 0x10, 0xe9, 0x51, 0x4b, 0x3d, 0xd2, - 0xa3, 0xea, 0xbd, 0x2c, 0x1f, 0xd8, 0xcb, 0x5f, 0xb7, 0x40, 0xcc, 0xd0, 0x63, 0xd0, 0x00, 0x57, - 0x4d, 0x0d, 0xf0, 0x43, 0x45, 0x26, 0x7d, 0x0f, 0xd5, 0xef, 0x4f, 0x2d, 0x40, 0x9c, 0x20, 0xfb, - 0x48, 0x23, 0x77, 0x64, 0x6a, 0xc6, 0x4b, 0xba, 0x4a, 0x14, 0x06, 0x6b, 0x54, 0x7d, 0x66, 0xd9, - 0x57, 0x4f, 0x9b, 0x75, 0x6f, 0x18, 0xba, 0x08, 0xa3, 0xe2, 0x69, 0xa3, 0x1b, 0xe9, 0xb3, 0x65, - 0x93, 0xec, 0x09, 0xcd, 0x14, 0x8c, 0x75, 0x1a, 0xe3, 0x6b, 0x0d, 0x1c, 0xf8, 0xb5, 0x7e, 0xbb, - 0x0c, 0xd9, 0xf0, 0x17, 0xf4, 0x16, 0x8c, 0x35, 0x9c, 0x96, 0xb3, 0xee, 0xf9, 0x5e, 0xe2, 0x91, - 0xb8, 0xd8, 0xb1, 0xdb, 0x92, 0x56, 0x42, 0x38, 0xcd, 0x35, 0x08, 0x36, 0x38, 0xa2, 0x39, 0x80, - 0x56, 0xe4, 0x6d, 0x7b, 0x3e, 0xd9, 0x64, 0xfa, 0x19, 0x8b, 0x9f, 0xe5, 0x27, 0x48, 0x12, 0x8a, - 0x35, 0x8a, 0x2e, 0xf1, 0x96, 0xe5, 0xe3, 0x88, 0xb7, 0x1c, 0xe8, 0x33, 0xde, 0x72, 0xb0, 0x50, - 0xbc, 0x25, 0x86, 0x33, 0xd2, 0xd7, 0x4d, 0xff, 0xaf, 0x78, 0x3e, 0xe1, 0xe9, 0x15, 0x45, 0x7c, - 0xed, 0xcc, 0xde, 0xee, 0xec, 0x19, 0xdc, 0x95, 0x02, 0xf7, 0x28, 0x69, 0xb7, 0xe1, 0x64, 0x9d, - 0x44, 0x1e, 0xcb, 0x7a, 0xe5, 0xa6, 0x8b, 0xfa, 0xf3, 0x50, 0x89, 0x32, 0xf2, 0xa4, 0xcf, 0xeb, - 0x8f, 0x5a, 0x9e, 0x14, 0x29, 0x3f, 0x52, 0x96, 0xf6, 0x5f, 0x2b, 0xc1, 0xb0, 0x08, 0x33, 0x3b, - 0x86, 0x8d, 0xf6, 0x9a, 0x61, 0x10, 0x3f, 0x93, 0xb7, 0xd6, 0x59, 0xb3, 0x7a, 0x9a, 0xc2, 0xf5, - 0x8c, 0x29, 0xfc, 0x5c, 0x31, 0x76, 0x07, 0x1b, 0xc1, 0x3f, 0x2a, 0xc1, 0x84, 0x19, 0x76, 0x77, - 0x0c, 0xc3, 0xf2, 0x3a, 0x0c, 0xc7, 0x22, 0x26, 0xad, 0x54, 0x24, 0xa2, 0x26, 0xfb, 0x89, 0x95, - 0xd7, 0x43, 0x46, 0xa1, 0x49, 0x76, 0x5d, 0xc3, 0xde, 0xca, 0xc7, 0x11, 0xf6, 0x66, 0xff, 0x90, - 0x09, 0x63, 0x7d, 0x20, 0x8f, 0x61, 0x33, 0x79, 0xcd, 0x14, 0xdb, 0x17, 0x0a, 0xcd, 0x08, 0xd1, - 0xbc, 0x1e, 0x9b, 0xca, 0xf7, 0x2c, 0x18, 0x15, 0x84, 0xc7, 0xd0, 0x81, 0x4f, 0x9b, 0x1d, 0x78, - 0xaa, 0x50, 0x07, 0x7a, 0xb4, 0xfc, 0x9b, 0x25, 0xd5, 0xf2, 0x9a, 0x78, 0xf2, 0x36, 0x37, 0xfb, - 0xe6, 0x48, 0x2b, 0x0a, 0x93, 0xb0, 0x11, 0xfa, 0x42, 0x8d, 0x78, 0x2c, 0xbd, 0xe8, 0xc0, 0xe1, - 0xfb, 0xda, 0x6f, 0xac, 0xa8, 0x59, 0x1c, 0x7e, 0x18, 0x25, 0x62, 0x6b, 0xeb, 0xf6, 0xe0, 0xae, - 0x2b, 0x9f, 0x34, 0xa7, 0x30, 0x71, 0x47, 0xa8, 0xff, 0xa7, 0x7c, 0xd3, 0x9b, 0x0b, 0x8a, 0x17, - 0xd6, 0xf8, 0xca, 0x90, 0x58, 0x56, 0xc7, 0xa0, 0xe9, 0x89, 0xbe, 0x29, 0xe0, 0x58, 0x51, 0xd8, - 0x2f, 0x33, 0x99, 0xcb, 0x06, 0xa8, 0xbf, 0x4b, 0x05, 0x7f, 0x75, 0x48, 0x0d, 0x2d, 0x73, 0x2f, - 0xdd, 0xd4, 0xaf, 0x2e, 0x14, 0x15, 0x6c, 0xb4, 0x09, 0x7a, 0x14, 0x5f, 0x7a, 0xd3, 0x01, 0x91, - 0x8e, 0xe3, 0x8b, 0x97, 0x0b, 0xcb, 0xca, 0x3e, 0x0e, 0x2c, 0x58, 0xca, 0x22, 0x96, 0xa7, 0x65, - 0xb5, 0x96, 0xcd, 0x99, 0xba, 0x24, 0x11, 0x38, 0xa5, 0x41, 0xf3, 0xc2, 0xac, 0x31, 0x5f, 0x44, - 0x96, 0x66, 0x8d, 0x1c, 0x12, 0xcd, 0xae, 0xb9, 0x08, 0xa3, 0x2a, 0x73, 0x7c, 0x8d, 0x27, 0x00, - 0xaf, 0x70, 0xcd, 0x67, 0x39, 0x05, 0x63, 0x9d, 0x06, 0xad, 0xc2, 0x49, 0x57, 0x45, 0x40, 0xd7, - 0xda, 0xeb, 0xbe, 0xd7, 0xa0, 0x45, 0xf9, 0xed, 0xa5, 0x47, 0xf6, 0x76, 0x67, 0x4f, 0x56, 0x3b, - 0xd1, 0xb8, 0x5b, 0x19, 0xb4, 0x06, 0x93, 0x31, 0xcf, 0x90, 0x2f, 0xc3, 0x5c, 0x45, 0x2a, 0xc1, - 0x67, 0xe5, 0xb9, 0x49, 0xdd, 0x44, 0xef, 0x33, 0x10, 0x97, 0x0a, 0x32, 0x30, 0x36, 0xcb, 0x02, - 0xbd, 0x0a, 0x13, 0xbe, 0xfe, 0xfc, 0x57, 0x4d, 0x04, 0x82, 0xab, 0x08, 0x13, 0xe3, 0x71, 0xb0, - 0x1a, 0xce, 0x50, 0xa3, 0xd7, 0x61, 0x5a, 0x87, 0x88, 0x7c, 0x0a, 0x4e, 0xb0, 0x49, 0x62, 0x91, - 0x9a, 0xfb, 0xb1, 0xbd, 0xdd, 0xd9, 0xe9, 0xeb, 0x3d, 0x68, 0x70, 0xcf, 0xd2, 0xe8, 0x32, 0x8c, - 0xc9, 0x91, 0xd4, 0x82, 0xc2, 0xd3, 0xd8, 0x26, 0x0d, 0x87, 0x0d, 0xca, 0xf7, 0x76, 0x3c, 0xf4, - 0x45, 0x5a, 0x58, 0xdb, 0x5c, 0xd1, 0xdb, 0x30, 0xa6, 0xb7, 0x31, 0xbb, 0x6b, 0xe6, 0x3f, 0xa9, - 0x26, 0x36, 0x69, 0xd5, 0x72, 0x1d, 0x87, 0x0d, 0xde, 0xf6, 0x2d, 0x18, 0xaa, 0xef, 0xc4, 0x8d, - 0xc4, 0x7f, 0x58, 0x8f, 0x61, 0x13, 0x98, 0xcc, 0xbc, 0x1a, 0xad, 0x1e, 0x20, 0xb7, 0x1e, 0xde, - 0x03, 0xe4, 0xf6, 0x1f, 0x59, 0x30, 0xb8, 0xe6, 0x78, 0xf9, 0xcf, 0x5a, 0x14, 0x69, 0x34, 0x7a, - 0x09, 0x86, 0xc8, 0xc6, 0x06, 0x69, 0xc8, 0x07, 0xcd, 0x1f, 0x97, 0xea, 0xcd, 0x32, 0x83, 0xd2, - 0xc5, 0xc9, 0x2a, 0xe3, 0x7f, 0xb1, 0x20, 0x46, 0x9f, 0x83, 0x4a, 0xe2, 0x35, 0xc9, 0x82, 0xeb, - 0x12, 0xf7, 0x10, 0xf7, 0x36, 0x95, 0xb0, 0x58, 0x93, 0x4c, 0x70, 0xca, 0xcf, 0xfe, 0x7a, 0x09, - 0x60, 0x2d, 0xf4, 0xe5, 0xc1, 0x5a, 0x4e, 0x37, 0x17, 0x3b, 0x5e, 0xef, 0x78, 0xba, 0xcb, 0xeb, - 0x1d, 0x28, 0x65, 0xd8, 0xe5, 0xed, 0x0e, 0x35, 0x54, 0xe5, 0x42, 0x43, 0x35, 0xd0, 0xcf, 0x50, - 0x2d, 0xc1, 0x89, 0x44, 0xd5, 0x6d, 0x5e, 0x80, 0x61, 0xa9, 0xc5, 0xd6, 0xb2, 0x48, 0xdc, 0x49, - 0x6f, 0x7f, 0xdd, 0x02, 0x11, 0x38, 0x55, 0x60, 0xb6, 0xba, 0x32, 0x6d, 0xbf, 0x91, 0xcd, 0xe5, - 0xd9, 0x22, 0x17, 0x9c, 0x44, 0x0e, 0x17, 0xb5, 0x7e, 0x8c, 0xcc, 0x2d, 0x06, 0x57, 0xfb, 0x37, - 0x2c, 0x18, 0xe5, 0xe8, 0x1b, 0x4c, 0xdb, 0xcd, 0x6f, 0x57, 0x5f, 0x79, 0xeb, 0x58, 0x46, 0x7b, - 0xca, 0x58, 0xe5, 0x2f, 0xd3, 0x33, 0xda, 0x4b, 0x04, 0x4e, 0x69, 0xd0, 0x33, 0x30, 0x1c, 0xb7, - 0xd7, 0x19, 0x79, 0x26, 0x8a, 0xaa, 0xce, 0xc1, 0x58, 0xe2, 0xed, 0x5f, 0x42, 0x60, 0x74, 0xcd, - 0xc8, 0x95, 0x66, 0x3d, 0xf4, 0x5c, 0x69, 0x6f, 0xc0, 0x08, 0x69, 0xb6, 0x92, 0x9d, 0xaa, 0x17, - 0x15, 0xcb, 0x5b, 0xb9, 0x2c, 0xa8, 0x3b, 0xb9, 0x4b, 0x0c, 0x56, 0x1c, 0x7b, 0x64, 0xbe, 0x2b, - 0xbf, 0x2f, 0x32, 0xdf, 0x0d, 0xfc, 0x4c, 0x32, 0xdf, 0xbd, 0x0e, 0xc3, 0x9b, 0x5e, 0x82, 0x49, - 0x2b, 0x14, 0x37, 0x62, 0x73, 0x0e, 0x3b, 0xaf, 0x70, 0xe2, 0xce, 0x74, 0x56, 0x02, 0x81, 0x25, - 0x3b, 0xb4, 0x06, 0x43, 0xdc, 0x42, 0x12, 0xc9, 0xe4, 0x3e, 0x52, 0xc4, 0xeb, 0xd4, 0x99, 0x57, - 0x4d, 0x84, 0xca, 0x09, 0x5e, 0x32, 0xd3, 0xdd, 0xf0, 0x7b, 0xcf, 0x74, 0xa7, 0xf2, 0xd3, 0x8d, - 0x3c, 0xac, 0xfc, 0x74, 0x46, 0x9e, 0xbf, 0xca, 0x51, 0xe4, 0xf9, 0xfb, 0xba, 0x05, 0xa7, 0x5b, - 0xdd, 0xb2, 0x64, 0x8a, 0x4c, 0x73, 0x9f, 0x3c, 0x44, 0xde, 0x50, 0xa3, 0x6a, 0x76, 0xcf, 0xb0, - 0x2b, 0x19, 0xee, 0x5e, 0xb1, 0x4c, 0x18, 0x38, 0xfa, 0xde, 0x13, 0x06, 0x1e, 0x75, 0x4a, 0xba, - 0x34, 0x7d, 0xe0, 0xf8, 0x91, 0xa4, 0x0f, 0x9c, 0x78, 0x88, 0xe9, 0x03, 0xb5, 0xc4, 0x7f, 0x93, - 0x0f, 0x37, 0xf1, 0xdf, 0x16, 0x8c, 0xba, 0xe1, 0xfd, 0xe0, 0xbe, 0x13, 0xb9, 0x0b, 0xb5, 0x55, - 0x91, 0x67, 0x2e, 0x27, 0x95, 0x49, 0x35, 0x2d, 0x60, 0xd4, 0xc0, 0xdd, 0xab, 0x29, 0x12, 0xeb, - 0xac, 0x45, 0x0a, 0xc4, 0x13, 0xef, 0x31, 0x05, 0xa2, 0x91, 0x48, 0x10, 0x1d, 0x45, 0x22, 0xc1, - 0xb7, 0x58, 0x4e, 0x83, 0x0d, 0x6f, 0xf3, 0x86, 0xd3, 0x62, 0xf7, 0xf0, 0x72, 0x6b, 0x58, 0x92, - 0xe4, 0x9d, 0x35, 0x28, 0x14, 0x4e, 0x99, 0x76, 0xa6, 0x2a, 0x3c, 0x75, 0xdc, 0xa9, 0x0a, 0x4f, - 0x1f, 0x61, 0xaa, 0xc2, 0x33, 0xc7, 0x9a, 0xaa, 0xf0, 0x91, 0x9f, 0x49, 0xaa, 0xc2, 0xbf, 0x04, - 0x67, 0x0f, 0xfe, 0x1c, 0x69, 0x32, 0xec, 0x5a, 0xea, 0xd6, 0xc8, 0x24, 0xc3, 0x66, 0xaa, 0x8e, - 0x46, 0x55, 0x38, 0x5f, 0xda, 0x77, 0x2c, 0x78, 0xa4, 0x47, 0x3a, 0xa1, 0xc2, 0x57, 0x58, 0x5a, - 0x30, 0xd9, 0x32, 0x8b, 0x16, 0xbe, 0x74, 0x66, 0xa4, 0x2f, 0x52, 0xe1, 0x90, 0x19, 0x04, 0xce, - 0xb2, 0x5f, 0xfc, 0xd0, 0x8f, 0xdf, 0x3d, 0xfb, 0x81, 0x9f, 0xbc, 0x7b, 0xf6, 0x03, 0x7f, 0xf0, - 0xee, 0xd9, 0x0f, 0xfc, 0xc2, 0xde, 0x59, 0xeb, 0xc7, 0x7b, 0x67, 0xad, 0x9f, 0xec, 0x9d, 0xb5, - 0xfe, 0x78, 0xef, 0xac, 0xf5, 0xf5, 0x9f, 0x9e, 0xfd, 0xc0, 0x67, 0x4b, 0xdb, 0x17, 0xff, 0x7f, - 0x00, 0x00, 0x00, 0xff, 0xff, 0xaa, 0x9c, 0x74, 0x25, 0xcd, 0xbb, 0x00, 0x00, + 0x6c, 0xc7, 0x07, 0x24, 0x17, 0x03, 0x87, 0xe4, 0x2e, 0x5f, 0xbc, 0x13, 0x9d, 0xdc, 0xcf, 0xfc, + 0xc8, 0xfd, 0x63, 0x82, 0x24, 0xa8, 0xcf, 0xae, 0xea, 0x99, 0x61, 0xf7, 0x50, 0x4b, 0x5a, 0x3e, + 0xe4, 0xdf, 0xcc, 0x7b, 0xaf, 0x5e, 0x7d, 0x74, 0xd5, 0xab, 0xf7, 0x5e, 0xbd, 0x7a, 0x05, 0x17, + 0xee, 0x5d, 0x8e, 0xe7, 0xbc, 0x70, 0xfe, 0x5e, 0x7b, 0x9d, 0x44, 0x01, 0x49, 0x48, 0x3c, 0xdf, + 0xba, 0xb7, 0x39, 0xef, 0xb4, 0xbc, 0xf9, 0xed, 0x8b, 0xf3, 0x9b, 0x24, 0x20, 0x91, 0x93, 0x10, + 0x77, 0xae, 0x15, 0x85, 0x49, 0x88, 0x1e, 0xe3, 0xd4, 0x73, 0x29, 0xf5, 0x5c, 0xeb, 0xde, 0xe6, + 0x9c, 0xd3, 0xf2, 0xe6, 0xb6, 0x2f, 0xce, 0x3c, 0xbf, 0xe9, 0x25, 0x5b, 0xed, 0xf5, 0xb9, 0x46, + 0xd8, 0x9c, 0xdf, 0x0c, 0x37, 0xc3, 0x79, 0x56, 0x68, 0xbd, 0xbd, 0xc1, 0xfe, 0xb1, 0x3f, 0xec, + 0x17, 0x67, 0x36, 0xf3, 0xa2, 0xa8, 0xda, 0x69, 0x79, 0x4d, 0xa7, 0xb1, 0xe5, 0x05, 0x24, 0xda, + 0x51, 0x95, 0x47, 0x24, 0x0e, 0xdb, 0x51, 0x83, 0x64, 0x9b, 0x70, 0x60, 0xa9, 0x78, 0xbe, 0x49, + 0x12, 0xa7, 0x4b, 0xc3, 0x67, 0xe6, 0x7b, 0x95, 0x8a, 0xda, 0x41, 0xe2, 0x35, 0x3b, 0xab, 0xf9, + 0x68, 0x5e, 0x81, 0xb8, 0xb1, 0x45, 0x9a, 0x4e, 0x47, 0xb9, 0x17, 0x7a, 0x95, 0x6b, 0x27, 0x9e, + 0x3f, 0xef, 0x05, 0x49, 0x9c, 0x44, 0x07, 0xf5, 0x29, 0x26, 0xd1, 0x36, 0x89, 0xd2, 0x0e, 0x91, + 0x07, 0x4e, 0xb3, 0xe5, 0x93, 0x2e, 0x7d, 0xb2, 0xff, 0xc0, 0x82, 0x73, 0x0b, 0x77, 0xeb, 0xcb, + 0xbe, 0x13, 0x27, 0x5e, 0x63, 0xd1, 0x0f, 0x1b, 0xf7, 0xea, 0x49, 0x18, 0x91, 0x3b, 0xa1, 0xdf, + 0x6e, 0x92, 0x3a, 0x1b, 0x3e, 0x74, 0x01, 0x46, 0xb6, 0xd9, 0xff, 0xd5, 0xea, 0xb4, 0x75, 0xce, + 0x3a, 0x5f, 0x59, 0x9c, 0xfa, 0xc9, 0xee, 0xec, 0x07, 0xf6, 0x76, 0x67, 0x47, 0xee, 0x08, 0x38, + 0x56, 0x14, 0xe8, 0x69, 0x18, 0xda, 0x88, 0xd7, 0x76, 0x5a, 0x64, 0xba, 0xc4, 0x68, 0x27, 0x04, + 0xed, 0xd0, 0x4a, 0x9d, 0x42, 0xb1, 0xc0, 0xa2, 0x79, 0xa8, 0xb4, 0x9c, 0x28, 0xf1, 0x12, 0x2f, + 0x0c, 0xa6, 0xcb, 0xe7, 0xac, 0xf3, 0x83, 0x8b, 0x27, 0x04, 0x69, 0xa5, 0x26, 0x11, 0x38, 0xa5, + 0xa1, 0xcd, 0x88, 0x88, 0xe3, 0xde, 0x0a, 0xfc, 0x9d, 0xe9, 0x81, 0x73, 0xd6, 0xf9, 0x91, 0xb4, + 0x19, 0x58, 0xc0, 0xb1, 0xa2, 0xb0, 0xbf, 0x5f, 0x82, 0x91, 0x85, 0x8d, 0x0d, 0x2f, 0xf0, 0x92, + 0x1d, 0xf4, 0x16, 0x8c, 0x05, 0xa1, 0x4b, 0xe4, 0x7f, 0xd6, 0x8b, 0xd1, 0x4b, 0xcf, 0xce, 0x1d, + 0x34, 0x15, 0xe7, 0x6e, 0x6a, 0x25, 0x16, 0xa7, 0xf6, 0x76, 0x67, 0xc7, 0x74, 0x08, 0x36, 0x38, + 0xa2, 0x37, 0x60, 0xb4, 0x15, 0xba, 0xaa, 0x82, 0x12, 0xab, 0xe0, 0x99, 0x83, 0x2b, 0xa8, 0xa5, + 0x05, 0x16, 0x27, 0xf7, 0x76, 0x67, 0x47, 0x35, 0x00, 0xd6, 0xd9, 0x21, 0x1f, 0x26, 0xe9, 0xdf, + 0x20, 0xf1, 0x54, 0x0d, 0x65, 0x56, 0xc3, 0xf3, 0xf9, 0x35, 0x68, 0x85, 0x16, 0x4f, 0xee, 0xed, + 0xce, 0x4e, 0x66, 0x80, 0x38, 0xcb, 0xda, 0xfe, 0x02, 0x4c, 0x2c, 0x24, 0x89, 0xd3, 0xd8, 0x22, + 0x2e, 0xff, 0xbe, 0xe8, 0x45, 0x18, 0x08, 0x9c, 0x26, 0x11, 0x5f, 0xff, 0x9c, 0x18, 0xf6, 0x81, + 0x9b, 0x4e, 0x93, 0xec, 0xef, 0xce, 0x4e, 0xdd, 0x0e, 0xbc, 0x77, 0xda, 0x62, 0xce, 0x50, 0x18, + 0x66, 0xd4, 0xe8, 0x12, 0x80, 0x4b, 0xb6, 0xbd, 0x06, 0xa9, 0x39, 0xc9, 0x96, 0x98, 0x0d, 0x48, + 0x94, 0x85, 0xaa, 0xc2, 0x60, 0x8d, 0xca, 0xfe, 0xb2, 0x05, 0x95, 0x85, 0xed, 0xd0, 0x73, 0x6b, + 0xa1, 0x1b, 0xa3, 0x36, 0x4c, 0xb6, 0x22, 0xb2, 0x41, 0x22, 0x05, 0x9a, 0xb6, 0xce, 0x95, 0xcf, + 0x8f, 0x5e, 0xba, 0x94, 0xd3, 0x6f, 0xb3, 0xd0, 0x72, 0x90, 0x44, 0x3b, 0x8b, 0x8f, 0x88, 0xaa, + 0x27, 0x33, 0x58, 0x9c, 0xad, 0xc3, 0xfe, 0xeb, 0x25, 0x38, 0xbd, 0xf0, 0x85, 0x76, 0x44, 0xaa, + 0x5e, 0x7c, 0x2f, 0xbb, 0x14, 0x5c, 0x2f, 0xbe, 0x77, 0x33, 0x1d, 0x0c, 0x35, 0x07, 0xab, 0x02, + 0x8e, 0x15, 0x05, 0x7a, 0x1e, 0x86, 0xe9, 0xef, 0xdb, 0x78, 0x55, 0xf4, 0xfe, 0xa4, 0x20, 0x1e, + 0xad, 0x3a, 0x89, 0x53, 0xe5, 0x28, 0x2c, 0x69, 0xd0, 0x0d, 0x18, 0x6d, 0xb0, 0xf5, 0xbe, 0x79, + 0x23, 0x74, 0x09, 0xfb, 0xc2, 0x95, 0xc5, 0xe7, 0x28, 0xf9, 0x52, 0x0a, 0xde, 0xdf, 0x9d, 0x9d, + 0xe6, 0x6d, 0x13, 0x2c, 0x34, 0x1c, 0xd6, 0xcb, 0x23, 0x5b, 0x2d, 0xc4, 0x01, 0xc6, 0x09, 0xba, + 0x2c, 0xc2, 0xf3, 0xda, 0x9a, 0x1a, 0x64, 0x6b, 0x6a, 0xac, 0xc7, 0x7a, 0xfa, 0x87, 0x96, 0x18, + 0x93, 0x15, 0xcf, 0x37, 0xc5, 0xc3, 0x25, 0x80, 0x98, 0x34, 0x22, 0x92, 0x68, 0xa3, 0xa2, 0x3e, + 0x73, 0x5d, 0x61, 0xb0, 0x46, 0x45, 0x17, 0x7f, 0xbc, 0xe5, 0x44, 0x6c, 0xb6, 0x88, 0xb1, 0x51, + 0x8b, 0xbf, 0x2e, 0x11, 0x38, 0xa5, 0x31, 0x16, 0x7f, 0x39, 0x77, 0xf1, 0xff, 0x8e, 0x05, 0xc3, + 0x8b, 0x5e, 0xe0, 0x7a, 0xc1, 0x26, 0x7a, 0x0b, 0x46, 0xa8, 0x44, 0x77, 0x9d, 0xc4, 0x11, 0xeb, + 0xfe, 0x23, 0x72, 0xf2, 0xe8, 0x02, 0x56, 0x4e, 0x9f, 0x78, 0x8e, 0x52, 0xd3, 0x49, 0x74, 0x6b, + 0xfd, 0x6d, 0xd2, 0x48, 0x6e, 0x90, 0xc4, 0x49, 0xbb, 0x93, 0xc2, 0xb0, 0xe2, 0x8a, 0x6e, 0xc3, + 0x50, 0xe2, 0x44, 0x9b, 0x24, 0x11, 0xcb, 0x3e, 0x67, 0x51, 0x72, 0x1e, 0x98, 0x4e, 0x39, 0x12, + 0x34, 0x48, 0x2a, 0x20, 0xd7, 0x18, 0x13, 0x2c, 0x98, 0xd9, 0x0d, 0x18, 0x5b, 0x72, 0x5a, 0xce, + 0xba, 0xe7, 0x7b, 0x89, 0x47, 0x62, 0xf4, 0x61, 0x28, 0x3b, 0xae, 0xcb, 0x16, 0x40, 0x65, 0xf1, + 0xf4, 0xde, 0xee, 0x6c, 0x79, 0xc1, 0x75, 0xf7, 0x77, 0x67, 0x41, 0x51, 0xed, 0x60, 0x4a, 0x81, + 0x9e, 0x85, 0x01, 0x37, 0x0a, 0x5b, 0xd3, 0x25, 0x46, 0x79, 0x86, 0xae, 0xd4, 0x6a, 0x14, 0xb6, + 0x32, 0xa4, 0x8c, 0xc6, 0xfe, 0x51, 0x09, 0xd0, 0x12, 0x69, 0x6d, 0xad, 0xd4, 0x8d, 0x6f, 0x7a, + 0x1e, 0x46, 0x9a, 0x61, 0xe0, 0x25, 0x61, 0x14, 0x8b, 0x0a, 0xd9, 0xbc, 0xb8, 0x21, 0x60, 0x58, + 0x61, 0xd1, 0x39, 0x18, 0x68, 0xa5, 0xcb, 0x7b, 0x4c, 0x8a, 0x06, 0xb6, 0xb0, 0x19, 0x86, 0x52, + 0xb4, 0x63, 0x12, 0x89, 0xf9, 0xac, 0x28, 0x6e, 0xc7, 0x24, 0xc2, 0x0c, 0x93, 0xce, 0x20, 0x3a, + 0xb7, 0xc4, 0x6c, 0xcd, 0xcc, 0x20, 0x8a, 0xc1, 0x1a, 0x15, 0x7a, 0x13, 0x2a, 0xfc, 0x1f, 0x26, + 0x1b, 0x6c, 0xea, 0xe6, 0x0a, 0x85, 0xeb, 0x61, 0xc3, 0xf1, 0xb3, 0x83, 0x3f, 0xce, 0x66, 0x9c, + 0x64, 0x84, 0x53, 0x9e, 0xc6, 0x8c, 0x1b, 0xca, 0x9d, 0x71, 0x7f, 0xc3, 0x02, 0xb4, 0xe4, 0x05, + 0x2e, 0x89, 0x8e, 0x61, 0xeb, 0xec, 0x6f, 0x31, 0xfc, 0x67, 0xda, 0xb4, 0xb0, 0xd9, 0x0a, 0x03, + 0x12, 0x24, 0x4b, 0x61, 0xe0, 0xf2, 0xed, 0xf4, 0xe3, 0x30, 0x90, 0xd0, 0xaa, 0x78, 0xb3, 0x9e, + 0x96, 0x9f, 0x85, 0x56, 0xb0, 0xbf, 0x3b, 0x7b, 0xa6, 0xb3, 0x04, 0x6b, 0x02, 0x2b, 0x83, 0x3e, + 0x06, 0x43, 0x71, 0xe2, 0x24, 0xed, 0x58, 0x34, 0xf4, 0x09, 0xd9, 0xd0, 0x3a, 0x83, 0xee, 0xef, + 0xce, 0x4e, 0xaa, 0x62, 0x1c, 0x84, 0x45, 0x01, 0xf4, 0x0c, 0x0c, 0x37, 0x49, 0x1c, 0x3b, 0x9b, + 0x52, 0xc0, 0x4d, 0x8a, 0xb2, 0xc3, 0x37, 0x38, 0x18, 0x4b, 0x3c, 0x7a, 0x12, 0x06, 0x49, 0x14, + 0x85, 0x91, 0x98, 0x11, 0xe3, 0x82, 0x70, 0x70, 0x99, 0x02, 0x31, 0xc7, 0xd9, 0xff, 0xd1, 0x82, + 0x49, 0xd5, 0x56, 0x5e, 0xd7, 0x31, 0x2c, 0x79, 0x17, 0xa0, 0x21, 0x3b, 0x18, 0xb3, 0x85, 0xa6, + 0xd5, 0xd1, 0x7d, 0xfa, 0x75, 0x0e, 0x68, 0x5a, 0x87, 0x02, 0xc5, 0x58, 0xe3, 0x6b, 0xff, 0x6b, + 0x0b, 0x4e, 0x66, 0xfa, 0x76, 0xdd, 0x8b, 0x13, 0xf4, 0x46, 0x47, 0xff, 0xe6, 0x8a, 0xf5, 0x8f, + 0x96, 0x66, 0xbd, 0x53, 0xf3, 0x45, 0x42, 0xb4, 0xbe, 0x61, 0x18, 0xf4, 0x12, 0xd2, 0x94, 0xdd, + 0x7a, 0xbe, 0x60, 0xb7, 0x78, 0xfb, 0xd2, 0xaf, 0xb4, 0x4a, 0x79, 0x60, 0xce, 0xca, 0xfe, 0x5f, + 0x16, 0x54, 0x96, 0xc2, 0x60, 0xc3, 0xdb, 0xbc, 0xe1, 0xb4, 0x8e, 0xe1, 0xfb, 0xd4, 0x61, 0x80, + 0x71, 0xe7, 0x5d, 0xb8, 0x98, 0xd7, 0x05, 0xd1, 0xb0, 0x39, 0xba, 0xa7, 0x72, 0x65, 0x41, 0x89, + 0x29, 0x0a, 0xc2, 0x8c, 0xd9, 0xcc, 0xcb, 0x50, 0x51, 0x04, 0x68, 0x0a, 0xca, 0xf7, 0x08, 0xd7, + 0x24, 0x2b, 0x98, 0xfe, 0x44, 0xa7, 0x60, 0x70, 0xdb, 0xf1, 0xdb, 0x62, 0xf1, 0x62, 0xfe, 0xe7, + 0xe3, 0xa5, 0xcb, 0x96, 0xfd, 0x23, 0xb6, 0x02, 0x45, 0x25, 0xcb, 0xc1, 0xb6, 0x10, 0x0e, 0x5f, + 0xb1, 0xe0, 0x94, 0xdf, 0x45, 0x28, 0x89, 0x31, 0x39, 0x8c, 0x38, 0x7b, 0x4c, 0x34, 0xfb, 0x54, + 0x37, 0x2c, 0xee, 0x5a, 0x1b, 0x95, 0xf5, 0x61, 0x8b, 0x4e, 0x38, 0xc7, 0x67, 0x4d, 0x17, 0x3a, + 0xc0, 0x2d, 0x01, 0xc3, 0x0a, 0x6b, 0xff, 0x89, 0x05, 0xa7, 0x54, 0x3f, 0xae, 0x91, 0x9d, 0x3a, + 0xf1, 0x49, 0x23, 0x09, 0xa3, 0xf7, 0x4b, 0x4f, 0x1e, 0xe7, 0xdf, 0x84, 0xcb, 0xa4, 0x51, 0xc1, + 0xa0, 0x7c, 0x8d, 0xec, 0xf0, 0x0f, 0xa4, 0x77, 0xb4, 0x7c, 0x60, 0x47, 0xff, 0x99, 0x05, 0xe3, + 0xaa, 0xa3, 0xc7, 0xb0, 0xe4, 0xae, 0x9b, 0x4b, 0xee, 0xc3, 0x05, 0xe7, 0x6b, 0x8f, 0xc5, 0xf6, + 0xbb, 0x25, 0x38, 0xad, 0x68, 0x8c, 0xed, 0xe8, 0x7d, 0xf2, 0x9d, 0xfa, 0xeb, 0xee, 0x35, 0xb2, + 0xb3, 0x16, 0x52, 0x7d, 0xa2, 0x7b, 0x77, 0xd1, 0x45, 0x18, 0x75, 0xc9, 0x86, 0xd3, 0xf6, 0x13, + 0xa5, 0x36, 0x0f, 0x72, 0x7b, 0xaa, 0x9a, 0x82, 0xb1, 0x4e, 0x63, 0xcc, 0x84, 0x81, 0x03, 0x67, + 0xc2, 0x37, 0x47, 0x99, 0xe0, 0x4a, 0x1c, 0xfa, 0x79, 0xa9, 0x2a, 0xa3, 0xd9, 0x41, 0x63, 0xba, + 0x1d, 0x24, 0x6c, 0x9e, 0x27, 0x61, 0xd0, 0x6b, 0xd2, 0xcd, 0xad, 0x64, 0xee, 0x59, 0xab, 0x14, + 0x88, 0x39, 0x0e, 0x3d, 0x05, 0xc3, 0x8d, 0xb0, 0xd9, 0x74, 0x02, 0x77, 0xba, 0xcc, 0x94, 0xab, + 0x51, 0xba, 0xff, 0x2d, 0x71, 0x10, 0x96, 0x38, 0xf4, 0x18, 0x0c, 0x38, 0xd1, 0x66, 0x3c, 0x3d, + 0xc0, 0x68, 0x46, 0x68, 0x4d, 0x0b, 0xd1, 0x66, 0x8c, 0x19, 0x94, 0x2a, 0x4d, 0xf7, 0xc3, 0xe8, + 0x9e, 0x17, 0x6c, 0x56, 0xbd, 0x88, 0x69, 0x40, 0x9a, 0xd2, 0x74, 0x57, 0x61, 0xb0, 0x46, 0x85, + 0x6a, 0x30, 0xd8, 0x0a, 0xa3, 0x24, 0x9e, 0x1e, 0x62, 0x03, 0xff, 0x5c, 0xee, 0x3c, 0xe3, 0xfd, + 0xae, 0x85, 0x51, 0x92, 0x76, 0x85, 0xfe, 0x8b, 0x31, 0x67, 0x84, 0x96, 0xa0, 0x4c, 0x82, 0xed, + 0xe9, 0x61, 0xc6, 0xef, 0x43, 0x07, 0xf3, 0x5b, 0x0e, 0xb6, 0xef, 0x38, 0x51, 0xba, 0x30, 0x97, + 0x83, 0x6d, 0x4c, 0x4b, 0xa3, 0x06, 0x54, 0xa4, 0xaf, 0x26, 0x9e, 0x1e, 0x29, 0x32, 0x15, 0xb1, + 0x20, 0xc7, 0xe4, 0x9d, 0xb6, 0x17, 0x91, 0x26, 0x09, 0x92, 0x38, 0xb5, 0x20, 0x24, 0x36, 0xc6, + 0x29, 0x5f, 0xd4, 0x80, 0x31, 0xae, 0x68, 0xdd, 0x08, 0xdb, 0x41, 0x12, 0x4f, 0x57, 0x58, 0x93, + 0x73, 0x4c, 0xf4, 0x3b, 0x69, 0x89, 0xc5, 0x53, 0x82, 0xfd, 0x98, 0x06, 0x8c, 0xb1, 0xc1, 0x14, + 0xbd, 0x01, 0xe3, 0xbe, 0xb7, 0x4d, 0x02, 0x12, 0xc7, 0xb5, 0x28, 0x5c, 0x27, 0xd3, 0xc0, 0x7a, + 0xf3, 0x64, 0x9e, 0xb9, 0x1a, 0xae, 0x93, 0xc5, 0x13, 0x7b, 0xbb, 0xb3, 0xe3, 0xd7, 0xf5, 0xd2, + 0xd8, 0x64, 0x86, 0xde, 0x84, 0x09, 0xaa, 0xd5, 0x79, 0x29, 0xfb, 0xd1, 0xe2, 0xec, 0xd1, 0xde, + 0xee, 0xec, 0x04, 0x36, 0x8a, 0xe3, 0x0c, 0x3b, 0xb4, 0x06, 0x15, 0xdf, 0xdb, 0x20, 0x8d, 0x9d, + 0x86, 0x4f, 0xa6, 0xc7, 0x18, 0xef, 0x9c, 0xc5, 0x79, 0x5d, 0x92, 0x73, 0x4d, 0x5a, 0xfd, 0xc5, + 0x29, 0x23, 0x74, 0x07, 0xce, 0x24, 0x24, 0x6a, 0x7a, 0x81, 0x43, 0x17, 0x95, 0x50, 0xf3, 0x98, + 0x4f, 0x60, 0x9c, 0xcd, 0xda, 0xb3, 0x62, 0x60, 0xcf, 0xac, 0x75, 0xa5, 0xc2, 0x3d, 0x4a, 0xa3, + 0x5b, 0x30, 0xc9, 0xd6, 0x53, 0xad, 0xed, 0xfb, 0xb5, 0xd0, 0xf7, 0x1a, 0x3b, 0xd3, 0x13, 0x8c, + 0xe1, 0x53, 0xd2, 0xd2, 0x5f, 0x35, 0xd1, 0xd4, 0x02, 0x4a, 0xff, 0xe1, 0x6c, 0x69, 0xe4, 0xc3, + 0x64, 0x4c, 0x1a, 0xed, 0xc8, 0x4b, 0x76, 0xe8, 0xdc, 0x27, 0x0f, 0x92, 0xe9, 0xc9, 0x22, 0x16, + 0x5d, 0xdd, 0x2c, 0xc4, 0xdd, 0x2c, 0x19, 0x20, 0xce, 0xb2, 0xa6, 0xa2, 0x22, 0x4e, 0x5c, 0x2f, + 0x98, 0x9e, 0x62, 0x12, 0x48, 0xad, 0xaf, 0x3a, 0x05, 0x62, 0x8e, 0x63, 0x86, 0x32, 0xfd, 0x71, + 0x8b, 0x4a, 0xe9, 0x13, 0x8c, 0x30, 0x35, 0x94, 0x25, 0x02, 0xa7, 0x34, 0x74, 0x0f, 0x4c, 0x92, + 0x9d, 0x69, 0xc4, 0x48, 0xd5, 0x52, 0x5b, 0x5b, 0xfb, 0x0c, 0xa6, 0x70, 0x74, 0x07, 0x86, 0x49, + 0xb0, 0xbd, 0x12, 0x85, 0xcd, 0xe9, 0x93, 0x45, 0x64, 0xc0, 0x32, 0x27, 0xe6, 0xfb, 0x47, 0xaa, + 0xab, 0x0b, 0x30, 0x96, 0xcc, 0xd0, 0x03, 0x98, 0xee, 0xf2, 0x95, 0xf8, 0x47, 0x39, 0xc5, 0x3e, + 0xca, 0x27, 0x44, 0xd9, 0xe9, 0xb5, 0x1e, 0x74, 0xfb, 0x07, 0xe0, 0x70, 0x4f, 0xee, 0xf6, 0x3a, + 0x4c, 0x28, 0x41, 0xc5, 0xbe, 0x37, 0x9a, 0x85, 0x41, 0x2a, 0x8b, 0xa5, 0xe5, 0x5a, 0xa1, 0x83, + 0x4a, 0x45, 0x74, 0x8c, 0x39, 0x9c, 0x0d, 0xaa, 0xf7, 0x05, 0xb2, 0xb8, 0x93, 0x10, 0x6e, 0xc1, + 0x94, 0xb5, 0x41, 0x95, 0x08, 0x9c, 0xd2, 0xd8, 0xff, 0x87, 0xeb, 0x03, 0xa9, 0x34, 0x2c, 0xb0, + 0x13, 0x5c, 0x80, 0x91, 0xad, 0x30, 0x4e, 0x28, 0x35, 0xab, 0x63, 0x30, 0xd5, 0x00, 0xae, 0x0a, + 0x38, 0x56, 0x14, 0xe8, 0x15, 0x18, 0x6f, 0xe8, 0x15, 0x88, 0x6d, 0xec, 0xb4, 0x28, 0x62, 0xd6, + 0x8e, 0x4d, 0x5a, 0x74, 0x19, 0x46, 0x98, 0x3b, 0xb7, 0x11, 0xfa, 0xc2, 0x56, 0x92, 0xbb, 0xf2, + 0x48, 0x4d, 0xc0, 0xf7, 0xb5, 0xdf, 0x58, 0x51, 0x53, 0x8b, 0x93, 0x36, 0x61, 0xb5, 0x26, 0x36, + 0x10, 0x65, 0x71, 0x5e, 0x65, 0x50, 0x2c, 0xb0, 0xf6, 0x3f, 0x29, 0x69, 0xa3, 0x4c, 0x35, 0x7d, + 0x82, 0x3e, 0x0b, 0xc3, 0xf7, 0x1d, 0x2f, 0xf1, 0x82, 0x4d, 0xa1, 0x3d, 0xbc, 0x50, 0x70, 0x37, + 0x61, 0xc5, 0xef, 0xf2, 0xa2, 0x7c, 0xe7, 0x13, 0x7f, 0xb0, 0x64, 0x48, 0x79, 0x47, 0xed, 0x20, + 0xa0, 0xbc, 0x4b, 0xfd, 0xf3, 0xc6, 0xbc, 0x28, 0xe7, 0x2d, 0xfe, 0x60, 0xc9, 0x10, 0x6d, 0x00, + 0xc8, 0xb9, 0x44, 0x5c, 0xe1, 0x46, 0xfd, 0x68, 0x3f, 0xec, 0xd7, 0x54, 0xe9, 0xc5, 0x09, 0xba, + 0xd7, 0xa6, 0xff, 0xb1, 0xc6, 0xd9, 0x4e, 0x98, 0x12, 0xd6, 0xd9, 0x2c, 0xf4, 0x39, 0xba, 0xa4, + 0x9d, 0x28, 0x21, 0xee, 0x42, 0x92, 0xf5, 0x44, 0x1f, 0xac, 0x4b, 0xae, 0x79, 0x4d, 0xa2, 0x2f, + 0x7f, 0xc1, 0x04, 0xa7, 0xfc, 0xec, 0xef, 0x95, 0x61, 0xba, 0x57, 0x73, 0xe9, 0x94, 0x24, 0x0f, + 0xbc, 0x64, 0x89, 0xaa, 0x49, 0x96, 0x39, 0x25, 0x97, 0x05, 0x1c, 0x2b, 0x0a, 0x3a, 0x37, 0x62, + 0x6f, 0x53, 0x5a, 0x05, 0x83, 0xe9, 0xdc, 0xa8, 0x33, 0x28, 0x16, 0x58, 0x4a, 0x17, 0x11, 0x27, + 0x16, 0x5e, 0x7c, 0x6d, 0x0e, 0x61, 0x06, 0xc5, 0x02, 0xab, 0x5b, 0xfe, 0x03, 0x39, 0x96, 0xbf, + 0x31, 0x44, 0x83, 0x0f, 0x77, 0x88, 0xd0, 0xe7, 0x01, 0x36, 0xbc, 0xc0, 0x8b, 0xb7, 0x18, 0xf7, + 0xa1, 0xbe, 0xb9, 0x2b, 0x25, 0x6b, 0x45, 0x71, 0xc1, 0x1a, 0x47, 0xf4, 0x12, 0x8c, 0xaa, 0xe5, + 0xb9, 0x5a, 0x9d, 0x1e, 0x36, 0x3d, 0xbf, 0xa9, 0xac, 0xaa, 0x62, 0x9d, 0xce, 0x7e, 0x3b, 0x3b, + 0x5f, 0xc4, 0xaa, 0xd0, 0xc6, 0xd7, 0x2a, 0x3a, 0xbe, 0xa5, 0x83, 0xc7, 0xd7, 0xfe, 0x0f, 0x65, + 0x98, 0x34, 0x2a, 0x6b, 0xc7, 0x05, 0x24, 0xda, 0x6b, 0x74, 0xc3, 0x72, 0x12, 0x22, 0xd6, 0xe4, + 0x85, 0x7e, 0x16, 0x8d, 0xbe, 0xbd, 0xd1, 0xb5, 0xc0, 0x39, 0xa1, 0x2d, 0xa8, 0xf8, 0x4e, 0xcc, + 0x7c, 0x07, 0x44, 0xac, 0xc5, 0xfe, 0xd8, 0xa6, 0xe6, 0x87, 0x13, 0x27, 0xda, 0xee, 0xc1, 0x6b, + 0x49, 0x99, 0xd3, 0xdd, 0x96, 0x2a, 0x3b, 0xf2, 0xe8, 0x48, 0x35, 0x87, 0x6a, 0x44, 0x3b, 0x98, + 0xe3, 0xd0, 0x65, 0x18, 0x8b, 0x08, 0x9b, 0x29, 0x4b, 0x54, 0x9f, 0x63, 0x53, 0x6f, 0x30, 0x55, + 0xfc, 0xb0, 0x86, 0xc3, 0x06, 0x65, 0xaa, 0xf7, 0x0f, 0x1d, 0xa0, 0xf7, 0x3f, 0x03, 0xc3, 0xec, + 0x87, 0x9a, 0x15, 0xea, 0x0b, 0xad, 0x72, 0x30, 0x96, 0xf8, 0xec, 0x24, 0x1a, 0x29, 0x38, 0x89, + 0x9e, 0x85, 0x89, 0xaa, 0x43, 0x9a, 0x61, 0xb0, 0x1c, 0xb8, 0xad, 0xd0, 0x0b, 0x12, 0x34, 0x0d, + 0x03, 0x6c, 0x3f, 0xe1, 0xeb, 0x7d, 0x80, 0x72, 0xc0, 0x03, 0x54, 0x77, 0xb7, 0xff, 0xaf, 0x05, + 0xe3, 0x55, 0xe2, 0x93, 0x84, 0x70, 0xbb, 0x27, 0x46, 0x2b, 0x80, 0x36, 0x23, 0xa7, 0x41, 0x6a, + 0x24, 0xf2, 0x42, 0xb7, 0x4e, 0x1a, 0x61, 0xc0, 0x4e, 0x5c, 0xe8, 0x06, 0x79, 0x66, 0x6f, 0x77, + 0x16, 0x5d, 0xe9, 0xc0, 0xe2, 0x2e, 0x25, 0x90, 0x0b, 0xe3, 0xad, 0x88, 0x18, 0x0e, 0x32, 0x2b, + 0x5f, 0xd5, 0xa8, 0xe9, 0x45, 0xb8, 0x36, 0x6c, 0x80, 0xb0, 0xc9, 0x14, 0x7d, 0x0a, 0xa6, 0xc2, + 0xa8, 0xb5, 0xe5, 0x04, 0x55, 0xd2, 0x22, 0x81, 0x4b, 0x4d, 0x00, 0x61, 0xd6, 0x9f, 0xda, 0xdb, + 0x9d, 0x9d, 0xba, 0x95, 0xc1, 0xe1, 0x0e, 0x6a, 0xfb, 0x37, 0x4a, 0x70, 0xba, 0x1a, 0xde, 0x0f, + 0xee, 0x3b, 0x91, 0xbb, 0x50, 0x5b, 0xe5, 0x7a, 0x3d, 0xf3, 0x2e, 0x4b, 0xaf, 0xb6, 0xd5, 0xd3, + 0xab, 0xfd, 0x39, 0x18, 0xd9, 0xf0, 0x88, 0xef, 0x62, 0xb2, 0x21, 0xba, 0x77, 0xb1, 0x88, 0xdb, + 0x7f, 0x85, 0x96, 0x91, 0x7e, 0x13, 0x6e, 0x75, 0xae, 0x08, 0x36, 0x58, 0x31, 0x44, 0x6d, 0x98, + 0x92, 0x86, 0x8b, 0xc4, 0x8a, 0xd5, 0xf1, 0x42, 0x31, 0xbb, 0xc8, 0xac, 0x86, 0x8d, 0x07, 0xce, + 0x30, 0xc4, 0x1d, 0x55, 0x50, 0x83, 0xb3, 0x49, 0xf7, 0x86, 0x01, 0x36, 0x57, 0x98, 0xc1, 0xc9, + 0x6c, 0x67, 0x06, 0xb5, 0xff, 0xbe, 0x05, 0x8f, 0x74, 0x8c, 0x96, 0x70, 0x2c, 0xbc, 0x2e, 0x2d, + 0x7a, 0x7e, 0x3c, 0x97, 0xd3, 0xca, 0xae, 0x63, 0x5e, 0xcc, 0xba, 0x2f, 0xe5, 0x5b, 0xf7, 0xf6, + 0x2d, 0x38, 0xb5, 0xdc, 0x6c, 0x25, 0x3b, 0x55, 0xcf, 0x74, 0xc6, 0xbf, 0x0c, 0x43, 0x4d, 0xe2, + 0x7a, 0xed, 0xa6, 0xf8, 0xac, 0xb3, 0x52, 0x90, 0xde, 0x60, 0xd0, 0xfd, 0xdd, 0xd9, 0xf1, 0x7a, + 0x12, 0x46, 0xce, 0x26, 0xe1, 0x00, 0x2c, 0xc8, 0xed, 0x77, 0x2d, 0x98, 0x94, 0x0b, 0x6a, 0xc1, + 0x75, 0x23, 0x12, 0xc7, 0x68, 0x06, 0x4a, 0x5e, 0x4b, 0x30, 0x02, 0xc1, 0xa8, 0xb4, 0x5a, 0xc3, + 0x25, 0xaf, 0x85, 0x3e, 0x0b, 0x15, 0x7e, 0x86, 0x93, 0x4e, 0x8e, 0x3e, 0xcf, 0x84, 0x98, 0x31, + 0xb5, 0x26, 0x79, 0xe0, 0x94, 0x9d, 0x54, 0x2b, 0x99, 0xa8, 0x2e, 0x9b, 0x27, 0x0a, 0x57, 0x05, + 0x1c, 0x2b, 0x0a, 0x74, 0x1e, 0x46, 0x82, 0xd0, 0xe5, 0xc7, 0x6c, 0x7c, 0xd3, 0x65, 0x53, 0xee, + 0xa6, 0x80, 0x61, 0x85, 0xb5, 0xbf, 0x66, 0xc1, 0x98, 0xec, 0x63, 0x41, 0x0d, 0x97, 0x2e, 0x92, + 0x54, 0xbb, 0x4d, 0x17, 0x09, 0xd5, 0x50, 0x19, 0xc6, 0x50, 0x4c, 0xcb, 0xfd, 0x28, 0xa6, 0xf6, + 0x6f, 0x95, 0x60, 0x42, 0x36, 0xa7, 0xde, 0x5e, 0x8f, 0x09, 0xdd, 0xb7, 0x2b, 0x0e, 0x1f, 0x7c, + 0x22, 0xe7, 0xd9, 0xf3, 0x79, 0xc6, 0x8b, 0xf1, 0xcd, 0x52, 0xbd, 0x60, 0x41, 0xf2, 0xc1, 0x29, + 0x4b, 0xb4, 0x0d, 0x27, 0x82, 0x30, 0x61, 0xfb, 0x81, 0xc2, 0x17, 0xf3, 0x81, 0x67, 0xeb, 0x79, + 0x54, 0xd4, 0x73, 0xe2, 0x66, 0x96, 0x1f, 0xee, 0xac, 0x02, 0xdd, 0x92, 0x4e, 0x99, 0x32, 0xab, + 0xeb, 0xd9, 0x62, 0x75, 0xf5, 0xf6, 0xc9, 0xd8, 0x3f, 0xb6, 0xa0, 0x22, 0xc9, 0x8e, 0xe3, 0x30, + 0xe4, 0x2e, 0x0c, 0xc7, 0xec, 0x13, 0xc9, 0xe1, 0xba, 0x50, 0xac, 0x0b, 0xfc, 0xbb, 0xa6, 0x9b, + 0x20, 0xff, 0x1f, 0x63, 0xc9, 0x8d, 0xb9, 0x61, 0x55, 0x47, 0xde, 0x77, 0x6e, 0x58, 0xd5, 0xb2, + 0xde, 0x67, 0x1e, 0xe3, 0x86, 0xf9, 0x4c, 0x35, 0xb9, 0x56, 0x44, 0x36, 0xbc, 0x07, 0x59, 0x4d, + 0xae, 0xc6, 0xa0, 0x58, 0x60, 0xd1, 0x06, 0x8c, 0x35, 0xa4, 0xff, 0x36, 0x15, 0x21, 0x1f, 0x29, + 0xe8, 0x15, 0x56, 0x07, 0x0c, 0x3c, 0x68, 0x65, 0x49, 0xe3, 0x84, 0x0d, 0xbe, 0x54, 0x4e, 0xa5, + 0x67, 0xa8, 0xe5, 0x82, 0x9e, 0x8e, 0x88, 0x24, 0x69, 0x0d, 0x3d, 0x8f, 0x4f, 0xed, 0x6f, 0x59, + 0x30, 0xc4, 0x1d, 0x7e, 0xc5, 0xbc, 0xa6, 0xda, 0xd1, 0x49, 0x3a, 0x9e, 0x77, 0x28, 0x50, 0x9c, + 0xa4, 0xa0, 0xbb, 0x50, 0x61, 0x3f, 0x98, 0xf3, 0xa2, 0x5c, 0x24, 0x82, 0x87, 0xd7, 0xaf, 0x37, + 0xf5, 0x8e, 0x64, 0x80, 0x53, 0x5e, 0xf6, 0x0f, 0xca, 0x54, 0xf4, 0xa5, 0xa4, 0xc6, 0xde, 0x6e, + 0x1d, 0xc7, 0xde, 0x5e, 0x3a, 0xfa, 0xbd, 0xfd, 0x1d, 0x98, 0x6c, 0x68, 0x47, 0x37, 0xe9, 0x17, + 0xbf, 0x54, 0x70, 0x5a, 0x69, 0xe7, 0x3d, 0xdc, 0xc1, 0xb5, 0x64, 0xb2, 0xc3, 0x59, 0xfe, 0x88, + 0xc0, 0x18, 0x9f, 0x0f, 0xa2, 0xbe, 0x01, 0x56, 0xdf, 0x7c, 0x91, 0x19, 0xa6, 0x57, 0xc6, 0x66, + 0x71, 0x5d, 0x63, 0x84, 0x0d, 0xb6, 0xf6, 0xdf, 0x1c, 0x84, 0xc1, 0xe5, 0x6d, 0x12, 0x24, 0xc7, + 0x20, 0xea, 0x9a, 0x30, 0xe1, 0x05, 0xdb, 0xa1, 0xbf, 0x4d, 0x5c, 0x8e, 0x3f, 0xdc, 0xf6, 0x7e, + 0x46, 0x54, 0x32, 0xb1, 0x6a, 0x30, 0xc3, 0x19, 0xe6, 0x47, 0x61, 0x5a, 0xbf, 0x06, 0x43, 0x7c, + 0x66, 0x08, 0xbb, 0x3a, 0xc7, 0x01, 0xce, 0x06, 0x56, 0xac, 0xa0, 0xd4, 0x01, 0xc0, 0x7d, 0xef, + 0x82, 0x11, 0x7a, 0x1b, 0x26, 0x36, 0xbc, 0x28, 0x4e, 0xa8, 0x75, 0x1c, 0x27, 0x4e, 0xb3, 0x75, + 0x08, 0xa3, 0x5a, 0x8d, 0xc8, 0x8a, 0xc1, 0x09, 0x67, 0x38, 0xa3, 0x4d, 0x18, 0xa7, 0x36, 0x5d, + 0x5a, 0xd5, 0x70, 0xdf, 0x55, 0x29, 0x9f, 0xda, 0x75, 0x9d, 0x11, 0x36, 0xf9, 0x52, 0x91, 0xd4, + 0x60, 0x36, 0xe0, 0x08, 0xd3, 0x6e, 0x94, 0x48, 0xe2, 0xc6, 0x1f, 0xc7, 0x51, 0xc9, 0xc6, 0x62, + 0x28, 0x2a, 0xa6, 0x64, 0x4b, 0x23, 0x25, 0xec, 0xef, 0xd0, 0xbd, 0x98, 0x8e, 0xe1, 0x31, 0x6c, + 0x5f, 0x57, 0xcd, 0xed, 0xeb, 0xc9, 0x02, 0x5f, 0xb6, 0xc7, 0xd6, 0xf5, 0x16, 0x8c, 0x6a, 0x1f, + 0x1e, 0xcd, 0x43, 0xa5, 0x21, 0x8f, 0xf9, 0x85, 0x14, 0x57, 0xaa, 0x94, 0x3a, 0xff, 0xc7, 0x29, + 0x0d, 0x1d, 0x17, 0xaa, 0x82, 0x66, 0x83, 0x82, 0xa8, 0x82, 0x8a, 0x19, 0xc6, 0x7e, 0x01, 0x60, + 0xf9, 0x01, 0x69, 0x2c, 0x34, 0x58, 0x2c, 0x8a, 0x76, 0x20, 0x66, 0xf5, 0x3e, 0x10, 0xb3, 0xbf, + 0x6d, 0xc1, 0xc4, 0xca, 0x92, 0xa1, 0xd3, 0xcf, 0x01, 0x70, 0xdd, 0xf8, 0xee, 0xdd, 0x9b, 0xd2, + 0xe1, 0xcb, 0xbd, 0x72, 0x0a, 0x8a, 0x35, 0x0a, 0xf4, 0x28, 0x94, 0xfd, 0x76, 0x20, 0x54, 0xd6, + 0xe1, 0xbd, 0xdd, 0xd9, 0xf2, 0xf5, 0x76, 0x80, 0x29, 0x4c, 0x8b, 0xbe, 0x29, 0x17, 0x8e, 0xbe, + 0xc9, 0x8f, 0x43, 0xfd, 0x46, 0x19, 0xa6, 0x56, 0x7c, 0xf2, 0xc0, 0x68, 0xf5, 0xd3, 0x30, 0xe4, + 0x46, 0xde, 0x36, 0x89, 0xb2, 0x8a, 0x40, 0x95, 0x41, 0xb1, 0xc0, 0x16, 0x0e, 0x08, 0x7a, 0xb3, + 0x73, 0x23, 0x3f, 0xba, 0x60, 0xa8, 0xdc, 0x3e, 0xa3, 0x0d, 0x18, 0xe6, 0x07, 0xa8, 0xf1, 0xf4, + 0x20, 0x9b, 0x8a, 0xaf, 0x1c, 0xdc, 0x98, 0xec, 0xf8, 0xcc, 0x09, 0x87, 0x04, 0x0f, 0xc5, 0x50, + 0xb2, 0x4c, 0x40, 0xb1, 0x64, 0x3e, 0xf3, 0x71, 0x18, 0xd3, 0x29, 0xfb, 0x8a, 0xc9, 0xf8, 0x15, + 0x0b, 0x4e, 0xae, 0xf8, 0x61, 0xe3, 0x5e, 0x26, 0x62, 0xeb, 0x25, 0x18, 0xa5, 0x8b, 0x29, 0x36, + 0xc2, 0x19, 0x8d, 0xb8, 0x4d, 0x81, 0xc2, 0x3a, 0x9d, 0x56, 0xec, 0xf6, 0xed, 0xd5, 0x6a, 0xb7, + 0x70, 0x4f, 0x81, 0xc2, 0x3a, 0x9d, 0xfd, 0x7b, 0x16, 0x3c, 0x7e, 0x65, 0x69, 0xb9, 0x46, 0xa2, + 0xd8, 0x8b, 0x13, 0x12, 0x24, 0x1d, 0x11, 0xa7, 0x54, 0x67, 0x74, 0xb5, 0xa6, 0xa4, 0x3a, 0x63, + 0x95, 0xb5, 0x42, 0x60, 0xdf, 0x2f, 0x61, 0xd7, 0xdf, 0xb2, 0xe0, 0xe4, 0x15, 0x2f, 0xc1, 0xa4, + 0x15, 0x66, 0x83, 0x44, 0x23, 0xd2, 0x0a, 0x63, 0x2f, 0x09, 0xa3, 0x9d, 0x6c, 0x90, 0x28, 0x56, + 0x18, 0xac, 0x51, 0xf1, 0x9a, 0xb7, 0xbd, 0x98, 0xb6, 0xb4, 0x64, 0x9a, 0xba, 0x58, 0xc0, 0xb1, + 0xa2, 0xa0, 0x1d, 0x73, 0xbd, 0x88, 0xa9, 0x0c, 0x3b, 0x62, 0x05, 0xab, 0x8e, 0x55, 0x25, 0x02, + 0xa7, 0x34, 0xf6, 0xdf, 0xb6, 0xe0, 0xf4, 0x15, 0xbf, 0x1d, 0x27, 0x24, 0xda, 0x88, 0x8d, 0xc6, + 0xbe, 0x00, 0x15, 0x22, 0x95, 0x7b, 0xd1, 0x56, 0xb5, 0x69, 0x28, 0xad, 0x9f, 0x47, 0xa8, 0x2a, + 0xba, 0x02, 0x81, 0x90, 0xfd, 0x85, 0xed, 0xfd, 0x76, 0x09, 0xc6, 0xaf, 0xae, 0xad, 0xd5, 0xae, + 0x90, 0x44, 0x48, 0xc9, 0x7c, 0xa7, 0x14, 0xd6, 0x2c, 0xf2, 0x83, 0x94, 0x9f, 0x76, 0xe2, 0xf9, + 0x73, 0xfc, 0x22, 0xc1, 0xdc, 0x6a, 0x90, 0xdc, 0x8a, 0xea, 0x49, 0xe4, 0x05, 0x9b, 0x5d, 0x6d, + 0x78, 0x29, 0xcb, 0xcb, 0xbd, 0x64, 0x39, 0x7a, 0x01, 0x86, 0xd8, 0x4d, 0x06, 0xa9, 0x7c, 0x7c, + 0x50, 0xe9, 0x09, 0x0c, 0xba, 0xbf, 0x3b, 0x5b, 0xb9, 0x8d, 0x57, 0xf9, 0x1f, 0x2c, 0x48, 0xd1, + 0x9b, 0x30, 0xba, 0x95, 0x24, 0xad, 0xab, 0xc4, 0x71, 0x49, 0x24, 0xe5, 0xc4, 0xf9, 0x83, 0xe5, + 0x04, 0x1d, 0x0e, 0x5e, 0x20, 0x5d, 0x5a, 0x29, 0x2c, 0xc6, 0x3a, 0x47, 0xbb, 0x0e, 0x90, 0xe2, + 0x1e, 0x92, 0x0d, 0x62, 0xff, 0x72, 0x09, 0x86, 0xaf, 0x3a, 0x81, 0xeb, 0x93, 0x08, 0xad, 0xc0, + 0x00, 0x79, 0x40, 0x1a, 0x62, 0x23, 0xcf, 0x69, 0x7a, 0xba, 0xd9, 0x71, 0xbf, 0x1a, 0xfd, 0x8f, + 0x59, 0x79, 0x84, 0x61, 0x98, 0xb6, 0xfb, 0x8a, 0x8a, 0x1f, 0x7e, 0x2e, 0x7f, 0x14, 0xd4, 0xa4, + 0xe0, 0x3b, 0xa5, 0x00, 0x61, 0xc9, 0x88, 0x79, 0xa0, 0x1a, 0xad, 0x3a, 0x15, 0x6f, 0x49, 0x31, + 0xcb, 0x6e, 0x6d, 0xa9, 0xc6, 0xc9, 0x05, 0x5f, 0xee, 0x81, 0x92, 0x40, 0x9c, 0xb2, 0xb3, 0x2f, + 0xc3, 0x29, 0x76, 0x80, 0xe9, 0x24, 0x5b, 0xc6, 0xaa, 0xc9, 0x9d, 0x9e, 0xf6, 0xdf, 0x29, 0xc1, + 0x89, 0xd5, 0xfa, 0x52, 0xdd, 0xf4, 0x1d, 0x5e, 0x86, 0x31, 0xbe, 0x41, 0xd3, 0x49, 0xe7, 0xf8, + 0xa2, 0xbc, 0x72, 0xba, 0xaf, 0x69, 0x38, 0x6c, 0x50, 0xa2, 0xc7, 0xa1, 0xec, 0xbd, 0x13, 0x64, + 0xe3, 0xbd, 0x56, 0x5f, 0xbb, 0x89, 0x29, 0x9c, 0xa2, 0xe9, 0x5e, 0xcf, 0x85, 0x9c, 0x42, 0xab, + 0xfd, 0xfe, 0x55, 0x98, 0xf0, 0xe2, 0x46, 0xec, 0xad, 0x06, 0x54, 0x02, 0x38, 0x0d, 0x39, 0x7d, + 0x53, 0xe5, 0x9c, 0x36, 0x55, 0x61, 0x71, 0x86, 0x5a, 0x93, 0xb8, 0x83, 0x85, 0xf5, 0x85, 0xfc, + 0x40, 0xe2, 0xb7, 0xa1, 0xa2, 0x02, 0x9e, 0x64, 0x40, 0x9b, 0xd5, 0x23, 0xa0, 0x2d, 0x5f, 0xe4, + 0x48, 0x8f, 0x6e, 0xb9, 0xab, 0x47, 0xf7, 0x1f, 0x59, 0x90, 0x46, 0x6c, 0x20, 0x0c, 0x95, 0x56, + 0xc8, 0x8e, 0x4b, 0x22, 0x79, 0x2e, 0xf9, 0x54, 0xce, 0x4c, 0xe4, 0x2b, 0x81, 0xcf, 0x95, 0x9a, + 0x2c, 0x8b, 0x53, 0x36, 0xe8, 0x3a, 0x0c, 0xb7, 0x22, 0x52, 0x4f, 0x58, 0x34, 0x7a, 0x1f, 0x1c, + 0xd9, 0xac, 0xae, 0xf1, 0x92, 0x58, 0xb2, 0xb0, 0xff, 0xb9, 0x05, 0x70, 0xdd, 0x6b, 0x7a, 0x09, + 0x76, 0x82, 0x4d, 0x72, 0x0c, 0xe6, 0xde, 0x4d, 0x18, 0x88, 0x5b, 0xa4, 0x51, 0xec, 0xc0, 0x2b, + 0x6d, 0x59, 0xbd, 0x45, 0x1a, 0xe9, 0xe7, 0xa0, 0xff, 0x30, 0xe3, 0x63, 0x7f, 0x1f, 0x60, 0x22, + 0x25, 0xa3, 0x2a, 0x37, 0x7a, 0xde, 0x08, 0xc3, 0x7e, 0x34, 0x13, 0x86, 0x5d, 0x61, 0xd4, 0x5a, + 0xe4, 0x75, 0x02, 0xe5, 0xa6, 0xf3, 0x40, 0x68, 0xf8, 0x2f, 0x15, 0x6d, 0x10, 0xad, 0x69, 0xee, + 0x86, 0xf3, 0x80, 0x2b, 0x54, 0xcf, 0xc9, 0x89, 0x74, 0xc3, 0x79, 0xb0, 0xcf, 0x8f, 0xb5, 0xd8, + 0x4a, 0xa4, 0x26, 0xc5, 0x97, 0xff, 0x28, 0xfd, 0xcf, 0x84, 0x23, 0xad, 0x8e, 0xd5, 0xea, 0x05, + 0xc2, 0x41, 0xd9, 0x67, 0xad, 0x5e, 0x90, 0xad, 0xd5, 0x0b, 0x0a, 0xd4, 0xea, 0x05, 0xe8, 0x2b, + 0x16, 0x0c, 0x0b, 0xbf, 0x3e, 0x8b, 0x81, 0x1b, 0xbd, 0xf4, 0xb1, 0xbe, 0xaa, 0x16, 0x07, 0x04, + 0xbc, 0xfa, 0x79, 0xa9, 0x45, 0x0a, 0x68, 0x6e, 0x13, 0x64, 0xd5, 0xe8, 0xd7, 0x2d, 0x98, 0x10, + 0xbf, 0x31, 0x79, 0xa7, 0x4d, 0xe2, 0x44, 0xec, 0x56, 0x9f, 0x3a, 0x4c, 0x6b, 0x04, 0x0b, 0xde, + 0xa8, 0x8f, 0x4a, 0x51, 0x63, 0x22, 0x73, 0xdb, 0x96, 0x69, 0x0f, 0xfa, 0xbe, 0x05, 0xa7, 0x9a, + 0xce, 0x03, 0x5e, 0x23, 0x87, 0x61, 0x27, 0xf1, 0x42, 0x11, 0xe7, 0xb7, 0xd2, 0xef, 0x3c, 0xe9, + 0x60, 0xc4, 0x9b, 0x2b, 0x43, 0x78, 0x4e, 0x75, 0x23, 0xc9, 0x6d, 0x74, 0xd7, 0x16, 0xce, 0x6c, + 0xc0, 0x88, 0x9c, 0x98, 0x5d, 0xf4, 0xf7, 0xaa, 0xbe, 0x29, 0xe7, 0x58, 0xcb, 0x73, 0xd2, 0xe7, + 0x35, 0xf7, 0x5a, 0xdb, 0x09, 0x12, 0x2f, 0xd9, 0xd1, 0xf4, 0x7d, 0x56, 0x8f, 0x98, 0x8a, 0x47, + 0x5a, 0xcf, 0xdb, 0x30, 0xa6, 0xcf, 0xbb, 0x23, 0xad, 0xeb, 0x1d, 0x38, 0xd9, 0x65, 0x56, 0x1d, + 0x69, 0x95, 0xf7, 0xe1, 0xd1, 0x9e, 0xf3, 0xe3, 0x28, 0x2b, 0xb6, 0x7f, 0xdb, 0xd2, 0x45, 0xe7, + 0x31, 0x78, 0x53, 0x6e, 0x98, 0xde, 0x94, 0xf3, 0x45, 0xd7, 0x50, 0x0f, 0x97, 0xca, 0x86, 0xde, + 0x7c, 0xba, 0x25, 0xa0, 0x35, 0x18, 0xf2, 0x29, 0x44, 0x1e, 0x66, 0x5d, 0xe8, 0x67, 0x95, 0xa6, + 0xda, 0x06, 0x83, 0xc7, 0x58, 0xf0, 0xb2, 0xbf, 0x6f, 0xc1, 0xc0, 0xcf, 0xf1, 0x92, 0x48, 0x07, + 0x6b, 0x71, 0xd7, 0x79, 0x0e, 0x3b, 0xf7, 0x97, 0x1f, 0x24, 0x24, 0x88, 0x99, 0x72, 0xd9, 0x75, + 0x88, 0x7e, 0xa3, 0x04, 0xa3, 0xb4, 0x2a, 0x19, 0x8e, 0xf0, 0x0a, 0x8c, 0xfb, 0xce, 0x3a, 0xf1, + 0xa5, 0x27, 0x38, 0x6b, 0x8a, 0x5d, 0xd7, 0x91, 0xd8, 0xa4, 0xa5, 0x85, 0x37, 0x74, 0x47, 0xb9, + 0x50, 0x92, 0x54, 0x61, 0xc3, 0x8b, 0x8e, 0x4d, 0x5a, 0x6a, 0x0b, 0xdc, 0x77, 0x92, 0xc6, 0x96, + 0x30, 0xd3, 0x54, 0x73, 0xef, 0x52, 0x20, 0xe6, 0x38, 0xb4, 0x00, 0x93, 0x72, 0xc6, 0xde, 0xa1, + 0xf6, 0x7b, 0x18, 0x08, 0x05, 0x52, 0x5d, 0x34, 0xc5, 0x26, 0x1a, 0x67, 0xe9, 0xd1, 0xc7, 0x61, + 0x82, 0x0e, 0x4e, 0xd8, 0x4e, 0x64, 0xb0, 0xc5, 0x20, 0x0b, 0xb6, 0x60, 0xb1, 0xba, 0x6b, 0x06, + 0x06, 0x67, 0x28, 0xed, 0x37, 0xe1, 0xe4, 0xf5, 0xd0, 0x71, 0x17, 0x1d, 0xdf, 0x09, 0x1a, 0x24, + 0x5a, 0x0d, 0x36, 0x73, 0xcf, 0xa5, 0xf5, 0xb3, 0xe3, 0x52, 0xde, 0xd9, 0xb1, 0x1d, 0x01, 0xd2, + 0x2b, 0x10, 0x61, 0x42, 0x6f, 0xc0, 0xb0, 0xc7, 0xab, 0x12, 0xd3, 0xf6, 0x62, 0x9e, 0xa3, 0xa9, + 0xa3, 0x8d, 0x5a, 0xd8, 0x0b, 0x07, 0x60, 0xc9, 0x92, 0xda, 0x16, 0xdd, 0x3c, 0x53, 0xf9, 0xe6, + 0x9b, 0xfd, 0x97, 0x2c, 0x98, 0xbc, 0x99, 0xb9, 0xc5, 0xf8, 0x34, 0x0c, 0xf1, 0xbb, 0xf0, 0x59, + 0xdf, 0x49, 0x9d, 0x41, 0xb1, 0xc0, 0x3e, 0x74, 0xd3, 0xfd, 0xd7, 0x4a, 0x50, 0x61, 0x01, 0xa7, + 0x2d, 0x6a, 0x27, 0x1c, 0xbd, 0x9a, 0x7a, 0xc3, 0x50, 0x53, 0x73, 0xcc, 0x47, 0xd5, 0xb0, 0x5e, + 0x5a, 0x2a, 0xba, 0xad, 0x6e, 0xf7, 0x15, 0xb2, 0x1c, 0x53, 0x86, 0xfc, 0x06, 0xd8, 0x84, 0x79, + 0x19, 0x50, 0xde, 0xfc, 0x63, 0xa7, 0xb9, 0x8a, 0xf6, 0x7d, 0x77, 0x9a, 0xab, 0x5a, 0xd6, 0x43, + 0x38, 0xd5, 0xb4, 0xc6, 0x33, 0xf1, 0xfd, 0x49, 0x16, 0x46, 0xe8, 0xf8, 0xde, 0x17, 0x88, 0xba, + 0x24, 0x3b, 0x2b, 0xc2, 0x02, 0x05, 0x74, 0x9f, 0xc9, 0x19, 0xf1, 0x8f, 0xdf, 0x81, 0x4e, 0x8b, + 0xd8, 0x57, 0x61, 0x32, 0x33, 0x74, 0xe8, 0x25, 0x18, 0x6c, 0x6d, 0x39, 0x31, 0xc9, 0x04, 0xa8, + 0x0c, 0xd6, 0x28, 0x70, 0x7f, 0x77, 0x76, 0x42, 0x15, 0x60, 0x10, 0xcc, 0xa9, 0xed, 0xaf, 0x94, + 0x60, 0xe0, 0x66, 0xe8, 0x1e, 0xc7, 0x54, 0xbb, 0x6a, 0x4c, 0xb5, 0xa7, 0xf3, 0x33, 0x28, 0xf4, + 0x9c, 0x65, 0xb5, 0xcc, 0x2c, 0x3b, 0x5f, 0x80, 0xd7, 0xc1, 0x13, 0xac, 0x09, 0xa3, 0x2c, 0x43, + 0x83, 0x88, 0xd0, 0x79, 0xc1, 0xb0, 0xac, 0x66, 0x33, 0x96, 0xd5, 0xa4, 0x46, 0xaa, 0xd9, 0x57, + 0xcf, 0xc0, 0xb0, 0x88, 0x08, 0xc9, 0x06, 0x51, 0x0a, 0x5a, 0x2c, 0xf1, 0xf6, 0x3f, 0x2d, 0x83, + 0x91, 0x11, 0x02, 0xfd, 0xd8, 0x82, 0xb9, 0x88, 0x5f, 0x48, 0x71, 0xab, 0xed, 0xc8, 0x0b, 0x36, + 0xeb, 0x8d, 0x2d, 0xe2, 0xb6, 0x7d, 0x2f, 0xd8, 0x5c, 0xdd, 0x0c, 0x42, 0x05, 0x5e, 0x7e, 0x40, + 0x1a, 0x6d, 0xe6, 0x80, 0x2d, 0x9c, 0x88, 0x42, 0x9d, 0x86, 0x5e, 0xda, 0xdb, 0x9d, 0x9d, 0xc3, + 0x7d, 0xd5, 0x82, 0xfb, 0x6c, 0x15, 0xfa, 0x43, 0x0b, 0xe6, 0x79, 0x4e, 0x84, 0xe2, 0x3d, 0x29, + 0x64, 0x91, 0xd6, 0x24, 0xd3, 0x94, 0xdd, 0x1a, 0x89, 0x9a, 0x8b, 0x2f, 0x8b, 0x41, 0x9e, 0xaf, + 0xf5, 0x57, 0x2b, 0xee, 0xb7, 0x99, 0xf6, 0xbf, 0x2c, 0xc3, 0x38, 0x1d, 0xcf, 0xf4, 0x1e, 0xf4, + 0x4b, 0xc6, 0x34, 0x79, 0x22, 0x33, 0x4d, 0x4e, 0x18, 0xc4, 0x0f, 0xe7, 0x0a, 0x74, 0x0c, 0x27, + 0x7c, 0x27, 0x4e, 0xae, 0x12, 0x27, 0x4a, 0xd6, 0x89, 0xc3, 0x0e, 0x1d, 0xb3, 0x01, 0x0d, 0x05, + 0xce, 0x31, 0x55, 0x94, 0xd1, 0xf5, 0x2c, 0x33, 0xdc, 0xc9, 0x1f, 0x6d, 0x03, 0x62, 0x07, 0x9c, + 0x91, 0x13, 0xc4, 0xbc, 0x2f, 0x9e, 0x70, 0xd8, 0xf6, 0x57, 0xeb, 0x8c, 0xa8, 0x15, 0x5d, 0xef, + 0xe0, 0x86, 0xbb, 0xd4, 0xa0, 0x1d, 0x61, 0x0f, 0x16, 0x3d, 0xc2, 0x1e, 0xca, 0x89, 0x5e, 0xfe, + 0xaa, 0x05, 0x27, 0xe9, 0x67, 0x31, 0x23, 0x5d, 0x63, 0x14, 0xc2, 0x24, 0x9d, 0x76, 0x3e, 0x49, + 0x24, 0x4c, 0xac, 0xaf, 0x1c, 0xcd, 0xda, 0xe4, 0x93, 0xaa, 0x6f, 0xd7, 0x4c, 0x66, 0x38, 0xcb, + 0xdd, 0xfe, 0xb6, 0x05, 0x2c, 0x94, 0xee, 0x18, 0x36, 0xb3, 0x2b, 0xe6, 0x66, 0x66, 0xe7, 0x4b, + 0x8c, 0x1e, 0xfb, 0xd8, 0x8b, 0x30, 0x45, 0xb1, 0xb5, 0x28, 0x7c, 0xb0, 0x23, 0x15, 0xed, 0x7c, + 0xcf, 0xed, 0x57, 0x4b, 0x7c, 0xd9, 0xa8, 0x9b, 0x75, 0xe8, 0x57, 0x2d, 0x18, 0x69, 0x38, 0x2d, + 0xa7, 0xc1, 0xf3, 0xe9, 0x14, 0xf0, 0xce, 0x18, 0xe5, 0xe7, 0x96, 0x44, 0x59, 0xee, 0x59, 0xf8, + 0x88, 0xec, 0xba, 0x04, 0xe7, 0x7a, 0x13, 0x54, 0xe5, 0x33, 0xf7, 0x60, 0xdc, 0x60, 0x76, 0xa4, + 0x66, 0xe8, 0xaf, 0x5a, 0x5c, 0xe8, 0x2b, 0x53, 0xe1, 0x3e, 0x9c, 0x08, 0xb4, 0xff, 0x54, 0x9c, + 0x49, 0xcd, 0x78, 0xae, 0xb8, 0x58, 0x67, 0x52, 0x50, 0x0b, 0x1b, 0xcc, 0x30, 0xc4, 0x9d, 0x75, + 0xd8, 0x7f, 0xd7, 0x82, 0x47, 0x74, 0x42, 0xed, 0x2a, 0x64, 0x9e, 0xdf, 0xb8, 0x0a, 0x23, 0x61, + 0x8b, 0x44, 0x4e, 0x6a, 0x16, 0x9d, 0x97, 0xe3, 0x7f, 0x4b, 0xc0, 0xf7, 0x77, 0x67, 0x4f, 0xe9, + 0xdc, 0x25, 0x1c, 0xab, 0x92, 0xc8, 0x86, 0x21, 0x36, 0x2e, 0xb1, 0xb8, 0xc4, 0xca, 0xf2, 0xcb, + 0xb0, 0xd3, 0x92, 0x18, 0x0b, 0x8c, 0xfd, 0xd7, 0x2c, 0x3e, 0xdd, 0xf4, 0xa6, 0xa3, 0x2f, 0xc2, + 0x54, 0x93, 0x5a, 0x50, 0xcb, 0x0f, 0x5a, 0x74, 0x23, 0x65, 0xe7, 0xc4, 0x56, 0x91, 0xed, 0xa3, + 0x47, 0x77, 0x17, 0xa7, 0x45, 0xeb, 0xa7, 0x6e, 0x64, 0xd8, 0xe2, 0x8e, 0x8a, 0xec, 0xff, 0x24, + 0xd6, 0x2c, 0xd3, 0xe1, 0x9e, 0x81, 0xe1, 0x56, 0xe8, 0x2e, 0xad, 0x56, 0xb1, 0x18, 0x2b, 0x25, + 0x74, 0x6a, 0x1c, 0x8c, 0x25, 0x1e, 0x5d, 0x02, 0x20, 0x0f, 0x12, 0x12, 0x05, 0x8e, 0xaf, 0xce, + 0x77, 0x95, 0xaa, 0xb4, 0xac, 0x30, 0x58, 0xa3, 0xa2, 0x65, 0x5a, 0x51, 0xb8, 0xed, 0xb9, 0x2c, + 0x86, 0xbf, 0x6c, 0x96, 0xa9, 0x29, 0x0c, 0xd6, 0xa8, 0xa8, 0xdd, 0xda, 0x0e, 0x62, 0xbe, 0x8d, + 0x39, 0xeb, 0x22, 0x1d, 0xca, 0x48, 0x6a, 0xb7, 0xde, 0xd6, 0x91, 0xd8, 0xa4, 0xb5, 0xff, 0x7d, + 0x05, 0x20, 0x55, 0x94, 0xd0, 0x57, 0x3a, 0xd7, 0xe8, 0x47, 0x8b, 0x6a, 0x59, 0x0f, 0x6f, 0x81, + 0xa2, 0xaf, 0x5b, 0x30, 0xea, 0xf8, 0x7e, 0xd8, 0x70, 0x12, 0xd6, 0xa3, 0x52, 0x51, 0x69, 0x21, + 0x5a, 0xb2, 0x90, 0x96, 0xe5, 0x8d, 0x79, 0x41, 0x1e, 0xfe, 0x69, 0x98, 0xdc, 0xf6, 0xe8, 0x4d, + 0x40, 0x1f, 0x91, 0x8a, 0x36, 0xff, 0x28, 0x33, 0x59, 0x45, 0xbb, 0xc2, 0x64, 0xa4, 0xa6, 0x63, + 0xa3, 0x37, 0x8d, 0x8c, 0x1f, 0x03, 0x45, 0xee, 0x4e, 0x1a, 0xaa, 0x43, 0x5e, 0xb2, 0x0f, 0xf4, + 0x59, 0x3d, 0xbc, 0x79, 0xb0, 0xc8, 0xe5, 0x64, 0x4d, 0x83, 0xcd, 0x09, 0x6d, 0x4e, 0x60, 0xd2, + 0x35, 0x37, 0x4b, 0x11, 0xa2, 0x75, 0x31, 0xbf, 0x86, 0xcc, 0x2e, 0x9b, 0x6e, 0x8f, 0x19, 0x04, + 0xce, 0x56, 0x81, 0x3e, 0xcb, 0x83, 0xcf, 0x57, 0x83, 0x8d, 0x50, 0x84, 0x69, 0x5d, 0x28, 0xf0, + 0xcd, 0x77, 0xe2, 0x84, 0x34, 0x69, 0x99, 0x74, 0x3f, 0xbc, 0x29, 0xb8, 0x60, 0xc5, 0x0f, 0xad, + 0xc1, 0x10, 0xbb, 0x2a, 0x13, 0x4f, 0x8f, 0x14, 0x71, 0x9e, 0x99, 0x37, 0x44, 0x53, 0x25, 0x84, + 0xfd, 0x8d, 0xb1, 0xe0, 0x85, 0xae, 0xca, 0x3b, 0xe2, 0xf1, 0x6a, 0x70, 0x3b, 0x26, 0xec, 0x8e, + 0x78, 0x65, 0xf1, 0x43, 0xe9, 0xa5, 0x6f, 0x0e, 0xef, 0x9a, 0xf3, 0xcc, 0x28, 0x49, 0x75, 0x11, + 0xf1, 0x5f, 0xa6, 0x52, 0x9b, 0x86, 0x22, 0x0d, 0x35, 0x13, 0xaf, 0xa5, 0x83, 0x7d, 0xc7, 0x64, + 0x86, 0xb3, 0xdc, 0x8f, 0x75, 0x17, 0x9c, 0x09, 0x60, 0x2a, 0xbb, 0x28, 0x8f, 0x74, 0xd7, 0xfd, + 0xd9, 0x00, 0x4c, 0x98, 0x93, 0x03, 0xcd, 0x43, 0x45, 0x30, 0x51, 0xa9, 0x95, 0xd4, 0x1a, 0xb8, + 0x21, 0x11, 0x38, 0xa5, 0x61, 0x49, 0xa6, 0x58, 0x71, 0x2d, 0x40, 0x27, 0x4d, 0x32, 0xa5, 0x30, + 0x58, 0xa3, 0xa2, 0xca, 0xeb, 0x7a, 0x18, 0x26, 0x4a, 0x78, 0xab, 0x79, 0xb3, 0xc8, 0xa0, 0x58, + 0x60, 0xa9, 0xd0, 0xbe, 0x47, 0x3f, 0xa6, 0x6f, 0x3a, 0x02, 0x95, 0xd0, 0xbe, 0xa6, 0x23, 0xb1, + 0x49, 0x4b, 0x37, 0xa1, 0x30, 0x66, 0x13, 0x51, 0xa8, 0xc8, 0x69, 0xc0, 0x53, 0x9d, 0x5f, 0x1f, + 0x93, 0x78, 0xf4, 0x19, 0x78, 0x44, 0xdd, 0xf6, 0xc2, 0xdc, 0xb1, 0x2a, 0x6b, 0x1c, 0x32, 0xac, + 0xdc, 0x47, 0x96, 0xba, 0x93, 0xe1, 0x5e, 0xe5, 0xd1, 0xab, 0x30, 0x21, 0xd4, 0x5b, 0xc9, 0x71, + 0xd8, 0x3c, 0x0d, 0xbf, 0x66, 0x60, 0x71, 0x86, 0x1a, 0x55, 0x61, 0x8a, 0x42, 0x98, 0x5e, 0x29, + 0x39, 0xf0, 0x5b, 0x6b, 0x6a, 0x77, 0xbe, 0x96, 0xc1, 0xe3, 0x8e, 0x12, 0x68, 0x01, 0x26, 0xb9, + 0x7e, 0x41, 0x6d, 0x39, 0xf6, 0x1d, 0x44, 0x6c, 0xa5, 0x5a, 0x08, 0xb7, 0x4c, 0x34, 0xce, 0xd2, + 0xa3, 0xcb, 0x30, 0xe6, 0x44, 0x8d, 0x2d, 0x2f, 0x21, 0x8d, 0xa4, 0x1d, 0xf1, 0x0c, 0x0c, 0x5a, + 0x38, 0xc1, 0x82, 0x86, 0xc3, 0x06, 0xa5, 0xfd, 0x05, 0x38, 0xd9, 0x25, 0x90, 0x9b, 0x4e, 0x1c, + 0xa7, 0xe5, 0xc9, 0x3e, 0x65, 0x42, 0x97, 0x16, 0x6a, 0xab, 0xb2, 0x37, 0x1a, 0x15, 0x9d, 0x9d, + 0xcc, 0xa3, 0xac, 0x65, 0x3e, 0x54, 0xb3, 0x73, 0x45, 0x22, 0x70, 0x4a, 0x63, 0xff, 0x69, 0x05, + 0x34, 0x87, 0x4b, 0x81, 0x70, 0x95, 0xcb, 0x30, 0x26, 0x93, 0x79, 0x6a, 0x49, 0xf4, 0x54, 0x37, + 0xaf, 0x68, 0x38, 0x6c, 0x50, 0xd2, 0xb6, 0x05, 0xd2, 0x8d, 0x94, 0x0d, 0x94, 0x52, 0xfe, 0x25, + 0x9c, 0xd2, 0xa0, 0x0b, 0x30, 0x12, 0x13, 0x7f, 0xe3, 0xba, 0x17, 0xdc, 0x13, 0x13, 0x5b, 0x49, + 0xe6, 0xba, 0x80, 0x63, 0x45, 0x81, 0x16, 0xa1, 0xdc, 0xf6, 0x5c, 0x31, 0x95, 0xa5, 0xda, 0x50, + 0xbe, 0xbd, 0x5a, 0xdd, 0xdf, 0x9d, 0x7d, 0xa2, 0x57, 0x66, 0x53, 0x6a, 0x52, 0xc7, 0x73, 0x74, + 0xf9, 0xd1, 0xc2, 0xdd, 0x5c, 0xeb, 0x43, 0x7d, 0xba, 0xd6, 0x2f, 0x01, 0x88, 0x5e, 0xcb, 0xb9, + 0x5c, 0x4e, 0xbf, 0xda, 0x15, 0x85, 0xc1, 0x1a, 0x15, 0x35, 0xcc, 0x1b, 0x11, 0x71, 0xa4, 0xed, + 0xca, 0x03, 0x8c, 0x47, 0x0e, 0x6f, 0x98, 0x2f, 0x65, 0x99, 0xe1, 0x4e, 0xfe, 0x28, 0x84, 0x13, + 0x2e, 0x5d, 0x48, 0x46, 0xa5, 0x95, 0xfe, 0xa3, 0x9a, 0x69, 0x85, 0xd5, 0x2c, 0x23, 0xdc, 0xc9, + 0x1b, 0x7d, 0x1e, 0x66, 0x24, 0xb0, 0xf3, 0x3e, 0x27, 0x5b, 0x2e, 0xe5, 0xc5, 0xb3, 0x7b, 0xbb, + 0xb3, 0x33, 0xd5, 0x9e, 0x54, 0xf8, 0x00, 0x0e, 0xe8, 0x0d, 0x18, 0x62, 0x47, 0x31, 0xf1, 0xf4, + 0x28, 0xdb, 0xf1, 0x5e, 0x2c, 0x12, 0x1b, 0x4f, 0x67, 0xfd, 0x1c, 0x3b, 0xd0, 0x11, 0x51, 0x9f, + 0xe9, 0xf9, 0x16, 0x03, 0x62, 0xc1, 0x13, 0xb5, 0x60, 0xd4, 0x09, 0x82, 0x30, 0x71, 0xb8, 0x22, + 0x36, 0x56, 0x44, 0x97, 0xd4, 0xaa, 0x58, 0x48, 0xcb, 0xf2, 0x7a, 0x54, 0x20, 0x99, 0x86, 0xc1, + 0x7a, 0x15, 0xe8, 0x3e, 0x4c, 0x86, 0xf7, 0xa9, 0xc0, 0x94, 0xa7, 0x11, 0xf1, 0xf4, 0xb8, 0xd9, + 0xb1, 0x1c, 0xdf, 0xaa, 0x51, 0x58, 0x93, 0x64, 0x26, 0x53, 0x9c, 0xad, 0x05, 0xcd, 0x19, 0x1e, + 0xe6, 0x89, 0x34, 0xb6, 0x39, 0xf5, 0x30, 0xeb, 0x0e, 0x65, 0x76, 0x67, 0x98, 0xc7, 0x33, 0x32, + 0x89, 0x30, 0x99, 0xb9, 0x33, 0x9c, 0xa2, 0xb0, 0x4e, 0x37, 0xf3, 0x31, 0x18, 0xd5, 0x06, 0xbe, + 0x9f, 0x20, 0xda, 0x99, 0x57, 0x61, 0x2a, 0x3b, 0xa0, 0x7d, 0x05, 0xe1, 0xfe, 0xcf, 0x12, 0x4c, + 0x76, 0x39, 0xea, 0xb9, 0xe7, 0xb1, 0x40, 0x70, 0x43, 0xf4, 0x5d, 0xf3, 0x02, 0x17, 0x33, 0x8c, + 0x29, 0xc0, 0x4a, 0x05, 0x04, 0x98, 0x94, 0xa6, 0xe5, 0x9e, 0xd2, 0x54, 0x08, 0xad, 0x81, 0xf7, + 0x22, 0xb4, 0xcc, 0x7d, 0x62, 0xb0, 0xd0, 0x3e, 0xf1, 0x10, 0x04, 0x9d, 0xb1, 0xd5, 0x0c, 0x17, + 0xd8, 0x6a, 0xbe, 0x55, 0x82, 0xa9, 0x34, 0xe0, 0x58, 0x64, 0xf8, 0x3d, 0xfa, 0x93, 0x83, 0x35, + 0xe3, 0xe4, 0x20, 0x2f, 0x81, 0x6f, 0xa6, 0x7d, 0x3d, 0x4f, 0x11, 0xde, 0xc8, 0x9c, 0x22, 0xbc, + 0xd8, 0x27, 0xdf, 0x83, 0x4f, 0x14, 0xbe, 0x57, 0x82, 0xd3, 0xd9, 0x22, 0x4b, 0xbe, 0xe3, 0x35, + 0x8f, 0x61, 0xbc, 0x3e, 0x63, 0x8c, 0xd7, 0xcb, 0xfd, 0xf5, 0x8b, 0x35, 0xb2, 0xe7, 0xa0, 0x39, + 0x99, 0x41, 0xfb, 0xd8, 0x61, 0x98, 0x1f, 0x3c, 0x72, 0xbf, 0x6f, 0xc1, 0xa3, 0x5d, 0xcb, 0x1d, + 0x83, 0xaf, 0xf4, 0x75, 0xd3, 0x57, 0xfa, 0xc2, 0x21, 0x7a, 0xd7, 0xc3, 0x79, 0xfa, 0xdf, 0x4a, + 0x3d, 0x7a, 0xc5, 0xbc, 0x49, 0xb7, 0x60, 0xd4, 0x69, 0x34, 0x48, 0x1c, 0xdf, 0x08, 0x5d, 0x95, + 0x7d, 0xe8, 0x79, 0xb6, 0xb7, 0xa4, 0xe0, 0xfd, 0xdd, 0xd9, 0x99, 0x2c, 0x8b, 0x14, 0x8d, 0x75, + 0x0e, 0x66, 0x5e, 0xb4, 0xd2, 0x11, 0xe5, 0x45, 0xbb, 0x04, 0xb0, 0xad, 0xac, 0xd8, 0xac, 0x93, + 0x4a, 0xb3, 0x6f, 0x35, 0x2a, 0xf4, 0xe7, 0x99, 0x46, 0xc8, 0xe3, 0x2a, 0x06, 0xcc, 0xbb, 0x8b, + 0x39, 0xdf, 0x4f, 0x8f, 0xd1, 0xe0, 0x57, 0x24, 0x95, 0x43, 0x4f, 0xb1, 0xb4, 0xbf, 0x5b, 0x86, + 0x0f, 0x1e, 0x30, 0xe9, 0xd0, 0x82, 0x79, 0x4c, 0xfa, 0x5c, 0xd6, 0x7b, 0x33, 0xd3, 0xb5, 0xb0, + 0xe1, 0xce, 0xc9, 0x7c, 0xab, 0xd2, 0x7b, 0xfe, 0x56, 0xdf, 0xd0, 0x7d, 0x6d, 0x3c, 0x50, 0xf2, + 0xca, 0xa1, 0x97, 0xd5, 0x2f, 0xaa, 0x77, 0xfc, 0xcb, 0x16, 0x3c, 0xd1, 0xb5, 0x5b, 0x46, 0x58, + 0xc6, 0x3c, 0x54, 0x1a, 0x14, 0xa8, 0xdd, 0x6a, 0x49, 0xaf, 0x93, 0x49, 0x04, 0x4e, 0x69, 0x8c, + 0xe8, 0x8b, 0x52, 0x6e, 0xf4, 0xc5, 0xef, 0x5a, 0x70, 0x2a, 0xdb, 0x88, 0x63, 0x90, 0x3a, 0x75, + 0x53, 0xea, 0xcc, 0xf5, 0xf7, 0xf1, 0x7b, 0x08, 0x9c, 0x5f, 0x1f, 0x87, 0x33, 0x1d, 0x7b, 0x16, + 0x1f, 0xc5, 0x5f, 0xb2, 0xe0, 0xc4, 0x26, 0xd3, 0xbd, 0xb5, 0xab, 0x43, 0xa2, 0x5f, 0x39, 0xf7, + 0xad, 0x0e, 0xbc, 0x71, 0xc4, 0x2d, 0x89, 0x0e, 0x12, 0xdc, 0x59, 0x19, 0xfa, 0x9a, 0x05, 0xa7, + 0x9c, 0xfb, 0x71, 0xc7, 0xeb, 0x11, 0x62, 0x22, 0xbd, 0x9a, 0xe3, 0xea, 0xca, 0x79, 0x77, 0x62, + 0x71, 0x7a, 0x6f, 0x77, 0xf6, 0x54, 0x37, 0x2a, 0xdc, 0xb5, 0x56, 0xfa, 0x7d, 0xb7, 0xc4, 0xc5, + 0x84, 0x62, 0x97, 0xe0, 0xba, 0x5d, 0x63, 0xe0, 0x42, 0x49, 0x62, 0xb0, 0xe2, 0x88, 0xde, 0x82, + 0xca, 0xa6, 0xbc, 0x2d, 0x94, 0x15, 0x7a, 0x3d, 0x86, 0xb9, 0xdb, 0xe5, 0x22, 0x1e, 0x2c, 0xaf, + 0x50, 0x38, 0x65, 0x8a, 0xae, 0x42, 0x39, 0xd8, 0x88, 0xc5, 0xbd, 0xdc, 0xbc, 0xa0, 0x1b, 0x33, + 0xd4, 0x89, 0x5f, 0x65, 0xbc, 0xb9, 0x52, 0xc7, 0x94, 0x05, 0xe5, 0x14, 0xad, 0xbb, 0xc2, 0xc7, + 0x9b, 0xc3, 0x09, 0x2f, 0x56, 0x3b, 0x39, 0xe1, 0xc5, 0x2a, 0xa6, 0x2c, 0x50, 0x0d, 0x06, 0xd9, + 0xb5, 0x07, 0xe1, 0xc0, 0xcd, 0xb9, 0xbc, 0xdd, 0x71, 0xb9, 0x83, 0x27, 0xdf, 0x63, 0x60, 0xcc, + 0x19, 0xa1, 0x35, 0x18, 0x6a, 0xb0, 0x44, 0xe9, 0xc2, 0xb2, 0xce, 0x4b, 0x6b, 0xd0, 0x91, 0x54, + 0x9d, 0x1f, 0x34, 0x71, 0x38, 0x16, 0xbc, 0x18, 0x57, 0xd2, 0xda, 0xda, 0x88, 0x85, 0xe9, 0x9c, + 0xc7, 0xb5, 0x23, 0xe5, 0xbd, 0xe0, 0xca, 0xe0, 0x58, 0xf0, 0x42, 0x55, 0x28, 0x6d, 0x34, 0x44, + 0x0e, 0xcf, 0x1c, 0xc7, 0xad, 0x79, 0x2f, 0x75, 0x71, 0x68, 0x6f, 0x77, 0xb6, 0xb4, 0xb2, 0x84, + 0x4b, 0x1b, 0x0d, 0xf4, 0x3a, 0x0c, 0x6f, 0xf0, 0x9b, 0x86, 0x22, 0x5f, 0xe7, 0xc5, 0xbc, 0xeb, + 0x90, 0x1d, 0xd7, 0x12, 0xf9, 0x85, 0x08, 0x81, 0xc0, 0x92, 0x1d, 0x4b, 0x65, 0xa6, 0xee, 0x4e, + 0x8a, 0x84, 0x9d, 0x73, 0xfd, 0xdd, 0xb5, 0x14, 0x16, 0xa5, 0x82, 0x62, 0x8d, 0x23, 0x9d, 0xf3, + 0x8e, 0x7c, 0xf3, 0x81, 0x25, 0xeb, 0xcc, 0x9d, 0xf3, 0x5d, 0x9f, 0x88, 0xe0, 0x73, 0x5e, 0xa1, + 0x70, 0xca, 0x14, 0xb5, 0x61, 0x7c, 0x3b, 0x6e, 0x6d, 0x11, 0xb9, 0xf4, 0x59, 0x06, 0xcf, 0xd1, + 0x4b, 0x9f, 0xc8, 0x49, 0xcb, 0x2a, 0x8a, 0x78, 0x51, 0xd2, 0x76, 0xfc, 0x0e, 0x09, 0xc6, 0x72, + 0x47, 0xdd, 0xd1, 0xd9, 0x62, 0xb3, 0x16, 0xfa, 0x49, 0xde, 0x69, 0x87, 0xeb, 0x3b, 0x09, 0x11, + 0x19, 0x3e, 0x73, 0x3e, 0xc9, 0x6b, 0x9c, 0xb8, 0xf3, 0x93, 0x08, 0x04, 0x96, 0xec, 0xd4, 0x90, + 0x31, 0x69, 0x3c, 0x55, 0x78, 0xc8, 0x3a, 0xfa, 0x90, 0x0e, 0x19, 0x93, 0xbe, 0x29, 0x53, 0x26, + 0x75, 0x5b, 0x5b, 0x61, 0x12, 0x06, 0x19, 0xd9, 0x7f, 0xa2, 0x88, 0xd4, 0xad, 0x75, 0x29, 0xd9, + 0x29, 0x75, 0xbb, 0x51, 0xe1, 0xae, 0xb5, 0xda, 0xff, 0x65, 0xb0, 0x73, 0xbb, 0x65, 0xea, 0xf0, + 0x5f, 0xed, 0x3c, 0x7d, 0xfc, 0x54, 0xff, 0x56, 0xdf, 0x43, 0x3c, 0x87, 0xfc, 0x9a, 0x05, 0x67, + 0x5a, 0x5d, 0x37, 0x53, 0xb1, 0x61, 0xf5, 0x6b, 0x3c, 0xf2, 0x01, 0x53, 0xe9, 0x6b, 0xbb, 0xe3, + 0x71, 0x8f, 0x3a, 0xb3, 0x2a, 0x68, 0xf9, 0x3d, 0xab, 0xa0, 0x77, 0x61, 0x84, 0xe9, 0x4c, 0x69, + 0xae, 0x8d, 0x3e, 0xd3, 0x52, 0xb0, 0xad, 0x6f, 0x49, 0xb0, 0xc0, 0x8a, 0x19, 0x1d, 0xb8, 0xc7, + 0xb3, 0x9d, 0xc0, 0x84, 0xa1, 0x45, 0x8a, 0x57, 0xee, 0xed, 0x58, 0x11, 0x23, 0xf1, 0x78, 0xed, + 0x20, 0xe2, 0xfd, 0x3c, 0x02, 0x7c, 0x70, 0x65, 0xc7, 0xab, 0xd2, 0xfe, 0x03, 0xab, 0x8b, 0x06, + 0xc6, 0xcd, 0x90, 0x4f, 0x98, 0x66, 0xc8, 0xd3, 0x59, 0x33, 0xa4, 0xc3, 0x75, 0x60, 0x58, 0x20, + 0xc5, 0xd3, 0x35, 0x16, 0x4d, 0x03, 0x62, 0xfb, 0x70, 0x2e, 0x6f, 0x79, 0xb3, 0x58, 0x1f, 0x57, + 0x1d, 0x99, 0xa5, 0xb1, 0x3e, 0xee, 0x6a, 0x15, 0x33, 0x4c, 0xd1, 0x9b, 0xe4, 0xf6, 0x2f, 0x97, + 0xa0, 0x5c, 0x0b, 0xdd, 0x63, 0x70, 0x85, 0x5c, 0x31, 0x5c, 0x21, 0x4f, 0xe5, 0xbe, 0x79, 0xd5, + 0xd3, 0xf1, 0x71, 0x2b, 0xe3, 0xf8, 0xf8, 0x70, 0x3e, 0xab, 0x83, 0xdd, 0x1c, 0xdf, 0x2f, 0x83, + 0xfe, 0x6a, 0x17, 0xfa, 0xb7, 0x87, 0x09, 0x01, 0x2d, 0x17, 0x7b, 0xc8, 0x4b, 0xd4, 0xc1, 0x42, + 0x85, 0xe4, 0xc5, 0xb1, 0x5f, 0xd8, 0x48, 0xd0, 0xbb, 0xc4, 0xdb, 0xdc, 0x4a, 0x88, 0x9b, 0xed, + 0xd8, 0xf1, 0x45, 0x82, 0xfe, 0x89, 0x05, 0x93, 0x99, 0xda, 0x91, 0xdf, 0xed, 0xc6, 0xc9, 0x21, + 0x9d, 0x1b, 0x27, 0x72, 0xaf, 0xa8, 0xcc, 0x01, 0x28, 0x1f, 0xb5, 0x74, 0x41, 0x30, 0x6d, 0x4c, + 0x39, 0xb1, 0x63, 0xac, 0x51, 0xa0, 0x97, 0x60, 0x34, 0x09, 0x5b, 0xa1, 0x1f, 0x6e, 0xee, 0x5c, + 0x23, 0x32, 0xc7, 0x81, 0xf2, 0xef, 0xaf, 0xa5, 0x28, 0xac, 0xd3, 0xd9, 0x3f, 0x28, 0x43, 0xf6, + 0xcd, 0xb7, 0xff, 0x3f, 0x4f, 0x7f, 0x71, 0xe6, 0xe9, 0x1f, 0x58, 0x30, 0x45, 0x6b, 0x67, 0x81, + 0x1e, 0x32, 0x62, 0x53, 0xe5, 0x8e, 0xb7, 0x0e, 0xc8, 0x1d, 0xff, 0x34, 0x95, 0x76, 0x6e, 0xd8, + 0x4e, 0x84, 0xd3, 0x44, 0x13, 0x62, 0x14, 0x8a, 0x05, 0x56, 0xd0, 0x91, 0x28, 0x12, 0x57, 0x5b, + 0x74, 0x3a, 0x12, 0x45, 0x58, 0x60, 0x65, 0x6a, 0xf9, 0x81, 0x1e, 0xa9, 0xe5, 0x59, 0x96, 0x20, + 0x11, 0x5c, 0x20, 0x14, 0x02, 0x2d, 0x4b, 0x90, 0x8c, 0x3a, 0x48, 0x69, 0xec, 0xef, 0x94, 0x61, + 0xac, 0x16, 0xba, 0x69, 0x28, 0xf6, 0x8b, 0x46, 0x28, 0xf6, 0xb9, 0x4c, 0x28, 0xf6, 0x94, 0x4e, + 0xfb, 0x70, 0x22, 0xb1, 0x45, 0x36, 0x29, 0xf6, 0xf8, 0xc1, 0x21, 0xa3, 0xb0, 0x8d, 0x6c, 0x52, + 0x8a, 0x11, 0x36, 0xf9, 0xfe, 0x59, 0x8a, 0xbe, 0xfe, 0xdf, 0x16, 0x4c, 0xd4, 0x42, 0x97, 0x4e, + 0xd0, 0x3f, 0x4b, 0xb3, 0x51, 0xcf, 0x41, 0x35, 0x74, 0x40, 0x0e, 0xaa, 0x7f, 0x6c, 0xc1, 0x70, + 0x2d, 0x74, 0x8f, 0xc1, 0xa1, 0xb8, 0x62, 0x3a, 0x14, 0x9f, 0xc8, 0x95, 0xbc, 0x3d, 0x7c, 0x88, + 0xdf, 0x2d, 0xc3, 0x38, 0x6d, 0x71, 0xb8, 0x29, 0xbf, 0x97, 0x31, 0x36, 0x56, 0x81, 0xb1, 0xa1, + 0x2a, 0x61, 0xe8, 0xfb, 0xe1, 0xfd, 0xec, 0xb7, 0x5b, 0x61, 0x50, 0x2c, 0xb0, 0xe8, 0x02, 0x8c, + 0xb4, 0x22, 0xb2, 0xed, 0x85, 0xed, 0x38, 0x7b, 0x4d, 0xae, 0x26, 0xe0, 0x58, 0x51, 0xa0, 0x17, + 0x61, 0x2c, 0xf6, 0x82, 0x06, 0x91, 0xa1, 0x07, 0x03, 0x2c, 0xf4, 0x80, 0xa7, 0xfb, 0xd3, 0xe0, + 0xd8, 0xa0, 0x42, 0x77, 0xa1, 0xc2, 0xfe, 0xb3, 0x15, 0xd4, 0x7f, 0x6e, 0x78, 0x9e, 0xe3, 0x4a, + 0x32, 0xc0, 0x29, 0x2f, 0x74, 0x09, 0x20, 0x91, 0x41, 0x12, 0xb1, 0xc8, 0xd4, 0xa1, 0xf4, 0x52, + 0x15, 0x3e, 0x11, 0x63, 0x8d, 0x0a, 0x3d, 0x07, 0x95, 0xc4, 0xf1, 0xfc, 0xeb, 0x5e, 0x40, 0x62, + 0x11, 0x64, 0x22, 0x52, 0xf7, 0x0a, 0x20, 0x4e, 0xf1, 0x74, 0xbf, 0x67, 0x97, 0x74, 0xf9, 0xbb, + 0x13, 0x23, 0x8c, 0x9a, 0xed, 0xf7, 0xd7, 0x15, 0x14, 0x6b, 0x14, 0xf6, 0x65, 0x38, 0x5d, 0x0b, + 0xdd, 0x5a, 0x18, 0x25, 0x2b, 0x61, 0x74, 0xdf, 0x89, 0x5c, 0xf9, 0xfd, 0x66, 0x65, 0xc6, 0x58, + 0xba, 0x27, 0x0f, 0x72, 0x1f, 0x9b, 0x91, 0x01, 0xf6, 0x05, 0xb6, 0xe3, 0xf7, 0x19, 0xe3, 0xff, + 0xd3, 0x12, 0xa0, 0x1a, 0x0b, 0xe3, 0x30, 0x9e, 0x29, 0xd9, 0x82, 0x89, 0x98, 0x5c, 0xf7, 0x82, + 0xf6, 0x03, 0xc1, 0xaa, 0xd8, 0xa5, 0x8a, 0xfa, 0xb2, 0x5e, 0x86, 0xdf, 0x68, 0x35, 0x61, 0x38, + 0xc3, 0x97, 0x0e, 0x66, 0xd4, 0x0e, 0x16, 0xe2, 0xdb, 0x31, 0x89, 0xc4, 0xb3, 0x1c, 0x6c, 0x30, + 0xb1, 0x04, 0xe2, 0x14, 0x4f, 0x27, 0x0f, 0xfb, 0x73, 0x33, 0x0c, 0x70, 0x18, 0x26, 0x72, 0xba, + 0xb1, 0x34, 0xed, 0x1a, 0x1c, 0x1b, 0x54, 0x68, 0x05, 0x50, 0xdc, 0x6e, 0xb5, 0x7c, 0x76, 0x32, + 0xe6, 0xf8, 0x57, 0xa2, 0xb0, 0xdd, 0xe2, 0xd1, 0xbc, 0x22, 0xc3, 0x79, 0xbd, 0x03, 0x8b, 0xbb, + 0x94, 0xa0, 0xc2, 0x62, 0x23, 0x66, 0xbf, 0xc5, 0x8d, 0x5d, 0xee, 0x9f, 0xab, 0x33, 0x10, 0x96, + 0x38, 0xfb, 0x4b, 0x6c, 0x83, 0x63, 0xef, 0x25, 0x24, 0xed, 0x88, 0xa0, 0x26, 0x8c, 0xb7, 0xd8, + 0x26, 0x96, 0x44, 0xa1, 0xef, 0x13, 0xa9, 0x5f, 0x1e, 0x2e, 0x90, 0x84, 0x67, 0x48, 0xd7, 0xd9, + 0x61, 0x93, 0xbb, 0xfd, 0xc3, 0x31, 0x26, 0xab, 0xc4, 0xe1, 0xe4, 0xb0, 0x08, 0x19, 0x15, 0x9a, + 0xdc, 0x87, 0x8a, 0xbc, 0x7c, 0x94, 0xee, 0x03, 0x22, 0x00, 0x15, 0x4b, 0x2e, 0xe8, 0x73, 0x2c, + 0x20, 0x9a, 0x0b, 0x88, 0xe2, 0x0f, 0x97, 0x71, 0x7a, 0x23, 0x18, 0x5a, 0xb0, 0xc0, 0x1a, 0x3b, + 0x74, 0x1d, 0xc6, 0x45, 0x7a, 0x7d, 0xe1, 0x60, 0x28, 0x1b, 0x26, 0xf6, 0x38, 0xd6, 0x91, 0xfb, + 0x59, 0x00, 0x36, 0x0b, 0xa3, 0x4d, 0x78, 0x5c, 0x7b, 0x3e, 0xa6, 0x4b, 0xd0, 0x13, 0x97, 0x3c, + 0x4f, 0xec, 0xed, 0xce, 0x3e, 0xbe, 0x76, 0x10, 0x21, 0x3e, 0x98, 0x0f, 0xba, 0x05, 0xa7, 0x9d, + 0x46, 0xe2, 0x6d, 0x93, 0x2a, 0x71, 0x5c, 0xdf, 0x0b, 0x88, 0x79, 0xad, 0xfb, 0xd1, 0xbd, 0xdd, + 0xd9, 0xd3, 0x0b, 0xdd, 0x08, 0x70, 0xf7, 0x72, 0xe8, 0x13, 0x50, 0x71, 0x83, 0x58, 0x8c, 0xc1, + 0x90, 0xf1, 0x5a, 0x52, 0xa5, 0x7a, 0xb3, 0xae, 0xfa, 0x9f, 0xfe, 0xc1, 0x69, 0x01, 0xf4, 0x0e, + 0x7f, 0xf6, 0x5a, 0x59, 0x33, 0xfc, 0x95, 0xae, 0x97, 0x0b, 0xd9, 0xcf, 0xc6, 0x65, 0x0b, 0xee, + 0x7b, 0x53, 0xc1, 0x85, 0xc6, 0x3d, 0x0c, 0xa3, 0x0a, 0xf4, 0x69, 0x40, 0x31, 0x89, 0xb6, 0xbd, + 0x06, 0x59, 0x68, 0xb0, 0x1c, 0x99, 0xec, 0x90, 0x6f, 0xc4, 0x88, 0xb2, 0x47, 0xf5, 0x0e, 0x0a, + 0xdc, 0xa5, 0x14, 0xba, 0x4a, 0x25, 0x8f, 0x0e, 0x15, 0xb1, 0xa0, 0x52, 0x31, 0x9c, 0xae, 0x92, + 0x56, 0x44, 0x1a, 0x4e, 0x42, 0x5c, 0x93, 0x23, 0xce, 0x94, 0xa3, 0xfb, 0x92, 0x4a, 0x83, 0x0e, + 0x66, 0x04, 0x63, 0x67, 0x2a, 0x74, 0x6a, 0x67, 0x6d, 0x85, 0x71, 0x72, 0x93, 0x24, 0xf7, 0xc3, + 0xe8, 0x1e, 0xf3, 0xd9, 0x8f, 0x68, 0x09, 0xc7, 0x52, 0x14, 0xd6, 0xe9, 0xa8, 0x0e, 0xc5, 0x0e, + 0x8b, 0x56, 0xab, 0xcc, 0x13, 0x3f, 0x92, 0xae, 0x9d, 0xab, 0x1c, 0x8c, 0x25, 0x5e, 0x92, 0xae, + 0xd6, 0x96, 0x98, 0x57, 0x3d, 0x43, 0xba, 0x5a, 0x5b, 0xc2, 0x12, 0x8f, 0xc2, 0xce, 0x37, 0xa9, + 0x26, 0x8a, 0x9c, 0x70, 0x74, 0x4a, 0xf2, 0x82, 0xcf, 0x52, 0x3d, 0x80, 0x29, 0xf5, 0x2e, 0x16, + 0xcf, 0x05, 0x19, 0x4f, 0x4f, 0x16, 0x79, 0x74, 0xbb, 0x6b, 0x4a, 0x49, 0x15, 0xfc, 0xbb, 0x9a, + 0xe1, 0x89, 0x3b, 0x6a, 0x31, 0xd2, 0x13, 0x4c, 0xe5, 0xa6, 0xb6, 0x9f, 0x87, 0x4a, 0xdc, 0x5e, + 0x77, 0xc3, 0xa6, 0xe3, 0x05, 0xcc, 0xf5, 0xad, 0x3f, 0x21, 0x2d, 0x11, 0x38, 0xa5, 0x41, 0x35, + 0x18, 0x71, 0xe4, 0xeb, 0xe9, 0xa8, 0xc8, 0xf5, 0x65, 0xf5, 0x6c, 0x3a, 0xf3, 0x8b, 0xaa, 0xf7, + 0xd2, 0x15, 0x17, 0xf4, 0x0a, 0x8c, 0x8b, 0xdb, 0x37, 0x24, 0x62, 0xad, 0x3e, 0x69, 0x86, 0x7d, + 0xd7, 0x25, 0x92, 0x4d, 0x30, 0x93, 0x16, 0x6d, 0xc2, 0x04, 0xe5, 0x92, 0x0a, 0xc0, 0xe9, 0x53, + 0xfd, 0xc9, 0x50, 0x2d, 0x89, 0xb0, 0xce, 0x06, 0x67, 0xd8, 0xce, 0x7c, 0x12, 0x4e, 0x74, 0xac, + 0xe5, 0xbe, 0xa2, 0xf4, 0xfe, 0xdd, 0x20, 0x54, 0x94, 0x2b, 0x0c, 0xcd, 0x9b, 0x5e, 0xcf, 0x47, + 0xb3, 0x5e, 0xcf, 0x11, 0xaa, 0x79, 0xe8, 0x8e, 0xce, 0xcf, 0x77, 0x79, 0x2b, 0xf7, 0xd9, 0xdc, + 0xc9, 0x5b, 0xfc, 0xe2, 0x4c, 0x1f, 0x2f, 0x0a, 0xa7, 0xe6, 0xd0, 0xc0, 0x81, 0xe6, 0x50, 0xc1, + 0x67, 0xb1, 0xa8, 0xe1, 0xd3, 0x0a, 0xdd, 0xd5, 0x5a, 0xf6, 0xd5, 0x97, 0x1a, 0x05, 0x62, 0x8e, + 0x63, 0x0a, 0x2b, 0xdd, 0x8c, 0x98, 0xc2, 0x3a, 0x7c, 0x48, 0x85, 0x55, 0x32, 0xc0, 0x29, 0x2f, + 0xb4, 0x0d, 0x27, 0x1a, 0xe6, 0x23, 0x3e, 0xea, 0x3a, 0xcc, 0xf3, 0x7d, 0x3c, 0xa2, 0xd3, 0xd6, + 0x1e, 0x2c, 0x58, 0xca, 0xf2, 0xc3, 0x9d, 0x55, 0xa0, 0x57, 0x60, 0xe4, 0x9d, 0x30, 0x5e, 0xf2, + 0x9d, 0x38, 0x16, 0x12, 0x59, 0x5e, 0x3b, 0x18, 0x79, 0xed, 0x56, 0x9d, 0xc1, 0xf7, 0x77, 0x67, + 0x47, 0x6b, 0xa1, 0x2b, 0xff, 0x62, 0x55, 0x00, 0x7d, 0xd9, 0x82, 0xd3, 0xc6, 0x04, 0x55, 0x2d, + 0x87, 0xc3, 0xb4, 0xfc, 0x71, 0x51, 0xf3, 0xe9, 0xd5, 0x6e, 0x3c, 0x71, 0xf7, 0xaa, 0xec, 0x1f, + 0x72, 0xdf, 0x9f, 0xf0, 0x06, 0x90, 0xb8, 0xed, 0x1f, 0x47, 0xf2, 0xf0, 0x5b, 0x86, 0xa3, 0xe2, + 0x21, 0x78, 0x9f, 0xff, 0x8d, 0xc5, 0xbc, 0xcf, 0x6b, 0xa4, 0xd9, 0xf2, 0x9d, 0xe4, 0x38, 0x82, + 0x38, 0x3f, 0x07, 0x23, 0x89, 0xa8, 0xad, 0x58, 0xe6, 0x73, 0xad, 0x79, 0xcc, 0x2b, 0xaf, 0x24, + 0xba, 0x84, 0x62, 0xc5, 0xd0, 0xfe, 0x17, 0xfc, 0xab, 0x48, 0xcc, 0x31, 0x98, 0xd8, 0x37, 0x4d, + 0x13, 0xfb, 0x99, 0xc2, 0x7d, 0xe9, 0x61, 0x6a, 0xff, 0xc0, 0xec, 0x01, 0x53, 0xbc, 0x7f, 0x71, + 0x8e, 0x47, 0xec, 0x5b, 0x60, 0xbe, 0xb8, 0x84, 0x5e, 0xe5, 0x61, 0xd1, 0x5c, 0xd2, 0x5f, 0xe8, + 0x3b, 0x24, 0xda, 0xfe, 0xcd, 0x12, 0x9c, 0xe2, 0x0e, 0xd2, 0x85, 0xed, 0xd0, 0x73, 0x6b, 0xa1, + 0x2b, 0x82, 0xc4, 0x5d, 0x18, 0x6b, 0x69, 0x86, 0x51, 0xb1, 0x3c, 0x18, 0xba, 0x29, 0x95, 0x2a, + 0xa3, 0x3a, 0x14, 0x1b, 0x5c, 0x69, 0x2d, 0x64, 0xdb, 0x6b, 0x28, 0x7f, 0x5b, 0xa9, 0x6f, 0xe1, + 0xab, 0x6a, 0x59, 0xd6, 0xf8, 0x60, 0x83, 0xeb, 0x11, 0x24, 0xe9, 0xb7, 0xff, 0x9e, 0x05, 0x8f, + 0xf4, 0xc8, 0x95, 0x41, 0xab, 0xbb, 0xcf, 0x9c, 0xd2, 0xe2, 0x49, 0x2f, 0x55, 0x1d, 0x77, 0x55, + 0x63, 0x81, 0x45, 0xeb, 0x00, 0xdc, 0xd5, 0xcc, 0x1e, 0x78, 0x2e, 0x15, 0x89, 0x0d, 0xe9, 0xb8, + 0x91, 0xae, 0x5d, 0x56, 0x56, 0x4f, 0x3a, 0x6b, 0x5c, 0xed, 0x6f, 0x97, 0x61, 0x90, 0xbf, 0x1c, + 0x5b, 0x83, 0xe1, 0x2d, 0x9e, 0xbb, 0xb3, 0xbf, 0xd4, 0xa1, 0xa9, 0xe2, 0xcb, 0x01, 0x58, 0xb2, + 0x41, 0x37, 0xe0, 0x24, 0x15, 0xde, 0x9e, 0xe3, 0x57, 0x89, 0xef, 0xec, 0x48, 0x4b, 0x8a, 0x67, + 0x6e, 0x97, 0x29, 0x86, 0x4f, 0xae, 0x76, 0x92, 0xe0, 0x6e, 0xe5, 0xd0, 0xab, 0x1d, 0xa9, 0xb6, + 0x78, 0x4e, 0x54, 0xa5, 0x45, 0x1d, 0x9c, 0x6e, 0x8b, 0xea, 0x7a, 0xad, 0x0e, 0x9b, 0x51, 0x7b, + 0xa0, 0xd3, 0xb4, 0x13, 0x4d, 0x5a, 0x54, 0x85, 0xa9, 0xb8, 0xcd, 0x4e, 0xea, 0xd7, 0xb6, 0x22, + 0x12, 0x6f, 0x85, 0xbe, 0x2b, 0xde, 0x96, 0x53, 0xfa, 0x71, 0x3d, 0x83, 0xc7, 0x1d, 0x25, 0x28, + 0x97, 0x0d, 0xc7, 0xf3, 0xdb, 0x11, 0x49, 0xb9, 0x0c, 0x99, 0x5c, 0x56, 0x32, 0x78, 0xdc, 0x51, + 0xc2, 0xfe, 0x63, 0x0b, 0x4e, 0x76, 0x09, 0x67, 0xe1, 0x41, 0x96, 0x9b, 0x5e, 0x9c, 0xa8, 0xfc, + 0xdc, 0x5a, 0x90, 0x25, 0x87, 0x63, 0x45, 0x41, 0x67, 0x21, 0x77, 0x04, 0x64, 0x0f, 0x89, 0xc5, + 0x81, 0xbd, 0xc0, 0xf6, 0x97, 0x38, 0x0b, 0x9d, 0x83, 0x81, 0x76, 0x4c, 0x22, 0xf9, 0x54, 0x95, + 0x14, 0x51, 0xcc, 0xf7, 0xc3, 0x30, 0x54, 0xe3, 0xda, 0x54, 0x6e, 0x17, 0x4d, 0xe3, 0xe2, 0x8e, + 0x17, 0x8e, 0xb3, 0xbf, 0x51, 0x86, 0xc9, 0x4c, 0x58, 0x1b, 0x6d, 0x48, 0x33, 0x0c, 0xbc, 0x24, + 0x54, 0xc9, 0x9a, 0xf8, 0xeb, 0x38, 0xa4, 0xb5, 0x75, 0x43, 0xc0, 0xb1, 0xa2, 0x40, 0x4f, 0x9b, + 0xcf, 0x78, 0xa7, 0x6d, 0x5e, 0xac, 0x1a, 0x2f, 0xfa, 0x15, 0x7d, 0x33, 0xe0, 0x49, 0x18, 0x68, + 0x85, 0xea, 0x75, 0x56, 0x35, 0xe9, 0xf1, 0x62, 0xb5, 0x16, 0x86, 0x3e, 0x66, 0x48, 0xf4, 0x94, + 0xe8, 0x7d, 0xc6, 0x5b, 0x8d, 0x1d, 0x37, 0x8c, 0xb5, 0x21, 0x78, 0x06, 0x86, 0xef, 0x91, 0x9d, + 0xc8, 0x0b, 0x36, 0xb3, 0xbe, 0xfa, 0x6b, 0x1c, 0x8c, 0x25, 0xde, 0x7c, 0x17, 0x60, 0xf8, 0x88, + 0xdf, 0x05, 0x18, 0xc9, 0x8d, 0xcc, 0xfd, 0xae, 0x05, 0x93, 0x2c, 0x83, 0xa1, 0xb8, 0x3c, 0xec, + 0x85, 0xc1, 0x31, 0x6c, 0x8f, 0x4f, 0xc2, 0x60, 0x44, 0x2b, 0xcd, 0x26, 0xf6, 0x66, 0x2d, 0xc1, + 0x1c, 0x87, 0x1e, 0x83, 0x01, 0xd6, 0x04, 0xfa, 0x19, 0xc7, 0x78, 0xa2, 0xe4, 0xaa, 0x93, 0x38, + 0x98, 0x41, 0xd9, 0x3d, 0x10, 0x4c, 0x5a, 0xbe, 0xc7, 0x1b, 0x9d, 0xba, 0xd8, 0xde, 0x6f, 0xf7, + 0x40, 0xba, 0x36, 0xf2, 0x61, 0xdd, 0x03, 0xe9, 0xce, 0xfc, 0x60, 0x15, 0xf5, 0x7f, 0x94, 0xe0, + 0x6c, 0xd7, 0x72, 0xe9, 0xa9, 0xdf, 0x8a, 0x71, 0xea, 0x77, 0x29, 0x73, 0xea, 0x67, 0x1f, 0x5c, + 0xfa, 0xe1, 0x9c, 0x03, 0x76, 0x3f, 0x9e, 0x2b, 0x1f, 0xe3, 0xf1, 0xdc, 0x40, 0x51, 0xd5, 0x61, + 0x30, 0x47, 0x75, 0xf8, 0x7d, 0x0b, 0x1e, 0xed, 0x3a, 0x64, 0xef, 0xbb, 0x8b, 0x37, 0x5d, 0x5b, + 0xd9, 0x43, 0xb1, 0xfe, 0xb5, 0x72, 0x8f, 0x5e, 0x31, 0x15, 0xfb, 0x3c, 0x95, 0x42, 0x0c, 0x19, + 0x0b, 0xa5, 0x68, 0x8c, 0x4b, 0x20, 0x0e, 0xc3, 0x0a, 0x8b, 0x62, 0xed, 0xe2, 0x0a, 0x6f, 0xe4, + 0xf2, 0x21, 0x17, 0xd4, 0x9c, 0xe9, 0x1b, 0xd5, 0x6f, 0x44, 0x67, 0xae, 0xb3, 0xa0, 0xbb, 0x9a, + 0xd1, 0x54, 0x3e, 0x8c, 0xd1, 0x34, 0xd6, 0xdd, 0x60, 0x42, 0x0b, 0x30, 0xd9, 0xf4, 0x02, 0xf6, + 0x9c, 0xa0, 0xa9, 0x95, 0xa8, 0xdb, 0x83, 0x37, 0x4c, 0x34, 0xce, 0xd2, 0xcf, 0xbc, 0x02, 0xe3, + 0x87, 0x77, 0x0c, 0xbd, 0x5b, 0x86, 0x0f, 0x1e, 0x20, 0x14, 0xf8, 0xee, 0x60, 0x7c, 0x17, 0x6d, + 0x77, 0xe8, 0xf8, 0x36, 0x35, 0x38, 0xb5, 0xd1, 0xf6, 0xfd, 0x1d, 0x16, 0x33, 0x43, 0x5c, 0x49, + 0x21, 0x34, 0x3e, 0xf5, 0xd0, 0xef, 0x4a, 0x17, 0x1a, 0xdc, 0xb5, 0x24, 0xfa, 0x34, 0xa0, 0x70, + 0x9d, 0xe5, 0xf8, 0x74, 0xd3, 0x1b, 0xdf, 0xec, 0x13, 0x94, 0xd3, 0xa5, 0x7a, 0xab, 0x83, 0x02, + 0x77, 0x29, 0x45, 0xf5, 0x3f, 0xf6, 0x46, 0xb0, 0x6a, 0x56, 0x46, 0xff, 0xc3, 0x3a, 0x12, 0x9b, + 0xb4, 0xe8, 0x0a, 0x9c, 0x70, 0xb6, 0x1d, 0x8f, 0xe7, 0xec, 0x91, 0x0c, 0xb8, 0x02, 0xa8, 0x5c, + 0x2f, 0x0b, 0x59, 0x02, 0xdc, 0x59, 0x06, 0xb5, 0x0c, 0x5f, 0x1a, 0xcf, 0xee, 0xfd, 0x89, 0x43, + 0xcc, 0xe0, 0xc2, 0xde, 0x35, 0xfb, 0xbf, 0x5a, 0x74, 0xeb, 0xeb, 0xf2, 0xf2, 0x9c, 0xf1, 0x64, + 0xbd, 0x76, 0x95, 0xa7, 0xf3, 0xc9, 0x7a, 0xee, 0xfd, 0x34, 0x68, 0xf9, 0xd4, 0x88, 0xd3, 0xe0, + 0x5b, 0x43, 0xdb, 0x14, 0x77, 0xd8, 0x14, 0x05, 0xfa, 0x0c, 0x0c, 0xbb, 0xde, 0xb6, 0x17, 0x87, + 0x91, 0x58, 0x40, 0x7d, 0x06, 0x74, 0xa6, 0xf2, 0xb2, 0xca, 0xd9, 0x60, 0xc9, 0xcf, 0xfe, 0x66, + 0x09, 0xc6, 0x65, 0x8d, 0xaf, 0xb5, 0xc3, 0xc4, 0x39, 0x86, 0x2d, 0xfd, 0x35, 0x63, 0x4b, 0x9f, + 0x2f, 0x76, 0xa5, 0x8f, 0x35, 0xae, 0xe7, 0x56, 0xfe, 0x99, 0xcc, 0x56, 0x7e, 0xb1, 0x1f, 0xa6, + 0x07, 0x6f, 0xe1, 0xff, 0xca, 0x82, 0x13, 0x06, 0xfd, 0x31, 0xec, 0x24, 0x35, 0x73, 0x27, 0x79, + 0xae, 0x8f, 0xde, 0xf4, 0xd8, 0x41, 0xbe, 0x53, 0xca, 0xf4, 0x82, 0xed, 0x1c, 0x5f, 0x84, 0x81, + 0x2d, 0x27, 0x72, 0x8b, 0x25, 0xb0, 0xeb, 0x28, 0x3e, 0x77, 0xd5, 0x89, 0x5c, 0x2e, 0xff, 0x2f, + 0xa8, 0x77, 0x71, 0x9c, 0xc8, 0xcd, 0x8d, 0x49, 0x67, 0x95, 0xa2, 0xcb, 0x30, 0x14, 0x37, 0xc2, + 0x96, 0x8a, 0xfd, 0x3b, 0xc7, 0xdf, 0xcc, 0xa1, 0x90, 0xfd, 0xdd, 0x59, 0x64, 0x56, 0x47, 0xc1, + 0x58, 0xd0, 0xcf, 0x6c, 0x42, 0x45, 0x55, 0x7d, 0xa4, 0xd1, 0xcf, 0xff, 0xbd, 0x0c, 0x27, 0xbb, + 0xcc, 0x15, 0xf4, 0x25, 0x63, 0xdc, 0x5e, 0xe9, 0x7b, 0xb2, 0xbd, 0xc7, 0x91, 0xfb, 0x12, 0xb3, + 0x94, 0x5c, 0x31, 0x3b, 0x0e, 0x51, 0xfd, 0xed, 0x98, 0x64, 0xab, 0xa7, 0xa0, 0xfc, 0xea, 0x69, + 0xb5, 0xc7, 0x36, 0xfc, 0xb4, 0x22, 0xd5, 0xd2, 0x23, 0xfd, 0xce, 0x7f, 0x71, 0x00, 0x4e, 0x75, + 0xbb, 0x3b, 0x8c, 0xbe, 0x6a, 0x65, 0xb2, 0xd4, 0xbf, 0xda, 0xff, 0x05, 0x64, 0x9e, 0xba, 0x5e, + 0xe4, 0xdb, 0x98, 0x33, 0xf3, 0xd6, 0xe7, 0x8e, 0xb8, 0xa8, 0x9d, 0xdd, 0x26, 0x89, 0xf8, 0x8b, + 0x03, 0x52, 0x2a, 0x7c, 0xea, 0x10, 0x4d, 0x11, 0x8f, 0x16, 0xc4, 0x99, 0xdb, 0x24, 0x12, 0x9c, + 0x7f, 0x9b, 0x44, 0xb6, 0x61, 0xc6, 0x83, 0x51, 0xad, 0x5f, 0x47, 0x3a, 0x0d, 0xee, 0xd1, 0x2d, + 0x4a, 0x6b, 0xf7, 0x91, 0x4e, 0x85, 0xbf, 0x65, 0x41, 0x26, 0x50, 0x47, 0xb9, 0x65, 0xac, 0x9e, + 0x6e, 0x99, 0x73, 0x30, 0x10, 0x85, 0x3e, 0xc9, 0x66, 0x50, 0xc7, 0xa1, 0x4f, 0x30, 0xc3, 0xa8, + 0xa7, 0x32, 0xcb, 0xbd, 0x9e, 0xca, 0xa4, 0x76, 0xba, 0x4f, 0xb6, 0x89, 0x74, 0x92, 0x28, 0x31, + 0x7e, 0x9d, 0x02, 0x31, 0xc7, 0xd9, 0xbf, 0x57, 0x86, 0x21, 0xee, 0x89, 0x38, 0x86, 0x7d, 0xba, + 0x26, 0x9c, 0x02, 0x85, 0x6e, 0xf4, 0xf2, 0x56, 0xcd, 0x55, 0x9d, 0xc4, 0xe1, 0x93, 0x4b, 0xf5, + 0x31, 0x75, 0x24, 0xa0, 0x39, 0x63, 0x14, 0x66, 0x32, 0xb6, 0x2e, 0x70, 0x1e, 0xda, 0x98, 0x6c, + 0x01, 0xc4, 0xec, 0x69, 0x36, 0xca, 0x43, 0x64, 0x1d, 0x7c, 0xb1, 0x50, 0x3b, 0xea, 0xaa, 0x18, + 0x6f, 0x4d, 0x9a, 0xea, 0x4c, 0x21, 0xb0, 0xc6, 0x7b, 0xe6, 0x65, 0xa8, 0x28, 0xe2, 0x3c, 0x23, + 0x60, 0x4c, 0x9f, 0x9c, 0x7f, 0x0e, 0x26, 0x33, 0x75, 0xf5, 0x65, 0x43, 0xfc, 0x8e, 0x05, 0x93, + 0x99, 0x57, 0xa5, 0xd1, 0x57, 0x2c, 0x38, 0xe5, 0x77, 0x71, 0x44, 0x89, 0xcf, 0x7c, 0x18, 0x17, + 0x96, 0x32, 0x1f, 0xba, 0x61, 0x71, 0xd7, 0xda, 0xa8, 0x59, 0xc9, 0x5f, 0x9a, 0x74, 0x7c, 0x11, + 0xf7, 0x38, 0xc6, 0x53, 0xa4, 0x72, 0x18, 0x56, 0x58, 0xfb, 0x67, 0x16, 0x9c, 0xe8, 0x78, 0xb8, + 0xf8, 0xfd, 0xd2, 0x0d, 0x91, 0x0c, 0xb6, 0xd4, 0x23, 0x19, 0xac, 0xde, 0xcb, 0xf2, 0x81, 0xbd, + 0xfc, 0x4d, 0x0b, 0xc4, 0x0c, 0x3d, 0x06, 0x0d, 0x70, 0xd5, 0xd4, 0x00, 0x3f, 0x54, 0x64, 0xd2, + 0xf7, 0x50, 0xfd, 0xfe, 0xd4, 0x02, 0xc4, 0x09, 0xb2, 0x4f, 0x52, 0x72, 0x47, 0xa6, 0x66, 0xbc, + 0xa4, 0xab, 0x44, 0x61, 0xb0, 0x46, 0xd5, 0xe7, 0x9b, 0x02, 0xea, 0x21, 0xb7, 0xee, 0x0d, 0x43, + 0x17, 0x61, 0x54, 0x3c, 0xe4, 0x74, 0x23, 0x7d, 0xa4, 0x6d, 0x92, 0x3d, 0x18, 0x9a, 0x82, 0xb1, + 0x4e, 0x63, 0x7c, 0xad, 0x81, 0x03, 0xbf, 0xd6, 0x0f, 0xcb, 0x90, 0x0d, 0xf6, 0x41, 0x6f, 0xc1, + 0x58, 0xc3, 0x69, 0x39, 0xeb, 0x9e, 0xef, 0x25, 0x1e, 0x89, 0x8b, 0x1d, 0xbb, 0x2d, 0x69, 0x25, + 0x84, 0xd3, 0x5c, 0x83, 0x60, 0x83, 0x23, 0x9a, 0x03, 0x68, 0x45, 0xde, 0xb6, 0xe7, 0x93, 0x4d, + 0xa6, 0x9f, 0xb1, 0x68, 0x61, 0x7e, 0x82, 0x24, 0xa1, 0x58, 0xa3, 0xe8, 0x12, 0x5d, 0x5a, 0x3e, + 0x8e, 0xe8, 0xd2, 0x81, 0x3e, 0xa3, 0x4b, 0x07, 0x0b, 0x45, 0x97, 0x62, 0x38, 0x23, 0x7d, 0xdd, + 0xf4, 0xff, 0x8a, 0xe7, 0x13, 0x9e, 0x4c, 0x52, 0x44, 0x13, 0xcf, 0xec, 0xed, 0xce, 0x9e, 0xc1, + 0x5d, 0x29, 0x70, 0x8f, 0x92, 0x76, 0x1b, 0x4e, 0xd6, 0x49, 0xe4, 0xb1, 0x1c, 0x5f, 0x6e, 0xba, + 0xa8, 0x3f, 0x0f, 0x95, 0x28, 0x23, 0x4f, 0xfa, 0xbc, 0xec, 0xa9, 0x65, 0x85, 0x91, 0xf2, 0x23, + 0x65, 0x69, 0xff, 0x95, 0x12, 0x0c, 0x8b, 0xa0, 0xba, 0x63, 0xd8, 0x68, 0xaf, 0x19, 0x06, 0xf1, + 0x33, 0x79, 0x6b, 0x9d, 0x35, 0xab, 0xa7, 0x29, 0x5c, 0xcf, 0x98, 0xc2, 0xcf, 0x15, 0x63, 0x77, + 0xb0, 0x11, 0xfc, 0xe3, 0x12, 0x4c, 0x98, 0x41, 0x86, 0xc7, 0x30, 0x2c, 0xaf, 0xc3, 0x70, 0x2c, + 0x22, 0xf0, 0x4a, 0x45, 0x82, 0x63, 0xb2, 0x9f, 0x58, 0x79, 0x3d, 0x64, 0xcc, 0x9d, 0x64, 0xd7, + 0x35, 0xc8, 0xaf, 0x7c, 0x1c, 0x41, 0x7e, 0xf6, 0x8f, 0x98, 0x30, 0xd6, 0x07, 0xf2, 0x18, 0x36, + 0x93, 0xd7, 0x4c, 0xb1, 0x7d, 0xa1, 0xd0, 0x8c, 0x10, 0xcd, 0xeb, 0xb1, 0xa9, 0x7c, 0xcf, 0x82, + 0x51, 0x41, 0x78, 0x0c, 0x1d, 0xf8, 0xb4, 0xd9, 0x81, 0xa7, 0x0a, 0x75, 0xa0, 0x47, 0xcb, 0xbf, + 0x59, 0x52, 0x2d, 0xaf, 0x89, 0x07, 0x7e, 0x73, 0x73, 0x8d, 0x8e, 0xb4, 0xa2, 0x30, 0x09, 0x1b, + 0xa1, 0x2f, 0xd4, 0x88, 0xc7, 0xd2, 0x6b, 0x1d, 0x1c, 0xbe, 0xaf, 0xfd, 0xc6, 0x8a, 0x9a, 0xdd, + 0x3a, 0x08, 0xa3, 0x44, 0x6c, 0x6d, 0xdd, 0x9e, 0x17, 0x76, 0xe5, 0x03, 0xee, 0x14, 0x26, 0x6e, + 0x44, 0xf5, 0xff, 0x70, 0x71, 0x7a, 0x4f, 0x43, 0xf1, 0xc2, 0x1a, 0x5f, 0x19, 0x00, 0xcc, 0xea, + 0x18, 0x34, 0x3d, 0xd1, 0x37, 0x05, 0x1c, 0x2b, 0x0a, 0xfb, 0x65, 0x26, 0x73, 0xd9, 0x00, 0xf5, + 0x77, 0x85, 0xe2, 0x2f, 0x0f, 0xa9, 0xa1, 0x65, 0xee, 0xa5, 0x9b, 0xfa, 0x45, 0x8d, 0xa2, 0x82, + 0x8d, 0x36, 0x41, 0x0f, 0x25, 0x4c, 0xef, 0x75, 0x20, 0xd2, 0x71, 0x7c, 0xf1, 0x72, 0x61, 0x59, + 0xd9, 0xc7, 0x81, 0x05, 0x4b, 0xd0, 0xc4, 0xb2, 0xd2, 0xac, 0xd6, 0xb2, 0x19, 0x62, 0x97, 0x24, + 0x02, 0xa7, 0x34, 0x68, 0x5e, 0x98, 0x35, 0xe6, 0xfb, 0xcf, 0xd2, 0xac, 0x91, 0x43, 0xa2, 0xd9, + 0x35, 0x17, 0x61, 0x54, 0xe5, 0xc9, 0xaf, 0xf1, 0x74, 0xe7, 0x15, 0xae, 0xf9, 0x2c, 0xa7, 0x60, + 0xac, 0xd3, 0xa0, 0x55, 0x38, 0xe9, 0xaa, 0x78, 0xef, 0x5a, 0x7b, 0xdd, 0xf7, 0x1a, 0xb4, 0x28, + 0xbf, 0xab, 0xf5, 0xc8, 0xde, 0xee, 0xec, 0xc9, 0x6a, 0x27, 0x1a, 0x77, 0x2b, 0x83, 0xd6, 0x60, + 0x32, 0xe6, 0xef, 0x01, 0xc8, 0xa0, 0x5e, 0x91, 0x38, 0xf1, 0x59, 0x79, 0x6e, 0x52, 0x37, 0xd1, + 0xfb, 0x0c, 0xc4, 0xa5, 0x82, 0x0c, 0x03, 0xce, 0xb2, 0x40, 0xaf, 0xc2, 0x84, 0xaf, 0x3f, 0x76, + 0x56, 0x13, 0x61, 0xef, 0x2a, 0xc2, 0xc4, 0x78, 0x0a, 0xad, 0x86, 0x33, 0xd4, 0xe8, 0x75, 0x98, + 0xd6, 0x21, 0x22, 0x7b, 0x84, 0x13, 0x6c, 0x92, 0x58, 0x24, 0x22, 0x7f, 0x6c, 0x6f, 0x77, 0x76, + 0xfa, 0x7a, 0x0f, 0x1a, 0xdc, 0xb3, 0x34, 0xba, 0x0c, 0x63, 0x72, 0x24, 0xb5, 0x10, 0xf8, 0x34, + 0xb6, 0x49, 0xc3, 0x61, 0x83, 0xf2, 0xbd, 0x1d, 0x0f, 0x7d, 0x91, 0x16, 0xd6, 0x36, 0x57, 0xf4, + 0x36, 0x8c, 0xe9, 0x6d, 0xcc, 0xee, 0x9a, 0xf9, 0x0f, 0xc8, 0x89, 0x4d, 0x5a, 0xb5, 0x5c, 0xc7, + 0x61, 0x83, 0xb7, 0x7d, 0x0b, 0x86, 0xea, 0x3b, 0x71, 0x23, 0xf1, 0x1f, 0xd6, 0xd3, 0xdf, 0x04, + 0x26, 0x33, 0x6f, 0x64, 0xab, 0xe7, 0xd6, 0xad, 0x87, 0xf7, 0xdc, 0xba, 0xfd, 0x47, 0x16, 0x0c, + 0xae, 0x39, 0x5e, 0xfe, 0x23, 0x1e, 0x45, 0x1a, 0x8d, 0x5e, 0x82, 0x21, 0xb2, 0xb1, 0x41, 0x1a, + 0xf2, 0xf9, 0x76, 0x19, 0x2e, 0x3b, 0xb4, 0xcc, 0xa0, 0x74, 0x71, 0xb2, 0xca, 0xf8, 0x5f, 0x2c, + 0x88, 0xd1, 0xe7, 0xa0, 0x92, 0x78, 0x4d, 0xb2, 0xe0, 0xba, 0xc4, 0x3d, 0xc4, 0x2d, 0x55, 0x25, + 0x2c, 0xd6, 0x24, 0x13, 0x9c, 0xf2, 0xb3, 0xbf, 0x5e, 0x02, 0x58, 0x0b, 0x7d, 0x79, 0xb0, 0x96, + 0xd3, 0xcd, 0xc5, 0x8e, 0xb7, 0x4a, 0x9e, 0xee, 0xf2, 0x56, 0x09, 0x4a, 0x19, 0x76, 0x79, 0xa9, + 0x44, 0x0d, 0x55, 0xb9, 0xd0, 0x50, 0x0d, 0xf4, 0x33, 0x54, 0x4b, 0x70, 0x22, 0x51, 0x75, 0x9b, + 0xd7, 0x7d, 0x58, 0x22, 0xb5, 0xb5, 0x2c, 0x12, 0x77, 0xd2, 0xdb, 0x5f, 0xb7, 0x40, 0x04, 0x4e, + 0x15, 0x98, 0xad, 0xae, 0x7c, 0xa4, 0xc0, 0xc8, 0x5d, 0xf3, 0x6c, 0x91, 0xeb, 0x5c, 0x22, 0x63, + 0x8d, 0x5a, 0x3f, 0x46, 0x9e, 0x1a, 0x83, 0xab, 0xfd, 0x5b, 0x16, 0x8c, 0x72, 0xf4, 0x0d, 0xa6, + 0xed, 0xe6, 0xb7, 0xab, 0xaf, 0x2c, 0x7d, 0x2c, 0x7f, 0x3f, 0x65, 0xac, 0xb2, 0xb5, 0xe9, 0xf9, + 0xfb, 0x25, 0x02, 0xa7, 0x34, 0xe8, 0x19, 0x18, 0x8e, 0xdb, 0xeb, 0x8c, 0x3c, 0x13, 0x45, 0x55, + 0xe7, 0x60, 0x2c, 0xf1, 0xf6, 0xaf, 0x20, 0x30, 0xba, 0x66, 0x64, 0x86, 0xb3, 0x1e, 0x7a, 0x66, + 0xb8, 0x37, 0x60, 0x84, 0x34, 0x5b, 0xc9, 0x4e, 0xd5, 0x8b, 0x8a, 0x65, 0xe9, 0x5c, 0x16, 0xd4, + 0x9d, 0xdc, 0x25, 0x06, 0x2b, 0x8e, 0x3d, 0xf2, 0xfc, 0x95, 0xdf, 0x17, 0x79, 0xfe, 0x06, 0x7e, + 0x2e, 0x79, 0xfe, 0x5e, 0x87, 0xe1, 0x4d, 0x2f, 0xc1, 0xa4, 0x15, 0x8a, 0xfb, 0xbf, 0x39, 0x87, + 0x9d, 0x57, 0x38, 0x71, 0x67, 0xf2, 0x2e, 0x81, 0xc0, 0x92, 0x1d, 0x5a, 0x83, 0x21, 0x6e, 0x21, + 0x89, 0xd4, 0x79, 0x1f, 0x29, 0xe2, 0x75, 0xea, 0xcc, 0x22, 0x27, 0x42, 0xe5, 0x04, 0x2f, 0x99, + 0xd7, 0x6f, 0xf8, 0xbd, 0xe7, 0xf5, 0x53, 0xd9, 0xf8, 0x46, 0x1e, 0x56, 0x36, 0x3e, 0x23, 0xab, + 0x61, 0xe5, 0x28, 0xb2, 0x1a, 0x7e, 0xdd, 0x82, 0xd3, 0xad, 0x6e, 0x39, 0x41, 0x45, 0x5e, 0xbd, + 0x4f, 0x1e, 0x22, 0x4b, 0xaa, 0x51, 0x35, 0xbb, 0x55, 0xd9, 0x95, 0x0c, 0x77, 0xaf, 0x58, 0xa6, + 0x47, 0x1c, 0x7d, 0xef, 0xe9, 0x11, 0x8f, 0x3a, 0x01, 0x5f, 0x9a, 0x2c, 0x71, 0xfc, 0x48, 0x92, + 0x25, 0x4e, 0x3c, 0xc4, 0x64, 0x89, 0x5a, 0x9a, 0xc3, 0xc9, 0x87, 0x9b, 0xe6, 0x70, 0x0b, 0x46, + 0xdd, 0xf0, 0x7e, 0x70, 0xdf, 0x89, 0xdc, 0x85, 0xda, 0xaa, 0xc8, 0xaa, 0x97, 0x93, 0xb8, 0xa5, + 0x9a, 0x16, 0x30, 0x6a, 0xe0, 0xee, 0xd5, 0x14, 0x89, 0x75, 0xd6, 0x22, 0xe1, 0xe3, 0x89, 0xf7, + 0x98, 0xf0, 0xd1, 0x48, 0x9b, 0x88, 0x8e, 0x22, 0x6d, 0xe2, 0x5b, 0x2c, 0x83, 0xc3, 0x86, 0xb7, + 0x79, 0xc3, 0x69, 0xb1, 0x5b, 0x87, 0xb9, 0x35, 0x2c, 0x49, 0xf2, 0xce, 0x1a, 0x14, 0x0a, 0xa7, + 0x4c, 0x3b, 0x13, 0x33, 0x9e, 0x3a, 0xee, 0xc4, 0x8c, 0xa7, 0x8f, 0x30, 0x31, 0xe3, 0x99, 0x63, + 0x4d, 0xcc, 0xf8, 0xc8, 0xcf, 0x25, 0x31, 0xe3, 0x5f, 0x80, 0xb3, 0x07, 0x7f, 0x8e, 0x34, 0xf5, + 0x77, 0x2d, 0x75, 0x6b, 0x64, 0x52, 0x7f, 0x33, 0x55, 0x47, 0xa3, 0x2a, 0x9c, 0x1d, 0xee, 0x3b, + 0x16, 0x3c, 0xd2, 0x23, 0x79, 0x52, 0xe1, 0x2b, 0x2c, 0x2d, 0x98, 0x6c, 0x99, 0x45, 0x0b, 0x5f, + 0x3a, 0x33, 0x92, 0x35, 0xa9, 0x70, 0xc8, 0x0c, 0x02, 0x67, 0xd9, 0x2f, 0x7e, 0xe8, 0x27, 0xef, + 0x9e, 0xfd, 0xc0, 0x4f, 0xdf, 0x3d, 0xfb, 0x81, 0x3f, 0x7c, 0xf7, 0xec, 0x07, 0x7e, 0x69, 0xef, + 0xac, 0xf5, 0x93, 0xbd, 0xb3, 0xd6, 0x4f, 0xf7, 0xce, 0x5a, 0x7f, 0xbc, 0x77, 0xd6, 0xfa, 0xfa, + 0xcf, 0xce, 0x7e, 0xe0, 0xb3, 0xa5, 0xed, 0x8b, 0xff, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x2d, 0xbf, + 0x75, 0xcb, 0xf1, 0xbc, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/api/v1/generated.proto b/staging/src/k8s.io/client-go/pkg/api/v1/generated.proto index afabdab4a89..bdbf0075157 100644 --- a/staging/src/k8s.io/client-go/pkg/api/v1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/api/v1/generated.proto @@ -26,6 +26,7 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1"; @@ -2495,6 +2496,21 @@ message PodSpec { // +optional repeated Volume volumes = 1; + // List of initialization containers belonging to the pod. + // Init containers are executed in order prior to containers being started. If any + // init container fails, the pod is considered to have failed and is handled according + // to its restartPolicy. The name for an init container or normal container must be + // unique among all containers. + // Init containers may not have Lifecycle actions, Readiness probes, or Liveness probes. + // The resourceRequirements of an init container are taken into account during scheduling + // by finding the highest request/limit for each resource type, and then using the max of + // of that value or the sum of the normal containers. Limits are applied to init containers + // in a similar fashion. + // Init containers cannot currently be added or removed. + // Cannot be updated. + // More info: http://kubernetes.io/docs/user-guide/containers + repeated Container initContainers = 20; + // List of containers belonging to the pod. // Containers cannot currently be added or removed. // There must be at least one container in a Pod. @@ -2641,6 +2657,12 @@ message PodStatus { // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.Time startTime = 7; + // The list has one entry per init container in the manifest. The most recent successful + // init container will have ready = true, the most recently started container will have + // startTime set. + // More info: http://kubernetes.io/docs/user-guide/pod-states#container-statuses + repeated ContainerStatus initContainerStatuses = 10; + // The list has one entry per container in the manifest. Each entry is currently the output // of `docker inspect`. // More info: http://kubernetes.io/docs/user-guide/pod-states#container-statuses diff --git a/staging/src/k8s.io/client-go/pkg/api/v1/helpers.go b/staging/src/k8s.io/client-go/pkg/api/v1/helpers.go index 57468707996..564671a5a21 100644 --- a/staging/src/k8s.io/client-go/pkg/api/v1/helpers.go +++ b/staging/src/k8s.io/client-go/pkg/api/v1/helpers.go @@ -21,12 +21,12 @@ import ( "fmt" "strings" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/selection" "k8s.io/apimachinery/pkg/types" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/client-go/pkg/api" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) // IsOpaqueIntResourceName returns true if the resource name has the opaque @@ -271,6 +271,11 @@ const ( // is at-your-own-risk. Pods that attempt to set an unsafe sysctl that is not enabled for a kubelet // will fail to launch. UnsafeSysctlsPodAnnotationKey string = "security.alpha.kubernetes.io/unsafe-sysctls" + + // ObjectTTLAnnotations represents a suggestion for kubelet for how long it can cache + // an object (e.g. secret, config map) before fetching it again from apiserver. + // This annotation can be attached to node. + ObjectTTLAnnotationKey string = "node.alpha.kubernetes.io/ttl" ) // GetTolerationsFromPodAnnotations gets the json serialized tolerations data from Pod.Annotations @@ -286,6 +291,10 @@ func GetTolerationsFromPodAnnotations(annotations map[string]string) ([]Tolerati return tolerations, nil } +func GetPodTolerations(pod *Pod) ([]Toleration, error) { + return GetTolerationsFromPodAnnotations(pod.Annotations) +} + // GetTaintsFromNodeAnnotations gets the json serialized taints data from Pod.Annotations // and converts it to the []Taint type in api. func GetTaintsFromNodeAnnotations(annotations map[string]string) ([]Taint, error) { @@ -299,35 +308,119 @@ func GetTaintsFromNodeAnnotations(annotations map[string]string) ([]Taint, error return taints, nil } -// TolerationToleratesTaint checks if the toleration tolerates the taint. -func TolerationToleratesTaint(toleration *Toleration, taint *Taint) bool { - if len(toleration.Effect) != 0 && toleration.Effect != taint.Effect { +func GetNodeTaints(node *Node) ([]Taint, error) { + return GetTaintsFromNodeAnnotations(node.Annotations) +} + +// ToleratesTaint checks if the toleration tolerates the taint. +// The matching follows the rules below: +// (1) Empty toleration.effect means to match all taint effects, +// otherwise taint effect must equal to toleration.effect. +// (2) If toleration.operator is 'Exists', it means to match all taint values. +// (3) Empty toleration.key means to match all taint keys. +// If toleration.key is empty, toleration.operator must be 'Exists'; +// this combination means to match all taint values and all taint keys. +func (t *Toleration) ToleratesTaint(taint *Taint) bool { + if len(t.Effect) > 0 && t.Effect != taint.Effect { return false } - if toleration.Key != taint.Key { + if len(t.Key) > 0 && t.Key != taint.Key { return false } + // TODO: Use proper defaulting when Toleration becomes a field of PodSpec - if (len(toleration.Operator) == 0 || toleration.Operator == TolerationOpEqual) && toleration.Value == taint.Value { + switch t.Operator { + // empty operator means Equal + case "", TolerationOpEqual: + return t.Value == taint.Value + case TolerationOpExists: return true + default: + return false } - if toleration.Operator == TolerationOpExists { - return true +} + +// TolerationsTolerateTaint checks if taint is tolerated by any of the tolerations. +func TolerationsTolerateTaint(tolerations []Toleration, taint *Taint) bool { + for i := range tolerations { + if tolerations[i].ToleratesTaint(taint) { + return true + } } return false } -// TaintToleratedByTolerations checks if taint is tolerated by any of the tolerations. -func TaintToleratedByTolerations(taint *Taint, tolerations []Toleration) bool { - tolerated := false - for i := range tolerations { - if TolerationToleratesTaint(&tolerations[i], taint) { - tolerated = true - break +type taintsFilterFunc func(*Taint) bool + +// TolerationsTolerateTaintsWithFilter checks if given tolerations tolerates +// all the taints that apply to the filter in given taint list. +func TolerationsTolerateTaintsWithFilter(tolerations []Toleration, taints []Taint, applyFilter taintsFilterFunc) bool { + if len(taints) == 0 { + return true + } + + for i := range taints { + if applyFilter != nil && !applyFilter(&taints[i]) { + continue + } + + if !TolerationsTolerateTaint(tolerations, &taints[i]) { + return false } } - return tolerated + + return true +} + +// DeleteTaintsByKey removes all the taints that have the same key to given taintKey +func DeleteTaintsByKey(taints []Taint, taintKey string) ([]Taint, bool) { + newTaints := []Taint{} + deleted := false + for i := range taints { + if taintKey == taints[i].Key { + deleted = true + continue + } + newTaints = append(newTaints, taints[i]) + } + return newTaints, deleted +} + +// DeleteTaint removes all the the taints that have the same key and effect to given taintToDelete. +func DeleteTaint(taints []Taint, taintToDelete *Taint) ([]Taint, bool) { + newTaints := []Taint{} + deleted := false + for i := range taints { + if taintToDelete.MatchTaint(taints[i]) { + deleted = true + continue + } + newTaints = append(newTaints, taints[i]) + } + return newTaints, deleted +} + +// Returns true and list of Tolerations matching all Taints if all are tolerated, or false otherwise. +func GetMatchingTolerations(taints []Taint, tolerations []Toleration) (bool, []Toleration) { + if len(tolerations) == 0 && len(taints) > 0 { + return false, []Toleration{} + } + result := []Toleration{} + for i := range taints { + tolerated := false + for j := range tolerations { + if tolerations[j].ToleratesTaint(&taints[i]) { + result = append(result, tolerations[j]) + tolerated = true + break + } + } + if !tolerated { + return false, []Toleration{} + } + } + return true, result } // MatchTaint checks if the taint matches taintToMatch. Taints are unique by key:effect, diff --git a/staging/src/k8s.io/client-go/pkg/api/v1/types.generated.go b/staging/src/k8s.io/client-go/pkg/api/v1/types.generated.go index 481fe7f8abc..d55799df849 100644 --- a/staging/src/k8s.io/client-go/pkg/api/v1/types.generated.go +++ b/staging/src/k8s.io/client-go/pkg/api/v1/types.generated.go @@ -30703,30 +30703,31 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [19]bool + var yyq2 [20]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = len(x.Volumes) != 0 - yyq2[2] = x.RestartPolicy != "" - yyq2[3] = x.TerminationGracePeriodSeconds != nil - yyq2[4] = x.ActiveDeadlineSeconds != nil - yyq2[5] = x.DNSPolicy != "" - yyq2[6] = len(x.NodeSelector) != 0 - yyq2[7] = x.ServiceAccountName != "" - yyq2[8] = x.DeprecatedServiceAccount != "" - yyq2[9] = x.NodeName != "" - yyq2[10] = x.HostNetwork != false - yyq2[11] = x.HostPID != false - yyq2[12] = x.HostIPC != false - yyq2[13] = x.SecurityContext != nil - yyq2[14] = len(x.ImagePullSecrets) != 0 - yyq2[15] = x.Hostname != "" - yyq2[16] = x.Subdomain != "" - yyq2[17] = x.Affinity != nil - yyq2[18] = x.SchedulerName != "" + yyq2[1] = len(x.InitContainers) != 0 + yyq2[3] = x.RestartPolicy != "" + yyq2[4] = x.TerminationGracePeriodSeconds != nil + yyq2[5] = x.ActiveDeadlineSeconds != nil + yyq2[6] = x.DNSPolicy != "" + yyq2[7] = len(x.NodeSelector) != 0 + yyq2[8] = x.ServiceAccountName != "" + yyq2[9] = x.DeprecatedServiceAccount != "" + yyq2[10] = x.NodeName != "" + yyq2[11] = x.HostNetwork != false + yyq2[12] = x.HostPID != false + yyq2[13] = x.HostIPC != false + yyq2[14] = x.SecurityContext != nil + yyq2[15] = len(x.ImagePullSecrets) != 0 + yyq2[16] = x.Hostname != "" + yyq2[17] = x.Subdomain != "" + yyq2[18] = x.Affinity != nil + yyq2[19] = x.SchedulerName != "" var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(19) + r.EncodeArrayStart(20) } else { yynn2 = 1 for _, b := range yyq2 { @@ -30770,13 +30771,46 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.InitContainers == nil { + r.EncodeNil() + } else { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + h.encSliceContainer(([]Container)(x.InitContainers), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("initContainers")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.InitContainers == nil { + r.EncodeNil() + } else { + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + h.encSliceContainer(([]Container)(x.InitContainers), e) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) if x.Containers == nil { r.EncodeNil() } else { - yym7 := z.EncBinary() - _ = yym7 + yym10 := z.EncBinary() + _ = yym10 if false { } else { h.encSliceContainer(([]Container)(x.Containers), e) @@ -30789,8 +30823,8 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { if x.Containers == nil { r.EncodeNil() } else { - yym8 := z.EncBinary() - _ = yym8 + yym11 := z.EncBinary() + _ = yym11 if false { } else { h.encSliceContainer(([]Container)(x.Containers), e) @@ -30799,13 +30833,13 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[2] { + if yyq2[3] { x.RestartPolicy.CodecEncodeSelf(e) } else { r.EncodeString(codecSelferC_UTF81234, "") } } else { - if yyq2[2] { + if yyq2[3] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("restartPolicy")) z.EncSendContainerState(codecSelfer_containerMapValue1234) @@ -30814,46 +30848,30 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[3] { + if yyq2[4] { if x.TerminationGracePeriodSeconds == nil { r.EncodeNil() } else { - yy13 := *x.TerminationGracePeriodSeconds - yym14 := z.EncBinary() - _ = yym14 + yy16 := *x.TerminationGracePeriodSeconds + yym17 := z.EncBinary() + _ = yym17 if false { } else { - r.EncodeInt(int64(yy13)) + r.EncodeInt(int64(yy16)) } } } else { r.EncodeNil() } } else { - if yyq2[3] { + if yyq2[4] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("terminationGracePeriodSeconds")) z.EncSendContainerState(codecSelfer_containerMapValue1234) if x.TerminationGracePeriodSeconds == nil { r.EncodeNil() } else { - yy15 := *x.TerminationGracePeriodSeconds - yym16 := z.EncBinary() - _ = yym16 - if false { - } else { - r.EncodeInt(int64(yy15)) - } - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[4] { - if x.ActiveDeadlineSeconds == nil { - r.EncodeNil() - } else { - yy18 := *x.ActiveDeadlineSeconds + yy18 := *x.TerminationGracePeriodSeconds yym19 := z.EncBinary() _ = yym19 if false { @@ -30861,36 +30879,52 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeInt(int64(yy18)) } } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[5] { + if x.ActiveDeadlineSeconds == nil { + r.EncodeNil() + } else { + yy21 := *x.ActiveDeadlineSeconds + yym22 := z.EncBinary() + _ = yym22 + if false { + } else { + r.EncodeInt(int64(yy21)) + } + } } else { r.EncodeNil() } } else { - if yyq2[4] { + if yyq2[5] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("activeDeadlineSeconds")) z.EncSendContainerState(codecSelfer_containerMapValue1234) if x.ActiveDeadlineSeconds == nil { r.EncodeNil() } else { - yy20 := *x.ActiveDeadlineSeconds - yym21 := z.EncBinary() - _ = yym21 + yy23 := *x.ActiveDeadlineSeconds + yym24 := z.EncBinary() + _ = yym24 if false { } else { - r.EncodeInt(int64(yy20)) + r.EncodeInt(int64(yy23)) } } } } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[5] { + if yyq2[6] { x.DNSPolicy.CodecEncodeSelf(e) } else { r.EncodeString(codecSelferC_UTF81234, "") } } else { - if yyq2[5] { + if yyq2[6] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("dnsPolicy")) z.EncSendContainerState(codecSelfer_containerMapValue1234) @@ -30899,12 +30933,12 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[6] { + if yyq2[7] { if x.NodeSelector == nil { r.EncodeNil() } else { - yym26 := z.EncBinary() - _ = yym26 + yym29 := z.EncBinary() + _ = yym29 if false { } else { z.F.EncMapStringStringV(x.NodeSelector, false, e) @@ -30914,15 +30948,15 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeNil() } } else { - if yyq2[6] { + if yyq2[7] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("nodeSelector")) z.EncSendContainerState(codecSelfer_containerMapValue1234) if x.NodeSelector == nil { r.EncodeNil() } else { - yym27 := z.EncBinary() - _ = yym27 + yym30 := z.EncBinary() + _ = yym30 if false { } else { z.F.EncMapStringStringV(x.NodeSelector, false, e) @@ -30930,31 +30964,6 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[7] { - yym29 := z.EncBinary() - _ = yym29 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.ServiceAccountName)) - } - } else { - r.EncodeString(codecSelferC_UTF81234, "") - } - } else { - if yyq2[7] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("serviceAccountName")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym30 := z.EncBinary() - _ = yym30 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.ServiceAccountName)) - } - } - } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) if yyq2[8] { @@ -30962,7 +30971,7 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { _ = yym32 if false { } else { - r.EncodeString(codecSelferC_UTF81234, string(x.DeprecatedServiceAccount)) + r.EncodeString(codecSelferC_UTF81234, string(x.ServiceAccountName)) } } else { r.EncodeString(codecSelferC_UTF81234, "") @@ -30970,13 +30979,13 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { if yyq2[8] { z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("serviceAccount")) + r.EncodeString(codecSelferC_UTF81234, string("serviceAccountName")) z.EncSendContainerState(codecSelfer_containerMapValue1234) yym33 := z.EncBinary() _ = yym33 if false { } else { - r.EncodeString(codecSelferC_UTF81234, string(x.DeprecatedServiceAccount)) + r.EncodeString(codecSelferC_UTF81234, string(x.ServiceAccountName)) } } } @@ -30987,7 +30996,7 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { _ = yym35 if false { } else { - r.EncodeString(codecSelferC_UTF81234, string(x.NodeName)) + r.EncodeString(codecSelferC_UTF81234, string(x.DeprecatedServiceAccount)) } } else { r.EncodeString(codecSelferC_UTF81234, "") @@ -30995,13 +31004,13 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { if yyq2[9] { z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("nodeName")) + r.EncodeString(codecSelferC_UTF81234, string("serviceAccount")) z.EncSendContainerState(codecSelfer_containerMapValue1234) yym36 := z.EncBinary() _ = yym36 if false { } else { - r.EncodeString(codecSelferC_UTF81234, string(x.NodeName)) + r.EncodeString(codecSelferC_UTF81234, string(x.DeprecatedServiceAccount)) } } } @@ -31012,21 +31021,21 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { _ = yym38 if false { } else { - r.EncodeBool(bool(x.HostNetwork)) + r.EncodeString(codecSelferC_UTF81234, string(x.NodeName)) } } else { - r.EncodeBool(false) + r.EncodeString(codecSelferC_UTF81234, "") } } else { if yyq2[10] { z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("hostNetwork")) + r.EncodeString(codecSelferC_UTF81234, string("nodeName")) z.EncSendContainerState(codecSelfer_containerMapValue1234) yym39 := z.EncBinary() _ = yym39 if false { } else { - r.EncodeBool(bool(x.HostNetwork)) + r.EncodeString(codecSelferC_UTF81234, string(x.NodeName)) } } } @@ -31037,7 +31046,7 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { _ = yym41 if false { } else { - r.EncodeBool(bool(x.HostPID)) + r.EncodeBool(bool(x.HostNetwork)) } } else { r.EncodeBool(false) @@ -31045,13 +31054,13 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { if yyq2[11] { z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("hostPID")) + r.EncodeString(codecSelferC_UTF81234, string("hostNetwork")) z.EncSendContainerState(codecSelfer_containerMapValue1234) yym42 := z.EncBinary() _ = yym42 if false { } else { - r.EncodeBool(bool(x.HostPID)) + r.EncodeBool(bool(x.HostNetwork)) } } } @@ -31062,7 +31071,7 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { _ = yym44 if false { } else { - r.EncodeBool(bool(x.HostIPC)) + r.EncodeBool(bool(x.HostPID)) } } else { r.EncodeBool(false) @@ -31070,11 +31079,36 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { if yyq2[12] { z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("hostIPC")) + r.EncodeString(codecSelferC_UTF81234, string("hostPID")) z.EncSendContainerState(codecSelfer_containerMapValue1234) yym45 := z.EncBinary() _ = yym45 if false { + } else { + r.EncodeBool(bool(x.HostPID)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[13] { + yym47 := z.EncBinary() + _ = yym47 + if false { + } else { + r.EncodeBool(bool(x.HostIPC)) + } + } else { + r.EncodeBool(false) + } + } else { + if yyq2[13] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("hostIPC")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym48 := z.EncBinary() + _ = yym48 + if false { } else { r.EncodeBool(bool(x.HostIPC)) } @@ -31082,7 +31116,7 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[13] { + if yyq2[14] { if x.SecurityContext == nil { r.EncodeNil() } else { @@ -31092,7 +31126,7 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeNil() } } else { - if yyq2[13] { + if yyq2[14] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("securityContext")) z.EncSendContainerState(codecSelfer_containerMapValue1234) @@ -31105,12 +31139,12 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[14] { + if yyq2[15] { if x.ImagePullSecrets == nil { r.EncodeNil() } else { - yym50 := z.EncBinary() - _ = yym50 + yym53 := z.EncBinary() + _ = yym53 if false { } else { h.encSliceLocalObjectReference(([]LocalObjectReference)(x.ImagePullSecrets), e) @@ -31120,15 +31154,15 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeNil() } } else { - if yyq2[14] { + if yyq2[15] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("imagePullSecrets")) z.EncSendContainerState(codecSelfer_containerMapValue1234) if x.ImagePullSecrets == nil { r.EncodeNil() } else { - yym51 := z.EncBinary() - _ = yym51 + yym54 := z.EncBinary() + _ = yym54 if false { } else { h.encSliceLocalObjectReference(([]LocalObjectReference)(x.ImagePullSecrets), e) @@ -31136,31 +31170,6 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[15] { - yym53 := z.EncBinary() - _ = yym53 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Hostname)) - } - } else { - r.EncodeString(codecSelferC_UTF81234, "") - } - } else { - if yyq2[15] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("hostname")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym54 := z.EncBinary() - _ = yym54 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Hostname)) - } - } - } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) if yyq2[16] { @@ -31168,7 +31177,7 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { _ = yym56 if false { } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Subdomain)) + r.EncodeString(codecSelferC_UTF81234, string(x.Hostname)) } } else { r.EncodeString(codecSelferC_UTF81234, "") @@ -31176,11 +31185,36 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { if yyq2[16] { z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("subdomain")) + r.EncodeString(codecSelferC_UTF81234, string("hostname")) z.EncSendContainerState(codecSelfer_containerMapValue1234) yym57 := z.EncBinary() _ = yym57 if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Hostname)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[17] { + yym59 := z.EncBinary() + _ = yym59 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Subdomain)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[17] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("subdomain")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym60 := z.EncBinary() + _ = yym60 + if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.Subdomain)) } @@ -31188,7 +31222,7 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[17] { + if yyq2[18] { if x.Affinity == nil { r.EncodeNil() } else { @@ -31198,7 +31232,7 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeNil() } } else { - if yyq2[17] { + if yyq2[18] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("affinity")) z.EncSendContainerState(codecSelfer_containerMapValue1234) @@ -31211,9 +31245,9 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[18] { - yym62 := z.EncBinary() - _ = yym62 + if yyq2[19] { + yym65 := z.EncBinary() + _ = yym65 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.SchedulerName)) @@ -31222,12 +31256,12 @@ func (x *PodSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeString(codecSelferC_UTF81234, "") } } else { - if yyq2[18] { + if yyq2[19] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("schedulername")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym63 := z.EncBinary() - _ = yym63 + yym66 := z.EncBinary() + _ = yym66 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.SchedulerName)) @@ -31307,11 +31341,11 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { h.decSliceVolume((*[]Volume)(yyv4), d) } } - case "containers": + case "initContainers": if r.TryDecodeAsNil() { - x.Containers = nil + x.InitContainers = nil } else { - yyv6 := &x.Containers + yyv6 := &x.InitContainers yym7 := z.DecBinary() _ = yym7 if false { @@ -31319,12 +31353,24 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { h.decSliceContainer((*[]Container)(yyv6), d) } } + case "containers": + if r.TryDecodeAsNil() { + x.Containers = nil + } else { + yyv8 := &x.Containers + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + h.decSliceContainer((*[]Container)(yyv8), d) + } + } case "restartPolicy": if r.TryDecodeAsNil() { x.RestartPolicy = "" } else { - yyv8 := &x.RestartPolicy - yyv8.CodecDecodeSelf(d) + yyv10 := &x.RestartPolicy + yyv10.CodecDecodeSelf(d) } case "terminationGracePeriodSeconds": if r.TryDecodeAsNil() { @@ -31335,8 +31381,8 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { if x.TerminationGracePeriodSeconds == nil { x.TerminationGracePeriodSeconds = new(int64) } - yym10 := z.DecBinary() - _ = yym10 + yym12 := z.DecBinary() + _ = yym12 if false { } else { *((*int64)(x.TerminationGracePeriodSeconds)) = int64(r.DecodeInt(64)) @@ -31351,8 +31397,8 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { if x.ActiveDeadlineSeconds == nil { x.ActiveDeadlineSeconds = new(int64) } - yym12 := z.DecBinary() - _ = yym12 + yym14 := z.DecBinary() + _ = yym14 if false { } else { *((*int64)(x.ActiveDeadlineSeconds)) = int64(r.DecodeInt(64)) @@ -31362,38 +31408,26 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.DNSPolicy = "" } else { - yyv13 := &x.DNSPolicy - yyv13.CodecDecodeSelf(d) + yyv15 := &x.DNSPolicy + yyv15.CodecDecodeSelf(d) } case "nodeSelector": if r.TryDecodeAsNil() { x.NodeSelector = nil } else { - yyv14 := &x.NodeSelector - yym15 := z.DecBinary() - _ = yym15 + yyv16 := &x.NodeSelector + yym17 := z.DecBinary() + _ = yym17 if false { } else { - z.F.DecMapStringStringX(yyv14, false, d) + z.F.DecMapStringStringX(yyv16, false, d) } } case "serviceAccountName": if r.TryDecodeAsNil() { x.ServiceAccountName = "" } else { - yyv16 := &x.ServiceAccountName - yym17 := z.DecBinary() - _ = yym17 - if false { - } else { - *((*string)(yyv16)) = r.DecodeString() - } - } - case "serviceAccount": - if r.TryDecodeAsNil() { - x.DeprecatedServiceAccount = "" - } else { - yyv18 := &x.DeprecatedServiceAccount + yyv18 := &x.ServiceAccountName yym19 := z.DecBinary() _ = yym19 if false { @@ -31401,11 +31435,11 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { *((*string)(yyv18)) = r.DecodeString() } } - case "nodeName": + case "serviceAccount": if r.TryDecodeAsNil() { - x.NodeName = "" + x.DeprecatedServiceAccount = "" } else { - yyv20 := &x.NodeName + yyv20 := &x.DeprecatedServiceAccount yym21 := z.DecBinary() _ = yym21 if false { @@ -31413,23 +31447,23 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { *((*string)(yyv20)) = r.DecodeString() } } - case "hostNetwork": + case "nodeName": if r.TryDecodeAsNil() { - x.HostNetwork = false + x.NodeName = "" } else { - yyv22 := &x.HostNetwork + yyv22 := &x.NodeName yym23 := z.DecBinary() _ = yym23 if false { } else { - *((*bool)(yyv22)) = r.DecodeBool() + *((*string)(yyv22)) = r.DecodeString() } } - case "hostPID": + case "hostNetwork": if r.TryDecodeAsNil() { - x.HostPID = false + x.HostNetwork = false } else { - yyv24 := &x.HostPID + yyv24 := &x.HostNetwork yym25 := z.DecBinary() _ = yym25 if false { @@ -31437,11 +31471,11 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { *((*bool)(yyv24)) = r.DecodeBool() } } - case "hostIPC": + case "hostPID": if r.TryDecodeAsNil() { - x.HostIPC = false + x.HostPID = false } else { - yyv26 := &x.HostIPC + yyv26 := &x.HostPID yym27 := z.DecBinary() _ = yym27 if false { @@ -31449,6 +31483,18 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { *((*bool)(yyv26)) = r.DecodeBool() } } + case "hostIPC": + if r.TryDecodeAsNil() { + x.HostIPC = false + } else { + yyv28 := &x.HostIPC + yym29 := z.DecBinary() + _ = yym29 + if false { + } else { + *((*bool)(yyv28)) = r.DecodeBool() + } + } case "securityContext": if r.TryDecodeAsNil() { if x.SecurityContext != nil { @@ -31464,36 +31510,36 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.ImagePullSecrets = nil } else { - yyv29 := &x.ImagePullSecrets - yym30 := z.DecBinary() - _ = yym30 + yyv31 := &x.ImagePullSecrets + yym32 := z.DecBinary() + _ = yym32 if false { } else { - h.decSliceLocalObjectReference((*[]LocalObjectReference)(yyv29), d) + h.decSliceLocalObjectReference((*[]LocalObjectReference)(yyv31), d) } } case "hostname": if r.TryDecodeAsNil() { x.Hostname = "" } else { - yyv31 := &x.Hostname - yym32 := z.DecBinary() - _ = yym32 + yyv33 := &x.Hostname + yym34 := z.DecBinary() + _ = yym34 if false { } else { - *((*string)(yyv31)) = r.DecodeString() + *((*string)(yyv33)) = r.DecodeString() } } case "subdomain": if r.TryDecodeAsNil() { x.Subdomain = "" } else { - yyv33 := &x.Subdomain - yym34 := z.DecBinary() - _ = yym34 + yyv35 := &x.Subdomain + yym36 := z.DecBinary() + _ = yym36 if false { } else { - *((*string)(yyv33)) = r.DecodeString() + *((*string)(yyv35)) = r.DecodeString() } } case "affinity": @@ -31511,12 +31557,12 @@ func (x *PodSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.SchedulerName = "" } else { - yyv36 := &x.SchedulerName - yym37 := z.DecBinary() - _ = yym37 + yyv38 := &x.SchedulerName + yym39 := z.DecBinary() + _ = yym39 if false { } else { - *((*string)(yyv36)) = r.DecodeString() + *((*string)(yyv38)) = r.DecodeString() } } default: @@ -31530,16 +31576,16 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj38 int - var yyb38 bool - var yyhl38 bool = l >= 0 - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + var yyj40 int + var yyb40 bool + var yyhl40 bool = l >= 0 + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31547,21 +31593,43 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Volumes = nil } else { - yyv39 := &x.Volumes - yym40 := z.DecBinary() - _ = yym40 + yyv41 := &x.Volumes + yym42 := z.DecBinary() + _ = yym42 if false { } else { - h.decSliceVolume((*[]Volume)(yyv39), d) + h.decSliceVolume((*[]Volume)(yyv41), d) } } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.InitContainers = nil + } else { + yyv43 := &x.InitContainers + yym44 := z.DecBinary() + _ = yym44 + if false { + } else { + h.decSliceContainer((*[]Container)(yyv43), d) + } + } + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l + } else { + yyb40 = r.CheckBreak() + } + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31569,21 +31637,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Containers = nil } else { - yyv41 := &x.Containers - yym42 := z.DecBinary() - _ = yym42 + yyv45 := &x.Containers + yym46 := z.DecBinary() + _ = yym46 if false { } else { - h.decSliceContainer((*[]Container)(yyv41), d) + h.decSliceContainer((*[]Container)(yyv45), d) } } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31591,16 +31659,16 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.RestartPolicy = "" } else { - yyv43 := &x.RestartPolicy - yyv43.CodecDecodeSelf(d) + yyv47 := &x.RestartPolicy + yyv47.CodecDecodeSelf(d) } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31613,20 +31681,20 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.TerminationGracePeriodSeconds == nil { x.TerminationGracePeriodSeconds = new(int64) } - yym45 := z.DecBinary() - _ = yym45 + yym49 := z.DecBinary() + _ = yym49 if false { } else { *((*int64)(x.TerminationGracePeriodSeconds)) = int64(r.DecodeInt(64)) } } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31639,20 +31707,20 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.ActiveDeadlineSeconds == nil { x.ActiveDeadlineSeconds = new(int64) } - yym47 := z.DecBinary() - _ = yym47 + yym51 := z.DecBinary() + _ = yym51 if false { } else { *((*int64)(x.ActiveDeadlineSeconds)) = int64(r.DecodeInt(64)) } } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31660,16 +31728,16 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.DNSPolicy = "" } else { - yyv48 := &x.DNSPolicy - yyv48.CodecDecodeSelf(d) + yyv52 := &x.DNSPolicy + yyv52.CodecDecodeSelf(d) } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31677,21 +31745,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.NodeSelector = nil } else { - yyv49 := &x.NodeSelector - yym50 := z.DecBinary() - _ = yym50 + yyv53 := &x.NodeSelector + yym54 := z.DecBinary() + _ = yym54 if false { } else { - z.F.DecMapStringStringX(yyv49, false, d) + z.F.DecMapStringStringX(yyv53, false, d) } } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31699,51 +31767,7 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.ServiceAccountName = "" } else { - yyv51 := &x.ServiceAccountName - yym52 := z.DecBinary() - _ = yym52 - if false { - } else { - *((*string)(yyv51)) = r.DecodeString() - } - } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l - } else { - yyb38 = r.CheckBreak() - } - if yyb38 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.DeprecatedServiceAccount = "" - } else { - yyv53 := &x.DeprecatedServiceAccount - yym54 := z.DecBinary() - _ = yym54 - if false { - } else { - *((*string)(yyv53)) = r.DecodeString() - } - } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l - } else { - yyb38 = r.CheckBreak() - } - if yyb38 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.NodeName = "" - } else { - yyv55 := &x.NodeName + yyv55 := &x.ServiceAccountName yym56 := z.DecBinary() _ = yym56 if false { @@ -31751,13 +31775,57 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { *((*string)(yyv55)) = r.DecodeString() } } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.DeprecatedServiceAccount = "" + } else { + yyv57 := &x.DeprecatedServiceAccount + yym58 := z.DecBinary() + _ = yym58 + if false { + } else { + *((*string)(yyv57)) = r.DecodeString() + } + } + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l + } else { + yyb40 = r.CheckBreak() + } + if yyb40 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.NodeName = "" + } else { + yyv59 := &x.NodeName + yym60 := z.DecBinary() + _ = yym60 + if false { + } else { + *((*string)(yyv59)) = r.DecodeString() + } + } + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l + } else { + yyb40 = r.CheckBreak() + } + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31765,51 +31833,7 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.HostNetwork = false } else { - yyv57 := &x.HostNetwork - yym58 := z.DecBinary() - _ = yym58 - if false { - } else { - *((*bool)(yyv57)) = r.DecodeBool() - } - } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l - } else { - yyb38 = r.CheckBreak() - } - if yyb38 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.HostPID = false - } else { - yyv59 := &x.HostPID - yym60 := z.DecBinary() - _ = yym60 - if false { - } else { - *((*bool)(yyv59)) = r.DecodeBool() - } - } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l - } else { - yyb38 = r.CheckBreak() - } - if yyb38 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.HostIPC = false - } else { - yyv61 := &x.HostIPC + yyv61 := &x.HostNetwork yym62 := z.DecBinary() _ = yym62 if false { @@ -31817,13 +31841,57 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { *((*bool)(yyv61)) = r.DecodeBool() } } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.HostPID = false + } else { + yyv63 := &x.HostPID + yym64 := z.DecBinary() + _ = yym64 + if false { + } else { + *((*bool)(yyv63)) = r.DecodeBool() + } + } + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l + } else { + yyb40 = r.CheckBreak() + } + if yyb40 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.HostIPC = false + } else { + yyv65 := &x.HostIPC + yym66 := z.DecBinary() + _ = yym66 + if false { + } else { + *((*bool)(yyv65)) = r.DecodeBool() + } + } + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l + } else { + yyb40 = r.CheckBreak() + } + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31838,13 +31906,13 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.SecurityContext.CodecDecodeSelf(d) } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31852,21 +31920,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.ImagePullSecrets = nil } else { - yyv64 := &x.ImagePullSecrets - yym65 := z.DecBinary() - _ = yym65 + yyv68 := &x.ImagePullSecrets + yym69 := z.DecBinary() + _ = yym69 if false { } else { - h.decSliceLocalObjectReference((*[]LocalObjectReference)(yyv64), d) + h.decSliceLocalObjectReference((*[]LocalObjectReference)(yyv68), d) } } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31874,21 +31942,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Hostname = "" } else { - yyv66 := &x.Hostname - yym67 := z.DecBinary() - _ = yym67 + yyv70 := &x.Hostname + yym71 := z.DecBinary() + _ = yym71 if false { } else { - *((*string)(yyv66)) = r.DecodeString() + *((*string)(yyv70)) = r.DecodeString() } } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31896,21 +31964,21 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Subdomain = "" } else { - yyv68 := &x.Subdomain - yym69 := z.DecBinary() - _ = yym69 + yyv72 := &x.Subdomain + yym73 := z.DecBinary() + _ = yym73 if false { } else { - *((*string)(yyv68)) = r.DecodeString() + *((*string)(yyv72)) = r.DecodeString() } } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31925,13 +31993,13 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Affinity.CodecDecodeSelf(d) } - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -31939,26 +32007,26 @@ func (x *PodSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.SchedulerName = "" } else { - yyv71 := &x.SchedulerName - yym72 := z.DecBinary() - _ = yym72 + yyv75 := &x.SchedulerName + yym76 := z.DecBinary() + _ = yym76 if false { } else { - *((*string)(yyv71)) = r.DecodeString() + *((*string)(yyv75)) = r.DecodeString() } } for { - yyj38++ - if yyhl38 { - yyb38 = yyj38 > l + yyj40++ + if yyhl40 { + yyb40 = yyj40 > l } else { - yyb38 = r.CheckBreak() + yyb40 = r.CheckBreak() } - if yyb38 { + if yyb40 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj38-1, "") + z.DecStructFieldNotFound(yyj40-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -32482,7 +32550,7 @@ func (x *PodStatus) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [9]bool + var yyq2 [10]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.Phase != "" @@ -32492,11 +32560,12 @@ func (x *PodStatus) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[4] = x.HostIP != "" yyq2[5] = x.PodIP != "" yyq2[6] = x.StartTime != nil - yyq2[7] = len(x.ContainerStatuses) != 0 - yyq2[8] = x.QOSClass != "" + yyq2[7] = len(x.InitContainerStatuses) != 0 + yyq2[8] = len(x.ContainerStatuses) != 0 + yyq2[9] = x.QOSClass != "" var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(9) + r.EncodeArrayStart(10) } else { yynn2 = 0 for _, b := range yyq2 { @@ -32701,12 +32770,45 @@ func (x *PodStatus) CodecEncodeSelf(e *codec1978.Encoder) { if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) if yyq2[7] { - if x.ContainerStatuses == nil { + if x.InitContainerStatuses == nil { r.EncodeNil() } else { yym25 := z.EncBinary() _ = yym25 if false { + } else { + h.encSliceContainerStatus(([]ContainerStatus)(x.InitContainerStatuses), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[7] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("initContainerStatuses")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.InitContainerStatuses == nil { + r.EncodeNil() + } else { + yym26 := z.EncBinary() + _ = yym26 + if false { + } else { + h.encSliceContainerStatus(([]ContainerStatus)(x.InitContainerStatuses), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[8] { + if x.ContainerStatuses == nil { + r.EncodeNil() + } else { + yym28 := z.EncBinary() + _ = yym28 + if false { } else { h.encSliceContainerStatus(([]ContainerStatus)(x.ContainerStatuses), e) } @@ -32715,15 +32817,15 @@ func (x *PodStatus) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeNil() } } else { - if yyq2[7] { + if yyq2[8] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("containerStatuses")) z.EncSendContainerState(codecSelfer_containerMapValue1234) if x.ContainerStatuses == nil { r.EncodeNil() } else { - yym26 := z.EncBinary() - _ = yym26 + yym29 := z.EncBinary() + _ = yym29 if false { } else { h.encSliceContainerStatus(([]ContainerStatus)(x.ContainerStatuses), e) @@ -32733,13 +32835,13 @@ func (x *PodStatus) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[8] { + if yyq2[9] { x.QOSClass.CodecEncodeSelf(e) } else { r.EncodeString(codecSelferC_UTF81234, "") } } else { - if yyq2[8] { + if yyq2[9] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("qosClass")) z.EncSendContainerState(codecSelfer_containerMapValue1234) @@ -32895,11 +32997,11 @@ func (x *PodStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { z.DecFallback(x.StartTime, false) } } - case "containerStatuses": + case "initContainerStatuses": if r.TryDecodeAsNil() { - x.ContainerStatuses = nil + x.InitContainerStatuses = nil } else { - yyv17 := &x.ContainerStatuses + yyv17 := &x.InitContainerStatuses yym18 := z.DecBinary() _ = yym18 if false { @@ -32907,12 +33009,24 @@ func (x *PodStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { h.decSliceContainerStatus((*[]ContainerStatus)(yyv17), d) } } + case "containerStatuses": + if r.TryDecodeAsNil() { + x.ContainerStatuses = nil + } else { + yyv19 := &x.ContainerStatuses + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceContainerStatus((*[]ContainerStatus)(yyv19), d) + } + } case "qosClass": if r.TryDecodeAsNil() { x.QOSClass = "" } else { - yyv19 := &x.QOSClass - yyv19.CodecDecodeSelf(d) + yyv21 := &x.QOSClass + yyv21.CodecDecodeSelf(d) } default: z.DecStructFieldNotFound(-1, yys3) @@ -32925,16 +33039,16 @@ func (x *PodStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj20 int - var yyb20 bool - var yyhl20 bool = l >= 0 - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + var yyj22 int + var yyb22 bool + var yyhl22 bool = l >= 0 + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -32942,16 +33056,16 @@ func (x *PodStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Phase = "" } else { - yyv21 := &x.Phase - yyv21.CodecDecodeSelf(d) + yyv23 := &x.Phase + yyv23.CodecDecodeSelf(d) } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -32959,21 +33073,21 @@ func (x *PodStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Conditions = nil } else { - yyv22 := &x.Conditions - yym23 := z.DecBinary() - _ = yym23 + yyv24 := &x.Conditions + yym25 := z.DecBinary() + _ = yym25 if false { } else { - h.decSlicePodCondition((*[]PodCondition)(yyv22), d) + h.decSlicePodCondition((*[]PodCondition)(yyv24), d) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -32981,29 +33095,7 @@ func (x *PodStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Message = "" } else { - yyv24 := &x.Message - yym25 := z.DecBinary() - _ = yym25 - if false { - } else { - *((*string)(yyv24)) = r.DecodeString() - } - } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l - } else { - yyb20 = r.CheckBreak() - } - if yyb20 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.Reason = "" - } else { - yyv26 := &x.Reason + yyv26 := &x.Message yym27 := z.DecBinary() _ = yym27 if false { @@ -33011,21 +33103,21 @@ func (x *PodStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { *((*string)(yyv26)) = r.DecodeString() } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.HostIP = "" + x.Reason = "" } else { - yyv28 := &x.HostIP + yyv28 := &x.Reason yym29 := z.DecBinary() _ = yym29 if false { @@ -33033,21 +33125,21 @@ func (x *PodStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { *((*string)(yyv28)) = r.DecodeString() } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.PodIP = "" + x.HostIP = "" } else { - yyv30 := &x.PodIP + yyv30 := &x.HostIP yym31 := z.DecBinary() _ = yym31 if false { @@ -33055,13 +33147,35 @@ func (x *PodStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { *((*string)(yyv30)) = r.DecodeString() } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.PodIP = "" + } else { + yyv32 := &x.PodIP + yym33 := z.DecBinary() + _ = yym33 + if false { + } else { + *((*string)(yyv32)) = r.DecodeString() + } + } + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l + } else { + yyb22 = r.CheckBreak() + } + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -33074,25 +33188,47 @@ func (x *PodStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.StartTime == nil { x.StartTime = new(pkg2_v1.Time) } - yym33 := z.DecBinary() - _ = yym33 + yym35 := z.DecBinary() + _ = yym35 if false { } else if z.HasExtensions() && z.DecExt(x.StartTime) { - } else if yym33 { + } else if yym35 { z.DecBinaryUnmarshal(x.StartTime) - } else if !yym33 && z.IsJSONHandle() { + } else if !yym35 && z.IsJSONHandle() { z.DecJSONUnmarshal(x.StartTime) } else { z.DecFallback(x.StartTime, false) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.InitContainerStatuses = nil + } else { + yyv36 := &x.InitContainerStatuses + yym37 := z.DecBinary() + _ = yym37 + if false { + } else { + h.decSliceContainerStatus((*[]ContainerStatus)(yyv36), d) + } + } + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l + } else { + yyb22 = r.CheckBreak() + } + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -33100,21 +33236,21 @@ func (x *PodStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.ContainerStatuses = nil } else { - yyv34 := &x.ContainerStatuses - yym35 := z.DecBinary() - _ = yym35 + yyv38 := &x.ContainerStatuses + yym39 := z.DecBinary() + _ = yym39 if false { } else { - h.decSliceContainerStatus((*[]ContainerStatus)(yyv34), d) + h.decSliceContainerStatus((*[]ContainerStatus)(yyv38), d) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -33122,21 +33258,21 @@ func (x *PodStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.QOSClass = "" } else { - yyv36 := &x.QOSClass - yyv36.CodecDecodeSelf(d) + yyv40 := &x.QOSClass + yyv40.CodecDecodeSelf(d) } for { - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj20-1, "") + z.DecStructFieldNotFound(yyj22-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } diff --git a/staging/src/k8s.io/client-go/pkg/api/v1/types.go b/staging/src/k8s.io/client-go/pkg/api/v1/types.go index 393e95a5bfb..e90ef580e4e 100644 --- a/staging/src/k8s.io/client-go/pkg/api/v1/types.go +++ b/staging/src/k8s.io/client-go/pkg/api/v1/types.go @@ -2107,10 +2107,9 @@ type PodSpec struct { // of that value or the sum of the normal containers. Limits are applied to init containers // in a similar fashion. // Init containers cannot currently be added or removed. - // Init containers are in alpha state and may change without notice. // Cannot be updated. // More info: http://kubernetes.io/docs/user-guide/containers - InitContainers []Container `json:"-" patchStrategy:"merge" patchMergeKey:"name"` + InitContainers []Container `json:"initContainers,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,20,rep,name=initContainers"` // List of containers belonging to the pod. // Containers cannot currently be added or removed. // There must be at least one container in a Pod. @@ -2297,9 +2296,9 @@ type PodStatus struct { // The list has one entry per init container in the manifest. The most recent successful // init container will have ready = true, the most recently started container will have // startTime set. - // Init containers are in alpha state and may change without notice. // More info: http://kubernetes.io/docs/user-guide/pod-states#container-statuses - InitContainerStatuses []ContainerStatus `json:"-"` + InitContainerStatuses []ContainerStatus `json:"initContainerStatuses,omitempty" protobuf:"bytes,10,rep,name=initContainerStatuses"` + // The list has one entry per container in the manifest. Each entry is currently the output // of `docker inspect`. // More info: http://kubernetes.io/docs/user-guide/pod-states#container-statuses @@ -3220,7 +3219,8 @@ type NodeList struct { // FinalizerName is the name identifying a finalizer during namespace lifecycle. type FinalizerName string -// These are internal finalizer values to Kubernetes, must be qualified name unless defined here +// These are internal finalizer values to Kubernetes, must be qualified name unless defined here or +// in metav1. const ( FinalizerKubernetes FinalizerName = "kubernetes" ) diff --git a/staging/src/k8s.io/client-go/pkg/api/v1/types_swagger_doc_generated.go b/staging/src/k8s.io/client-go/pkg/api/v1/types_swagger_doc_generated.go index 26dbe387f4d..73504f7fdc9 100644 --- a/staging/src/k8s.io/client-go/pkg/api/v1/types_swagger_doc_generated.go +++ b/staging/src/k8s.io/client-go/pkg/api/v1/types_swagger_doc_generated.go @@ -1291,6 +1291,7 @@ func (PodSignature) SwaggerDoc() map[string]string { var map_PodSpec = map[string]string{ "": "PodSpec is a description of a pod.", "volumes": "List of volumes that can be mounted by containers belonging to the pod. More info: http://kubernetes.io/docs/user-guide/volumes", + "initContainers": "List of initialization containers belonging to the pod. Init containers are executed in order prior to containers being started. If any init container fails, the pod is considered to have failed and is handled according to its restartPolicy. The name for an init container or normal container must be unique among all containers. Init containers may not have Lifecycle actions, Readiness probes, or Liveness probes. The resourceRequirements of an init container are taken into account during scheduling by finding the highest request/limit for each resource type, and then using the max of of that value or the sum of the normal containers. Limits are applied to init containers in a similar fashion. Init containers cannot currently be added or removed. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/containers", "containers": "List of containers belonging to the pod. Containers cannot currently be added or removed. There must be at least one container in a Pod. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/containers", "restartPolicy": "Restart policy for all containers within the pod. One of Always, OnFailure, Never. Default to Always. More info: http://kubernetes.io/docs/user-guide/pod-states#restartpolicy", "terminationGracePeriodSeconds": "Optional duration in seconds the pod needs to terminate gracefully. May be decreased in delete request. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period will be used instead. The grace period is the duration in seconds after the processes running in the pod are sent a termination signal and the time when the processes are forcibly halted with a kill signal. Set this value longer than the expected cleanup time for your process. Defaults to 30 seconds.", @@ -1316,16 +1317,17 @@ func (PodSpec) SwaggerDoc() map[string]string { } var map_PodStatus = map[string]string{ - "": "PodStatus represents information about the status of a pod. Status may trail the actual state of a system.", - "phase": "Current condition of the pod. More info: http://kubernetes.io/docs/user-guide/pod-states#pod-phase", - "conditions": "Current service state of pod. More info: http://kubernetes.io/docs/user-guide/pod-states#pod-conditions", - "message": "A human readable message indicating details about why the pod is in this condition.", - "reason": "A brief CamelCase message indicating details about why the pod is in this state. e.g. 'OutOfDisk'", - "hostIP": "IP address of the host to which the pod is assigned. Empty if not yet scheduled.", - "podIP": "IP address allocated to the pod. Routable at least within the cluster. Empty if not yet allocated.", - "startTime": "RFC 3339 date and time at which the object was acknowledged by the Kubelet. This is before the Kubelet pulled the container image(s) for the pod.", - "containerStatuses": "The list has one entry per container in the manifest. Each entry is currently the output of `docker inspect`. More info: http://kubernetes.io/docs/user-guide/pod-states#container-statuses", - "qosClass": "The Quality of Service (QOS) classification assigned to the pod based on resource requirements See PodQOSClass type for available QOS classes More info: https://github.com/kubernetes/kubernetes/blob/master/docs/design/resource-qos.md", + "": "PodStatus represents information about the status of a pod. Status may trail the actual state of a system.", + "phase": "Current condition of the pod. More info: http://kubernetes.io/docs/user-guide/pod-states#pod-phase", + "conditions": "Current service state of pod. More info: http://kubernetes.io/docs/user-guide/pod-states#pod-conditions", + "message": "A human readable message indicating details about why the pod is in this condition.", + "reason": "A brief CamelCase message indicating details about why the pod is in this state. e.g. 'OutOfDisk'", + "hostIP": "IP address of the host to which the pod is assigned. Empty if not yet scheduled.", + "podIP": "IP address allocated to the pod. Routable at least within the cluster. Empty if not yet allocated.", + "startTime": "RFC 3339 date and time at which the object was acknowledged by the Kubelet. This is before the Kubelet pulled the container image(s) for the pod.", + "initContainerStatuses": "The list has one entry per init container in the manifest. The most recent successful init container will have ready = true, the most recently started container will have startTime set. More info: http://kubernetes.io/docs/user-guide/pod-states#container-statuses", + "containerStatuses": "The list has one entry per container in the manifest. Each entry is currently the output of `docker inspect`. More info: http://kubernetes.io/docs/user-guide/pod-states#container-statuses", + "qosClass": "The Quality of Service (QOS) classification assigned to the pod based on resource requirements See PodQOSClass type for available QOS classes More info: https://github.com/kubernetes/kubernetes/blob/master/docs/design/resource-qos.md", } func (PodStatus) SwaggerDoc() map[string]string { diff --git a/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/conversion.go b/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/conversion.go index 17bba4cebd8..b8b457b18da 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/conversion.go +++ b/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/conversion.go @@ -40,7 +40,7 @@ func addConversionFuncs(scheme *runtime.Scheme) error { return err } - return api.Scheme.AddFieldLabelConversionFunc("apps/v1beta1", "StatefulSet", + return scheme.AddFieldLabelConversionFunc("apps/v1beta1", "StatefulSet", func(label, value string) (string, string, error) { switch label { case "metadata.name", "metadata.namespace", "status.successful": diff --git a/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.pb.go index 6279cae8b17..3dd923420b6 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.pb.go @@ -1033,45 +1033,46 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 635 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x9c, 0x93, 0x4d, 0x6f, 0xd3, 0x4c, - 0x10, 0xc7, 0xe3, 0xa4, 0xe9, 0x93, 0x67, 0x53, 0xde, 0x96, 0x0a, 0x45, 0x15, 0x72, 0xab, 0x5c, - 0x08, 0x52, 0xbb, 0xa6, 0x2f, 0x40, 0xc5, 0xd1, 0x48, 0x20, 0x24, 0xa0, 0xc8, 0x41, 0x95, 0x28, - 0x20, 0xb1, 0x76, 0xa6, 0xe9, 0x12, 0xbf, 0xc9, 0x3b, 0x8e, 0xc4, 0x8d, 0x0b, 0x07, 0x6e, 0x7c, - 0x13, 0x6e, 0x7c, 0x86, 0x8a, 0x53, 0x8f, 0x9c, 0x2a, 0x1a, 0xbe, 0x08, 0xf2, 0x66, 0x13, 0x1b, - 0x39, 0x51, 0xab, 0xde, 0x3c, 0xbb, 0xf3, 0xff, 0xcd, 0xcc, 0x7f, 0xc7, 0xe4, 0xe1, 0x60, 0x57, - 0x32, 0x11, 0x59, 0x83, 0xd4, 0x85, 0x24, 0x04, 0x04, 0x69, 0xc5, 0x83, 0xbe, 0xc5, 0x63, 0x21, - 0x2d, 0x1e, 0xc7, 0xd2, 0x1a, 0x6e, 0xba, 0x80, 0x7c, 0xd3, 0xea, 0x43, 0x08, 0x09, 0x47, 0xe8, - 0xb1, 0x38, 0x89, 0x30, 0xa2, 0x77, 0xc6, 0x42, 0x96, 0x0b, 0x59, 0x3c, 0xe8, 0xb3, 0x4c, 0xc8, - 0x32, 0x21, 0xd3, 0xc2, 0x95, 0x8d, 0xbe, 0xc0, 0xa3, 0xd4, 0x65, 0x5e, 0x14, 0x58, 0xfd, 0xa8, - 0x1f, 0x59, 0x4a, 0xef, 0xa6, 0x87, 0x2a, 0x52, 0x81, 0xfa, 0x1a, 0x73, 0x57, 0x76, 0x74, 0x43, - 0x3c, 0x16, 0x01, 0xf7, 0x8e, 0x44, 0x08, 0xc9, 0xa7, 0xbc, 0xa5, 0x00, 0x90, 0x5b, 0xc3, 0x52, - 0x37, 0x2b, 0xd6, 0x3c, 0x55, 0x92, 0x86, 0x28, 0x02, 0x28, 0x09, 0x1e, 0x9c, 0x27, 0x90, 0xde, - 0x11, 0x04, 0xbc, 0xa4, 0xdb, 0x9e, 0xa7, 0x4b, 0x51, 0xf8, 0x96, 0x08, 0x51, 0x62, 0x52, 0x12, - 0xad, 0xcf, 0x35, 0x79, 0xc6, 0x2c, 0xed, 0xef, 0x55, 0xd2, 0xec, 0x22, 0x47, 0x38, 0x4c, 0xfd, - 0x2e, 0x20, 0xfd, 0x40, 0x1a, 0xd9, 0xd8, 0x3d, 0x8e, 0xbc, 0x65, 0xac, 0x19, 0x9d, 0xe6, 0xd6, - 0x3d, 0xa6, 0xcd, 0x2f, 0x76, 0x91, 0xdb, 0x9f, 0x65, 0xb3, 0xe1, 0x26, 0xdb, 0x73, 0x3f, 0x82, - 0x87, 0x2f, 0x00, 0xb9, 0x4d, 0x8f, 0x4f, 0x57, 0x2b, 0xa3, 0xd3, 0x55, 0x92, 0x9f, 0x39, 0x53, - 0x2a, 0x3d, 0x20, 0x0b, 0x32, 0x06, 0xaf, 0x55, 0x55, 0xf4, 0x5d, 0x76, 0xc1, 0xa7, 0x65, 0x85, - 0x2e, 0xbb, 0x31, 0x78, 0xf6, 0x92, 0xae, 0xb2, 0x90, 0x45, 0x8e, 0x62, 0x52, 0x97, 0x2c, 0x4a, - 0xe4, 0x98, 0xca, 0x56, 0x4d, 0xd1, 0x1f, 0x5d, 0x8a, 0xae, 0x08, 0xf6, 0x55, 0xcd, 0x5f, 0x1c, - 0xc7, 0x8e, 0x26, 0xb7, 0x7f, 0x1a, 0xe4, 0x5a, 0x21, 0xfb, 0xb9, 0x90, 0x48, 0xdf, 0x95, 0x5c, - 0x63, 0x17, 0x73, 0x2d, 0x53, 0x2b, 0xcf, 0xae, 0xeb, 0x6a, 0x8d, 0xc9, 0x49, 0xc1, 0xb1, 0x37, - 0xa4, 0x2e, 0x10, 0x02, 0xd9, 0xaa, 0xae, 0xd5, 0x3a, 0xcd, 0xad, 0x9d, 0xcb, 0x0c, 0x65, 0x5f, - 0xd1, 0x05, 0xea, 0xcf, 0x32, 0x94, 0x33, 0x26, 0xb6, 0x7f, 0xd4, 0xfe, 0x19, 0x26, 0xb3, 0x92, - 0x76, 0x48, 0x23, 0x81, 0xd8, 0x17, 0x1e, 0x97, 0x6a, 0x98, 0xba, 0xbd, 0x94, 0x35, 0xe6, 0xe8, - 0x33, 0x67, 0x7a, 0x4b, 0xdf, 0x93, 0x86, 0x04, 0x1f, 0x3c, 0x8c, 0x12, 0xfd, 0x9c, 0xdb, 0x17, - 0x1c, 0x9b, 0xbb, 0xe0, 0x77, 0xb5, 0x74, 0x8c, 0x9f, 0x44, 0xce, 0x14, 0x49, 0xdf, 0x92, 0x06, - 0x42, 0x10, 0xfb, 0x1c, 0x41, 0xbf, 0xe7, 0xc6, 0xfc, 0xd1, 0x33, 0xec, 0xab, 0xa8, 0xf7, 0x5a, - 0x0b, 0xd4, 0x8a, 0x4c, 0x4d, 0x9d, 0x9c, 0x3a, 0x53, 0x20, 0xfd, 0x62, 0x90, 0xe5, 0x61, 0xe4, - 0xa7, 0x01, 0x3c, 0xf6, 0xb9, 0x08, 0x26, 0x19, 0xb2, 0xb5, 0xa0, 0x4c, 0xde, 0x3e, 0xa7, 0x12, - 0x24, 0x52, 0x48, 0x84, 0x10, 0xf7, 0x73, 0x86, 0x7d, 0x5b, 0xd7, 0x5b, 0xde, 0x9f, 0x01, 0x76, - 0x66, 0x96, 0xa3, 0xf7, 0x49, 0x53, 0x42, 0x32, 0x14, 0x1e, 0xbc, 0xe4, 0x01, 0xb4, 0xea, 0x6b, - 0x46, 0xe7, 0x7f, 0xfb, 0xa6, 0x06, 0x35, 0xbb, 0xf9, 0x95, 0x53, 0xcc, 0x6b, 0x7f, 0x35, 0xc8, - 0x8d, 0xd2, 0xce, 0xd2, 0x27, 0x84, 0x46, 0x6e, 0x96, 0x06, 0xbd, 0xa7, 0xe3, 0x1f, 0x5d, 0x44, - 0xa1, 0x7a, 0xc4, 0x9a, 0x7d, 0x6b, 0x74, 0xba, 0x4a, 0xf7, 0x4a, 0xb7, 0xce, 0x0c, 0x05, 0x5d, - 0x2f, 0xac, 0x40, 0x55, 0xad, 0xc0, 0xd4, 0xca, 0xf2, 0x1a, 0xd8, 0x77, 0x8f, 0xcf, 0xcc, 0xca, - 0xc9, 0x99, 0x59, 0xf9, 0x75, 0x66, 0x56, 0x3e, 0x8f, 0x4c, 0xe3, 0x78, 0x64, 0x1a, 0x27, 0x23, - 0xd3, 0xf8, 0x3d, 0x32, 0x8d, 0x6f, 0x7f, 0xcc, 0xca, 0xc1, 0x7f, 0x7a, 0x23, 0xff, 0x06, 0x00, - 0x00, 0xff, 0xff, 0x85, 0x17, 0x32, 0x0e, 0x02, 0x06, 0x00, 0x00, + // 653 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x9c, 0x94, 0x4d, 0x6f, 0xd3, 0x4c, + 0x10, 0xc7, 0xe3, 0xa4, 0xe9, 0x93, 0x67, 0xd3, 0xe7, 0x01, 0x96, 0x0a, 0x45, 0x15, 0x72, 0xab, + 0x5c, 0x08, 0x52, 0xbb, 0xa6, 0x2f, 0x40, 0xc5, 0xd1, 0x48, 0x20, 0x24, 0xa0, 0xc8, 0x41, 0x95, + 0x28, 0x20, 0xb1, 0x76, 0xa6, 0xe9, 0x12, 0xbf, 0xc9, 0x3b, 0x8e, 0xe0, 0xc6, 0x85, 0x03, 0x37, + 0xbe, 0x09, 0x37, 0x3e, 0x43, 0xc5, 0xa9, 0x47, 0x4e, 0x15, 0x0d, 0x5f, 0x04, 0x79, 0xb3, 0x89, + 0x8d, 0x9c, 0xa8, 0x55, 0x6f, 0xd9, 0xdd, 0xf9, 0xff, 0x66, 0xe6, 0x3f, 0xe3, 0x90, 0xfb, 0x83, + 0x5d, 0xc9, 0x44, 0x64, 0x0d, 0x52, 0x17, 0x92, 0x10, 0x10, 0xa4, 0x15, 0x0f, 0xfa, 0x16, 0x8f, + 0x85, 0xb4, 0x78, 0x1c, 0x4b, 0x6b, 0xb8, 0xe9, 0x02, 0xf2, 0x4d, 0xab, 0x0f, 0x21, 0x24, 0x1c, + 0xa1, 0xc7, 0xe2, 0x24, 0xc2, 0x88, 0xde, 0x1a, 0x0b, 0x59, 0x2e, 0x64, 0xf1, 0xa0, 0xcf, 0x32, + 0x21, 0xcb, 0x84, 0x4c, 0x0b, 0x57, 0x36, 0xfa, 0x02, 0x8f, 0x52, 0x97, 0x79, 0x51, 0x60, 0xf5, + 0xa3, 0x7e, 0x64, 0x29, 0xbd, 0x9b, 0x1e, 0xaa, 0x93, 0x3a, 0xa8, 0x5f, 0x63, 0xee, 0xca, 0x8e, + 0x2e, 0x88, 0xc7, 0x22, 0xe0, 0xde, 0x91, 0x08, 0x21, 0xf9, 0x98, 0x97, 0x14, 0x00, 0x72, 0x6b, + 0x58, 0xaa, 0x66, 0xc5, 0x9a, 0xa7, 0x4a, 0xd2, 0x10, 0x45, 0x00, 0x25, 0xc1, 0xbd, 0xf3, 0x04, + 0xd2, 0x3b, 0x82, 0x80, 0x97, 0x74, 0xdb, 0xf3, 0x74, 0x29, 0x0a, 0xdf, 0x12, 0x21, 0x4a, 0x4c, + 0x4a, 0xa2, 0x42, 0x4f, 0x12, 0x92, 0x21, 0x24, 0x79, 0x43, 0xf0, 0x81, 0x07, 0xb1, 0x0f, 0xb3, + 0x7a, 0x5a, 0x9f, 0x3b, 0x9a, 0x19, 0xd1, 0xed, 0x6f, 0x55, 0xd2, 0xec, 0x22, 0x47, 0x38, 0x4c, + 0xfd, 0x2e, 0x20, 0x7d, 0x47, 0x1a, 0x99, 0x59, 0x3d, 0x8e, 0xbc, 0x65, 0xac, 0x19, 0x9d, 0xe6, + 0xd6, 0x1d, 0xa6, 0x47, 0x56, 0xac, 0x3d, 0x1f, 0x5a, 0x16, 0xcd, 0x86, 0x9b, 0x6c, 0xcf, 0x7d, + 0x0f, 0x1e, 0x3e, 0x03, 0xe4, 0x36, 0x3d, 0x3e, 0x5d, 0xad, 0x8c, 0x4e, 0x57, 0x49, 0x7e, 0xe7, + 0x4c, 0xa9, 0xf4, 0x80, 0x2c, 0xc8, 0x18, 0xbc, 0x56, 0x55, 0xd1, 0x77, 0xd9, 0x05, 0x17, 0x82, + 0x15, 0xaa, 0xec, 0xc6, 0xe0, 0xd9, 0x4b, 0x3a, 0xcb, 0x42, 0x76, 0x72, 0x14, 0x93, 0xba, 0x64, + 0x51, 0x22, 0xc7, 0x54, 0xb6, 0x6a, 0x8a, 0xfe, 0xe0, 0x52, 0x74, 0x45, 0xb0, 0xff, 0xd7, 0xfc, + 0xc5, 0xf1, 0xd9, 0xd1, 0xe4, 0xf6, 0x0f, 0x83, 0x5c, 0x29, 0x44, 0x3f, 0x15, 0x12, 0xe9, 0x9b, + 0x92, 0x6b, 0xec, 0x62, 0xae, 0x65, 0x6a, 0xe5, 0xd9, 0x55, 0x9d, 0xad, 0x31, 0xb9, 0x29, 0x38, + 0xf6, 0x8a, 0xd4, 0x05, 0x42, 0x20, 0x5b, 0xd5, 0xb5, 0x5a, 0xa7, 0xb9, 0xb5, 0x73, 0x99, 0xa6, + 0xec, 0xff, 0x74, 0x82, 0xfa, 0x93, 0x0c, 0xe5, 0x8c, 0x89, 0xed, 0xef, 0xb5, 0xbf, 0x9a, 0xc9, + 0xac, 0xa4, 0x1d, 0xd2, 0x48, 0x20, 0xf6, 0x85, 0xc7, 0xa5, 0x6a, 0xa6, 0x6e, 0x2f, 0x65, 0x85, + 0x39, 0xfa, 0xce, 0x99, 0xbe, 0xd2, 0xb7, 0xa4, 0x21, 0xc1, 0x07, 0x0f, 0xa3, 0x44, 0x8f, 0x73, + 0xfb, 0x82, 0x6d, 0x73, 0x17, 0xfc, 0xae, 0x96, 0x8e, 0xf1, 0x93, 0x93, 0x33, 0x45, 0xd2, 0xd7, + 0xa4, 0x81, 0x10, 0xc4, 0x3e, 0x47, 0xd0, 0xf3, 0xdc, 0x98, 0xdf, 0x7a, 0x86, 0x7d, 0x11, 0xf5, + 0x5e, 0x6a, 0x81, 0x5a, 0x91, 0xa9, 0xa9, 0x93, 0x5b, 0x67, 0x0a, 0xa4, 0x9f, 0x0d, 0xb2, 0x3c, + 0x8c, 0xfc, 0x34, 0x80, 0x87, 0x3e, 0x17, 0xc1, 0x24, 0x42, 0xb6, 0x16, 0x94, 0xc9, 0xdb, 0xe7, + 0x64, 0x82, 0x44, 0x0a, 0x89, 0x10, 0xe2, 0x7e, 0xce, 0xb0, 0x6f, 0xea, 0x7c, 0xcb, 0xfb, 0x33, + 0xc0, 0xce, 0xcc, 0x74, 0xf4, 0x2e, 0x69, 0x66, 0x1f, 0xb7, 0xf0, 0xe0, 0x39, 0x0f, 0xa0, 0x55, + 0x5f, 0x33, 0x3a, 0xff, 0xda, 0xd7, 0x35, 0xa8, 0xd9, 0xcd, 0x9f, 0x9c, 0x62, 0x5c, 0xfb, 0x8b, + 0x41, 0xae, 0x95, 0x76, 0x96, 0x3e, 0x22, 0x34, 0x72, 0xd5, 0x7f, 0x45, 0xef, 0xf1, 0xf8, 0x43, + 0x17, 0x51, 0xa8, 0x86, 0x58, 0xb3, 0x6f, 0x8c, 0x4e, 0x57, 0xe9, 0x5e, 0xe9, 0xd5, 0x99, 0xa1, + 0xa0, 0xeb, 0x85, 0x15, 0xa8, 0xaa, 0x15, 0x98, 0x5a, 0x59, 0x5e, 0x03, 0xfb, 0xf6, 0xf1, 0x99, + 0x59, 0x39, 0x39, 0x33, 0x2b, 0x3f, 0xcf, 0xcc, 0xca, 0xa7, 0x91, 0x69, 0x1c, 0x8f, 0x4c, 0xe3, + 0x64, 0x64, 0x1a, 0xbf, 0x46, 0xa6, 0xf1, 0xf5, 0xb7, 0x59, 0x39, 0xf8, 0x47, 0x6f, 0xe4, 0x9f, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x61, 0x5b, 0x47, 0x36, 0x38, 0x06, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.proto index f8c679d97cf..ee709f6237b 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.proto @@ -25,6 +25,7 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". diff --git a/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/types.go b/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/types.go index d28a64992f9..cd5cd65fd3b 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/types.go +++ b/staging/src/k8s.io/client-go/pkg/apis/apps/v1beta1/types.go @@ -21,6 +21,11 @@ import ( "k8s.io/client-go/pkg/api/v1" ) +const ( + // StatefulSetInitAnnotation if present, and set to false, indicates that a Pod's readiness should be ignored. + StatefulSetInitAnnotation = "pod.alpha.kubernetes.io/initialized" +) + // +genclient=true // StatefulSet represents a set of pods with consistent identities. diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/install/install.go b/staging/src/k8s.io/client-go/pkg/apis/authentication/install/install.go index 7180e05dc41..b8a9521a6b7 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/authentication/install/install.go +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/install/install.go @@ -25,6 +25,7 @@ import ( "k8s.io/apimachinery/pkg/util/sets" "k8s.io/client-go/pkg/api" "k8s.io/client-go/pkg/apis/authentication" + "k8s.io/client-go/pkg/apis/authentication/v1" "k8s.io/client-go/pkg/apis/authentication/v1beta1" ) @@ -37,13 +38,14 @@ func Install(groupFactoryRegistry announced.APIGroupFactoryRegistry, registry *r if err := announced.NewGroupMetaFactory( &announced.GroupMetaFactoryArgs{ GroupName: authentication.GroupName, - VersionPreferenceOrder: []string{v1beta1.SchemeGroupVersion.Version}, + VersionPreferenceOrder: []string{v1.SchemeGroupVersion.Version, v1beta1.SchemeGroupVersion.Version}, ImportPrefix: "k8s.io/client-go/pkg/apis/authentication", RootScopedKinds: sets.NewString("TokenReview"), AddInternalObjectsToScheme: authentication.AddToScheme, }, announced.VersionToSchemeFunc{ v1beta1.SchemeGroupVersion.Version: v1beta1.AddToScheme, + v1.SchemeGroupVersion.Version: v1.AddToScheme, }, ).Announce(groupFactoryRegistry).RegisterAndEnable(registry, scheme); err != nil { panic(err) diff --git a/staging/src/k8s.io/client-go/pkg/api/meta.go b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/conversion.go similarity index 60% rename from staging/src/k8s.io/client-go/pkg/api/meta.go rename to staging/src/k8s.io/client-go/pkg/apis/authentication/v1/conversion.go index 3df6a2e79f6..2ff5732d6db 100644 --- a/staging/src/k8s.io/client-go/pkg/api/meta.go +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/conversion.go @@ -1,5 +1,5 @@ /* -Copyright 2014 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -14,14 +14,13 @@ See the License for the specific language governing permissions and limitations under the License. */ -package api +package v1 import ( - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" ) -// HasObjectMetaSystemFieldValues returns true if fields that are managed by the system on ObjectMeta have values. -func HasObjectMetaSystemFieldValues(meta *metav1.ObjectMeta) bool { - return !meta.CreationTimestamp.Time.IsZero() || - len(meta.UID) != 0 +func addConversionFuncs(scheme *runtime.Scheme) error { + // Add non-generated conversion functions + return scheme.AddConversionFuncs() } diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/defaults.go b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/defaults.go new file mode 100644 index 00000000000..d63d917543e --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/defaults.go @@ -0,0 +1,25 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + "k8s.io/apimachinery/pkg/runtime" +) + +func addDefaultingFuncs(scheme *runtime.Scheme) error { + return scheme.AddDefaultingFuncs() +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/doc.go b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/doc.go new file mode 100644 index 00000000000..8140e47c59b --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/doc.go @@ -0,0 +1,18 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// +groupName=authentication.k8s.io +package v1 diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/generated.pb.go new file mode 100644 index 00000000000..e3dfb9d3ad9 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/generated.pb.go @@ -0,0 +1,1281 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by protoc-gen-gogo. +// source: k8s.io/kubernetes/pkg/apis/authentication/v1/generated.proto +// DO NOT EDIT! + +/* + Package v1 is a generated protocol buffer package. + + It is generated from these files: + k8s.io/kubernetes/pkg/apis/authentication/v1/generated.proto + + It has these top-level messages: + ExtraValue + TokenReview + TokenReviewSpec + TokenReviewStatus + UserInfo +*/ +package v1 + +import proto "github.com/gogo/protobuf/proto" +import fmt "fmt" +import math "math" + +import strings "strings" +import reflect "reflect" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + +import io "io" + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +const _ = proto.GoGoProtoPackageIsVersion1 + +func (m *ExtraValue) Reset() { *m = ExtraValue{} } +func (*ExtraValue) ProtoMessage() {} +func (*ExtraValue) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{0} } + +func (m *TokenReview) Reset() { *m = TokenReview{} } +func (*TokenReview) ProtoMessage() {} +func (*TokenReview) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } + +func (m *TokenReviewSpec) Reset() { *m = TokenReviewSpec{} } +func (*TokenReviewSpec) ProtoMessage() {} +func (*TokenReviewSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{2} } + +func (m *TokenReviewStatus) Reset() { *m = TokenReviewStatus{} } +func (*TokenReviewStatus) ProtoMessage() {} +func (*TokenReviewStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{3} } + +func (m *UserInfo) Reset() { *m = UserInfo{} } +func (*UserInfo) ProtoMessage() {} +func (*UserInfo) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } + +func init() { + proto.RegisterType((*ExtraValue)(nil), "k8s.io.client-go.pkg.apis.authentication.v1.ExtraValue") + proto.RegisterType((*TokenReview)(nil), "k8s.io.client-go.pkg.apis.authentication.v1.TokenReview") + proto.RegisterType((*TokenReviewSpec)(nil), "k8s.io.client-go.pkg.apis.authentication.v1.TokenReviewSpec") + proto.RegisterType((*TokenReviewStatus)(nil), "k8s.io.client-go.pkg.apis.authentication.v1.TokenReviewStatus") + proto.RegisterType((*UserInfo)(nil), "k8s.io.client-go.pkg.apis.authentication.v1.UserInfo") +} +func (m ExtraValue) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m ExtraValue) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m) > 0 { + for _, s := range m { + data[i] = 0xa + i++ + l = len(s) + for l >= 1<<7 { + data[i] = uint8(uint64(l)&0x7f | 0x80) + l >>= 7 + i++ + } + data[i] = uint8(l) + i++ + i += copy(data[i:], s) + } + } + return i, nil +} + +func (m *TokenReview) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *TokenReview) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) + n1, err := m.ObjectMeta.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n1 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) + n2, err := m.Spec.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n2 + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) + n3, err := m.Status.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n3 + return i, nil +} + +func (m *TokenReviewSpec) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *TokenReviewSpec) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Token))) + i += copy(data[i:], m.Token) + return i, nil +} + +func (m *TokenReviewStatus) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *TokenReviewStatus) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0x8 + i++ + if m.Authenticated { + data[i] = 1 + } else { + data[i] = 0 + } + i++ + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.User.Size())) + n4, err := m.User.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n4 + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Error))) + i += copy(data[i:], m.Error) + return i, nil +} + +func (m *UserInfo) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *UserInfo) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Username))) + i += copy(data[i:], m.Username) + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.UID))) + i += copy(data[i:], m.UID) + if len(m.Groups) > 0 { + for _, s := range m.Groups { + data[i] = 0x1a + i++ + l = len(s) + for l >= 1<<7 { + data[i] = uint8(uint64(l)&0x7f | 0x80) + l >>= 7 + i++ + } + data[i] = uint8(l) + i++ + i += copy(data[i:], s) + } + } + if len(m.Extra) > 0 { + for k := range m.Extra { + data[i] = 0x22 + i++ + v := m.Extra[k] + msgSize := (&v).Size() + mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + msgSize + sovGenerated(uint64(msgSize)) + i = encodeVarintGenerated(data, i, uint64(mapSize)) + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(k))) + i += copy(data[i:], k) + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64((&v).Size())) + n5, err := (&v).MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n5 + } + } + return i, nil +} + +func encodeFixed64Generated(data []byte, offset int, v uint64) int { + data[offset] = uint8(v) + data[offset+1] = uint8(v >> 8) + data[offset+2] = uint8(v >> 16) + data[offset+3] = uint8(v >> 24) + data[offset+4] = uint8(v >> 32) + data[offset+5] = uint8(v >> 40) + data[offset+6] = uint8(v >> 48) + data[offset+7] = uint8(v >> 56) + return offset + 8 +} +func encodeFixed32Generated(data []byte, offset int, v uint32) int { + data[offset] = uint8(v) + data[offset+1] = uint8(v >> 8) + data[offset+2] = uint8(v >> 16) + data[offset+3] = uint8(v >> 24) + return offset + 4 +} +func encodeVarintGenerated(data []byte, offset int, v uint64) int { + for v >= 1<<7 { + data[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + data[offset] = uint8(v) + return offset + 1 +} +func (m ExtraValue) Size() (n int) { + var l int + _ = l + if len(m) > 0 { + for _, s := range m { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *TokenReview) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Spec.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Status.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *TokenReviewSpec) Size() (n int) { + var l int + _ = l + l = len(m.Token) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *TokenReviewStatus) Size() (n int) { + var l int + _ = l + n += 2 + l = m.User.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Error) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *UserInfo) Size() (n int) { + var l int + _ = l + l = len(m.Username) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.UID) + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Groups) > 0 { + for _, s := range m.Groups { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } + if len(m.Extra) > 0 { + for k, v := range m.Extra { + _ = k + _ = v + l = v.Size() + mapEntrySize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + l + sovGenerated(uint64(l)) + n += mapEntrySize + 1 + sovGenerated(uint64(mapEntrySize)) + } + } + return n +} + +func sovGenerated(x uint64) (n int) { + for { + n++ + x >>= 7 + if x == 0 { + break + } + } + return n +} +func sozGenerated(x uint64) (n int) { + return sovGenerated(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *TokenReview) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&TokenReview{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "TokenReviewSpec", "TokenReviewSpec", 1), `&`, ``, 1) + `,`, + `Status:` + strings.Replace(strings.Replace(this.Status.String(), "TokenReviewStatus", "TokenReviewStatus", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *TokenReviewSpec) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&TokenReviewSpec{`, + `Token:` + fmt.Sprintf("%v", this.Token) + `,`, + `}`, + }, "") + return s +} +func (this *TokenReviewStatus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&TokenReviewStatus{`, + `Authenticated:` + fmt.Sprintf("%v", this.Authenticated) + `,`, + `User:` + strings.Replace(strings.Replace(this.User.String(), "UserInfo", "UserInfo", 1), `&`, ``, 1) + `,`, + `Error:` + fmt.Sprintf("%v", this.Error) + `,`, + `}`, + }, "") + return s +} +func (this *UserInfo) String() string { + if this == nil { + return "nil" + } + keysForExtra := make([]string, 0, len(this.Extra)) + for k := range this.Extra { + keysForExtra = append(keysForExtra, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExtra) + mapStringForExtra := "map[string]ExtraValue{" + for _, k := range keysForExtra { + mapStringForExtra += fmt.Sprintf("%v: %v,", k, this.Extra[k]) + } + mapStringForExtra += "}" + s := strings.Join([]string{`&UserInfo{`, + `Username:` + fmt.Sprintf("%v", this.Username) + `,`, + `UID:` + fmt.Sprintf("%v", this.UID) + `,`, + `Groups:` + fmt.Sprintf("%v", this.Groups) + `,`, + `Extra:` + mapStringForExtra + `,`, + `}`, + }, "") + return s +} +func valueToStringGenerated(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *ExtraValue) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ExtraValue: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ExtraValue: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + *m = append(*m, string(data[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *TokenReview) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: TokenReview: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: TokenReview: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Spec.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Status.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *TokenReviewSpec) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: TokenReviewSpec: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: TokenReviewSpec: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Token", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Token = string(data[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *TokenReviewStatus) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: TokenReviewStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: TokenReviewStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Authenticated", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + v |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.Authenticated = bool(v != 0) + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field User", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.User.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Error", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Error = string(data[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *UserInfo) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: UserInfo: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: UserInfo: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Username", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Username = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UID", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.UID = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Groups", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Groups = append(m.Groups, string(data[iNdEx:postIndex])) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Extra", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + var keykey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + keykey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLenmapkey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthGenerated + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey := string(data[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + var valuekey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + valuekey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + var mapmsglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + mapmsglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if mapmsglen < 0 { + return ErrInvalidLengthGenerated + } + postmsgIndex := iNdEx + mapmsglen + if mapmsglen < 0 { + return ErrInvalidLengthGenerated + } + if postmsgIndex > l { + return io.ErrUnexpectedEOF + } + mapvalue := &ExtraValue{} + if err := mapvalue.Unmarshal(data[iNdEx:postmsgIndex]); err != nil { + return err + } + iNdEx = postmsgIndex + if m.Extra == nil { + m.Extra = make(map[string]ExtraValue) + } + m.Extra[mapkey] = *mapvalue + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipGenerated(data []byte) (n int, err error) { + l := len(data) + iNdEx := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if data[iNdEx-1] < 0x80 { + break + } + } + return iNdEx, nil + case 1: + iNdEx += 8 + return iNdEx, nil + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + iNdEx += length + if length < 0 { + return 0, ErrInvalidLengthGenerated + } + return iNdEx, nil + case 3: + for { + var innerWire uint64 + var start int = iNdEx + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + innerWire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + innerWireType := int(innerWire & 0x7) + if innerWireType == 4 { + break + } + next, err := skipGenerated(data[start:]) + if err != nil { + return 0, err + } + iNdEx = start + next + } + return iNdEx, nil + case 4: + return iNdEx, nil + case 5: + iNdEx += 4 + return iNdEx, nil + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + } + panic("unreachable") +} + +var ( + ErrInvalidLengthGenerated = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowGenerated = fmt.Errorf("proto: integer overflow") +) + +var fileDescriptorGenerated = []byte{ + // 655 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x9c, 0x53, 0xcd, 0x6e, 0xd3, 0x4c, + 0x14, 0xb5, 0xf3, 0x53, 0x25, 0x93, 0xaf, 0x1f, 0x65, 0x24, 0xa4, 0x28, 0x12, 0x4e, 0x14, 0x58, + 0x74, 0x51, 0xc6, 0xa4, 0xa0, 0x52, 0x15, 0x10, 0xaa, 0x45, 0x85, 0xba, 0x00, 0xa4, 0x81, 0x22, + 0xc4, 0x06, 0x26, 0xce, 0xad, 0x63, 0x52, 0xff, 0x68, 0x3c, 0x36, 0xed, 0xae, 0x8f, 0xc0, 0x92, + 0x25, 0xaf, 0xc1, 0x1b, 0x74, 0x47, 0x77, 0xb0, 0x40, 0x15, 0x0d, 0x2f, 0x82, 0x66, 0x3c, 0xd4, + 0x2e, 0x69, 0x85, 0xda, 0xdd, 0xcc, 0x99, 0x7b, 0xce, 0xbd, 0xe7, 0xde, 0xb9, 0xe8, 0xc1, 0x64, + 0x35, 0x21, 0x7e, 0x64, 0x4f, 0xd2, 0x21, 0xf0, 0x10, 0x04, 0x24, 0x76, 0x3c, 0xf1, 0x6c, 0x16, + 0xfb, 0x89, 0xcd, 0x52, 0x31, 0x86, 0x50, 0xf8, 0x2e, 0x13, 0x7e, 0x14, 0xda, 0xd9, 0xc0, 0xf6, + 0x20, 0x04, 0xce, 0x04, 0x8c, 0x48, 0xcc, 0x23, 0x11, 0xe1, 0xa5, 0x9c, 0x4d, 0x0a, 0x36, 0x89, + 0x27, 0x1e, 0x91, 0x6c, 0x72, 0x9a, 0x4d, 0xb2, 0x41, 0xe7, 0x96, 0xe7, 0x8b, 0x71, 0x3a, 0x24, + 0x6e, 0x14, 0xd8, 0x5e, 0xe4, 0x45, 0xb6, 0x12, 0x19, 0xa6, 0xdb, 0xea, 0xa6, 0x2e, 0xea, 0x94, + 0x8b, 0x77, 0xee, 0xea, 0xd2, 0x58, 0xec, 0x07, 0xcc, 0x1d, 0xfb, 0x21, 0xf0, 0xbd, 0xa2, 0xb8, + 0x00, 0x04, 0x3b, 0xa3, 0xa4, 0x8e, 0x7d, 0x1e, 0x8b, 0xa7, 0xa1, 0xf0, 0x03, 0x98, 0x21, 0xac, + 0xfc, 0x8b, 0x90, 0xb8, 0x63, 0x08, 0xd8, 0x0c, 0xef, 0xce, 0x79, 0xbc, 0x54, 0xf8, 0x3b, 0xb6, + 0x1f, 0x8a, 0x44, 0xf0, 0x19, 0x52, 0xc9, 0x53, 0x02, 0x3c, 0x03, 0x5e, 0x18, 0x82, 0x5d, 0x16, + 0xc4, 0x3b, 0x70, 0x86, 0xa7, 0xfe, 0x3d, 0x84, 0x36, 0x76, 0x05, 0x67, 0xaf, 0xd8, 0x4e, 0x0a, + 0xb8, 0x8b, 0xea, 0xbe, 0x80, 0x20, 0x69, 0x9b, 0xbd, 0xea, 0x62, 0xd3, 0x69, 0x4e, 0x8f, 0xba, + 0xf5, 0x4d, 0x09, 0xd0, 0x1c, 0x5f, 0x6b, 0x7c, 0xfa, 0xdc, 0x35, 0xf6, 0x7f, 0xf4, 0x8c, 0xfe, + 0x97, 0x0a, 0x6a, 0xbd, 0x8c, 0x26, 0x10, 0x52, 0xc8, 0x7c, 0xf8, 0x80, 0xdf, 0xa1, 0x86, 0xec, + 0xdb, 0x88, 0x09, 0xd6, 0x36, 0x7b, 0xe6, 0x62, 0x6b, 0xf9, 0x36, 0xd1, 0x23, 0x2c, 0xdb, 0x28, + 0x86, 0x28, 0xa3, 0x49, 0x36, 0x20, 0xcf, 0x87, 0xef, 0xc1, 0x15, 0x4f, 0x41, 0x30, 0x07, 0x1f, + 0x1c, 0x75, 0x8d, 0xe9, 0x51, 0x17, 0x15, 0x18, 0x3d, 0x51, 0xc5, 0x6f, 0x51, 0x2d, 0x89, 0xc1, + 0x6d, 0x57, 0x94, 0xfa, 0x43, 0x72, 0x91, 0x0f, 0x42, 0x4a, 0xa5, 0xbe, 0x88, 0xc1, 0x75, 0xfe, + 0xd3, 0xa9, 0x6a, 0xf2, 0x46, 0x95, 0x30, 0xf6, 0xd0, 0x5c, 0x22, 0x98, 0x48, 0x93, 0x76, 0x55, + 0xa5, 0x78, 0x74, 0xf9, 0x14, 0x4a, 0xc6, 0xf9, 0x5f, 0x27, 0x99, 0xcb, 0xef, 0x54, 0xcb, 0xf7, + 0x57, 0xd0, 0x95, 0xbf, 0xea, 0xc1, 0x37, 0x50, 0x5d, 0x48, 0x48, 0xf5, 0xae, 0xe9, 0xcc, 0x6b, + 0x66, 0x3d, 0x8f, 0xcb, 0xdf, 0xfa, 0x5f, 0x4d, 0x74, 0x75, 0x26, 0x0b, 0xbe, 0x8f, 0xe6, 0x4b, + 0xc5, 0xc0, 0x48, 0x49, 0x34, 0x9c, 0x6b, 0x5a, 0x62, 0x7e, 0xbd, 0xfc, 0x48, 0x4f, 0xc7, 0xe2, + 0xd7, 0xa8, 0x96, 0x26, 0xc0, 0x75, 0x53, 0x57, 0x2e, 0xe6, 0x78, 0x2b, 0x01, 0xbe, 0x19, 0x6e, + 0x47, 0x45, 0x37, 0x25, 0x42, 0x95, 0xa2, 0x74, 0x04, 0x9c, 0x47, 0x5c, 0x35, 0xb3, 0xe4, 0x68, + 0x43, 0x82, 0x34, 0x7f, 0xeb, 0x7f, 0xab, 0xa0, 0xc6, 0x1f, 0x15, 0xbc, 0x84, 0x1a, 0x92, 0x19, + 0xb2, 0x00, 0x74, 0x1b, 0x16, 0x34, 0x49, 0xc5, 0x48, 0x9c, 0x9e, 0x44, 0xe0, 0xeb, 0xa8, 0x9a, + 0xfa, 0x23, 0x55, 0x78, 0xd3, 0x69, 0xe9, 0xc0, 0xea, 0xd6, 0xe6, 0x63, 0x2a, 0x71, 0xdc, 0x47, + 0x73, 0x1e, 0x8f, 0xd2, 0x58, 0x0e, 0x53, 0xfe, 0x65, 0x24, 0xe7, 0xf0, 0x44, 0x21, 0x54, 0xbf, + 0xe0, 0x6d, 0x54, 0x07, 0xf9, 0xf9, 0xdb, 0xb5, 0x5e, 0x75, 0xb1, 0xb5, 0xbc, 0x7e, 0x39, 0xf7, + 0x44, 0x2d, 0xd0, 0x46, 0x28, 0xf8, 0x5e, 0xc9, 0xa5, 0xc4, 0x68, 0x2e, 0xdf, 0xe1, 0x7a, 0xc9, + 0x54, 0x0c, 0x5e, 0x40, 0xd5, 0x09, 0xec, 0xe5, 0x0e, 0xa9, 0x3c, 0xe2, 0x67, 0xa8, 0x9e, 0xc9, + 0xfd, 0xd3, 0x53, 0x58, 0xbd, 0x58, 0x1d, 0xc5, 0xfe, 0xd2, 0x5c, 0x66, 0xad, 0xb2, 0x6a, 0x3a, + 0x37, 0x0f, 0x8e, 0x2d, 0xe3, 0xf0, 0xd8, 0x32, 0xbe, 0x1f, 0x5b, 0xc6, 0xfe, 0xd4, 0x32, 0x0f, + 0xa6, 0x96, 0x79, 0x38, 0xb5, 0xcc, 0x9f, 0x53, 0xcb, 0xfc, 0xf8, 0xcb, 0x32, 0xde, 0x54, 0xb2, + 0xc1, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0xbb, 0x6b, 0x11, 0x20, 0xa4, 0x05, 0x00, 0x00, +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/generated.proto new file mode 100644 index 00000000000..ea5203d37be --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/generated.proto @@ -0,0 +1,100 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + + +// This file was autogenerated by go-to-protobuf. Do not edit it manually! + +syntax = 'proto2'; + +package k8s.io.kubernetes.pkg.apis.authentication.v1; + +import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; +import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; + +// Package-wide variables from generator "generated". +option go_package = "v1"; + +// ExtraValue masks the value so protobuf can generate +// +protobuf.nullable=true +// +protobuf.options.(gogoproto.goproto_stringer)=false +message ExtraValue { + // items, if empty, will result in an empty slice + + repeated string items = 1; +} + +// TokenReview attempts to authenticate a token to a known user. +// Note: TokenReview requests may be cached by the webhook token authenticator +// plugin in the kube-apiserver. +message TokenReview { + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // Spec holds information about the request being evaluated + optional TokenReviewSpec spec = 2; + + // Status is filled in by the server and indicates whether the request can be authenticated. + // +optional + optional TokenReviewStatus status = 3; +} + +// TokenReviewSpec is a description of the token authentication request. +message TokenReviewSpec { + // Token is the opaque bearer token. + // +optional + optional string token = 1; +} + +// TokenReviewStatus is the result of the token authentication request. +message TokenReviewStatus { + // Authenticated indicates that the token was associated with a known user. + // +optional + optional bool authenticated = 1; + + // User is the UserInfo associated with the provided token. + // +optional + optional UserInfo user = 2; + + // Error indicates that the token couldn't be checked + // +optional + optional string error = 3; +} + +// UserInfo holds the information about the user needed to implement the +// user.Info interface. +message UserInfo { + // The name that uniquely identifies this user among all active users. + // +optional + optional string username = 1; + + // A unique value that identifies this user across time. If this user is + // deleted and another user by the same name is added, they will have + // different UIDs. + // +optional + optional string uid = 2; + + // The names of groups this user is a part of. + // +optional + repeated string groups = 3; + + // Any additional information provided by the authenticator. + // +optional + map extra = 4; +} + diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/register.go b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/register.go new file mode 100644 index 00000000000..8661169af49 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/register.go @@ -0,0 +1,48 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// GroupName is the group name use in this package +const GroupName = "authentication.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"} + +// Resource takes an unqualified resource and returns a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + +var ( + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultingFuncs, addConversionFuncs) + AddToScheme = SchemeBuilder.AddToScheme +) + +// Adds the list of known types to api.Scheme. +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &TokenReview{}, + ) + metav1.AddToGroupVersion(scheme, SchemeGroupVersion) + return nil +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/types.go b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/types.go new file mode 100644 index 00000000000..e6ff587056f --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/types.go @@ -0,0 +1,91 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + "fmt" + + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" +) + +// +genclient=true +// +nonNamespaced=true +// +noMethods=true + +// TokenReview attempts to authenticate a token to a known user. +// Note: TokenReview requests may be cached by the webhook token authenticator +// plugin in the kube-apiserver. +type TokenReview struct { + metav1.TypeMeta `json:",inline"` + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Spec holds information about the request being evaluated + Spec TokenReviewSpec `json:"spec" protobuf:"bytes,2,opt,name=spec"` + + // Status is filled in by the server and indicates whether the request can be authenticated. + // +optional + Status TokenReviewStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` +} + +// TokenReviewSpec is a description of the token authentication request. +type TokenReviewSpec struct { + // Token is the opaque bearer token. + // +optional + Token string `json:"token,omitempty" protobuf:"bytes,1,opt,name=token"` +} + +// TokenReviewStatus is the result of the token authentication request. +type TokenReviewStatus struct { + // Authenticated indicates that the token was associated with a known user. + // +optional + Authenticated bool `json:"authenticated,omitempty" protobuf:"varint,1,opt,name=authenticated"` + // User is the UserInfo associated with the provided token. + // +optional + User UserInfo `json:"user,omitempty" protobuf:"bytes,2,opt,name=user"` + // Error indicates that the token couldn't be checked + // +optional + Error string `json:"error,omitempty" protobuf:"bytes,3,opt,name=error"` +} + +// UserInfo holds the information about the user needed to implement the +// user.Info interface. +type UserInfo struct { + // The name that uniquely identifies this user among all active users. + // +optional + Username string `json:"username,omitempty" protobuf:"bytes,1,opt,name=username"` + // A unique value that identifies this user across time. If this user is + // deleted and another user by the same name is added, they will have + // different UIDs. + // +optional + UID string `json:"uid,omitempty" protobuf:"bytes,2,opt,name=uid"` + // The names of groups this user is a part of. + // +optional + Groups []string `json:"groups,omitempty" protobuf:"bytes,3,rep,name=groups"` + // Any additional information provided by the authenticator. + // +optional + Extra map[string]ExtraValue `json:"extra,omitempty" protobuf:"bytes,4,rep,name=extra"` +} + +// ExtraValue masks the value so protobuf can generate +// +protobuf.nullable=true +// +protobuf.options.(gogoproto.goproto_stringer)=false +type ExtraValue []string + +func (t ExtraValue) String() string { + return fmt.Sprintf("%v", []string(t)) +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/types_swagger_doc_generated.go b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/types_swagger_doc_generated.go new file mode 100644 index 00000000000..bb235e4eaa9 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/types_swagger_doc_generated.go @@ -0,0 +1,72 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +// This file contains a collection of methods that can be used from go-restful to +// generate Swagger API documentation for its models. Please read this PR for more +// information on the implementation: https://github.com/emicklei/go-restful/pull/215 +// +// TODOs are ignored from the parser (e.g. TODO(andronat):... || TODO:...) if and only if +// they are on one line! For multiple line or blocks that you want to ignore use ---. +// Any context after a --- is ignored. +// +// Those methods can be generated by using hack/update-generated-swagger-docs.sh + +// AUTO-GENERATED FUNCTIONS START HERE +var map_TokenReview = map[string]string{ + "": "TokenReview attempts to authenticate a token to a known user. Note: TokenReview requests may be cached by the webhook token authenticator plugin in the kube-apiserver.", + "spec": "Spec holds information about the request being evaluated", + "status": "Status is filled in by the server and indicates whether the request can be authenticated.", +} + +func (TokenReview) SwaggerDoc() map[string]string { + return map_TokenReview +} + +var map_TokenReviewSpec = map[string]string{ + "": "TokenReviewSpec is a description of the token authentication request.", + "token": "Token is the opaque bearer token.", +} + +func (TokenReviewSpec) SwaggerDoc() map[string]string { + return map_TokenReviewSpec +} + +var map_TokenReviewStatus = map[string]string{ + "": "TokenReviewStatus is the result of the token authentication request.", + "authenticated": "Authenticated indicates that the token was associated with a known user.", + "user": "User is the UserInfo associated with the provided token.", + "error": "Error indicates that the token couldn't be checked", +} + +func (TokenReviewStatus) SwaggerDoc() map[string]string { + return map_TokenReviewStatus +} + +var map_UserInfo = map[string]string{ + "": "UserInfo holds the information about the user needed to implement the user.Info interface.", + "username": "The name that uniquely identifies this user among all active users.", + "uid": "A unique value that identifies this user across time. If this user is deleted and another user by the same name is added, they will have different UIDs.", + "groups": "The names of groups this user is a part of.", + "extra": "Any additional information provided by the authenticator.", +} + +func (UserInfo) SwaggerDoc() map[string]string { + return map_UserInfo +} + +// AUTO-GENERATED FUNCTIONS END HERE diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/zz_generated.conversion.go b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/zz_generated.conversion.go new file mode 100644 index 00000000000..9c1335e9154 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/zz_generated.conversion.go @@ -0,0 +1,145 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by conversion-gen. Do not edit it manually! + +package v1 + +import ( + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + authentication "k8s.io/client-go/pkg/apis/authentication" + unsafe "unsafe" +) + +func init() { + SchemeBuilder.Register(RegisterConversions) +} + +// RegisterConversions adds conversion functions to the given scheme. +// Public to allow building arbitrary schemes. +func RegisterConversions(scheme *runtime.Scheme) error { + return scheme.AddGeneratedConversionFuncs( + Convert_v1_TokenReview_To_authentication_TokenReview, + Convert_authentication_TokenReview_To_v1_TokenReview, + Convert_v1_TokenReviewSpec_To_authentication_TokenReviewSpec, + Convert_authentication_TokenReviewSpec_To_v1_TokenReviewSpec, + Convert_v1_TokenReviewStatus_To_authentication_TokenReviewStatus, + Convert_authentication_TokenReviewStatus_To_v1_TokenReviewStatus, + Convert_v1_UserInfo_To_authentication_UserInfo, + Convert_authentication_UserInfo_To_v1_UserInfo, + ) +} + +func autoConvert_v1_TokenReview_To_authentication_TokenReview(in *TokenReview, out *authentication.TokenReview, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_v1_TokenReviewSpec_To_authentication_TokenReviewSpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + if err := Convert_v1_TokenReviewStatus_To_authentication_TokenReviewStatus(&in.Status, &out.Status, s); err != nil { + return err + } + return nil +} + +func Convert_v1_TokenReview_To_authentication_TokenReview(in *TokenReview, out *authentication.TokenReview, s conversion.Scope) error { + return autoConvert_v1_TokenReview_To_authentication_TokenReview(in, out, s) +} + +func autoConvert_authentication_TokenReview_To_v1_TokenReview(in *authentication.TokenReview, out *TokenReview, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_authentication_TokenReviewSpec_To_v1_TokenReviewSpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + if err := Convert_authentication_TokenReviewStatus_To_v1_TokenReviewStatus(&in.Status, &out.Status, s); err != nil { + return err + } + return nil +} + +func Convert_authentication_TokenReview_To_v1_TokenReview(in *authentication.TokenReview, out *TokenReview, s conversion.Scope) error { + return autoConvert_authentication_TokenReview_To_v1_TokenReview(in, out, s) +} + +func autoConvert_v1_TokenReviewSpec_To_authentication_TokenReviewSpec(in *TokenReviewSpec, out *authentication.TokenReviewSpec, s conversion.Scope) error { + out.Token = in.Token + return nil +} + +func Convert_v1_TokenReviewSpec_To_authentication_TokenReviewSpec(in *TokenReviewSpec, out *authentication.TokenReviewSpec, s conversion.Scope) error { + return autoConvert_v1_TokenReviewSpec_To_authentication_TokenReviewSpec(in, out, s) +} + +func autoConvert_authentication_TokenReviewSpec_To_v1_TokenReviewSpec(in *authentication.TokenReviewSpec, out *TokenReviewSpec, s conversion.Scope) error { + out.Token = in.Token + return nil +} + +func Convert_authentication_TokenReviewSpec_To_v1_TokenReviewSpec(in *authentication.TokenReviewSpec, out *TokenReviewSpec, s conversion.Scope) error { + return autoConvert_authentication_TokenReviewSpec_To_v1_TokenReviewSpec(in, out, s) +} + +func autoConvert_v1_TokenReviewStatus_To_authentication_TokenReviewStatus(in *TokenReviewStatus, out *authentication.TokenReviewStatus, s conversion.Scope) error { + out.Authenticated = in.Authenticated + if err := Convert_v1_UserInfo_To_authentication_UserInfo(&in.User, &out.User, s); err != nil { + return err + } + out.Error = in.Error + return nil +} + +func Convert_v1_TokenReviewStatus_To_authentication_TokenReviewStatus(in *TokenReviewStatus, out *authentication.TokenReviewStatus, s conversion.Scope) error { + return autoConvert_v1_TokenReviewStatus_To_authentication_TokenReviewStatus(in, out, s) +} + +func autoConvert_authentication_TokenReviewStatus_To_v1_TokenReviewStatus(in *authentication.TokenReviewStatus, out *TokenReviewStatus, s conversion.Scope) error { + out.Authenticated = in.Authenticated + if err := Convert_authentication_UserInfo_To_v1_UserInfo(&in.User, &out.User, s); err != nil { + return err + } + out.Error = in.Error + return nil +} + +func Convert_authentication_TokenReviewStatus_To_v1_TokenReviewStatus(in *authentication.TokenReviewStatus, out *TokenReviewStatus, s conversion.Scope) error { + return autoConvert_authentication_TokenReviewStatus_To_v1_TokenReviewStatus(in, out, s) +} + +func autoConvert_v1_UserInfo_To_authentication_UserInfo(in *UserInfo, out *authentication.UserInfo, s conversion.Scope) error { + out.Username = in.Username + out.UID = in.UID + out.Groups = *(*[]string)(unsafe.Pointer(&in.Groups)) + out.Extra = *(*map[string]authentication.ExtraValue)(unsafe.Pointer(&in.Extra)) + return nil +} + +func Convert_v1_UserInfo_To_authentication_UserInfo(in *UserInfo, out *authentication.UserInfo, s conversion.Scope) error { + return autoConvert_v1_UserInfo_To_authentication_UserInfo(in, out, s) +} + +func autoConvert_authentication_UserInfo_To_v1_UserInfo(in *authentication.UserInfo, out *UserInfo, s conversion.Scope) error { + out.Username = in.Username + out.UID = in.UID + out.Groups = *(*[]string)(unsafe.Pointer(&in.Groups)) + out.Extra = *(*map[string]ExtraValue)(unsafe.Pointer(&in.Extra)) + return nil +} + +func Convert_authentication_UserInfo_To_v1_UserInfo(in *authentication.UserInfo, out *UserInfo, s conversion.Scope) error { + return autoConvert_authentication_UserInfo_To_v1_UserInfo(in, out, s) +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/zz_generated.deepcopy.go b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/zz_generated.deepcopy.go new file mode 100644 index 00000000000..0bc56406710 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/zz_generated.deepcopy.go @@ -0,0 +1,106 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by deepcopy-gen. Do not edit it manually! + +package v1 + +import ( + meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + reflect "reflect" +) + +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// RegisterDeepCopies adds deep-copy functions to the given scheme. Public +// to allow building arbitrary schemes. +func RegisterDeepCopies(scheme *runtime.Scheme) error { + return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_TokenReview, InType: reflect.TypeOf(&TokenReview{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_TokenReviewSpec, InType: reflect.TypeOf(&TokenReviewSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_TokenReviewStatus, InType: reflect.TypeOf(&TokenReviewStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_UserInfo, InType: reflect.TypeOf(&UserInfo{})}, + ) +} + +func DeepCopy_v1_TokenReview(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*TokenReview) + out := out.(*TokenReview) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) + } + if err := DeepCopy_v1_TokenReviewStatus(&in.Status, &out.Status, c); err != nil { + return err + } + return nil + } +} + +func DeepCopy_v1_TokenReviewSpec(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*TokenReviewSpec) + out := out.(*TokenReviewSpec) + *out = *in + return nil + } +} + +func DeepCopy_v1_TokenReviewStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*TokenReviewStatus) + out := out.(*TokenReviewStatus) + *out = *in + if err := DeepCopy_v1_UserInfo(&in.User, &out.User, c); err != nil { + return err + } + return nil + } +} + +func DeepCopy_v1_UserInfo(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*UserInfo) + out := out.(*UserInfo) + *out = *in + if in.Groups != nil { + in, out := &in.Groups, &out.Groups + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Extra != nil { + in, out := &in.Extra, &out.Extra + *out = make(map[string]ExtraValue) + for key, val := range *in { + if newVal, err := c.DeepCopy(&val); err != nil { + return err + } else { + (*out)[key] = *newVal.(*ExtraValue) + } + } + } + return nil + } +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/zz_generated.defaults.go b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/zz_generated.defaults.go new file mode 100644 index 00000000000..6df448eb9fd --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1/zz_generated.defaults.go @@ -0,0 +1,32 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by defaulter-gen. Do not edit it manually! + +package v1 + +import ( + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// RegisterDefaults adds defaulters functions to the given scheme. +// Public to allow building arbitrary schemes. +// All generated defaulters are covering - they call all nested defaulters. +func RegisterDefaults(scheme *runtime.Scheme) error { + return nil +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.pb.go index 77b5865983f..760416e6371 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.pb.go @@ -1236,46 +1236,47 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 653 bytes of a gzipped FileDescriptorProto + // 668 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xa4, 0x53, 0x4d, 0x6f, 0xd3, 0x4a, - 0x14, 0xb5, 0xf3, 0xd1, 0x97, 0x4c, 0x5e, 0xdf, 0xeb, 0x1b, 0xe9, 0x49, 0x51, 0x24, 0x9c, 0x28, + 0x14, 0x8d, 0xf3, 0xd1, 0x97, 0x4c, 0x5e, 0xdf, 0xeb, 0x1b, 0xe9, 0x49, 0x51, 0x24, 0x9c, 0x28, 0x6c, 0x8a, 0x54, 0xc6, 0xa4, 0xa0, 0x52, 0xb5, 0x62, 0x51, 0xab, 0x05, 0x75, 0x81, 0x90, 0xa6, - 0x94, 0x05, 0x12, 0x12, 0x13, 0xe7, 0xd6, 0x19, 0x5c, 0x7f, 0x68, 0x3c, 0x4e, 0xe9, 0xae, 0x3f, + 0x94, 0x05, 0x12, 0x12, 0x13, 0xe7, 0xd6, 0x31, 0x8e, 0x3f, 0x34, 0x1e, 0xa7, 0xed, 0xae, 0x3f, 0x81, 0x25, 0x4b, 0xfe, 0x0b, 0x9b, 0x2e, 0xbb, 0x60, 0xc1, 0x02, 0x55, 0x24, 0xfc, 0x11, 0x34, - 0xe3, 0xa1, 0x49, 0x09, 0x15, 0xa2, 0xdd, 0x79, 0xce, 0xbd, 0xe7, 0xdc, 0x73, 0xef, 0xf5, 0x45, - 0x5b, 0xe1, 0x7a, 0x46, 0x78, 0xe2, 0x86, 0x79, 0x1f, 0x44, 0x0c, 0x12, 0x32, 0x37, 0x0d, 0x03, - 0x97, 0xa5, 0x3c, 0x73, 0x59, 0x2e, 0x87, 0x10, 0x4b, 0xee, 0x33, 0xc9, 0x93, 0xd8, 0x1d, 0xf5, - 0xfa, 0x20, 0x59, 0xcf, 0x0d, 0x20, 0x06, 0xc1, 0x24, 0x0c, 0x48, 0x2a, 0x12, 0x99, 0xe0, 0x5e, - 0x21, 0x41, 0xa6, 0x12, 0x24, 0x0d, 0x03, 0xa2, 0x24, 0xc8, 0x65, 0x09, 0x62, 0x24, 0x5a, 0x77, - 0x03, 0x2e, 0x87, 0x79, 0x9f, 0xf8, 0x49, 0xe4, 0x06, 0x49, 0x90, 0xb8, 0x5a, 0xa9, 0x9f, 0x1f, - 0xe8, 0x97, 0x7e, 0xe8, 0xaf, 0xa2, 0x42, 0xeb, 0x81, 0x31, 0xc9, 0x52, 0x1e, 0x31, 0x7f, 0xc8, - 0x63, 0x10, 0xc7, 0x53, 0x9b, 0x11, 0x48, 0xe6, 0x8e, 0xe6, 0x7c, 0xb5, 0xdc, 0xab, 0x58, 0x22, - 0x8f, 0x25, 0x8f, 0x60, 0x8e, 0xb0, 0xf6, 0x3b, 0x42, 0xe6, 0x0f, 0x21, 0x62, 0x73, 0xbc, 0xfb, - 0x57, 0xf1, 0x72, 0xc9, 0x0f, 0x5d, 0x1e, 0xcb, 0x4c, 0x8a, 0x39, 0xd2, 0xca, 0x95, 0x83, 0xff, - 0x45, 0x2f, 0xdd, 0x87, 0x08, 0xed, 0xbc, 0x95, 0x82, 0xbd, 0x60, 0x87, 0x39, 0xe0, 0x36, 0xaa, - 0x72, 0x09, 0x51, 0xd6, 0xb4, 0x3b, 0xe5, 0xe5, 0xba, 0x57, 0x9f, 0x9c, 0xb7, 0xab, 0xbb, 0x0a, - 0xa0, 0x05, 0xbe, 0x51, 0x7b, 0xff, 0xa1, 0x6d, 0x9d, 0x7c, 0xe9, 0x58, 0xdd, 0x8f, 0x25, 0xd4, - 0x78, 0x9e, 0x84, 0x10, 0x53, 0x18, 0x71, 0x38, 0xc2, 0xaf, 0x51, 0x4d, 0xcd, 0x6b, 0xc0, 0x24, - 0x6b, 0xda, 0x1d, 0x7b, 0xb9, 0xb1, 0x7a, 0x8f, 0x98, 0xfd, 0xcd, 0xda, 0x9f, 0x6e, 0x50, 0x65, - 0x93, 0x51, 0x8f, 0x3c, 0xeb, 0xbf, 0x01, 0x5f, 0x3e, 0x05, 0xc9, 0x3c, 0x7c, 0x7a, 0xde, 0xb6, - 0x26, 0xe7, 0x6d, 0x34, 0xc5, 0xe8, 0x85, 0x2a, 0x1e, 0xa0, 0x4a, 0x96, 0x82, 0xdf, 0x2c, 0x69, - 0x75, 0x8f, 0xfc, 0xf1, 0xdf, 0x41, 0x66, 0xfc, 0xee, 0xa5, 0xe0, 0x7b, 0x7f, 0x9b, 0x7a, 0x15, - 0xf5, 0xa2, 0x5a, 0x1d, 0x1f, 0xa2, 0x85, 0x4c, 0x32, 0x99, 0x67, 0xcd, 0xb2, 0xae, 0xb3, 0x7d, - 0xc3, 0x3a, 0x5a, 0xcb, 0xfb, 0xc7, 0x54, 0x5a, 0x28, 0xde, 0xd4, 0xd4, 0xe8, 0xae, 0xa1, 0x7f, - 0x7f, 0x32, 0x85, 0x6f, 0xa3, 0xaa, 0x54, 0x90, 0x9e, 0x62, 0xdd, 0x5b, 0x34, 0xcc, 0x6a, 0x91, - 0x57, 0xc4, 0xba, 0x9f, 0x6c, 0xf4, 0xdf, 0x5c, 0x15, 0xbc, 0x89, 0x16, 0x67, 0x1c, 0xc1, 0x40, - 0x4b, 0xd4, 0xbc, 0xff, 0x8d, 0xc4, 0xe2, 0xd6, 0x6c, 0x90, 0x5e, 0xce, 0xc5, 0xaf, 0x50, 0x25, - 0xcf, 0x40, 0x98, 0xf1, 0x6e, 0x5e, 0xa3, 0xed, 0xfd, 0x0c, 0xc4, 0x6e, 0x7c, 0x90, 0x4c, 0xe7, - 0xaa, 0x10, 0xaa, 0x65, 0x55, 0x5b, 0x20, 0x44, 0x22, 0xf4, 0x58, 0x67, 0xda, 0xda, 0x51, 0x20, - 0x2d, 0x62, 0xdd, 0x71, 0x09, 0xd5, 0x7e, 0xa8, 0xe0, 0x15, 0x54, 0x53, 0xcc, 0x98, 0x45, 0x60, - 0x66, 0xb1, 0x64, 0x48, 0x3a, 0x47, 0xe1, 0xf4, 0x22, 0x03, 0xdf, 0x42, 0xe5, 0x9c, 0x0f, 0xb4, - 0xfb, 0xba, 0xd7, 0x30, 0x89, 0xe5, 0xfd, 0xdd, 0x6d, 0xaa, 0x70, 0xdc, 0x45, 0x0b, 0x81, 0x48, - 0xf2, 0x54, 0xad, 0x55, 0xfd, 0xda, 0x48, 0x2d, 0xe3, 0x89, 0x46, 0xa8, 0x89, 0xe0, 0x10, 0x55, - 0x41, 0xdd, 0x42, 0xb3, 0xd2, 0x29, 0x2f, 0x37, 0x56, 0x1f, 0xdf, 0x60, 0x04, 0x44, 0x1f, 0xd5, - 0x4e, 0x2c, 0xc5, 0xf1, 0x4c, 0xab, 0x0a, 0xa3, 0x45, 0x8d, 0xd6, 0x91, 0x39, 0x3c, 0x9d, 0x83, - 0x97, 0x50, 0x39, 0x84, 0xe3, 0xa2, 0x4d, 0xaa, 0x3e, 0xf1, 0x1e, 0xaa, 0x8e, 0xd4, 0x4d, 0x9a, - 0x7d, 0x3c, 0xba, 0x86, 0x99, 0xe9, 0x61, 0xd3, 0x42, 0x6b, 0xa3, 0xb4, 0x6e, 0x7b, 0x77, 0x4e, - 0xc7, 0x8e, 0x75, 0x36, 0x76, 0xac, 0xcf, 0x63, 0xc7, 0x3a, 0x99, 0x38, 0xf6, 0xe9, 0xc4, 0xb1, - 0xcf, 0x26, 0x8e, 0xfd, 0x75, 0xe2, 0xd8, 0xef, 0xbe, 0x39, 0xd6, 0xcb, 0xbf, 0x8c, 0xc0, 0xf7, - 0x00, 0x00, 0x00, 0xff, 0xff, 0x13, 0x16, 0x33, 0x53, 0xc4, 0x05, 0x00, 0x00, + 0xe3, 0xa1, 0x76, 0x49, 0x2b, 0x44, 0xbb, 0xf3, 0x9c, 0x7b, 0xcf, 0xb9, 0xf7, 0xdc, 0xeb, 0x8b, + 0xb6, 0xfc, 0xf5, 0x84, 0x78, 0x91, 0xe5, 0xa7, 0x03, 0xe0, 0x21, 0x08, 0x48, 0xac, 0xd8, 0x77, + 0x2d, 0x16, 0x7b, 0x89, 0xc5, 0x52, 0x31, 0x82, 0x50, 0x78, 0x0e, 0x13, 0x5e, 0x14, 0x5a, 0x93, + 0xfe, 0x00, 0x04, 0xeb, 0x5b, 0x2e, 0x84, 0xc0, 0x99, 0x80, 0x21, 0x89, 0x79, 0x24, 0x22, 0xdc, + 0xcf, 0x24, 0x48, 0x2e, 0x41, 0x62, 0xdf, 0x25, 0x52, 0x82, 0x5c, 0x96, 0x20, 0x5a, 0xa2, 0x7d, + 0xdf, 0xf5, 0xc4, 0x28, 0x1d, 0x10, 0x27, 0x0a, 0x2c, 0x37, 0x72, 0x23, 0x4b, 0x29, 0x0d, 0xd2, + 0x03, 0xf5, 0x52, 0x0f, 0xf5, 0x95, 0x55, 0x68, 0x3f, 0xd2, 0x4d, 0xb2, 0xd8, 0x0b, 0x98, 0x33, + 0xf2, 0x42, 0xe0, 0xc7, 0x79, 0x9b, 0x01, 0x08, 0x66, 0x4d, 0xe6, 0xfa, 0x6a, 0x5b, 0xd7, 0xb1, + 0x78, 0x1a, 0x0a, 0x2f, 0x80, 0x39, 0xc2, 0xda, 0xef, 0x08, 0x89, 0x33, 0x82, 0x80, 0xcd, 0xf1, + 0x1e, 0x5e, 0xc7, 0x4b, 0x85, 0x37, 0xb6, 0xbc, 0x50, 0x24, 0x82, 0xcf, 0x91, 0x0a, 0x9e, 0x12, + 0xe0, 0x13, 0xe0, 0xb9, 0x21, 0x38, 0x62, 0x41, 0x3c, 0x86, 0xab, 0x3c, 0xad, 0x5c, 0xbb, 0xae, + 0x2b, 0xb2, 0x7b, 0x8f, 0x11, 0xda, 0x39, 0x12, 0x9c, 0xbd, 0x62, 0xe3, 0x14, 0x70, 0x07, 0xd5, + 0x3c, 0x01, 0x41, 0xd2, 0x32, 0xba, 0x95, 0xe5, 0x86, 0xdd, 0x98, 0x9d, 0x77, 0x6a, 0xbb, 0x12, + 0xa0, 0x19, 0xbe, 0x51, 0xff, 0xf0, 0xb1, 0x53, 0x3a, 0xf9, 0xda, 0x2d, 0xf5, 0x3e, 0x95, 0x51, + 0xf3, 0x65, 0xe4, 0x43, 0x48, 0x61, 0xe2, 0xc1, 0x21, 0x7e, 0x8b, 0xea, 0x72, 0xca, 0x43, 0x26, + 0x58, 0xcb, 0xe8, 0x1a, 0xcb, 0xcd, 0xd5, 0x07, 0x44, 0x6f, 0xbd, 0x68, 0x3a, 0xdf, 0xbb, 0xcc, + 0x26, 0x93, 0x3e, 0x79, 0x31, 0x78, 0x07, 0x8e, 0x78, 0x0e, 0x82, 0xd9, 0xf8, 0xf4, 0xbc, 0x53, + 0x9a, 0x9d, 0x77, 0x50, 0x8e, 0xd1, 0x0b, 0x55, 0x3c, 0x44, 0xd5, 0x24, 0x06, 0xa7, 0x55, 0x56, + 0xea, 0x36, 0xf9, 0xe3, 0x7f, 0x8a, 0x14, 0xfa, 0xdd, 0x8b, 0xc1, 0xb1, 0xff, 0xd6, 0xf5, 0xaa, + 0xf2, 0x45, 0x95, 0x3a, 0x1e, 0xa3, 0x85, 0x44, 0x30, 0x91, 0x26, 0xad, 0x8a, 0xaa, 0xb3, 0x7d, + 0xcb, 0x3a, 0x4a, 0xcb, 0xfe, 0x47, 0x57, 0x5a, 0xc8, 0xde, 0x54, 0xd7, 0xe8, 0xad, 0xa1, 0x7f, + 0x7f, 0x69, 0x0a, 0xdf, 0x45, 0x35, 0x21, 0x21, 0x35, 0xc5, 0x86, 0xbd, 0xa8, 0x99, 0xb5, 0x2c, + 0x2f, 0x8b, 0xf5, 0x3e, 0x1b, 0xe8, 0xbf, 0xb9, 0x2a, 0x78, 0x13, 0x2d, 0x16, 0x3a, 0x82, 0xa1, + 0x92, 0xa8, 0xdb, 0xff, 0x6b, 0x89, 0xc5, 0xad, 0x62, 0x90, 0x5e, 0xce, 0xc5, 0x6f, 0x50, 0x35, + 0x4d, 0x80, 0xeb, 0xf1, 0x6e, 0xde, 0xc0, 0xf6, 0x7e, 0x02, 0x7c, 0x37, 0x3c, 0x88, 0xf2, 0xb9, + 0x4a, 0x84, 0x2a, 0x59, 0x69, 0x0b, 0x38, 0x8f, 0xb8, 0x1a, 0x6b, 0xc1, 0xd6, 0x8e, 0x04, 0x69, + 0x16, 0xeb, 0x4d, 0xcb, 0xa8, 0xfe, 0x53, 0x05, 0xaf, 0xa0, 0xba, 0x64, 0x86, 0x2c, 0x00, 0x3d, + 0x8b, 0x25, 0x4d, 0x52, 0x39, 0x12, 0xa7, 0x17, 0x19, 0xf8, 0x0e, 0xaa, 0xa4, 0xde, 0x50, 0x75, + 0xdf, 0xb0, 0x9b, 0x3a, 0xb1, 0xb2, 0xbf, 0xbb, 0x4d, 0x25, 0x8e, 0x7b, 0x68, 0xc1, 0xe5, 0x51, + 0x1a, 0xcb, 0xb5, 0xca, 0x5f, 0x1b, 0xc9, 0x65, 0x3c, 0x53, 0x08, 0xd5, 0x11, 0xec, 0xa3, 0x1a, + 0xc8, 0x5b, 0x68, 0x55, 0xbb, 0x95, 0xe5, 0xe6, 0xea, 0xd3, 0x5b, 0x8c, 0x80, 0xa8, 0xa3, 0xda, + 0x09, 0x05, 0x3f, 0x2e, 0x58, 0x95, 0x18, 0xcd, 0x6a, 0xb4, 0x0f, 0xf5, 0xe1, 0xa9, 0x1c, 0xbc, + 0x84, 0x2a, 0x3e, 0x1c, 0x67, 0x36, 0xa9, 0xfc, 0xc4, 0x7b, 0xa8, 0x36, 0x91, 0x37, 0xa9, 0xf7, + 0xf1, 0xe4, 0x06, 0xcd, 0xe4, 0x87, 0x4d, 0x33, 0xad, 0x8d, 0xf2, 0xba, 0x61, 0xdf, 0x3b, 0x9d, + 0x9a, 0xa5, 0xb3, 0xa9, 0x59, 0xfa, 0x32, 0x35, 0x4b, 0x27, 0x33, 0xd3, 0x38, 0x9d, 0x99, 0xc6, + 0xd9, 0xcc, 0x34, 0xbe, 0xcd, 0x4c, 0xe3, 0xfd, 0x77, 0xb3, 0xf4, 0xfa, 0x2f, 0x2d, 0xf0, 0x23, + 0x00, 0x00, 0xff, 0xff, 0xb9, 0x87, 0xc6, 0x94, 0xfa, 0x05, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.proto index fb9a5cdbde5..cbc050970a7 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.proto @@ -25,6 +25,7 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/install/install.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/install/install.go index be65ff7d204..33eee6618c6 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/authorization/install/install.go +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/install/install.go @@ -25,6 +25,7 @@ import ( "k8s.io/apimachinery/pkg/util/sets" "k8s.io/client-go/pkg/api" "k8s.io/client-go/pkg/apis/authorization" + "k8s.io/client-go/pkg/apis/authorization/v1" "k8s.io/client-go/pkg/apis/authorization/v1beta1" ) @@ -37,13 +38,14 @@ func Install(groupFactoryRegistry announced.APIGroupFactoryRegistry, registry *r if err := announced.NewGroupMetaFactory( &announced.GroupMetaFactoryArgs{ GroupName: authorization.GroupName, - VersionPreferenceOrder: []string{v1beta1.SchemeGroupVersion.Version}, + VersionPreferenceOrder: []string{v1.SchemeGroupVersion.Version, v1beta1.SchemeGroupVersion.Version}, ImportPrefix: "k8s.io/client-go/pkg/apis/authorization", RootScopedKinds: sets.NewString("SubjectAccessReview", "SelfSubjectAccessReview"), AddInternalObjectsToScheme: authorization.AddToScheme, }, announced.VersionToSchemeFunc{ v1beta1.SchemeGroupVersion.Version: v1beta1.AddToScheme, + v1.SchemeGroupVersion.Version: v1.AddToScheme, }, ).Announce(groupFactoryRegistry).RegisterAndEnable(registry, scheme); err != nil { panic(err) diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/conversion.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/conversion.go new file mode 100644 index 00000000000..2ff5732d6db --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/conversion.go @@ -0,0 +1,26 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + "k8s.io/apimachinery/pkg/runtime" +) + +func addConversionFuncs(scheme *runtime.Scheme) error { + // Add non-generated conversion functions + return scheme.AddConversionFuncs() +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/defaults.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/defaults.go new file mode 100644 index 00000000000..d63d917543e --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/defaults.go @@ -0,0 +1,25 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + "k8s.io/apimachinery/pkg/runtime" +) + +func addDefaultingFuncs(scheme *runtime.Scheme) error { + return scheme.AddDefaultingFuncs() +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/doc.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/doc.go new file mode 100644 index 00000000000..41741dd537e --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/doc.go @@ -0,0 +1,18 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// +groupName=authorization.k8s.io +package v1 diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/generated.pb.go new file mode 100644 index 00000000000..7bacc51693c --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/generated.pb.go @@ -0,0 +1,2344 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by protoc-gen-gogo. +// source: k8s.io/kubernetes/pkg/apis/authorization/v1/generated.proto +// DO NOT EDIT! + +/* + Package v1 is a generated protocol buffer package. + + It is generated from these files: + k8s.io/kubernetes/pkg/apis/authorization/v1/generated.proto + + It has these top-level messages: + ExtraValue + LocalSubjectAccessReview + NonResourceAttributes + ResourceAttributes + SelfSubjectAccessReview + SelfSubjectAccessReviewSpec + SubjectAccessReview + SubjectAccessReviewSpec + SubjectAccessReviewStatus +*/ +package v1 + +import proto "github.com/gogo/protobuf/proto" +import fmt "fmt" +import math "math" + +import strings "strings" +import reflect "reflect" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + +import io "io" + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +const _ = proto.GoGoProtoPackageIsVersion1 + +func (m *ExtraValue) Reset() { *m = ExtraValue{} } +func (*ExtraValue) ProtoMessage() {} +func (*ExtraValue) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{0} } + +func (m *LocalSubjectAccessReview) Reset() { *m = LocalSubjectAccessReview{} } +func (*LocalSubjectAccessReview) ProtoMessage() {} +func (*LocalSubjectAccessReview) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{1} +} + +func (m *NonResourceAttributes) Reset() { *m = NonResourceAttributes{} } +func (*NonResourceAttributes) ProtoMessage() {} +func (*NonResourceAttributes) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{2} } + +func (m *ResourceAttributes) Reset() { *m = ResourceAttributes{} } +func (*ResourceAttributes) ProtoMessage() {} +func (*ResourceAttributes) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{3} } + +func (m *SelfSubjectAccessReview) Reset() { *m = SelfSubjectAccessReview{} } +func (*SelfSubjectAccessReview) ProtoMessage() {} +func (*SelfSubjectAccessReview) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } + +func (m *SelfSubjectAccessReviewSpec) Reset() { *m = SelfSubjectAccessReviewSpec{} } +func (*SelfSubjectAccessReviewSpec) ProtoMessage() {} +func (*SelfSubjectAccessReviewSpec) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{5} +} + +func (m *SubjectAccessReview) Reset() { *m = SubjectAccessReview{} } +func (*SubjectAccessReview) ProtoMessage() {} +func (*SubjectAccessReview) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } + +func (m *SubjectAccessReviewSpec) Reset() { *m = SubjectAccessReviewSpec{} } +func (*SubjectAccessReviewSpec) ProtoMessage() {} +func (*SubjectAccessReviewSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } + +func (m *SubjectAccessReviewStatus) Reset() { *m = SubjectAccessReviewStatus{} } +func (*SubjectAccessReviewStatus) ProtoMessage() {} +func (*SubjectAccessReviewStatus) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{8} +} + +func init() { + proto.RegisterType((*ExtraValue)(nil), "k8s.io.client-go.pkg.apis.authorization.v1.ExtraValue") + proto.RegisterType((*LocalSubjectAccessReview)(nil), "k8s.io.client-go.pkg.apis.authorization.v1.LocalSubjectAccessReview") + proto.RegisterType((*NonResourceAttributes)(nil), "k8s.io.client-go.pkg.apis.authorization.v1.NonResourceAttributes") + proto.RegisterType((*ResourceAttributes)(nil), "k8s.io.client-go.pkg.apis.authorization.v1.ResourceAttributes") + proto.RegisterType((*SelfSubjectAccessReview)(nil), "k8s.io.client-go.pkg.apis.authorization.v1.SelfSubjectAccessReview") + proto.RegisterType((*SelfSubjectAccessReviewSpec)(nil), "k8s.io.client-go.pkg.apis.authorization.v1.SelfSubjectAccessReviewSpec") + proto.RegisterType((*SubjectAccessReview)(nil), "k8s.io.client-go.pkg.apis.authorization.v1.SubjectAccessReview") + proto.RegisterType((*SubjectAccessReviewSpec)(nil), "k8s.io.client-go.pkg.apis.authorization.v1.SubjectAccessReviewSpec") + proto.RegisterType((*SubjectAccessReviewStatus)(nil), "k8s.io.client-go.pkg.apis.authorization.v1.SubjectAccessReviewStatus") +} +func (m ExtraValue) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m ExtraValue) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m) > 0 { + for _, s := range m { + data[i] = 0xa + i++ + l = len(s) + for l >= 1<<7 { + data[i] = uint8(uint64(l)&0x7f | 0x80) + l >>= 7 + i++ + } + data[i] = uint8(l) + i++ + i += copy(data[i:], s) + } + } + return i, nil +} + +func (m *LocalSubjectAccessReview) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *LocalSubjectAccessReview) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) + n1, err := m.ObjectMeta.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n1 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) + n2, err := m.Spec.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n2 + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) + n3, err := m.Status.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n3 + return i, nil +} + +func (m *NonResourceAttributes) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *NonResourceAttributes) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Path))) + i += copy(data[i:], m.Path) + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Verb))) + i += copy(data[i:], m.Verb) + return i, nil +} + +func (m *ResourceAttributes) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *ResourceAttributes) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Namespace))) + i += copy(data[i:], m.Namespace) + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Verb))) + i += copy(data[i:], m.Verb) + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Group))) + i += copy(data[i:], m.Group) + data[i] = 0x22 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Version))) + i += copy(data[i:], m.Version) + data[i] = 0x2a + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Resource))) + i += copy(data[i:], m.Resource) + data[i] = 0x32 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Subresource))) + i += copy(data[i:], m.Subresource) + data[i] = 0x3a + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Name))) + i += copy(data[i:], m.Name) + return i, nil +} + +func (m *SelfSubjectAccessReview) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *SelfSubjectAccessReview) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) + n4, err := m.ObjectMeta.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n4 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) + n5, err := m.Spec.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n5 + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) + n6, err := m.Status.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n6 + return i, nil +} + +func (m *SelfSubjectAccessReviewSpec) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *SelfSubjectAccessReviewSpec) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.ResourceAttributes != nil { + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.ResourceAttributes.Size())) + n7, err := m.ResourceAttributes.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n7 + } + if m.NonResourceAttributes != nil { + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.NonResourceAttributes.Size())) + n8, err := m.NonResourceAttributes.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n8 + } + return i, nil +} + +func (m *SubjectAccessReview) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *SubjectAccessReview) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) + n9, err := m.ObjectMeta.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n9 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) + n10, err := m.Spec.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n10 + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) + n11, err := m.Status.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n11 + return i, nil +} + +func (m *SubjectAccessReviewSpec) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *SubjectAccessReviewSpec) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.ResourceAttributes != nil { + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.ResourceAttributes.Size())) + n12, err := m.ResourceAttributes.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n12 + } + if m.NonResourceAttributes != nil { + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.NonResourceAttributes.Size())) + n13, err := m.NonResourceAttributes.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n13 + } + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.User))) + i += copy(data[i:], m.User) + if len(m.Groups) > 0 { + for _, s := range m.Groups { + data[i] = 0x22 + i++ + l = len(s) + for l >= 1<<7 { + data[i] = uint8(uint64(l)&0x7f | 0x80) + l >>= 7 + i++ + } + data[i] = uint8(l) + i++ + i += copy(data[i:], s) + } + } + if len(m.Extra) > 0 { + for k := range m.Extra { + data[i] = 0x2a + i++ + v := m.Extra[k] + msgSize := (&v).Size() + mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + msgSize + sovGenerated(uint64(msgSize)) + i = encodeVarintGenerated(data, i, uint64(mapSize)) + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(k))) + i += copy(data[i:], k) + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64((&v).Size())) + n14, err := (&v).MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n14 + } + } + return i, nil +} + +func (m *SubjectAccessReviewStatus) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *SubjectAccessReviewStatus) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0x8 + i++ + if m.Allowed { + data[i] = 1 + } else { + data[i] = 0 + } + i++ + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Reason))) + i += copy(data[i:], m.Reason) + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.EvaluationError))) + i += copy(data[i:], m.EvaluationError) + return i, nil +} + +func encodeFixed64Generated(data []byte, offset int, v uint64) int { + data[offset] = uint8(v) + data[offset+1] = uint8(v >> 8) + data[offset+2] = uint8(v >> 16) + data[offset+3] = uint8(v >> 24) + data[offset+4] = uint8(v >> 32) + data[offset+5] = uint8(v >> 40) + data[offset+6] = uint8(v >> 48) + data[offset+7] = uint8(v >> 56) + return offset + 8 +} +func encodeFixed32Generated(data []byte, offset int, v uint32) int { + data[offset] = uint8(v) + data[offset+1] = uint8(v >> 8) + data[offset+2] = uint8(v >> 16) + data[offset+3] = uint8(v >> 24) + return offset + 4 +} +func encodeVarintGenerated(data []byte, offset int, v uint64) int { + for v >= 1<<7 { + data[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + data[offset] = uint8(v) + return offset + 1 +} +func (m ExtraValue) Size() (n int) { + var l int + _ = l + if len(m) > 0 { + for _, s := range m { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *LocalSubjectAccessReview) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Spec.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Status.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *NonResourceAttributes) Size() (n int) { + var l int + _ = l + l = len(m.Path) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Verb) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *ResourceAttributes) Size() (n int) { + var l int + _ = l + l = len(m.Namespace) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Verb) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Group) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Version) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Resource) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Subresource) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Name) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *SelfSubjectAccessReview) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Spec.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Status.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *SelfSubjectAccessReviewSpec) Size() (n int) { + var l int + _ = l + if m.ResourceAttributes != nil { + l = m.ResourceAttributes.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + if m.NonResourceAttributes != nil { + l = m.NonResourceAttributes.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *SubjectAccessReview) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Spec.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Status.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *SubjectAccessReviewSpec) Size() (n int) { + var l int + _ = l + if m.ResourceAttributes != nil { + l = m.ResourceAttributes.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + if m.NonResourceAttributes != nil { + l = m.NonResourceAttributes.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + l = len(m.User) + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Groups) > 0 { + for _, s := range m.Groups { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } + if len(m.Extra) > 0 { + for k, v := range m.Extra { + _ = k + _ = v + l = v.Size() + mapEntrySize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + l + sovGenerated(uint64(l)) + n += mapEntrySize + 1 + sovGenerated(uint64(mapEntrySize)) + } + } + return n +} + +func (m *SubjectAccessReviewStatus) Size() (n int) { + var l int + _ = l + n += 2 + l = len(m.Reason) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.EvaluationError) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func sovGenerated(x uint64) (n int) { + for { + n++ + x >>= 7 + if x == 0 { + break + } + } + return n +} +func sozGenerated(x uint64) (n int) { + return sovGenerated(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *LocalSubjectAccessReview) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LocalSubjectAccessReview{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "SubjectAccessReviewSpec", "SubjectAccessReviewSpec", 1), `&`, ``, 1) + `,`, + `Status:` + strings.Replace(strings.Replace(this.Status.String(), "SubjectAccessReviewStatus", "SubjectAccessReviewStatus", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *NonResourceAttributes) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NonResourceAttributes{`, + `Path:` + fmt.Sprintf("%v", this.Path) + `,`, + `Verb:` + fmt.Sprintf("%v", this.Verb) + `,`, + `}`, + }, "") + return s +} +func (this *ResourceAttributes) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ResourceAttributes{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Verb:` + fmt.Sprintf("%v", this.Verb) + `,`, + `Group:` + fmt.Sprintf("%v", this.Group) + `,`, + `Version:` + fmt.Sprintf("%v", this.Version) + `,`, + `Resource:` + fmt.Sprintf("%v", this.Resource) + `,`, + `Subresource:` + fmt.Sprintf("%v", this.Subresource) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `}`, + }, "") + return s +} +func (this *SelfSubjectAccessReview) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SelfSubjectAccessReview{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "SelfSubjectAccessReviewSpec", "SelfSubjectAccessReviewSpec", 1), `&`, ``, 1) + `,`, + `Status:` + strings.Replace(strings.Replace(this.Status.String(), "SubjectAccessReviewStatus", "SubjectAccessReviewStatus", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *SelfSubjectAccessReviewSpec) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SelfSubjectAccessReviewSpec{`, + `ResourceAttributes:` + strings.Replace(fmt.Sprintf("%v", this.ResourceAttributes), "ResourceAttributes", "ResourceAttributes", 1) + `,`, + `NonResourceAttributes:` + strings.Replace(fmt.Sprintf("%v", this.NonResourceAttributes), "NonResourceAttributes", "NonResourceAttributes", 1) + `,`, + `}`, + }, "") + return s +} +func (this *SubjectAccessReview) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubjectAccessReview{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "SubjectAccessReviewSpec", "SubjectAccessReviewSpec", 1), `&`, ``, 1) + `,`, + `Status:` + strings.Replace(strings.Replace(this.Status.String(), "SubjectAccessReviewStatus", "SubjectAccessReviewStatus", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *SubjectAccessReviewSpec) String() string { + if this == nil { + return "nil" + } + keysForExtra := make([]string, 0, len(this.Extra)) + for k := range this.Extra { + keysForExtra = append(keysForExtra, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExtra) + mapStringForExtra := "map[string]ExtraValue{" + for _, k := range keysForExtra { + mapStringForExtra += fmt.Sprintf("%v: %v,", k, this.Extra[k]) + } + mapStringForExtra += "}" + s := strings.Join([]string{`&SubjectAccessReviewSpec{`, + `ResourceAttributes:` + strings.Replace(fmt.Sprintf("%v", this.ResourceAttributes), "ResourceAttributes", "ResourceAttributes", 1) + `,`, + `NonResourceAttributes:` + strings.Replace(fmt.Sprintf("%v", this.NonResourceAttributes), "NonResourceAttributes", "NonResourceAttributes", 1) + `,`, + `User:` + fmt.Sprintf("%v", this.User) + `,`, + `Groups:` + fmt.Sprintf("%v", this.Groups) + `,`, + `Extra:` + mapStringForExtra + `,`, + `}`, + }, "") + return s +} +func (this *SubjectAccessReviewStatus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&SubjectAccessReviewStatus{`, + `Allowed:` + fmt.Sprintf("%v", this.Allowed) + `,`, + `Reason:` + fmt.Sprintf("%v", this.Reason) + `,`, + `EvaluationError:` + fmt.Sprintf("%v", this.EvaluationError) + `,`, + `}`, + }, "") + return s +} +func valueToStringGenerated(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *ExtraValue) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ExtraValue: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ExtraValue: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + *m = append(*m, string(data[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *LocalSubjectAccessReview) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: LocalSubjectAccessReview: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: LocalSubjectAccessReview: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Spec.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Status.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NonResourceAttributes) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NonResourceAttributes: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NonResourceAttributes: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Path = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Verb", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Verb = string(data[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ResourceAttributes) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ResourceAttributes: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ResourceAttributes: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Verb", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Verb = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Group", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Group = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Version = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Resource", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Resource = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Subresource", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Subresource = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(data[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SelfSubjectAccessReview) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SelfSubjectAccessReview: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SelfSubjectAccessReview: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Spec.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Status.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SelfSubjectAccessReviewSpec) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SelfSubjectAccessReviewSpec: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SelfSubjectAccessReviewSpec: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceAttributes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ResourceAttributes == nil { + m.ResourceAttributes = &ResourceAttributes{} + } + if err := m.ResourceAttributes.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NonResourceAttributes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.NonResourceAttributes == nil { + m.NonResourceAttributes = &NonResourceAttributes{} + } + if err := m.NonResourceAttributes.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SubjectAccessReview) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SubjectAccessReview: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SubjectAccessReview: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Spec.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Status.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SubjectAccessReviewSpec) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SubjectAccessReviewSpec: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SubjectAccessReviewSpec: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceAttributes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.ResourceAttributes == nil { + m.ResourceAttributes = &ResourceAttributes{} + } + if err := m.ResourceAttributes.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NonResourceAttributes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.NonResourceAttributes == nil { + m.NonResourceAttributes = &NonResourceAttributes{} + } + if err := m.NonResourceAttributes.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field User", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.User = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Groups", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Groups = append(m.Groups, string(data[iNdEx:postIndex])) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Extra", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + var keykey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + keykey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLenmapkey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthGenerated + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey := string(data[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + var valuekey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + valuekey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + var mapmsglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + mapmsglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if mapmsglen < 0 { + return ErrInvalidLengthGenerated + } + postmsgIndex := iNdEx + mapmsglen + if mapmsglen < 0 { + return ErrInvalidLengthGenerated + } + if postmsgIndex > l { + return io.ErrUnexpectedEOF + } + mapvalue := &ExtraValue{} + if err := mapvalue.Unmarshal(data[iNdEx:postmsgIndex]); err != nil { + return err + } + iNdEx = postmsgIndex + if m.Extra == nil { + m.Extra = make(map[string]ExtraValue) + } + m.Extra[mapkey] = *mapvalue + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SubjectAccessReviewStatus) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SubjectAccessReviewStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SubjectAccessReviewStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Allowed", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + v |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.Allowed = bool(v != 0) + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Reason", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Reason = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EvaluationError", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EvaluationError = string(data[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipGenerated(data []byte) (n int, err error) { + l := len(data) + iNdEx := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if data[iNdEx-1] < 0x80 { + break + } + } + return iNdEx, nil + case 1: + iNdEx += 8 + return iNdEx, nil + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + iNdEx += length + if length < 0 { + return 0, ErrInvalidLengthGenerated + } + return iNdEx, nil + case 3: + for { + var innerWire uint64 + var start int = iNdEx + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + innerWire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + innerWireType := int(innerWire & 0x7) + if innerWireType == 4 { + break + } + next, err := skipGenerated(data[start:]) + if err != nil { + return 0, err + } + iNdEx = start + next + } + return iNdEx, nil + case 4: + return iNdEx, nil + case 5: + iNdEx += 4 + return iNdEx, nil + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + } + panic("unreachable") +} + +var ( + ErrInvalidLengthGenerated = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowGenerated = fmt.Errorf("proto: integer overflow") +) + +var fileDescriptorGenerated = []byte{ + // 904 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xec, 0x56, 0x4f, 0x6f, 0x1b, 0x45, + 0x14, 0xf7, 0xfa, 0x5f, 0xec, 0x09, 0x90, 0x32, 0x55, 0xc9, 0x36, 0x48, 0xb6, 0x65, 0x10, 0x0a, + 0xa2, 0xec, 0x92, 0xf2, 0xa7, 0x55, 0x39, 0xa0, 0xac, 0x08, 0x7f, 0x24, 0xda, 0xa2, 0x89, 0xc8, + 0x01, 0x2e, 0x8c, 0x37, 0x2f, 0xf6, 0xd6, 0xde, 0x9d, 0x65, 0x66, 0x76, 0xdb, 0x70, 0xea, 0x8d, + 0x2b, 0x12, 0x17, 0x8e, 0x7c, 0x05, 0x3e, 0x00, 0x9c, 0x73, 0xa3, 0x07, 0x24, 0x38, 0x20, 0x8b, + 0x2c, 0x17, 0x3e, 0x06, 0x9a, 0xd9, 0x89, 0x37, 0xc6, 0x6b, 0x2a, 0x43, 0x25, 0x7a, 0xe8, 0x6d, + 0xe7, 0xbd, 0xdf, 0xef, 0xbd, 0xdf, 0xbc, 0x79, 0xb3, 0x6f, 0xd0, 0xdb, 0xe3, 0xeb, 0xc2, 0x09, + 0x98, 0x3b, 0x4e, 0x06, 0xc0, 0x23, 0x90, 0x20, 0xdc, 0x78, 0x3c, 0x74, 0x69, 0x1c, 0x08, 0x97, + 0x26, 0x72, 0xc4, 0x78, 0xf0, 0x25, 0x95, 0x01, 0x8b, 0xdc, 0x74, 0xc7, 0x1d, 0x42, 0x04, 0x9c, + 0x4a, 0x38, 0x74, 0x62, 0xce, 0x24, 0xc3, 0xaf, 0xe4, 0x64, 0xa7, 0x20, 0x3b, 0xf1, 0x78, 0xe8, + 0x28, 0xb2, 0x33, 0x47, 0x76, 0xd2, 0x9d, 0xad, 0x57, 0x87, 0x81, 0x1c, 0x25, 0x03, 0xc7, 0x67, + 0xa1, 0x3b, 0x64, 0x43, 0xe6, 0xea, 0x18, 0x83, 0xe4, 0x48, 0xaf, 0xf4, 0x42, 0x7f, 0xe5, 0xb1, + 0xb7, 0xde, 0x30, 0xc2, 0x68, 0x1c, 0x84, 0xd4, 0x1f, 0x05, 0x11, 0xf0, 0xe3, 0x42, 0x5a, 0x08, + 0x92, 0x96, 0x28, 0xda, 0x72, 0x97, 0xb1, 0x78, 0x12, 0xc9, 0x20, 0x84, 0x05, 0xc2, 0x5b, 0x0f, + 0x23, 0x08, 0x7f, 0x04, 0x21, 0x5d, 0xe0, 0xbd, 0xbe, 0x8c, 0x97, 0xc8, 0x60, 0xe2, 0x06, 0x91, + 0x14, 0x92, 0x2f, 0x90, 0xce, 0xed, 0x49, 0x00, 0x4f, 0x81, 0x17, 0x1b, 0x82, 0x7b, 0x34, 0x8c, + 0x27, 0x50, 0xb6, 0xa7, 0x2b, 0x4b, 0x8f, 0xa8, 0x04, 0xdd, 0xbf, 0x86, 0xd0, 0xde, 0x3d, 0xc9, + 0xe9, 0x01, 0x9d, 0x24, 0x80, 0xbb, 0xa8, 0x11, 0x48, 0x08, 0x85, 0x6d, 0xf5, 0x6a, 0xdb, 0x6d, + 0xaf, 0x9d, 0x4d, 0xbb, 0x8d, 0x0f, 0x95, 0x81, 0xe4, 0xf6, 0x1b, 0xad, 0x6f, 0xbf, 0xeb, 0x56, + 0xee, 0xff, 0xd6, 0xab, 0xf4, 0x7f, 0xae, 0x22, 0xfb, 0x23, 0xe6, 0xd3, 0xc9, 0x7e, 0x32, 0xb8, + 0x03, 0xbe, 0xdc, 0xf5, 0x7d, 0x10, 0x82, 0x40, 0x1a, 0xc0, 0x5d, 0xfc, 0x39, 0x6a, 0xa9, 0x92, + 0x1f, 0x52, 0x49, 0x6d, 0xab, 0x67, 0x6d, 0xaf, 0x5f, 0x7d, 0xcd, 0x31, 0x87, 0x7f, 0xbe, 0x02, + 0xc5, 0xf1, 0x2b, 0xb4, 0x93, 0xee, 0x38, 0xb7, 0x75, 0xac, 0x9b, 0x20, 0xa9, 0x87, 0x4f, 0xa6, + 0xdd, 0x4a, 0x36, 0xed, 0xa2, 0xc2, 0x46, 0x66, 0x51, 0xf1, 0x11, 0xaa, 0x8b, 0x18, 0x7c, 0xbb, + 0xaa, 0xa3, 0xbf, 0xeb, 0xac, 0xd0, 0x5a, 0x4e, 0x89, 0xe2, 0xfd, 0x18, 0x7c, 0xef, 0x29, 0x93, + 0xb1, 0xae, 0x56, 0x44, 0xc7, 0xc7, 0x11, 0x6a, 0x0a, 0x49, 0x65, 0x22, 0xec, 0x9a, 0xce, 0xf4, + 0xde, 0x7f, 0xce, 0xa4, 0xa3, 0x79, 0xcf, 0x98, 0x5c, 0xcd, 0x7c, 0x4d, 0x4c, 0x96, 0xfe, 0x67, + 0xe8, 0xd2, 0x2d, 0x16, 0x11, 0x10, 0x2c, 0xe1, 0x3e, 0xec, 0x4a, 0xc9, 0x83, 0x41, 0x22, 0x41, + 0xe0, 0x1e, 0xaa, 0xc7, 0x54, 0x8e, 0x74, 0x39, 0xdb, 0x85, 0xd4, 0x8f, 0xa9, 0x1c, 0x11, 0xed, + 0x51, 0x88, 0x14, 0xf8, 0x40, 0x97, 0xe4, 0x1c, 0xe2, 0x00, 0xf8, 0x80, 0x68, 0x4f, 0xff, 0xc7, + 0x2a, 0xc2, 0x25, 0xa1, 0x5d, 0xd4, 0x8e, 0x68, 0x08, 0x22, 0xa6, 0x3e, 0x98, 0xf8, 0xcf, 0x1a, + 0x76, 0xfb, 0xd6, 0x99, 0x83, 0x14, 0x98, 0x87, 0x67, 0xc2, 0x2f, 0xa0, 0xc6, 0x90, 0xb3, 0x24, + 0xd6, 0x55, 0x6b, 0x7b, 0x4f, 0x1b, 0x48, 0xe3, 0x7d, 0x65, 0x24, 0xb9, 0x0f, 0xbf, 0x8c, 0xd6, + 0x52, 0xe0, 0x22, 0x60, 0x91, 0x5d, 0xd7, 0xb0, 0x0d, 0x03, 0x5b, 0x3b, 0xc8, 0xcd, 0xe4, 0xcc, + 0x8f, 0xaf, 0xa0, 0x16, 0x37, 0xc2, 0xed, 0x86, 0xc6, 0x5e, 0x30, 0xd8, 0xd6, 0xd9, 0x86, 0xc8, + 0x0c, 0x81, 0xdf, 0x44, 0xeb, 0x22, 0x19, 0xcc, 0x08, 0x4d, 0x4d, 0xb8, 0x68, 0x08, 0xeb, 0xfb, + 0x85, 0x8b, 0x9c, 0xc7, 0xa9, 0x6d, 0xa9, 0x3d, 0xda, 0x6b, 0xf3, 0xdb, 0x52, 0x25, 0x20, 0xda, + 0xd3, 0xff, 0xa5, 0x8a, 0x36, 0xf7, 0x61, 0x72, 0xf4, 0xff, 0xf4, 0xfc, 0x9d, 0xb9, 0x9e, 0xff, + 0x60, 0xb5, 0x4e, 0x2c, 0x57, 0xfd, 0xd8, 0xf4, 0xfd, 0x0f, 0x55, 0xf4, 0xfc, 0x3f, 0x68, 0xc4, + 0x5f, 0x59, 0x08, 0xf3, 0x85, 0xd6, 0x35, 0x85, 0x7e, 0x67, 0x25, 0x71, 0x8b, 0x37, 0xc0, 0x7b, + 0x2e, 0x9b, 0x76, 0x4b, 0x6e, 0x06, 0x29, 0x49, 0x89, 0xbf, 0xb1, 0xd0, 0xa5, 0xa8, 0xec, 0x8a, + 0x9a, 0x73, 0xf1, 0x56, 0x12, 0x53, 0x7a, 0xd9, 0xbd, 0xcb, 0xd9, 0xb4, 0x5b, 0xfe, 0x1f, 0x20, + 0xe5, 0xb9, 0xfb, 0x3f, 0x55, 0xd1, 0xc5, 0x27, 0x7f, 0xe2, 0x47, 0xd9, 0x91, 0x7f, 0xd6, 0xd1, + 0xe6, 0x93, 0x6e, 0xfc, 0x57, 0xdd, 0x38, 0x1b, 0x10, 0xb5, 0xf9, 0x3f, 0xe9, 0x27, 0x02, 0xb8, + 0x19, 0x10, 0x7d, 0xd4, 0xd4, 0x43, 0x40, 0xd8, 0x75, 0xfd, 0xd4, 0x40, 0xea, 0x04, 0xf4, 0x74, + 0x10, 0xc4, 0x78, 0xb0, 0x44, 0x0d, 0x50, 0x6f, 0x13, 0xbb, 0xd1, 0xab, 0x6d, 0xaf, 0x5f, 0xbd, + 0xfd, 0x28, 0x5a, 0xcb, 0xd1, 0xaf, 0x9d, 0xbd, 0x48, 0xf2, 0xe3, 0x62, 0x2a, 0x69, 0x1b, 0xc9, + 0x93, 0x6d, 0x7d, 0x61, 0x5e, 0x44, 0x1a, 0x83, 0x2f, 0xa0, 0xda, 0x18, 0x8e, 0xf3, 0xa9, 0x48, + 0xd4, 0x27, 0xbe, 0x89, 0x1a, 0xa9, 0x7a, 0x2c, 0x99, 0x02, 0x5f, 0x5b, 0x49, 0x55, 0xf1, 0xd6, + 0x22, 0x79, 0x94, 0x1b, 0xd5, 0xeb, 0x56, 0xff, 0x7b, 0x0b, 0x5d, 0x5e, 0xda, 0xa0, 0x6a, 0x4c, + 0xd2, 0xc9, 0x84, 0xdd, 0x85, 0x43, 0x2d, 0xa3, 0x55, 0x8c, 0xc9, 0xdd, 0xdc, 0x4c, 0xce, 0xfc, + 0xf8, 0x25, 0xd4, 0xe4, 0x40, 0x05, 0x8b, 0xcc, 0x68, 0x9e, 0xf5, 0x36, 0xd1, 0x56, 0x62, 0xbc, + 0x78, 0x17, 0x6d, 0x80, 0x4a, 0xaf, 0x75, 0xed, 0x71, 0xce, 0xb8, 0x39, 0xaa, 0x4d, 0x43, 0xd8, + 0xd8, 0x9b, 0x77, 0x93, 0xbf, 0xe3, 0xbd, 0x17, 0x4f, 0x4e, 0x3b, 0x95, 0x07, 0xa7, 0x9d, 0xca, + 0xaf, 0xa7, 0x9d, 0xca, 0xfd, 0xac, 0x63, 0x9d, 0x64, 0x1d, 0xeb, 0x41, 0xd6, 0xb1, 0x7e, 0xcf, + 0x3a, 0xd6, 0xd7, 0x7f, 0x74, 0x2a, 0x9f, 0x56, 0xd3, 0x9d, 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, + 0x8a, 0xc4, 0x1f, 0xd5, 0x30, 0x0c, 0x00, 0x00, +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/generated.proto new file mode 100644 index 00000000000..7036b8eb332 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/generated.proto @@ -0,0 +1,185 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + + +// This file was autogenerated by go-to-protobuf. Do not edit it manually! + +syntax = 'proto2'; + +package k8s.io.kubernetes.pkg.apis.authorization.v1; + +import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; +import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; +import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; + +// Package-wide variables from generator "generated". +option go_package = "v1"; + +// ExtraValue masks the value so protobuf can generate +// +protobuf.nullable=true +// +protobuf.options.(gogoproto.goproto_stringer)=false +message ExtraValue { + // items, if empty, will result in an empty slice + + repeated string items = 1; +} + +// LocalSubjectAccessReview checks whether or not a user or group can perform an action in a given namespace. +// Having a namespace scoped resource makes it much easier to grant namespace scoped policy that includes permissions +// checking. +message LocalSubjectAccessReview { + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // Spec holds information about the request being evaluated. spec.namespace must be equal to the namespace + // you made the request against. If empty, it is defaulted. + optional SubjectAccessReviewSpec spec = 2; + + // Status is filled in by the server and indicates whether the request is allowed or not + // +optional + optional SubjectAccessReviewStatus status = 3; +} + +// NonResourceAttributes includes the authorization attributes available for non-resource requests to the Authorizer interface +message NonResourceAttributes { + // Path is the URL path of the request + // +optional + optional string path = 1; + + // Verb is the standard HTTP verb + // +optional + optional string verb = 2; +} + +// ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface +message ResourceAttributes { + // Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces + // "" (empty) is defaulted for LocalSubjectAccessReviews + // "" (empty) is empty for cluster-scoped resources + // "" (empty) means "all" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview + // +optional + optional string namespace = 1; + + // Verb is a kubernetes resource API verb, like: get, list, watch, create, update, delete, proxy. "*" means all. + // +optional + optional string verb = 2; + + // Group is the API Group of the Resource. "*" means all. + // +optional + optional string group = 3; + + // Version is the API Version of the Resource. "*" means all. + // +optional + optional string version = 4; + + // Resource is one of the existing resource types. "*" means all. + // +optional + optional string resource = 5; + + // Subresource is one of the existing resource types. "" means none. + // +optional + optional string subresource = 6; + + // Name is the name of the resource being requested for a "get" or deleted for a "delete". "" (empty) means all. + // +optional + optional string name = 7; +} + +// SelfSubjectAccessReview checks whether or the current user can perform an action. Not filling in a +// spec.namespace means "in all namespaces". Self is a special case, because users should always be able +// to check whether they can perform an action +message SelfSubjectAccessReview { + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // Spec holds information about the request being evaluated. user and groups must be empty + optional SelfSubjectAccessReviewSpec spec = 2; + + // Status is filled in by the server and indicates whether the request is allowed or not + // +optional + optional SubjectAccessReviewStatus status = 3; +} + +// SelfSubjectAccessReviewSpec is a description of the access request. Exactly one of ResourceAuthorizationAttributes +// and NonResourceAuthorizationAttributes must be set +message SelfSubjectAccessReviewSpec { + // ResourceAuthorizationAttributes describes information for a resource access request + // +optional + optional ResourceAttributes resourceAttributes = 1; + + // NonResourceAttributes describes information for a non-resource access request + // +optional + optional NonResourceAttributes nonResourceAttributes = 2; +} + +// SubjectAccessReview checks whether or not a user or group can perform an action. +message SubjectAccessReview { + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // Spec holds information about the request being evaluated + optional SubjectAccessReviewSpec spec = 2; + + // Status is filled in by the server and indicates whether the request is allowed or not + // +optional + optional SubjectAccessReviewStatus status = 3; +} + +// SubjectAccessReviewSpec is a description of the access request. Exactly one of ResourceAuthorizationAttributes +// and NonResourceAuthorizationAttributes must be set +message SubjectAccessReviewSpec { + // ResourceAuthorizationAttributes describes information for a resource access request + // +optional + optional ResourceAttributes resourceAttributes = 1; + + // NonResourceAttributes describes information for a non-resource access request + // +optional + optional NonResourceAttributes nonResourceAttributes = 2; + + // User is the user you're testing for. + // If you specify "User" but not "Groups", then is it interpreted as "What if User were not a member of any groups + // +optional + optional string verb = 3; + + // Groups is the groups you're testing for. + // +optional + repeated string groups = 4; + + // Extra corresponds to the user.Info.GetExtra() method from the authenticator. Since that is input to the authorizer + // it needs a reflection here. + // +optional + map extra = 5; +} + +// SubjectAccessReviewStatus +message SubjectAccessReviewStatus { + // Allowed is required. True if the action would be allowed, false otherwise. + optional bool allowed = 1; + + // Reason is optional. It indicates why a request was allowed or denied. + // +optional + optional string reason = 2; + + // EvaluationError is an indication that some error occurred during the authorization check. + // It is entirely possible to get an error and be able to continue determine authorization status in spite of it. + // For instance, RBAC can be missing a role, but enough roles are still present and bound to reason about the request. + // +optional + optional string evaluationError = 3; +} + diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/register.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/register.go new file mode 100644 index 00000000000..909bc0a7db3 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/register.go @@ -0,0 +1,55 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// GroupName is the group name use in this package +const GroupName = "authorization.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"} + +// Resource takes an unqualified resource and returns a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + +var ( + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultingFuncs, addConversionFuncs) + AddToScheme = SchemeBuilder.AddToScheme +) + +// Adds the list of known types to api.Scheme. +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &SelfSubjectAccessReview{}, + &SubjectAccessReview{}, + &LocalSubjectAccessReview{}, + ) + + metav1.AddToGroupVersion(scheme, SchemeGroupVersion) + return nil +} + +func (obj *LocalSubjectAccessReview) GetObjectKind() schema.ObjectKind { return &obj.TypeMeta } +func (obj *SubjectAccessReview) GetObjectKind() schema.ObjectKind { return &obj.TypeMeta } +func (obj *SelfSubjectAccessReview) GetObjectKind() schema.ObjectKind { return &obj.TypeMeta } diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/types.generated.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/types.generated.go new file mode 100644 index 00000000000..2528afa8e8e --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/types.generated.go @@ -0,0 +1,3233 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// ************************************************************ +// DO NOT EDIT. +// THIS FILE IS AUTO-GENERATED BY codecgen. +// ************************************************************ + +package v1 + +import ( + "errors" + "fmt" + codec1978 "github.com/ugorji/go/codec" + pkg1_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + pkg2_types "k8s.io/apimachinery/pkg/types" + "reflect" + "runtime" + time "time" +) + +const ( + // ----- content types ---- + codecSelferC_UTF81234 = 1 + codecSelferC_RAW1234 = 0 + // ----- value types used ---- + codecSelferValueTypeArray1234 = 10 + codecSelferValueTypeMap1234 = 9 + // ----- containerStateValues ---- + codecSelfer_containerMapKey1234 = 2 + codecSelfer_containerMapValue1234 = 3 + codecSelfer_containerMapEnd1234 = 4 + codecSelfer_containerArrayElem1234 = 6 + codecSelfer_containerArrayEnd1234 = 7 +) + +var ( + codecSelferBitsize1234 = uint8(reflect.TypeOf(uint(0)).Bits()) + codecSelferOnlyMapOrArrayEncodeToStructErr1234 = errors.New(`only encoded map or array can be decoded into a struct`) +) + +type codecSelfer1234 struct{} + +func init() { + if codec1978.GenVersion != 5 { + _, file, _, _ := runtime.Caller(0) + err := fmt.Errorf("codecgen version mismatch: current: %v, need %v. Re-generate file: %v", + 5, codec1978.GenVersion, file) + panic(err) + } + if false { // reference the types, but skip this branch at build/run time + var v0 pkg1_v1.TypeMeta + var v1 pkg2_types.UID + var v2 time.Time + _, _, _ = v0, v1, v2 + } +} + +func (x *SubjectAccessReview) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + yyq2[4] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ObjectMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ObjectMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy15 := &x.Spec + yy15.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("spec")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy17 := &x.Spec + yy17.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + yy20 := &x.Status + yy20.CodecEncodeSelf(e) + } else { + r.EncodeNil() + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("status")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy22 := &x.Status + yy22.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *SubjectAccessReview) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *SubjectAccessReview) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv8 := &x.ObjectMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "spec": + if r.TryDecodeAsNil() { + x.Spec = SubjectAccessReviewSpec{} + } else { + yyv10 := &x.Spec + yyv10.CodecDecodeSelf(d) + } + case "status": + if r.TryDecodeAsNil() { + x.Status = SubjectAccessReviewStatus{} + } else { + yyv11 := &x.Status + yyv11.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *SubjectAccessReview) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv17 := &x.ObjectMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Spec = SubjectAccessReviewSpec{} + } else { + yyv19 := &x.Spec + yyv19.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Status = SubjectAccessReviewStatus{} + } else { + yyv20 := &x.Status + yyv20.CodecDecodeSelf(d) + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *SelfSubjectAccessReview) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + yyq2[4] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ObjectMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ObjectMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy15 := &x.Spec + yy15.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("spec")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy17 := &x.Spec + yy17.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + yy20 := &x.Status + yy20.CodecEncodeSelf(e) + } else { + r.EncodeNil() + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("status")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy22 := &x.Status + yy22.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *SelfSubjectAccessReview) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *SelfSubjectAccessReview) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv8 := &x.ObjectMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "spec": + if r.TryDecodeAsNil() { + x.Spec = SelfSubjectAccessReviewSpec{} + } else { + yyv10 := &x.Spec + yyv10.CodecDecodeSelf(d) + } + case "status": + if r.TryDecodeAsNil() { + x.Status = SubjectAccessReviewStatus{} + } else { + yyv11 := &x.Status + yyv11.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *SelfSubjectAccessReview) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv17 := &x.ObjectMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Spec = SelfSubjectAccessReviewSpec{} + } else { + yyv19 := &x.Spec + yyv19.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Status = SubjectAccessReviewStatus{} + } else { + yyv20 := &x.Status + yyv20.CodecDecodeSelf(d) + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *LocalSubjectAccessReview) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + yyq2[4] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ObjectMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ObjectMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy15 := &x.Spec + yy15.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("spec")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy17 := &x.Spec + yy17.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + yy20 := &x.Status + yy20.CodecEncodeSelf(e) + } else { + r.EncodeNil() + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("status")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy22 := &x.Status + yy22.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *LocalSubjectAccessReview) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *LocalSubjectAccessReview) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv8 := &x.ObjectMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "spec": + if r.TryDecodeAsNil() { + x.Spec = SubjectAccessReviewSpec{} + } else { + yyv10 := &x.Spec + yyv10.CodecDecodeSelf(d) + } + case "status": + if r.TryDecodeAsNil() { + x.Status = SubjectAccessReviewStatus{} + } else { + yyv11 := &x.Status + yyv11.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *LocalSubjectAccessReview) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv17 := &x.ObjectMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Spec = SubjectAccessReviewSpec{} + } else { + yyv19 := &x.Spec + yyv19.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Status = SubjectAccessReviewStatus{} + } else { + yyv20 := &x.Status + yyv20.CodecDecodeSelf(d) + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ResourceAttributes) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [7]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Namespace != "" + yyq2[1] = x.Verb != "" + yyq2[2] = x.Group != "" + yyq2[3] = x.Version != "" + yyq2[4] = x.Resource != "" + yyq2[5] = x.Subresource != "" + yyq2[6] = x.Name != "" + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(7) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Namespace)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("namespace")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Namespace)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Verb)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("verb")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Verb)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Group)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("group")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Group)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Version)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("version")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym14 := z.EncBinary() + _ = yym14 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Version)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Resource)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("resource")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym17 := z.EncBinary() + _ = yym17 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Resource)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[5] { + yym19 := z.EncBinary() + _ = yym19 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Subresource)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[5] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("subresource")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym20 := z.EncBinary() + _ = yym20 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Subresource)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[6] { + yym22 := z.EncBinary() + _ = yym22 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[6] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("name")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym23 := z.EncBinary() + _ = yym23 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ResourceAttributes) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ResourceAttributes) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "namespace": + if r.TryDecodeAsNil() { + x.Namespace = "" + } else { + yyv4 := &x.Namespace + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "verb": + if r.TryDecodeAsNil() { + x.Verb = "" + } else { + yyv6 := &x.Verb + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "group": + if r.TryDecodeAsNil() { + x.Group = "" + } else { + yyv8 := &x.Group + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + case "version": + if r.TryDecodeAsNil() { + x.Version = "" + } else { + yyv10 := &x.Version + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*string)(yyv10)) = r.DecodeString() + } + } + case "resource": + if r.TryDecodeAsNil() { + x.Resource = "" + } else { + yyv12 := &x.Resource + yym13 := z.DecBinary() + _ = yym13 + if false { + } else { + *((*string)(yyv12)) = r.DecodeString() + } + } + case "subresource": + if r.TryDecodeAsNil() { + x.Subresource = "" + } else { + yyv14 := &x.Subresource + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + *((*string)(yyv14)) = r.DecodeString() + } + } + case "name": + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv16 := &x.Name + yym17 := z.DecBinary() + _ = yym17 + if false { + } else { + *((*string)(yyv16)) = r.DecodeString() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ResourceAttributes) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj18 int + var yyb18 bool + var yyhl18 bool = l >= 0 + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Namespace = "" + } else { + yyv19 := &x.Namespace + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + *((*string)(yyv19)) = r.DecodeString() + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Verb = "" + } else { + yyv21 := &x.Verb + yym22 := z.DecBinary() + _ = yym22 + if false { + } else { + *((*string)(yyv21)) = r.DecodeString() + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Group = "" + } else { + yyv23 := &x.Group + yym24 := z.DecBinary() + _ = yym24 + if false { + } else { + *((*string)(yyv23)) = r.DecodeString() + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Version = "" + } else { + yyv25 := &x.Version + yym26 := z.DecBinary() + _ = yym26 + if false { + } else { + *((*string)(yyv25)) = r.DecodeString() + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Resource = "" + } else { + yyv27 := &x.Resource + yym28 := z.DecBinary() + _ = yym28 + if false { + } else { + *((*string)(yyv27)) = r.DecodeString() + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Subresource = "" + } else { + yyv29 := &x.Subresource + yym30 := z.DecBinary() + _ = yym30 + if false { + } else { + *((*string)(yyv29)) = r.DecodeString() + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv31 := &x.Name + yym32 := z.DecBinary() + _ = yym32 + if false { + } else { + *((*string)(yyv31)) = r.DecodeString() + } + } + for { + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj18-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *NonResourceAttributes) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Path != "" + yyq2[1] = x.Verb != "" + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Path)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("path")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Path)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Verb)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("verb")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Verb)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NonResourceAttributes) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NonResourceAttributes) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "path": + if r.TryDecodeAsNil() { + x.Path = "" + } else { + yyv4 := &x.Path + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "verb": + if r.TryDecodeAsNil() { + x.Verb = "" + } else { + yyv6 := &x.Verb + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NonResourceAttributes) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Path = "" + } else { + yyv9 := &x.Path + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + *((*string)(yyv9)) = r.DecodeString() + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Verb = "" + } else { + yyv11 := &x.Verb + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*string)(yyv11)) = r.DecodeString() + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *SubjectAccessReviewSpec) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.ResourceAttributes != nil + yyq2[1] = x.NonResourceAttributes != nil + yyq2[2] = x.User != "" + yyq2[3] = len(x.Groups) != 0 + yyq2[4] = len(x.Extra) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.ResourceAttributes == nil { + r.EncodeNil() + } else { + x.ResourceAttributes.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("resourceAttributes")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.ResourceAttributes == nil { + r.EncodeNil() + } else { + x.ResourceAttributes.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.NonResourceAttributes == nil { + r.EncodeNil() + } else { + x.NonResourceAttributes.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("nonResourceAttributes")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.NonResourceAttributes == nil { + r.EncodeNil() + } else { + x.NonResourceAttributes.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.User)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("user")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.User)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.Groups == nil { + r.EncodeNil() + } else { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + z.F.EncSliceStringV(x.Groups, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("groups")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Groups == nil { + r.EncodeNil() + } else { + yym14 := z.EncBinary() + _ = yym14 + if false { + } else { + z.F.EncSliceStringV(x.Groups, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + if x.Extra == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encMapstringExtraValue((map[string]ExtraValue)(x.Extra), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("extra")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Extra == nil { + r.EncodeNil() + } else { + yym17 := z.EncBinary() + _ = yym17 + if false { + } else { + h.encMapstringExtraValue((map[string]ExtraValue)(x.Extra), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *SubjectAccessReviewSpec) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *SubjectAccessReviewSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "resourceAttributes": + if r.TryDecodeAsNil() { + if x.ResourceAttributes != nil { + x.ResourceAttributes = nil + } + } else { + if x.ResourceAttributes == nil { + x.ResourceAttributes = new(ResourceAttributes) + } + x.ResourceAttributes.CodecDecodeSelf(d) + } + case "nonResourceAttributes": + if r.TryDecodeAsNil() { + if x.NonResourceAttributes != nil { + x.NonResourceAttributes = nil + } + } else { + if x.NonResourceAttributes == nil { + x.NonResourceAttributes = new(NonResourceAttributes) + } + x.NonResourceAttributes.CodecDecodeSelf(d) + } + case "user": + if r.TryDecodeAsNil() { + x.User = "" + } else { + yyv6 := &x.User + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "groups": + if r.TryDecodeAsNil() { + x.Groups = nil + } else { + yyv8 := &x.Groups + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + z.F.DecSliceStringX(yyv8, false, d) + } + } + case "extra": + if r.TryDecodeAsNil() { + x.Extra = nil + } else { + yyv10 := &x.Extra + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decMapstringExtraValue((*map[string]ExtraValue)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *SubjectAccessReviewSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.ResourceAttributes != nil { + x.ResourceAttributes = nil + } + } else { + if x.ResourceAttributes == nil { + x.ResourceAttributes = new(ResourceAttributes) + } + x.ResourceAttributes.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.NonResourceAttributes != nil { + x.NonResourceAttributes = nil + } + } else { + if x.NonResourceAttributes == nil { + x.NonResourceAttributes = new(NonResourceAttributes) + } + x.NonResourceAttributes.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.User = "" + } else { + yyv15 := &x.User + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Groups = nil + } else { + yyv17 := &x.Groups + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + z.F.DecSliceStringX(yyv17, false, d) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Extra = nil + } else { + yyv19 := &x.Extra + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decMapstringExtraValue((*map[string]ExtraValue)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x ExtraValue) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + h.encExtraValue((ExtraValue)(x), e) + } + } +} + +func (x *ExtraValue) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + h.decExtraValue((*ExtraValue)(x), d) + } +} + +func (x *SelfSubjectAccessReviewSpec) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.ResourceAttributes != nil + yyq2[1] = x.NonResourceAttributes != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.ResourceAttributes == nil { + r.EncodeNil() + } else { + x.ResourceAttributes.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("resourceAttributes")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.ResourceAttributes == nil { + r.EncodeNil() + } else { + x.ResourceAttributes.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.NonResourceAttributes == nil { + r.EncodeNil() + } else { + x.NonResourceAttributes.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("nonResourceAttributes")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.NonResourceAttributes == nil { + r.EncodeNil() + } else { + x.NonResourceAttributes.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *SelfSubjectAccessReviewSpec) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *SelfSubjectAccessReviewSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "resourceAttributes": + if r.TryDecodeAsNil() { + if x.ResourceAttributes != nil { + x.ResourceAttributes = nil + } + } else { + if x.ResourceAttributes == nil { + x.ResourceAttributes = new(ResourceAttributes) + } + x.ResourceAttributes.CodecDecodeSelf(d) + } + case "nonResourceAttributes": + if r.TryDecodeAsNil() { + if x.NonResourceAttributes != nil { + x.NonResourceAttributes = nil + } + } else { + if x.NonResourceAttributes == nil { + x.NonResourceAttributes = new(NonResourceAttributes) + } + x.NonResourceAttributes.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *SelfSubjectAccessReviewSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj6 int + var yyb6 bool + var yyhl6 bool = l >= 0 + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.ResourceAttributes != nil { + x.ResourceAttributes = nil + } + } else { + if x.ResourceAttributes == nil { + x.ResourceAttributes = new(ResourceAttributes) + } + x.ResourceAttributes.CodecDecodeSelf(d) + } + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.NonResourceAttributes != nil { + x.NonResourceAttributes = nil + } + } else { + if x.NonResourceAttributes == nil { + x.NonResourceAttributes = new(NonResourceAttributes) + } + x.NonResourceAttributes.CodecDecodeSelf(d) + } + for { + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj6-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *SubjectAccessReviewStatus) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[1] = x.Reason != "" + yyq2[2] = x.EvaluationError != "" + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(3) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeBool(bool(x.Allowed)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("allowed")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeBool(bool(x.Allowed)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Reason)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("reason")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Reason)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.EvaluationError)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("evaluationError")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.EvaluationError)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *SubjectAccessReviewStatus) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *SubjectAccessReviewStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "allowed": + if r.TryDecodeAsNil() { + x.Allowed = false + } else { + yyv4 := &x.Allowed + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*bool)(yyv4)) = r.DecodeBool() + } + } + case "reason": + if r.TryDecodeAsNil() { + x.Reason = "" + } else { + yyv6 := &x.Reason + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "evaluationError": + if r.TryDecodeAsNil() { + x.EvaluationError = "" + } else { + yyv8 := &x.EvaluationError + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *SubjectAccessReviewStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj10 int + var yyb10 bool + var yyhl10 bool = l >= 0 + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Allowed = false + } else { + yyv11 := &x.Allowed + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*bool)(yyv11)) = r.DecodeBool() + } + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Reason = "" + } else { + yyv13 := &x.Reason + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.EvaluationError = "" + } else { + yyv15 := &x.EvaluationError + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + for { + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj10-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) encMapstringExtraValue(v map[string]ExtraValue, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeMapStart(len(v)) + for yyk1, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + yym2 := z.EncBinary() + _ = yym2 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(yyk1)) + } + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if yyv1 == nil { + r.EncodeNil() + } else { + yyv1.CodecEncodeSelf(e) + } + } + z.EncSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x codecSelfer1234) decMapstringExtraValue(v *map[string]ExtraValue, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyl1 := r.ReadMapStart() + yybh1 := z.DecBasicHandle() + if yyv1 == nil { + yyrl1, _ := z.DecInferLen(yyl1, yybh1.MaxInitLen, 40) + yyv1 = make(map[string]ExtraValue, yyrl1) + *v = yyv1 + } + var yymk1 string + var yymv1 ExtraValue + var yymg1 bool + if yybh1.MapValueReset { + yymg1 = true + } + if yyl1 > 0 { + for yyj1 := 0; yyj1 < yyl1; yyj1++ { + z.DecSendContainerState(codecSelfer_containerMapKey1234) + if r.TryDecodeAsNil() { + yymk1 = "" + } else { + yyv2 := &yymk1 + yym3 := z.DecBinary() + _ = yym3 + if false { + } else { + *((*string)(yyv2)) = r.DecodeString() + } + } + + if yymg1 { + yymv1 = yyv1[yymk1] + } else { + yymv1 = nil + } + z.DecSendContainerState(codecSelfer_containerMapValue1234) + if r.TryDecodeAsNil() { + yymv1 = nil + } else { + yyv4 := &yymv1 + yyv4.CodecDecodeSelf(d) + } + + if yyv1 != nil { + yyv1[yymk1] = yymv1 + } + } + } else if yyl1 < 0 { + for yyj1 := 0; !r.CheckBreak(); yyj1++ { + z.DecSendContainerState(codecSelfer_containerMapKey1234) + if r.TryDecodeAsNil() { + yymk1 = "" + } else { + yyv5 := &yymk1 + yym6 := z.DecBinary() + _ = yym6 + if false { + } else { + *((*string)(yyv5)) = r.DecodeString() + } + } + + if yymg1 { + yymv1 = yyv1[yymk1] + } else { + yymv1 = nil + } + z.DecSendContainerState(codecSelfer_containerMapValue1234) + if r.TryDecodeAsNil() { + yymv1 = nil + } else { + yyv7 := &yymv1 + yyv7.CodecDecodeSelf(d) + } + + if yyv1 != nil { + yyv1[yymk1] = yymv1 + } + } + } // else len==0: TODO: Should we clear map entries? + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x codecSelfer1234) encExtraValue(v ExtraValue, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym2 := z.EncBinary() + _ = yym2 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(yyv1)) + } + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decExtraValue(v *ExtraValue, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []string{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 16) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]string, yyrl1) + } + } else { + yyv1 = make([]string, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = "" + } else { + yyv2 := &yyv1[yyj1] + yym3 := z.DecBinary() + _ = yym3 + if false { + } else { + *((*string)(yyv2)) = r.DecodeString() + } + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, "") + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = "" + } else { + yyv4 := &yyv1[yyj1] + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, "") // var yyz1 string + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = "" + } else { + yyv6 := &yyv1[yyj1] + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []string{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/types.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/types.go new file mode 100644 index 00000000000..38c314ffcfb --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/types.go @@ -0,0 +1,176 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + "fmt" + + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" +) + +// +genclient=true +// +nonNamespaced=true +// +noMethods=true + +// SubjectAccessReview checks whether or not a user or group can perform an action. +type SubjectAccessReview struct { + metav1.TypeMeta `json:",inline"` + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Spec holds information about the request being evaluated + Spec SubjectAccessReviewSpec `json:"spec" protobuf:"bytes,2,opt,name=spec"` + + // Status is filled in by the server and indicates whether the request is allowed or not + // +optional + Status SubjectAccessReviewStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` +} + +// +genclient=true +// +nonNamespaced=true +// +noMethods=true + +// SelfSubjectAccessReview checks whether or the current user can perform an action. Not filling in a +// spec.namespace means "in all namespaces". Self is a special case, because users should always be able +// to check whether they can perform an action +type SelfSubjectAccessReview struct { + metav1.TypeMeta `json:",inline"` + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Spec holds information about the request being evaluated. user and groups must be empty + Spec SelfSubjectAccessReviewSpec `json:"spec" protobuf:"bytes,2,opt,name=spec"` + + // Status is filled in by the server and indicates whether the request is allowed or not + // +optional + Status SubjectAccessReviewStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` +} + +// +genclient=true +// +noMethods=true + +// LocalSubjectAccessReview checks whether or not a user or group can perform an action in a given namespace. +// Having a namespace scoped resource makes it much easier to grant namespace scoped policy that includes permissions +// checking. +type LocalSubjectAccessReview struct { + metav1.TypeMeta `json:",inline"` + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Spec holds information about the request being evaluated. spec.namespace must be equal to the namespace + // you made the request against. If empty, it is defaulted. + Spec SubjectAccessReviewSpec `json:"spec" protobuf:"bytes,2,opt,name=spec"` + + // Status is filled in by the server and indicates whether the request is allowed or not + // +optional + Status SubjectAccessReviewStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` +} + +// ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface +type ResourceAttributes struct { + // Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces + // "" (empty) is defaulted for LocalSubjectAccessReviews + // "" (empty) is empty for cluster-scoped resources + // "" (empty) means "all" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview + // +optional + Namespace string `json:"namespace,omitempty" protobuf:"bytes,1,opt,name=namespace"` + // Verb is a kubernetes resource API verb, like: get, list, watch, create, update, delete, proxy. "*" means all. + // +optional + Verb string `json:"verb,omitempty" protobuf:"bytes,2,opt,name=verb"` + // Group is the API Group of the Resource. "*" means all. + // +optional + Group string `json:"group,omitempty" protobuf:"bytes,3,opt,name=group"` + // Version is the API Version of the Resource. "*" means all. + // +optional + Version string `json:"version,omitempty" protobuf:"bytes,4,opt,name=version"` + // Resource is one of the existing resource types. "*" means all. + // +optional + Resource string `json:"resource,omitempty" protobuf:"bytes,5,opt,name=resource"` + // Subresource is one of the existing resource types. "" means none. + // +optional + Subresource string `json:"subresource,omitempty" protobuf:"bytes,6,opt,name=subresource"` + // Name is the name of the resource being requested for a "get" or deleted for a "delete". "" (empty) means all. + // +optional + Name string `json:"name,omitempty" protobuf:"bytes,7,opt,name=name"` +} + +// NonResourceAttributes includes the authorization attributes available for non-resource requests to the Authorizer interface +type NonResourceAttributes struct { + // Path is the URL path of the request + // +optional + Path string `json:"path,omitempty" protobuf:"bytes,1,opt,name=path"` + // Verb is the standard HTTP verb + // +optional + Verb string `json:"verb,omitempty" protobuf:"bytes,2,opt,name=verb"` +} + +// SubjectAccessReviewSpec is a description of the access request. Exactly one of ResourceAuthorizationAttributes +// and NonResourceAuthorizationAttributes must be set +type SubjectAccessReviewSpec struct { + // ResourceAuthorizationAttributes describes information for a resource access request + // +optional + ResourceAttributes *ResourceAttributes `json:"resourceAttributes,omitempty" protobuf:"bytes,1,opt,name=resourceAttributes"` + // NonResourceAttributes describes information for a non-resource access request + // +optional + NonResourceAttributes *NonResourceAttributes `json:"nonResourceAttributes,omitempty" protobuf:"bytes,2,opt,name=nonResourceAttributes"` + + // User is the user you're testing for. + // If you specify "User" but not "Groups", then is it interpreted as "What if User were not a member of any groups + // +optional + User string `json:"user,omitempty" protobuf:"bytes,3,opt,name=verb"` + // Groups is the groups you're testing for. + // +optional + Groups []string `json:"groups,omitempty" protobuf:"bytes,4,rep,name=groups"` + // Extra corresponds to the user.Info.GetExtra() method from the authenticator. Since that is input to the authorizer + // it needs a reflection here. + // +optional + Extra map[string]ExtraValue `json:"extra,omitempty" protobuf:"bytes,5,rep,name=extra"` +} + +// ExtraValue masks the value so protobuf can generate +// +protobuf.nullable=true +// +protobuf.options.(gogoproto.goproto_stringer)=false +type ExtraValue []string + +func (t ExtraValue) String() string { + return fmt.Sprintf("%v", []string(t)) +} + +// SelfSubjectAccessReviewSpec is a description of the access request. Exactly one of ResourceAuthorizationAttributes +// and NonResourceAuthorizationAttributes must be set +type SelfSubjectAccessReviewSpec struct { + // ResourceAuthorizationAttributes describes information for a resource access request + // +optional + ResourceAttributes *ResourceAttributes `json:"resourceAttributes,omitempty" protobuf:"bytes,1,opt,name=resourceAttributes"` + // NonResourceAttributes describes information for a non-resource access request + // +optional + NonResourceAttributes *NonResourceAttributes `json:"nonResourceAttributes,omitempty" protobuf:"bytes,2,opt,name=nonResourceAttributes"` +} + +// SubjectAccessReviewStatus +type SubjectAccessReviewStatus struct { + // Allowed is required. True if the action would be allowed, false otherwise. + Allowed bool `json:"allowed" protobuf:"varint,1,opt,name=allowed"` + // Reason is optional. It indicates why a request was allowed or denied. + // +optional + Reason string `json:"reason,omitempty" protobuf:"bytes,2,opt,name=reason"` + // EvaluationError is an indication that some error occurred during the authorization check. + // It is entirely possible to get an error and be able to continue determine authorization status in spite of it. + // For instance, RBAC can be missing a role, but enough roles are still present and bound to reason about the request. + // +optional + EvaluationError string `json:"evaluationError,omitempty" protobuf:"bytes,3,opt,name=evaluationError"` +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/types_swagger_doc_generated.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/types_swagger_doc_generated.go new file mode 100644 index 00000000000..33c0035b481 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/types_swagger_doc_generated.go @@ -0,0 +1,119 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +// This file contains a collection of methods that can be used from go-restful to +// generate Swagger API documentation for its models. Please read this PR for more +// information on the implementation: https://github.com/emicklei/go-restful/pull/215 +// +// TODOs are ignored from the parser (e.g. TODO(andronat):... || TODO:...) if and only if +// they are on one line! For multiple line or blocks that you want to ignore use ---. +// Any context after a --- is ignored. +// +// Those methods can be generated by using hack/update-generated-swagger-docs.sh + +// AUTO-GENERATED FUNCTIONS START HERE +var map_LocalSubjectAccessReview = map[string]string{ + "": "LocalSubjectAccessReview checks whether or not a user or group can perform an action in a given namespace. Having a namespace scoped resource makes it much easier to grant namespace scoped policy that includes permissions checking.", + "spec": "Spec holds information about the request being evaluated. spec.namespace must be equal to the namespace you made the request against. If empty, it is defaulted.", + "status": "Status is filled in by the server and indicates whether the request is allowed or not", +} + +func (LocalSubjectAccessReview) SwaggerDoc() map[string]string { + return map_LocalSubjectAccessReview +} + +var map_NonResourceAttributes = map[string]string{ + "": "NonResourceAttributes includes the authorization attributes available for non-resource requests to the Authorizer interface", + "path": "Path is the URL path of the request", + "verb": "Verb is the standard HTTP verb", +} + +func (NonResourceAttributes) SwaggerDoc() map[string]string { + return map_NonResourceAttributes +} + +var map_ResourceAttributes = map[string]string{ + "": "ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface", + "namespace": "Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces \"\" (empty) is defaulted for LocalSubjectAccessReviews \"\" (empty) is empty for cluster-scoped resources \"\" (empty) means \"all\" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview", + "verb": "Verb is a kubernetes resource API verb, like: get, list, watch, create, update, delete, proxy. \"*\" means all.", + "group": "Group is the API Group of the Resource. \"*\" means all.", + "version": "Version is the API Version of the Resource. \"*\" means all.", + "resource": "Resource is one of the existing resource types. \"*\" means all.", + "subresource": "Subresource is one of the existing resource types. \"\" means none.", + "name": "Name is the name of the resource being requested for a \"get\" or deleted for a \"delete\". \"\" (empty) means all.", +} + +func (ResourceAttributes) SwaggerDoc() map[string]string { + return map_ResourceAttributes +} + +var map_SelfSubjectAccessReview = map[string]string{ + "": "SelfSubjectAccessReview checks whether or the current user can perform an action. Not filling in a spec.namespace means \"in all namespaces\". Self is a special case, because users should always be able to check whether they can perform an action", + "spec": "Spec holds information about the request being evaluated. user and groups must be empty", + "status": "Status is filled in by the server and indicates whether the request is allowed or not", +} + +func (SelfSubjectAccessReview) SwaggerDoc() map[string]string { + return map_SelfSubjectAccessReview +} + +var map_SelfSubjectAccessReviewSpec = map[string]string{ + "": "SelfSubjectAccessReviewSpec is a description of the access request. Exactly one of ResourceAuthorizationAttributes and NonResourceAuthorizationAttributes must be set", + "resourceAttributes": "ResourceAuthorizationAttributes describes information for a resource access request", + "nonResourceAttributes": "NonResourceAttributes describes information for a non-resource access request", +} + +func (SelfSubjectAccessReviewSpec) SwaggerDoc() map[string]string { + return map_SelfSubjectAccessReviewSpec +} + +var map_SubjectAccessReview = map[string]string{ + "": "SubjectAccessReview checks whether or not a user or group can perform an action.", + "spec": "Spec holds information about the request being evaluated", + "status": "Status is filled in by the server and indicates whether the request is allowed or not", +} + +func (SubjectAccessReview) SwaggerDoc() map[string]string { + return map_SubjectAccessReview +} + +var map_SubjectAccessReviewSpec = map[string]string{ + "": "SubjectAccessReviewSpec is a description of the access request. Exactly one of ResourceAuthorizationAttributes and NonResourceAuthorizationAttributes must be set", + "resourceAttributes": "ResourceAuthorizationAttributes describes information for a resource access request", + "nonResourceAttributes": "NonResourceAttributes describes information for a non-resource access request", + "user": "User is the user you're testing for. If you specify \"User\" but not \"Groups\", then is it interpreted as \"What if User were not a member of any groups", + "groups": "Groups is the groups you're testing for.", + "extra": "Extra corresponds to the user.Info.GetExtra() method from the authenticator. Since that is input to the authorizer it needs a reflection here.", +} + +func (SubjectAccessReviewSpec) SwaggerDoc() map[string]string { + return map_SubjectAccessReviewSpec +} + +var map_SubjectAccessReviewStatus = map[string]string{ + "": "SubjectAccessReviewStatus", + "allowed": "Allowed is required. True if the action would be allowed, false otherwise.", + "reason": "Reason is optional. It indicates why a request was allowed or denied.", + "evaluationError": "EvaluationError is an indication that some error occurred during the authorization check. It is entirely possible to get an error and be able to continue determine authorization status in spite of it. For instance, RBAC can be missing a role, but enough roles are still present and bound to reason about the request.", +} + +func (SubjectAccessReviewStatus) SwaggerDoc() map[string]string { + return map_SubjectAccessReviewStatus +} + +// AUTO-GENERATED FUNCTIONS END HERE diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/zz_generated.conversion.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/zz_generated.conversion.go new file mode 100644 index 00000000000..92d13084405 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/zz_generated.conversion.go @@ -0,0 +1,263 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by conversion-gen. Do not edit it manually! + +package v1 + +import ( + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + authorization "k8s.io/client-go/pkg/apis/authorization" + unsafe "unsafe" +) + +func init() { + SchemeBuilder.Register(RegisterConversions) +} + +// RegisterConversions adds conversion functions to the given scheme. +// Public to allow building arbitrary schemes. +func RegisterConversions(scheme *runtime.Scheme) error { + return scheme.AddGeneratedConversionFuncs( + Convert_v1_LocalSubjectAccessReview_To_authorization_LocalSubjectAccessReview, + Convert_authorization_LocalSubjectAccessReview_To_v1_LocalSubjectAccessReview, + Convert_v1_NonResourceAttributes_To_authorization_NonResourceAttributes, + Convert_authorization_NonResourceAttributes_To_v1_NonResourceAttributes, + Convert_v1_ResourceAttributes_To_authorization_ResourceAttributes, + Convert_authorization_ResourceAttributes_To_v1_ResourceAttributes, + Convert_v1_SelfSubjectAccessReview_To_authorization_SelfSubjectAccessReview, + Convert_authorization_SelfSubjectAccessReview_To_v1_SelfSubjectAccessReview, + Convert_v1_SelfSubjectAccessReviewSpec_To_authorization_SelfSubjectAccessReviewSpec, + Convert_authorization_SelfSubjectAccessReviewSpec_To_v1_SelfSubjectAccessReviewSpec, + Convert_v1_SubjectAccessReview_To_authorization_SubjectAccessReview, + Convert_authorization_SubjectAccessReview_To_v1_SubjectAccessReview, + Convert_v1_SubjectAccessReviewSpec_To_authorization_SubjectAccessReviewSpec, + Convert_authorization_SubjectAccessReviewSpec_To_v1_SubjectAccessReviewSpec, + Convert_v1_SubjectAccessReviewStatus_To_authorization_SubjectAccessReviewStatus, + Convert_authorization_SubjectAccessReviewStatus_To_v1_SubjectAccessReviewStatus, + ) +} + +func autoConvert_v1_LocalSubjectAccessReview_To_authorization_LocalSubjectAccessReview(in *LocalSubjectAccessReview, out *authorization.LocalSubjectAccessReview, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_v1_SubjectAccessReviewSpec_To_authorization_SubjectAccessReviewSpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + if err := Convert_v1_SubjectAccessReviewStatus_To_authorization_SubjectAccessReviewStatus(&in.Status, &out.Status, s); err != nil { + return err + } + return nil +} + +func Convert_v1_LocalSubjectAccessReview_To_authorization_LocalSubjectAccessReview(in *LocalSubjectAccessReview, out *authorization.LocalSubjectAccessReview, s conversion.Scope) error { + return autoConvert_v1_LocalSubjectAccessReview_To_authorization_LocalSubjectAccessReview(in, out, s) +} + +func autoConvert_authorization_LocalSubjectAccessReview_To_v1_LocalSubjectAccessReview(in *authorization.LocalSubjectAccessReview, out *LocalSubjectAccessReview, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_authorization_SubjectAccessReviewSpec_To_v1_SubjectAccessReviewSpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + if err := Convert_authorization_SubjectAccessReviewStatus_To_v1_SubjectAccessReviewStatus(&in.Status, &out.Status, s); err != nil { + return err + } + return nil +} + +func Convert_authorization_LocalSubjectAccessReview_To_v1_LocalSubjectAccessReview(in *authorization.LocalSubjectAccessReview, out *LocalSubjectAccessReview, s conversion.Scope) error { + return autoConvert_authorization_LocalSubjectAccessReview_To_v1_LocalSubjectAccessReview(in, out, s) +} + +func autoConvert_v1_NonResourceAttributes_To_authorization_NonResourceAttributes(in *NonResourceAttributes, out *authorization.NonResourceAttributes, s conversion.Scope) error { + out.Path = in.Path + out.Verb = in.Verb + return nil +} + +func Convert_v1_NonResourceAttributes_To_authorization_NonResourceAttributes(in *NonResourceAttributes, out *authorization.NonResourceAttributes, s conversion.Scope) error { + return autoConvert_v1_NonResourceAttributes_To_authorization_NonResourceAttributes(in, out, s) +} + +func autoConvert_authorization_NonResourceAttributes_To_v1_NonResourceAttributes(in *authorization.NonResourceAttributes, out *NonResourceAttributes, s conversion.Scope) error { + out.Path = in.Path + out.Verb = in.Verb + return nil +} + +func Convert_authorization_NonResourceAttributes_To_v1_NonResourceAttributes(in *authorization.NonResourceAttributes, out *NonResourceAttributes, s conversion.Scope) error { + return autoConvert_authorization_NonResourceAttributes_To_v1_NonResourceAttributes(in, out, s) +} + +func autoConvert_v1_ResourceAttributes_To_authorization_ResourceAttributes(in *ResourceAttributes, out *authorization.ResourceAttributes, s conversion.Scope) error { + out.Namespace = in.Namespace + out.Verb = in.Verb + out.Group = in.Group + out.Version = in.Version + out.Resource = in.Resource + out.Subresource = in.Subresource + out.Name = in.Name + return nil +} + +func Convert_v1_ResourceAttributes_To_authorization_ResourceAttributes(in *ResourceAttributes, out *authorization.ResourceAttributes, s conversion.Scope) error { + return autoConvert_v1_ResourceAttributes_To_authorization_ResourceAttributes(in, out, s) +} + +func autoConvert_authorization_ResourceAttributes_To_v1_ResourceAttributes(in *authorization.ResourceAttributes, out *ResourceAttributes, s conversion.Scope) error { + out.Namespace = in.Namespace + out.Verb = in.Verb + out.Group = in.Group + out.Version = in.Version + out.Resource = in.Resource + out.Subresource = in.Subresource + out.Name = in.Name + return nil +} + +func Convert_authorization_ResourceAttributes_To_v1_ResourceAttributes(in *authorization.ResourceAttributes, out *ResourceAttributes, s conversion.Scope) error { + return autoConvert_authorization_ResourceAttributes_To_v1_ResourceAttributes(in, out, s) +} + +func autoConvert_v1_SelfSubjectAccessReview_To_authorization_SelfSubjectAccessReview(in *SelfSubjectAccessReview, out *authorization.SelfSubjectAccessReview, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_v1_SelfSubjectAccessReviewSpec_To_authorization_SelfSubjectAccessReviewSpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + if err := Convert_v1_SubjectAccessReviewStatus_To_authorization_SubjectAccessReviewStatus(&in.Status, &out.Status, s); err != nil { + return err + } + return nil +} + +func Convert_v1_SelfSubjectAccessReview_To_authorization_SelfSubjectAccessReview(in *SelfSubjectAccessReview, out *authorization.SelfSubjectAccessReview, s conversion.Scope) error { + return autoConvert_v1_SelfSubjectAccessReview_To_authorization_SelfSubjectAccessReview(in, out, s) +} + +func autoConvert_authorization_SelfSubjectAccessReview_To_v1_SelfSubjectAccessReview(in *authorization.SelfSubjectAccessReview, out *SelfSubjectAccessReview, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_authorization_SelfSubjectAccessReviewSpec_To_v1_SelfSubjectAccessReviewSpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + if err := Convert_authorization_SubjectAccessReviewStatus_To_v1_SubjectAccessReviewStatus(&in.Status, &out.Status, s); err != nil { + return err + } + return nil +} + +func Convert_authorization_SelfSubjectAccessReview_To_v1_SelfSubjectAccessReview(in *authorization.SelfSubjectAccessReview, out *SelfSubjectAccessReview, s conversion.Scope) error { + return autoConvert_authorization_SelfSubjectAccessReview_To_v1_SelfSubjectAccessReview(in, out, s) +} + +func autoConvert_v1_SelfSubjectAccessReviewSpec_To_authorization_SelfSubjectAccessReviewSpec(in *SelfSubjectAccessReviewSpec, out *authorization.SelfSubjectAccessReviewSpec, s conversion.Scope) error { + out.ResourceAttributes = (*authorization.ResourceAttributes)(unsafe.Pointer(in.ResourceAttributes)) + out.NonResourceAttributes = (*authorization.NonResourceAttributes)(unsafe.Pointer(in.NonResourceAttributes)) + return nil +} + +func Convert_v1_SelfSubjectAccessReviewSpec_To_authorization_SelfSubjectAccessReviewSpec(in *SelfSubjectAccessReviewSpec, out *authorization.SelfSubjectAccessReviewSpec, s conversion.Scope) error { + return autoConvert_v1_SelfSubjectAccessReviewSpec_To_authorization_SelfSubjectAccessReviewSpec(in, out, s) +} + +func autoConvert_authorization_SelfSubjectAccessReviewSpec_To_v1_SelfSubjectAccessReviewSpec(in *authorization.SelfSubjectAccessReviewSpec, out *SelfSubjectAccessReviewSpec, s conversion.Scope) error { + out.ResourceAttributes = (*ResourceAttributes)(unsafe.Pointer(in.ResourceAttributes)) + out.NonResourceAttributes = (*NonResourceAttributes)(unsafe.Pointer(in.NonResourceAttributes)) + return nil +} + +func Convert_authorization_SelfSubjectAccessReviewSpec_To_v1_SelfSubjectAccessReviewSpec(in *authorization.SelfSubjectAccessReviewSpec, out *SelfSubjectAccessReviewSpec, s conversion.Scope) error { + return autoConvert_authorization_SelfSubjectAccessReviewSpec_To_v1_SelfSubjectAccessReviewSpec(in, out, s) +} + +func autoConvert_v1_SubjectAccessReview_To_authorization_SubjectAccessReview(in *SubjectAccessReview, out *authorization.SubjectAccessReview, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_v1_SubjectAccessReviewSpec_To_authorization_SubjectAccessReviewSpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + if err := Convert_v1_SubjectAccessReviewStatus_To_authorization_SubjectAccessReviewStatus(&in.Status, &out.Status, s); err != nil { + return err + } + return nil +} + +func Convert_v1_SubjectAccessReview_To_authorization_SubjectAccessReview(in *SubjectAccessReview, out *authorization.SubjectAccessReview, s conversion.Scope) error { + return autoConvert_v1_SubjectAccessReview_To_authorization_SubjectAccessReview(in, out, s) +} + +func autoConvert_authorization_SubjectAccessReview_To_v1_SubjectAccessReview(in *authorization.SubjectAccessReview, out *SubjectAccessReview, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_authorization_SubjectAccessReviewSpec_To_v1_SubjectAccessReviewSpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + if err := Convert_authorization_SubjectAccessReviewStatus_To_v1_SubjectAccessReviewStatus(&in.Status, &out.Status, s); err != nil { + return err + } + return nil +} + +func Convert_authorization_SubjectAccessReview_To_v1_SubjectAccessReview(in *authorization.SubjectAccessReview, out *SubjectAccessReview, s conversion.Scope) error { + return autoConvert_authorization_SubjectAccessReview_To_v1_SubjectAccessReview(in, out, s) +} + +func autoConvert_v1_SubjectAccessReviewSpec_To_authorization_SubjectAccessReviewSpec(in *SubjectAccessReviewSpec, out *authorization.SubjectAccessReviewSpec, s conversion.Scope) error { + out.ResourceAttributes = (*authorization.ResourceAttributes)(unsafe.Pointer(in.ResourceAttributes)) + out.NonResourceAttributes = (*authorization.NonResourceAttributes)(unsafe.Pointer(in.NonResourceAttributes)) + out.User = in.User + out.Groups = *(*[]string)(unsafe.Pointer(&in.Groups)) + out.Extra = *(*map[string]authorization.ExtraValue)(unsafe.Pointer(&in.Extra)) + return nil +} + +func Convert_v1_SubjectAccessReviewSpec_To_authorization_SubjectAccessReviewSpec(in *SubjectAccessReviewSpec, out *authorization.SubjectAccessReviewSpec, s conversion.Scope) error { + return autoConvert_v1_SubjectAccessReviewSpec_To_authorization_SubjectAccessReviewSpec(in, out, s) +} + +func autoConvert_authorization_SubjectAccessReviewSpec_To_v1_SubjectAccessReviewSpec(in *authorization.SubjectAccessReviewSpec, out *SubjectAccessReviewSpec, s conversion.Scope) error { + out.ResourceAttributes = (*ResourceAttributes)(unsafe.Pointer(in.ResourceAttributes)) + out.NonResourceAttributes = (*NonResourceAttributes)(unsafe.Pointer(in.NonResourceAttributes)) + out.User = in.User + out.Groups = *(*[]string)(unsafe.Pointer(&in.Groups)) + out.Extra = *(*map[string]ExtraValue)(unsafe.Pointer(&in.Extra)) + return nil +} + +func Convert_authorization_SubjectAccessReviewSpec_To_v1_SubjectAccessReviewSpec(in *authorization.SubjectAccessReviewSpec, out *SubjectAccessReviewSpec, s conversion.Scope) error { + return autoConvert_authorization_SubjectAccessReviewSpec_To_v1_SubjectAccessReviewSpec(in, out, s) +} + +func autoConvert_v1_SubjectAccessReviewStatus_To_authorization_SubjectAccessReviewStatus(in *SubjectAccessReviewStatus, out *authorization.SubjectAccessReviewStatus, s conversion.Scope) error { + out.Allowed = in.Allowed + out.Reason = in.Reason + out.EvaluationError = in.EvaluationError + return nil +} + +func Convert_v1_SubjectAccessReviewStatus_To_authorization_SubjectAccessReviewStatus(in *SubjectAccessReviewStatus, out *authorization.SubjectAccessReviewStatus, s conversion.Scope) error { + return autoConvert_v1_SubjectAccessReviewStatus_To_authorization_SubjectAccessReviewStatus(in, out, s) +} + +func autoConvert_authorization_SubjectAccessReviewStatus_To_v1_SubjectAccessReviewStatus(in *authorization.SubjectAccessReviewStatus, out *SubjectAccessReviewStatus, s conversion.Scope) error { + out.Allowed = in.Allowed + out.Reason = in.Reason + out.EvaluationError = in.EvaluationError + return nil +} + +func Convert_authorization_SubjectAccessReviewStatus_To_v1_SubjectAccessReviewStatus(in *authorization.SubjectAccessReviewStatus, out *SubjectAccessReviewStatus, s conversion.Scope) error { + return autoConvert_authorization_SubjectAccessReviewStatus_To_v1_SubjectAccessReviewStatus(in, out, s) +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/zz_generated.deepcopy.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/zz_generated.deepcopy.go new file mode 100644 index 00000000000..1f3199a3586 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/zz_generated.deepcopy.go @@ -0,0 +1,179 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by deepcopy-gen. Do not edit it manually! + +package v1 + +import ( + meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + reflect "reflect" +) + +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// RegisterDeepCopies adds deep-copy functions to the given scheme. Public +// to allow building arbitrary schemes. +func RegisterDeepCopies(scheme *runtime.Scheme) error { + return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LocalSubjectAccessReview, InType: reflect.TypeOf(&LocalSubjectAccessReview{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NonResourceAttributes, InType: reflect.TypeOf(&NonResourceAttributes{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ResourceAttributes, InType: reflect.TypeOf(&ResourceAttributes{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SelfSubjectAccessReview, InType: reflect.TypeOf(&SelfSubjectAccessReview{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SelfSubjectAccessReviewSpec, InType: reflect.TypeOf(&SelfSubjectAccessReviewSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SubjectAccessReview, InType: reflect.TypeOf(&SubjectAccessReview{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SubjectAccessReviewSpec, InType: reflect.TypeOf(&SubjectAccessReviewSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_SubjectAccessReviewStatus, InType: reflect.TypeOf(&SubjectAccessReviewStatus{})}, + ) +} + +func DeepCopy_v1_LocalSubjectAccessReview(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*LocalSubjectAccessReview) + out := out.(*LocalSubjectAccessReview) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) + } + if err := DeepCopy_v1_SubjectAccessReviewSpec(&in.Spec, &out.Spec, c); err != nil { + return err + } + return nil + } +} + +func DeepCopy_v1_NonResourceAttributes(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NonResourceAttributes) + out := out.(*NonResourceAttributes) + *out = *in + return nil + } +} + +func DeepCopy_v1_ResourceAttributes(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ResourceAttributes) + out := out.(*ResourceAttributes) + *out = *in + return nil + } +} + +func DeepCopy_v1_SelfSubjectAccessReview(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*SelfSubjectAccessReview) + out := out.(*SelfSubjectAccessReview) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) + } + if err := DeepCopy_v1_SelfSubjectAccessReviewSpec(&in.Spec, &out.Spec, c); err != nil { + return err + } + return nil + } +} + +func DeepCopy_v1_SelfSubjectAccessReviewSpec(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*SelfSubjectAccessReviewSpec) + out := out.(*SelfSubjectAccessReviewSpec) + *out = *in + if in.ResourceAttributes != nil { + in, out := &in.ResourceAttributes, &out.ResourceAttributes + *out = new(ResourceAttributes) + **out = **in + } + if in.NonResourceAttributes != nil { + in, out := &in.NonResourceAttributes, &out.NonResourceAttributes + *out = new(NonResourceAttributes) + **out = **in + } + return nil + } +} + +func DeepCopy_v1_SubjectAccessReview(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*SubjectAccessReview) + out := out.(*SubjectAccessReview) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) + } + if err := DeepCopy_v1_SubjectAccessReviewSpec(&in.Spec, &out.Spec, c); err != nil { + return err + } + return nil + } +} + +func DeepCopy_v1_SubjectAccessReviewSpec(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*SubjectAccessReviewSpec) + out := out.(*SubjectAccessReviewSpec) + *out = *in + if in.ResourceAttributes != nil { + in, out := &in.ResourceAttributes, &out.ResourceAttributes + *out = new(ResourceAttributes) + **out = **in + } + if in.NonResourceAttributes != nil { + in, out := &in.NonResourceAttributes, &out.NonResourceAttributes + *out = new(NonResourceAttributes) + **out = **in + } + if in.Groups != nil { + in, out := &in.Groups, &out.Groups + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Extra != nil { + in, out := &in.Extra, &out.Extra + *out = make(map[string]ExtraValue) + for key, val := range *in { + if newVal, err := c.DeepCopy(&val); err != nil { + return err + } else { + (*out)[key] = *newVal.(*ExtraValue) + } + } + } + return nil + } +} + +func DeepCopy_v1_SubjectAccessReviewStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*SubjectAccessReviewStatus) + out := out.(*SubjectAccessReviewStatus) + *out = *in + return nil + } +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/zz_generated.defaults.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/zz_generated.defaults.go new file mode 100644 index 00000000000..6df448eb9fd --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1/zz_generated.defaults.go @@ -0,0 +1,32 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by defaulter-gen. Do not edit it manually! + +package v1 + +import ( + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// RegisterDefaults adds defaulters functions to the given scheme. +// Public to allow building arbitrary schemes. +// All generated defaulters are covering - they call all nested defaulters. +func RegisterDefaults(scheme *runtime.Scheme) error { + return nil +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.pb.go index 4e879e8876b..65877a2ad77 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.pb.go @@ -2283,61 +2283,62 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 888 bytes of a gzipped FileDescriptorProto + // 904 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xec, 0x56, 0x4f, 0x6f, 0xdc, 0x44, - 0x14, 0x5f, 0xef, 0x9f, 0x64, 0x77, 0x02, 0xa4, 0x4c, 0x55, 0xe2, 0x06, 0xc9, 0xbb, 0x5a, 0x24, - 0x94, 0x4a, 0xc5, 0x6e, 0xca, 0xbf, 0xaa, 0xe2, 0x40, 0x2c, 0xa2, 0xaa, 0x82, 0x16, 0x34, 0x81, - 0x1c, 0xe0, 0xc2, 0xd8, 0x79, 0xdd, 0x35, 0xbb, 0xeb, 0xb1, 0x66, 0xc6, 0x2e, 0xe1, 0xd4, 0x0f, - 0xc0, 0x81, 0x63, 0x8f, 0x7c, 0x05, 0xbe, 0x00, 0x57, 0x72, 0xec, 0x11, 0x24, 0xb4, 0x22, 0xe6, - 0x5b, 0x70, 0x42, 0x33, 0x9e, 0x5d, 0x67, 0x59, 0x87, 0x6a, 0xa1, 0x88, 0x1e, 0x72, 0xb3, 0xdf, - 0xfb, 0xbd, 0xdf, 0xfb, 0xcd, 0x9b, 0x37, 0xf3, 0x06, 0xbd, 0x3f, 0xba, 0x25, 0xdc, 0x88, 0x79, - 0xa3, 0x34, 0x00, 0x1e, 0x83, 0x04, 0xe1, 0x25, 0xa3, 0x81, 0x47, 0x93, 0x48, 0x78, 0x34, 0x95, - 0x43, 0xc6, 0xa3, 0x6f, 0xa8, 0x8c, 0x58, 0xec, 0x65, 0xbb, 0x01, 0x48, 0xba, 0xeb, 0x0d, 0x20, - 0x06, 0x4e, 0x25, 0x1c, 0xb9, 0x09, 0x67, 0x92, 0xe1, 0x1b, 0x05, 0x83, 0x5b, 0x32, 0xb8, 0xc9, - 0x68, 0xe0, 0x2a, 0x06, 0x77, 0x81, 0xc1, 0x35, 0x0c, 0xdb, 0x6f, 0x0c, 0x22, 0x39, 0x4c, 0x03, - 0x37, 0x64, 0x13, 0x6f, 0xc0, 0x06, 0xcc, 0xd3, 0x44, 0x41, 0xfa, 0x40, 0xff, 0xe9, 0x1f, 0xfd, - 0x55, 0x24, 0xd8, 0x7e, 0xcb, 0x48, 0xa4, 0x49, 0x34, 0xa1, 0xe1, 0x30, 0x8a, 0x81, 0x1f, 0x97, - 0x22, 0x27, 0x20, 0xa9, 0x97, 0x2d, 0xc9, 0xda, 0xf6, 0xce, 0x8b, 0xe2, 0x69, 0x2c, 0xa3, 0x09, - 0x2c, 0x05, 0xbc, 0xf3, 0xb4, 0x00, 0x11, 0x0e, 0x61, 0x42, 0x97, 0xe2, 0xde, 0x3c, 0x2f, 0x2e, - 0x95, 0xd1, 0xd8, 0x8b, 0x62, 0x29, 0x24, 0x5f, 0x0a, 0xba, 0x7e, 0x6e, 0xd9, 0x2b, 0xd6, 0xd2, - 0x7f, 0x17, 0xa1, 0xfd, 0xaf, 0x25, 0xa7, 0x87, 0x74, 0x9c, 0x02, 0xee, 0xa2, 0x56, 0x24, 0x61, - 0x22, 0x6c, 0xab, 0xd7, 0xd8, 0xe9, 0xf8, 0x9d, 0x7c, 0xda, 0x6d, 0xdd, 0x55, 0x06, 0x52, 0xd8, - 0x6f, 0xb7, 0x1f, 0x7f, 0xdf, 0xad, 0x3d, 0xfa, 0xb5, 0x57, 0xeb, 0x4f, 0xeb, 0xc8, 0xfe, 0x88, - 0x85, 0x74, 0x7c, 0x90, 0x06, 0x5f, 0x41, 0x28, 0xf7, 0xc2, 0x10, 0x84, 0x20, 0x90, 0x45, 0xf0, - 0x10, 0x7f, 0x89, 0xda, 0xaa, 0x78, 0x47, 0x54, 0x52, 0xdb, 0xea, 0x59, 0x3b, 0x1b, 0x37, 0x6f, - 0xb8, 0x66, 0x2f, 0xcf, 0xae, 0xa5, 0xdc, 0x4d, 0x85, 0x76, 0xb3, 0x5d, 0xf7, 0x63, 0xcd, 0x75, - 0x0f, 0x24, 0xf5, 0xf1, 0xc9, 0xb4, 0x5b, 0xcb, 0xa7, 0x5d, 0x54, 0xda, 0xc8, 0x9c, 0x15, 0x8f, - 0x50, 0x53, 0x24, 0x10, 0xda, 0x75, 0xcd, 0x7e, 0xd7, 0x5d, 0xb5, 0x53, 0xdc, 0x0a, 0xd9, 0x07, - 0x09, 0x84, 0xfe, 0x0b, 0x26, 0x6d, 0x53, 0xfd, 0x11, 0x9d, 0x04, 0x0b, 0xb4, 0x26, 0x24, 0x95, - 0xa9, 0xb0, 0x1b, 0x3a, 0xdd, 0x87, 0xcf, 0x26, 0x9d, 0xa6, 0xf4, 0x5f, 0x32, 0x09, 0xd7, 0x8a, - 0x7f, 0x62, 0x52, 0xf5, 0xbf, 0x40, 0x57, 0xee, 0xb3, 0x98, 0x80, 0x60, 0x29, 0x0f, 0x61, 0x4f, - 0x4a, 0x1e, 0x05, 0xa9, 0x04, 0x81, 0x7b, 0xa8, 0x99, 0x50, 0x39, 0xd4, 0x85, 0xed, 0x94, 0x7a, - 0x3f, 0xa1, 0x72, 0x48, 0xb4, 0x47, 0x21, 0x32, 0xe0, 0x81, 0x2e, 0xce, 0x19, 0xc4, 0x21, 0xf0, - 0x80, 0x68, 0x4f, 0xff, 0xc7, 0x3a, 0xc2, 0x15, 0xd4, 0x1e, 0xea, 0xc4, 0x74, 0x02, 0x22, 0xa1, - 0x21, 0x18, 0xfe, 0x97, 0x4d, 0x74, 0xe7, 0xfe, 0xcc, 0x41, 0x4a, 0xcc, 0xd3, 0x33, 0xe1, 0xd7, - 0x50, 0x6b, 0xc0, 0x59, 0x9a, 0xe8, 0xd2, 0x75, 0xfc, 0x17, 0x0d, 0xa4, 0x75, 0x47, 0x19, 0x49, - 0xe1, 0xc3, 0xd7, 0xd0, 0x7a, 0x06, 0x5c, 0x44, 0x2c, 0xb6, 0x9b, 0x1a, 0xb6, 0x69, 0x60, 0xeb, - 0x87, 0x85, 0x99, 0xcc, 0xfc, 0xf8, 0x3a, 0x6a, 0x73, 0x23, 0xdc, 0x6e, 0x69, 0xec, 0x25, 0x83, - 0x6d, 0xcf, 0x16, 0x44, 0xe6, 0x08, 0xfc, 0x36, 0xda, 0x10, 0x69, 0x30, 0x0f, 0x58, 0xd3, 0x01, - 0x97, 0x4d, 0xc0, 0xc6, 0x41, 0xe9, 0x22, 0x67, 0x71, 0x6a, 0x59, 0x6a, 0x8d, 0xf6, 0xfa, 0xe2, - 0xb2, 0x54, 0x09, 0x88, 0xf6, 0xf4, 0x4f, 0xeb, 0x68, 0xeb, 0x00, 0xc6, 0x0f, 0xfe, 0x9f, 0xee, - 0x67, 0x0b, 0xdd, 0x7f, 0xef, 0x1f, 0xb4, 0x63, 0xb5, 0xf4, 0xe7, 0xeb, 0x04, 0xfc, 0x54, 0x47, - 0xaf, 0xfe, 0x8d, 0x50, 0xfc, 0xad, 0x85, 0x30, 0x5f, 0x6a, 0x62, 0x53, 0xf2, 0x0f, 0x56, 0x57, - 0xb8, 0x7c, 0x20, 0xfc, 0x57, 0xf2, 0x69, 0xb7, 0xe2, 0xa0, 0x90, 0x8a, 0xbc, 0xf8, 0xb1, 0x85, - 0xae, 0xc4, 0x55, 0x27, 0xd6, 0x6c, 0xd3, 0x9d, 0xd5, 0x15, 0x55, 0x5e, 0x00, 0xfe, 0xd5, 0x7c, - 0xda, 0xad, 0xbe, 0x1b, 0x48, 0xb5, 0x80, 0xfe, 0x2f, 0x75, 0x74, 0xf9, 0xe2, 0x9e, 0xfe, 0x6f, - 0xba, 0xf4, 0x8f, 0x26, 0xda, 0xba, 0xe8, 0xd0, 0x7f, 0xd9, 0xa1, 0xf3, 0x41, 0xd2, 0x58, 0xbc, - 0x71, 0x3f, 0x13, 0xc0, 0xcd, 0x20, 0xe9, 0xcd, 0x06, 0x49, 0x53, 0xbf, 0x4d, 0x90, 0xda, 0x0a, - 0x3d, 0x44, 0xc4, 0x6c, 0x8a, 0x1c, 0xa3, 0x16, 0xa8, 0xb7, 0x8c, 0xdd, 0xea, 0x35, 0x76, 0x36, - 0x6e, 0x7e, 0xfa, 0xcc, 0x9a, 0xcd, 0xd5, 0x4f, 0xa4, 0xfd, 0x58, 0xf2, 0xe3, 0x72, 0x80, 0x69, - 0x1b, 0x29, 0x32, 0x6e, 0x67, 0xe6, 0x19, 0xa5, 0x31, 0xf8, 0x12, 0x6a, 0x8c, 0xe0, 0xb8, 0x18, - 0xa0, 0x44, 0x7d, 0x62, 0x82, 0x5a, 0x99, 0x7a, 0x61, 0x99, 0x42, 0xbf, 0xb7, 0xba, 0xb4, 0xf2, - 0x95, 0x46, 0x0a, 0xaa, 0xdb, 0xf5, 0x5b, 0x56, 0xff, 0x07, 0x0b, 0x5d, 0x3d, 0xb7, 0x65, 0xd5, - 0x58, 0xa5, 0xe3, 0x31, 0x7b, 0x08, 0x47, 0x5a, 0x4b, 0xbb, 0x1c, 0xab, 0x7b, 0x85, 0x99, 0xcc, - 0xfc, 0xf8, 0x75, 0xb4, 0xc6, 0x81, 0x0a, 0x16, 0x9b, 0x51, 0x3e, 0xef, 0x76, 0xa2, 0xad, 0xc4, - 0x78, 0xf1, 0x1e, 0xda, 0x04, 0x95, 0x5e, 0x8b, 0xdb, 0xe7, 0x9c, 0x71, 0xb3, 0x65, 0x5b, 0x26, - 0x60, 0x73, 0x7f, 0xd1, 0x4d, 0xfe, 0x8a, 0xf7, 0xaf, 0x9d, 0x9c, 0x3a, 0xb5, 0x27, 0xa7, 0x4e, - 0xed, 0xe7, 0x53, 0xa7, 0xf6, 0x28, 0x77, 0xac, 0x93, 0xdc, 0xb1, 0x9e, 0xe4, 0x8e, 0xf5, 0x5b, - 0xee, 0x58, 0xdf, 0xfd, 0xee, 0xd4, 0x3e, 0x5f, 0x37, 0x8b, 0xfe, 0x33, 0x00, 0x00, 0xff, 0xff, - 0xb8, 0x9c, 0x70, 0x59, 0x43, 0x0c, 0x00, 0x00, + 0x14, 0x5f, 0xef, 0x9f, 0x64, 0x77, 0x02, 0xa4, 0x4c, 0x55, 0xe2, 0x06, 0x69, 0x77, 0xb5, 0x48, + 0x28, 0x95, 0x8a, 0xdd, 0x94, 0x7f, 0x55, 0xc5, 0x81, 0x58, 0x44, 0x55, 0x05, 0x2d, 0x68, 0x02, + 0x39, 0xc0, 0x85, 0xb1, 0xf3, 0xba, 0x6b, 0x76, 0xed, 0xb1, 0x66, 0xc6, 0x6e, 0xc3, 0xa9, 0x1f, + 0x80, 0x03, 0xc7, 0x1e, 0xf9, 0x0a, 0x7c, 0x01, 0xae, 0xe4, 0xd8, 0x23, 0x48, 0x68, 0x45, 0xcc, + 0xb7, 0xe0, 0x84, 0x66, 0x3c, 0xbb, 0xce, 0xb2, 0x0e, 0xd5, 0x42, 0x11, 0x1c, 0x72, 0xb3, 0xdf, + 0xfb, 0xbd, 0xf7, 0x7e, 0xef, 0xcd, 0x9b, 0x79, 0x0f, 0xbd, 0x3f, 0xbe, 0x25, 0x9c, 0x90, 0xb9, + 0xe3, 0xd4, 0x07, 0x1e, 0x83, 0x04, 0xe1, 0x26, 0xe3, 0xa1, 0x4b, 0x93, 0x50, 0xb8, 0x34, 0x95, + 0x23, 0xc6, 0xc3, 0xaf, 0xa9, 0x0c, 0x59, 0xec, 0x66, 0xbb, 0x3e, 0x48, 0xba, 0xeb, 0x0e, 0x21, + 0x06, 0x4e, 0x25, 0x1c, 0x39, 0x09, 0x67, 0x92, 0xe1, 0x1b, 0x85, 0x07, 0xa7, 0xf4, 0xe0, 0x24, + 0xe3, 0xa1, 0xa3, 0x3c, 0x38, 0x0b, 0x1e, 0x1c, 0xe3, 0x61, 0xfb, 0x8d, 0x61, 0x28, 0x47, 0xa9, + 0xef, 0x04, 0x2c, 0x72, 0x87, 0x6c, 0xc8, 0x5c, 0xed, 0xc8, 0x4f, 0x1f, 0xe8, 0x3f, 0xfd, 0xa3, + 0xbf, 0x8a, 0x00, 0xdb, 0x6f, 0x19, 0x8a, 0x34, 0x09, 0x23, 0x1a, 0x8c, 0xc2, 0x18, 0xf8, 0x71, + 0x49, 0x32, 0x02, 0x49, 0xdd, 0x6c, 0x89, 0xd6, 0xb6, 0x7b, 0x9e, 0x15, 0x4f, 0x63, 0x19, 0x46, + 0xb0, 0x64, 0xf0, 0xce, 0xb3, 0x0c, 0x44, 0x30, 0x82, 0x88, 0x2e, 0xd9, 0xbd, 0x79, 0x9e, 0x5d, + 0x2a, 0xc3, 0x89, 0x1b, 0xc6, 0x52, 0x48, 0xbe, 0x64, 0x74, 0x26, 0x27, 0x01, 0x3c, 0x03, 0x5e, + 0x26, 0x04, 0x8f, 0x68, 0x94, 0x4c, 0xa0, 0x2a, 0xa7, 0xeb, 0xe7, 0x1e, 0x56, 0x05, 0x7a, 0xf0, + 0x2e, 0x42, 0xfb, 0x8f, 0x24, 0xa7, 0x87, 0x74, 0x92, 0x02, 0xee, 0xa1, 0x56, 0x28, 0x21, 0x12, + 0xb6, 0xd5, 0x6f, 0xec, 0x74, 0xbc, 0x4e, 0x3e, 0xed, 0xb5, 0xee, 0x2a, 0x01, 0x29, 0xe4, 0xb7, + 0xdb, 0x4f, 0xbe, 0xeb, 0xd5, 0x1e, 0xff, 0xd2, 0xaf, 0x0d, 0xa6, 0x75, 0x64, 0x7f, 0xc4, 0x02, + 0x3a, 0x39, 0x48, 0xfd, 0xaf, 0x20, 0x90, 0x7b, 0x41, 0x00, 0x42, 0x10, 0xc8, 0x42, 0x78, 0x88, + 0xbf, 0x44, 0x6d, 0x55, 0xf2, 0x23, 0x2a, 0xa9, 0x6d, 0xf5, 0xad, 0x9d, 0x8d, 0x9b, 0x37, 0x1c, + 0xd3, 0x01, 0x67, 0x2b, 0x50, 0xf6, 0x80, 0x42, 0x3b, 0xd9, 0xae, 0xf3, 0xb1, 0xf6, 0x75, 0x0f, + 0x24, 0xf5, 0xf0, 0xc9, 0xb4, 0x57, 0xcb, 0xa7, 0x3d, 0x54, 0xca, 0xc8, 0xdc, 0x2b, 0x1e, 0xa3, + 0xa6, 0x48, 0x20, 0xb0, 0xeb, 0xda, 0xfb, 0x5d, 0x67, 0xd5, 0xfe, 0x72, 0x2a, 0x68, 0x1f, 0x24, + 0x10, 0x78, 0x2f, 0x98, 0xb0, 0x4d, 0xf5, 0x47, 0x74, 0x10, 0x2c, 0xd0, 0x9a, 0x90, 0x54, 0xa6, + 0xc2, 0x6e, 0xe8, 0x70, 0x1f, 0x3e, 0x9f, 0x70, 0xda, 0xa5, 0xf7, 0x92, 0x09, 0xb8, 0x56, 0xfc, + 0x13, 0x13, 0x6a, 0xf0, 0x05, 0xba, 0x72, 0x9f, 0xc5, 0x04, 0x04, 0x4b, 0x79, 0x00, 0x7b, 0x52, + 0xf2, 0xd0, 0x4f, 0x25, 0x08, 0xdc, 0x47, 0xcd, 0x84, 0xca, 0x91, 0x2e, 0x6c, 0xa7, 0xe4, 0xfb, + 0x09, 0x95, 0x23, 0xa2, 0x35, 0x0a, 0x91, 0x01, 0xf7, 0x75, 0x71, 0xce, 0x20, 0x0e, 0x81, 0xfb, + 0x44, 0x6b, 0x06, 0x3f, 0xd4, 0x11, 0xae, 0x70, 0xed, 0xa2, 0x4e, 0x4c, 0x23, 0x10, 0x09, 0x0d, + 0xc0, 0xf8, 0x7f, 0xd9, 0x58, 0x77, 0xee, 0xcf, 0x14, 0xa4, 0xc4, 0x3c, 0x3b, 0x12, 0x7e, 0x0d, + 0xb5, 0x86, 0x9c, 0xa5, 0x89, 0x2e, 0x5d, 0xc7, 0x7b, 0xd1, 0x40, 0x5a, 0x77, 0x94, 0x90, 0x14, + 0x3a, 0x7c, 0x0d, 0xad, 0x67, 0xc0, 0x45, 0xc8, 0x62, 0xbb, 0xa9, 0x61, 0x9b, 0x06, 0xb6, 0x7e, + 0x58, 0x88, 0xc9, 0x4c, 0x8f, 0xaf, 0xa3, 0x36, 0x37, 0xc4, 0xed, 0x96, 0xc6, 0x5e, 0x32, 0xd8, + 0xf6, 0x2c, 0x21, 0x32, 0x47, 0xe0, 0xb7, 0xd1, 0x86, 0x48, 0xfd, 0xb9, 0xc1, 0x9a, 0x36, 0xb8, + 0x6c, 0x0c, 0x36, 0x0e, 0x4a, 0x15, 0x39, 0x8b, 0x53, 0x69, 0xa9, 0x1c, 0xed, 0xf5, 0xc5, 0xb4, + 0x54, 0x09, 0x88, 0xd6, 0x0c, 0x4e, 0xeb, 0x68, 0xeb, 0x00, 0x26, 0x0f, 0xfe, 0x9b, 0xee, 0x67, + 0x0b, 0xdd, 0x7f, 0xef, 0x6f, 0xb4, 0x63, 0x35, 0xf5, 0xff, 0xd7, 0x0d, 0xf8, 0xb1, 0x8e, 0x5e, + 0xfd, 0x0b, 0xa2, 0xf8, 0x1b, 0x0b, 0x61, 0xbe, 0xd4, 0xc4, 0xa6, 0xe4, 0x1f, 0xac, 0xce, 0x70, + 0xf9, 0x42, 0x78, 0xaf, 0xe4, 0xd3, 0x5e, 0xc5, 0x45, 0x21, 0x15, 0x71, 0xf1, 0x13, 0x0b, 0x5d, + 0x89, 0xab, 0x6e, 0xac, 0x39, 0xa6, 0x3b, 0xab, 0x33, 0xaa, 0x7c, 0x00, 0xbc, 0xab, 0xf9, 0xb4, + 0x57, 0xfd, 0x36, 0x90, 0x6a, 0x02, 0x83, 0x9f, 0xeb, 0xe8, 0xf2, 0xc5, 0x3b, 0xfd, 0xef, 0x74, + 0xe9, 0xef, 0x4d, 0xb4, 0x75, 0xd1, 0xa1, 0xff, 0xb0, 0x43, 0xe7, 0x83, 0xa4, 0xb1, 0xf8, 0xe2, + 0x7e, 0x26, 0x80, 0x9b, 0x41, 0xd2, 0x9f, 0x0d, 0x92, 0xa6, 0xde, 0x4d, 0x90, 0x3a, 0x0a, 0x3d, + 0x44, 0xc4, 0x6c, 0x8a, 0x1c, 0xa3, 0x16, 0xa8, 0x5d, 0xc6, 0x6e, 0xf5, 0x1b, 0x3b, 0x1b, 0x37, + 0x3f, 0x7d, 0x6e, 0xcd, 0xe6, 0xe8, 0x15, 0x69, 0x3f, 0x96, 0xfc, 0xb8, 0x1c, 0x60, 0x5a, 0x46, + 0x8a, 0x88, 0xdb, 0x99, 0x59, 0xa3, 0x34, 0x06, 0x5f, 0x42, 0x8d, 0x31, 0x1c, 0x17, 0x03, 0x94, + 0xa8, 0x4f, 0x4c, 0x50, 0x2b, 0x53, 0x1b, 0x96, 0x29, 0xf4, 0x7b, 0xab, 0x53, 0x2b, 0xb7, 0x34, + 0x52, 0xb8, 0xba, 0x5d, 0xbf, 0x65, 0x0d, 0xbe, 0xb7, 0xd0, 0xd5, 0x73, 0x5b, 0x56, 0x8d, 0x55, + 0x3a, 0x99, 0xb0, 0x87, 0x70, 0xa4, 0xb9, 0xb4, 0xcb, 0xb1, 0xba, 0x57, 0x88, 0xc9, 0x4c, 0x8f, + 0x5f, 0x47, 0x6b, 0x1c, 0xa8, 0x60, 0xb1, 0x19, 0xe5, 0xf3, 0x6e, 0x27, 0x5a, 0x4a, 0x8c, 0x16, + 0xef, 0xa1, 0x4d, 0x50, 0xe1, 0x35, 0xb9, 0x7d, 0xce, 0x19, 0x37, 0x47, 0xb6, 0x65, 0x0c, 0x36, + 0xf7, 0x17, 0xd5, 0xe4, 0xcf, 0x78, 0xef, 0xda, 0xc9, 0x69, 0xb7, 0xf6, 0xf4, 0xb4, 0x5b, 0xfb, + 0xe9, 0xb4, 0x5b, 0x7b, 0x9c, 0x77, 0xad, 0x93, 0xbc, 0x6b, 0x3d, 0xcd, 0xbb, 0xd6, 0xaf, 0x79, + 0xd7, 0xfa, 0xf6, 0xb7, 0x6e, 0xed, 0xf3, 0x75, 0x93, 0xf4, 0x1f, 0x01, 0x00, 0x00, 0xff, 0xff, + 0x38, 0xbb, 0x77, 0xc4, 0x79, 0x0c, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.proto index 8d02f4bd373..6b77db4623b 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.proto @@ -25,6 +25,7 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/annotations.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/annotations.go new file mode 100644 index 00000000000..4c377561bb3 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/annotations.go @@ -0,0 +1,30 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package autoscaling + +// MetricSpecsAnnotation is the annotation which holds non-CPU-utilization HPA metric +// specs when converting the `Metrics` field from autoscaling/v2alpha1 +const MetricSpecsAnnotation = "autoscaling.alpha.kubernetes.io/metrics" + +// MetricStatusesAnnotation is the annotation which holds non-CPU-utilization HPA metric +// statuses when converting the `CurrentMetrics` field from autoscaling/v2alpha1 +const MetricStatusesAnnotation = "autoscaling.alpha.kubernetes.io/current-metrics" + +// DefaultCPUUtilization is the default value for CPU utilization, provided no other +// metrics are present. This is here because it's used by both the v2alpha1 defaulting +// logic, and the pseudo-defaulting done in v1 conversion. +const DefaultCPUUtilization = 80 diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/install/install.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/install/install.go index 9cfbd2a740f..0ecc0af9b7b 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/install/install.go +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/install/install.go @@ -25,6 +25,7 @@ import ( "k8s.io/client-go/pkg/api" "k8s.io/client-go/pkg/apis/autoscaling" "k8s.io/client-go/pkg/apis/autoscaling/v1" + "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1" ) func init() { @@ -36,12 +37,13 @@ func Install(groupFactoryRegistry announced.APIGroupFactoryRegistry, registry *r if err := announced.NewGroupMetaFactory( &announced.GroupMetaFactoryArgs{ GroupName: autoscaling.GroupName, - VersionPreferenceOrder: []string{v1.SchemeGroupVersion.Version}, + VersionPreferenceOrder: []string{v1.SchemeGroupVersion.Version, v2alpha1.SchemeGroupVersion.Version}, ImportPrefix: "k8s.io/client-go/pkg/apis/autoscaling", AddInternalObjectsToScheme: autoscaling.AddToScheme, }, announced.VersionToSchemeFunc{ - v1.SchemeGroupVersion.Version: v1.AddToScheme, + v1.SchemeGroupVersion.Version: v1.AddToScheme, + v2alpha1.SchemeGroupVersion.Version: v2alpha1.AddToScheme, }, ).Announce(groupFactoryRegistry).RegisterAndEnable(registry, scheme); err != nil { panic(err) diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/types.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/types.go index 55af1907b33..39f206b1f19 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/types.go +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/types.go @@ -17,7 +17,9 @@ limitations under the License. package autoscaling import ( + "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/client-go/pkg/api" ) // Scale represents a scaling request for a resource. @@ -67,68 +69,237 @@ type CrossVersionObjectReference struct { APIVersion string } -// specification of a horizontal pod autoscaler. +// HorizontalPodAutoscalerSpec describes the desired functionality of the HorizontalPodAutoscaler. type HorizontalPodAutoscalerSpec struct { - // reference to scaled resource; horizontal pod autoscaler will learn the current resource consumption - // and will set the desired number of pods by using its Scale subresource. + // ScaleTargetRef points to the target resource to scale, and is used to the pods for which metrics + // should be collected, as well as to actually change the replica count. ScaleTargetRef CrossVersionObjectReference - // lower limit for the number of pods that can be set by the autoscaler, default 1. + // MinReplicas is the lower limit for the number of replicas to which the autoscaler can scale down. + // It defaults to 1 pod. // +optional MinReplicas *int32 - // upper limit for the number of pods that can be set by the autoscaler. It cannot be smaller than MinReplicas. + // MaxReplicas is the upper limit for the number of replicas to which the autoscaler can scale up. + // It cannot be less that minReplicas. MaxReplicas int32 - // target average CPU utilization (represented as a percentage of requested CPU) over all the pods; - // if not specified the default autoscaling policy will be used. + // Metrics contains the specifications for which to use to calculate the + // desired replica count (the maximum replica count across all metrics will + // be used). The desired replica count is calculated multiplying the + // ratio between the target value and the current value by the current + // number of pods. Ergo, metrics used must decrease as the pod count is + // increased, and vice-versa. See the individual metric source types for + // more information about how each type of metric must respond. // +optional - TargetCPUUtilizationPercentage *int32 + Metrics []MetricSpec } -// current status of a horizontal pod autoscaler +// MetricSourceType indicates the type of metric. +type MetricSourceType string + +var ( + // ObjectMetricSourceType is a metric describing a kubernetes object + // (for example, hits-per-second on an Ingress object). + ObjectMetricSourceType MetricSourceType = "Object" + // PodsMetricSourceType is a metric describing each pod in the current scale + // target (for example, transactions-processed-per-second). The values + // will be averaged together before being compared to the target value. + PodsMetricSourceType MetricSourceType = "Pods" + // ResourceMetricSourceType is a resource metric known to Kubernetes, as + // specified in requests and limits, describing each pod in the current + // scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics (the "pods" source). + ResourceMetricSourceType MetricSourceType = "Resource" +) + +// MetricSpec specifies how to scale based on a single metric +// (only `type` and one other matching field should be set at once). +type MetricSpec struct { + // Type is the type of metric source. It should match one of the fields below. + Type MetricSourceType + + // Object refers to a metric describing a single kubernetes object + // (for example, hits-per-second on an Ingress object). + // +optional + Object *ObjectMetricSource + // Pods refers to a metric describing each pod in the current scale target + // (for example, transactions-processed-per-second). The values will be + // averaged together before being compared to the target value. + // +optional + Pods *PodsMetricSource + // Resource refers to a resource metric (such as those specified in + // requests and limits) known to Kubernetes describing each pod in the + // current scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics using the "pods" source. + // +optional + Resource *ResourceMetricSource +} + +// ObjectMetricSource indicates how to scale on a metric describing a +// kubernetes object (for example, hits-per-second on an Ingress object). +type ObjectMetricSource struct { + // Target is the described Kubernetes object. + Target CrossVersionObjectReference + + // MetricName is the name of the metric in question. + MetricName string + // TargetValue is the target value of the metric (as a quantity). + TargetValue resource.Quantity +} + +// PodsMetricSource indicates how to scale on a metric describing each pod in +// the current scale target (for example, transactions-processed-per-second). +// The values will be averaged together before being compared to the target +// value. +type PodsMetricSource struct { + // MetricName is the name of the metric in question + MetricName string + // TargetAverageValue is the target value of the average of the + // metric across all relevant pods (as a quantity) + TargetAverageValue resource.Quantity +} + +// ResourceMetricSource indicates how to scale on a resource metric known to +// Kubernetes, as specified in requests and limits, describing each pod in the +// current scale target (e.g. CPU or memory). The values will be averaged +// together before being compared to the target. Such metrics are built in to +// Kubernetes, and have special scaling options on top of those available to +// normal per-pod metrics using the "pods" source. Only one "target" type +// should be set. +type ResourceMetricSource struct { + // Name is the name of the resource in question. + Name api.ResourceName + // TargetAverageUtilization is the target value of the average of the + // resource metric across all relevant pods, represented as a percentage of + // the requested value of the resource for the pods. + // +optional + TargetAverageUtilization *int32 + // TargetAverageValue is the the target value of the average of the + // resource metric across all relevant pods, as a raw value (instead of as + // a percentage of the request), similar to the "pods" metric source type. + // +optional + TargetAverageValue *resource.Quantity +} + +// HorizontalPodAutoscalerStatus describes the current status of a horizontal pod autoscaler. type HorizontalPodAutoscalerStatus struct { - // most recent generation observed by this autoscaler. + // ObservedGeneration is the most recent generation observed by this autoscaler. // +optional ObservedGeneration *int64 - // last time the HorizontalPodAutoscaler scaled the number of pods; + // LastScaleTime is the last time the HorizontalPodAutoscaler scaled the number of pods, // used by the autoscaler to control how often the number of pods is changed. // +optional LastScaleTime *metav1.Time - // current number of replicas of pods managed by this autoscaler. + // CurrentReplicas is current number of replicas of pods managed by this autoscaler, + // as last seen by the autoscaler. CurrentReplicas int32 - // desired number of replicas of pods managed by this autoscaler. + // DesiredReplicas is the desired number of replicas of pods managed by this autoscaler, + // as last calculated by the autoscaler. DesiredReplicas int32 - // current average CPU utilization over all pods, represented as a percentage of requested CPU, - // e.g. 70 means that an average pod is using now 70% of its requested CPU. + // CurrentMetrics is the last read state of the metrics used by this autoscaler. + CurrentMetrics []MetricStatus +} + +// MetricStatus describes the last-read state of a single metric. +type MetricStatus struct { + // Type is the type of metric source. It will match one of the fields below. + Type MetricSourceType + + // Object refers to a metric describing a single kubernetes object + // (for example, hits-per-second on an Ingress object). // +optional - CurrentCPUUtilizationPercentage *int32 + Object *ObjectMetricStatus + // Pods refers to a metric describing each pod in the current scale target + // (for example, transactions-processed-per-second). The values will be + // averaged together before being compared to the target value. + // +optional + Pods *PodsMetricStatus + // Resource refers to a resource metric (such as those specified in + // requests and limits) known to Kubernetes describing each pod in the + // current scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics using the "pods" source. + // +optional + Resource *ResourceMetricStatus +} + +// ObjectMetricStatus indicates the current value of a metric describing a +// kubernetes object (for example, hits-per-second on an Ingress object). +type ObjectMetricStatus struct { + // Target is the described Kubernetes object. + Target CrossVersionObjectReference + + // MetricName is the name of the metric in question. + MetricName string + // CurrentValue is the current value of the metric (as a quantity). + CurrentValue resource.Quantity +} + +// PodsMetricStatus indicates the current value of a metric describing each pod in +// the current scale target (for example, transactions-processed-per-second). +type PodsMetricStatus struct { + // MetricName is the name of the metric in question + MetricName string + // CurrentAverageValue is the current value of the average of the + // metric across all relevant pods (as a quantity) + CurrentAverageValue resource.Quantity +} + +// ResourceMetricStatus indicates the current value of a resource metric known to +// Kubernetes, as specified in requests and limits, describing each pod in the +// current scale target (e.g. CPU or memory). Such metrics are built in to +// Kubernetes, and have special scaling options on top of those available to +// normal per-pod metrics using the "pods" source. +type ResourceMetricStatus struct { + // Name is the name of the resource in question. + Name api.ResourceName + // CurrentAverageUtilization is the current value of the average of the + // resource metric across all relevant pods, represented as a percentage of + // the requested value of the resource for the pods. It will only be + // present if `targetAverageValue` was set in the corresponding metric + // specification. + // +optional + CurrentAverageUtilization *int32 + // CurrentAverageValue is the the current value of the average of the + // resource metric across all relevant pods, as a raw value (instead of as + // a percentage of the request), similar to the "pods" metric source type. + // It will always be set, regardless of the corresponding metric specification. + CurrentAverageValue resource.Quantity } // +genclient=true -// configuration of a horizontal pod autoscaler. +// HorizontalPodAutoscaler is the configuration for a horizontal pod +// autoscaler, which automatically manages the replica count of any resource +// implementing the scale subresource based on the metrics specified. type HorizontalPodAutoscaler struct { metav1.TypeMeta + // Metadata is the standard object metadata. + // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta - // behaviour of autoscaler. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // Spec is the specification for the behaviour of the autoscaler. + // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. // +optional Spec HorizontalPodAutoscalerSpec - // current information about the autoscaler. + // Status is the current information about the autoscaler. // +optional Status HorizontalPodAutoscalerStatus } -// list of horizontal pod autoscaler objects. +// HorizontalPodAutoscaler is a list of horizontal pod autoscaler objects. type HorizontalPodAutoscalerList struct { metav1.TypeMeta + // Metadata is the standard list metadata. // +optional metav1.ListMeta - // list of horizontal pod autoscaler objects. + // Items is the list of horizontal pod autoscaler objects. Items []HorizontalPodAutoscaler } diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/conversion.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/conversion.go new file mode 100644 index 00000000000..734e4bb571e --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/conversion.go @@ -0,0 +1,239 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + "encoding/json" + + "k8s.io/apimachinery/pkg/conversion" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/client-go/pkg/api" + "k8s.io/client-go/pkg/apis/autoscaling" +) + +func addConversionFuncs(scheme *runtime.Scheme) error { + // Add non-generated conversion functions + err := scheme.AddConversionFuncs( + Convert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler, + Convert_v1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler, + Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v1_HorizontalPodAutoscalerSpec, + Convert_v1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec, + Convert_autoscaling_HorizontalPodAutoscalerStatus_To_v1_HorizontalPodAutoscalerStatus, + Convert_v1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus, + ) + if err != nil { + return err + } + + return nil +} + +func Convert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler(in *autoscaling.HorizontalPodAutoscaler, out *HorizontalPodAutoscaler, s conversion.Scope) error { + if err := autoConvert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler(in, out, s); err != nil { + return err + } + + otherMetrics := make([]MetricSpec, 0, len(in.Spec.Metrics)) + for _, metric := range in.Spec.Metrics { + if metric.Type == autoscaling.ResourceMetricSourceType && metric.Resource != nil && metric.Resource.Name == api.ResourceCPU && metric.Resource.TargetAverageUtilization != nil { + continue + } + + convMetric := MetricSpec{} + if err := Convert_autoscaling_MetricSpec_To_v1_MetricSpec(&metric, &convMetric, s); err != nil { + return err + } + otherMetrics = append(otherMetrics, convMetric) + } + + // NB: we need to save the status even if it maps to a CPU utilization status in order to save the raw value as well + currentMetrics := make([]MetricStatus, len(in.Status.CurrentMetrics)) + for i, currentMetric := range in.Status.CurrentMetrics { + if err := Convert_autoscaling_MetricStatus_To_v1_MetricStatus(¤tMetric, ¤tMetrics[i], s); err != nil { + return err + } + } + + if len(otherMetrics) > 0 || len(in.Status.CurrentMetrics) > 0 { + old := out.Annotations + out.Annotations = make(map[string]string, len(old)+2) + if old != nil { + for k, v := range old { + out.Annotations[k] = v + } + } + } + + if len(otherMetrics) > 0 { + otherMetricsEnc, err := json.Marshal(otherMetrics) + if err != nil { + return err + } + out.Annotations[autoscaling.MetricSpecsAnnotation] = string(otherMetricsEnc) + } + + if len(in.Status.CurrentMetrics) > 0 { + currentMetricsEnc, err := json.Marshal(currentMetrics) + if err != nil { + return err + } + out.Annotations[autoscaling.MetricStatusesAnnotation] = string(currentMetricsEnc) + } + + return nil +} + +func Convert_v1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(in *HorizontalPodAutoscaler, out *autoscaling.HorizontalPodAutoscaler, s conversion.Scope) error { + if err := autoConvert_v1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(in, out, s); err != nil { + return err + } + + if otherMetricsEnc, hasOtherMetrics := out.Annotations[autoscaling.MetricSpecsAnnotation]; hasOtherMetrics { + var otherMetrics []MetricSpec + if err := json.Unmarshal([]byte(otherMetricsEnc), &otherMetrics); err != nil { + return err + } + + out.Spec.Metrics = make([]autoscaling.MetricSpec, len(otherMetrics)) + for i, metric := range otherMetrics { + if err := Convert_v1_MetricSpec_To_autoscaling_MetricSpec(&metric, &out.Spec.Metrics[i], s); err != nil { + return err + } + } + delete(out.Annotations, autoscaling.MetricSpecsAnnotation) + } + + if currentMetricsEnc, hasCurrentMetrics := out.Annotations[autoscaling.MetricStatusesAnnotation]; hasCurrentMetrics { + // ignore any existing status values -- the ones here have more information + var currentMetrics []MetricStatus + if err := json.Unmarshal([]byte(currentMetricsEnc), ¤tMetrics); err != nil { + return err + } + + out.Status.CurrentMetrics = make([]autoscaling.MetricStatus, len(currentMetrics)) + for i, currentMetric := range currentMetrics { + if err := Convert_v1_MetricStatus_To_autoscaling_MetricStatus(¤tMetric, &out.Status.CurrentMetrics[i], s); err != nil { + return err + } + } + delete(out.Annotations, autoscaling.MetricStatusesAnnotation) + } + + // autoscaling/v1 formerly had an implicit default applied in the controller. In v2alpha1, we apply it explicitly. + // We apply it here, explicitly, since we have access to the full set of metrics from the annotation. + if len(out.Spec.Metrics) == 0 { + // no other metrics, no explicit CPU value set + out.Spec.Metrics = []autoscaling.MetricSpec{ + { + Type: autoscaling.ResourceMetricSourceType, + Resource: &autoscaling.ResourceMetricSource{ + Name: api.ResourceCPU, + }, + }, + } + out.Spec.Metrics[0].Resource.TargetAverageUtilization = new(int32) + *out.Spec.Metrics[0].Resource.TargetAverageUtilization = autoscaling.DefaultCPUUtilization + } + + return nil +} + +func Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v1_HorizontalPodAutoscalerSpec(in *autoscaling.HorizontalPodAutoscalerSpec, out *HorizontalPodAutoscalerSpec, s conversion.Scope) error { + if err := Convert_autoscaling_CrossVersionObjectReference_To_v1_CrossVersionObjectReference(&in.ScaleTargetRef, &out.ScaleTargetRef, s); err != nil { + return err + } + + out.MinReplicas = in.MinReplicas + out.MaxReplicas = in.MaxReplicas + + for _, metric := range in.Metrics { + if metric.Type == autoscaling.ResourceMetricSourceType && metric.Resource != nil && metric.Resource.Name == api.ResourceCPU { + if metric.Resource.TargetAverageUtilization != nil { + out.TargetCPUUtilizationPercentage = new(int32) + *out.TargetCPUUtilizationPercentage = *metric.Resource.TargetAverageUtilization + } + break + } + } + + return nil +} + +func Convert_v1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec(in *HorizontalPodAutoscalerSpec, out *autoscaling.HorizontalPodAutoscalerSpec, s conversion.Scope) error { + if err := Convert_v1_CrossVersionObjectReference_To_autoscaling_CrossVersionObjectReference(&in.ScaleTargetRef, &out.ScaleTargetRef, s); err != nil { + return err + } + + out.MinReplicas = in.MinReplicas + out.MaxReplicas = in.MaxReplicas + + if in.TargetCPUUtilizationPercentage != nil { + out.Metrics = []autoscaling.MetricSpec{ + { + Type: autoscaling.ResourceMetricSourceType, + Resource: &autoscaling.ResourceMetricSource{ + Name: api.ResourceCPU, + }, + }, + } + out.Metrics[0].Resource.TargetAverageUtilization = new(int32) + *out.Metrics[0].Resource.TargetAverageUtilization = *in.TargetCPUUtilizationPercentage + } + + return nil +} + +func Convert_autoscaling_HorizontalPodAutoscalerStatus_To_v1_HorizontalPodAutoscalerStatus(in *autoscaling.HorizontalPodAutoscalerStatus, out *HorizontalPodAutoscalerStatus, s conversion.Scope) error { + out.ObservedGeneration = in.ObservedGeneration + out.LastScaleTime = in.LastScaleTime + + out.CurrentReplicas = in.CurrentReplicas + out.DesiredReplicas = in.DesiredReplicas + + for _, metric := range in.CurrentMetrics { + if metric.Type == autoscaling.ResourceMetricSourceType && metric.Resource != nil && metric.Resource.Name == api.ResourceCPU { + if metric.Resource.CurrentAverageUtilization != nil { + + out.CurrentCPUUtilizationPercentage = new(int32) + *out.CurrentCPUUtilizationPercentage = *metric.Resource.CurrentAverageUtilization + } + } + } + return nil +} + +func Convert_v1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(in *HorizontalPodAutoscalerStatus, out *autoscaling.HorizontalPodAutoscalerStatus, s conversion.Scope) error { + out.ObservedGeneration = in.ObservedGeneration + out.LastScaleTime = in.LastScaleTime + + out.CurrentReplicas = in.CurrentReplicas + out.DesiredReplicas = in.DesiredReplicas + + if in.CurrentCPUUtilizationPercentage != nil { + out.CurrentMetrics = []autoscaling.MetricStatus{ + { + Type: autoscaling.ResourceMetricSourceType, + Resource: &autoscaling.ResourceMetricStatus{ + Name: api.ResourceCPU, + }, + }, + } + out.CurrentMetrics[0].Resource.CurrentAverageUtilization = new(int32) + *out.CurrentMetrics[0].Resource.CurrentAverageUtilization = *in.CurrentCPUUtilizationPercentage + } + return nil +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/defaults.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/defaults.go index 0dde73214c5..d423ad1253b 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/defaults.go +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/defaults.go @@ -32,4 +32,7 @@ func SetDefaults_HorizontalPodAutoscaler(obj *HorizontalPodAutoscaler) { minReplicas := int32(1) obj.Spec.MinReplicas = &minReplicas } + + // NB: we apply a default for CPU utilization in conversion because + // we need access to the annotations to properly apply the default. } diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.pb.go index 4dcb24052a4..96b8335f8fb 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.pb.go @@ -30,6 +30,14 @@ limitations under the License. HorizontalPodAutoscalerList HorizontalPodAutoscalerSpec HorizontalPodAutoscalerStatus + MetricSpec + MetricStatus + ObjectMetricSource + ObjectMetricStatus + PodsMetricSource + PodsMetricStatus + ResourceMetricSource + ResourceMetricStatus Scale ScaleSpec ScaleStatus @@ -40,8 +48,11 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import k8s_io_apimachinery_pkg_api_resource "k8s.io/apimachinery/pkg/api/resource" import k8s_io_apimachinery_pkg_apis_meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" +import k8s_io_kubernetes_pkg_api_v1 "k8s.io/client-go/pkg/api/v1" + import strings "strings" import reflect "reflect" @@ -84,17 +95,49 @@ func (*HorizontalPodAutoscalerStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } +func (m *MetricSpec) Reset() { *m = MetricSpec{} } +func (*MetricSpec) ProtoMessage() {} +func (*MetricSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } + +func (m *MetricStatus) Reset() { *m = MetricStatus{} } +func (*MetricStatus) ProtoMessage() {} +func (*MetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } + +func (m *ObjectMetricSource) Reset() { *m = ObjectMetricSource{} } +func (*ObjectMetricSource) ProtoMessage() {} +func (*ObjectMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } + +func (m *ObjectMetricStatus) Reset() { *m = ObjectMetricStatus{} } +func (*ObjectMetricStatus) ProtoMessage() {} +func (*ObjectMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } + +func (m *PodsMetricSource) Reset() { *m = PodsMetricSource{} } +func (*PodsMetricSource) ProtoMessage() {} +func (*PodsMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } + +func (m *PodsMetricStatus) Reset() { *m = PodsMetricStatus{} } +func (*PodsMetricStatus) ProtoMessage() {} +func (*PodsMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } + +func (m *ResourceMetricSource) Reset() { *m = ResourceMetricSource{} } +func (*ResourceMetricSource) ProtoMessage() {} +func (*ResourceMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } + +func (m *ResourceMetricStatus) Reset() { *m = ResourceMetricStatus{} } +func (*ResourceMetricStatus) ProtoMessage() {} +func (*ResourceMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } + func (m *Scale) Reset() { *m = Scale{} } func (*Scale) ProtoMessage() {} -func (*Scale) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } +func (*Scale) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } func (m *ScaleSpec) Reset() { *m = ScaleSpec{} } func (*ScaleSpec) ProtoMessage() {} -func (*ScaleSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } +func (*ScaleSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{14} } func (m *ScaleStatus) Reset() { *m = ScaleStatus{} } func (*ScaleStatus) ProtoMessage() {} -func (*ScaleStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } +func (*ScaleStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{15} } func init() { proto.RegisterType((*CrossVersionObjectReference)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.CrossVersionObjectReference") @@ -102,6 +145,14 @@ func init() { proto.RegisterType((*HorizontalPodAutoscalerList)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.HorizontalPodAutoscalerList") proto.RegisterType((*HorizontalPodAutoscalerSpec)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.HorizontalPodAutoscalerSpec") proto.RegisterType((*HorizontalPodAutoscalerStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.HorizontalPodAutoscalerStatus") + proto.RegisterType((*MetricSpec)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.MetricSpec") + proto.RegisterType((*MetricStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.MetricStatus") + proto.RegisterType((*ObjectMetricSource)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.ObjectMetricSource") + proto.RegisterType((*ObjectMetricStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.ObjectMetricStatus") + proto.RegisterType((*PodsMetricSource)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.PodsMetricSource") + proto.RegisterType((*PodsMetricStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.PodsMetricStatus") + proto.RegisterType((*ResourceMetricSource)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.ResourceMetricSource") + proto.RegisterType((*ResourceMetricStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.ResourceMetricStatus") proto.RegisterType((*Scale)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.Scale") proto.RegisterType((*ScaleSpec)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.ScaleSpec") proto.RegisterType((*ScaleStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.ScaleStatus") @@ -299,6 +350,318 @@ func (m *HorizontalPodAutoscalerStatus) MarshalTo(data []byte) (int, error) { return i, nil } +func (m *MetricSpec) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *MetricSpec) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Type))) + i += copy(data[i:], m.Type) + if m.Object != nil { + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Object.Size())) + n7, err := m.Object.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n7 + } + if m.Pods != nil { + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Pods.Size())) + n8, err := m.Pods.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n8 + } + if m.Resource != nil { + data[i] = 0x22 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Resource.Size())) + n9, err := m.Resource.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n9 + } + return i, nil +} + +func (m *MetricStatus) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *MetricStatus) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Type))) + i += copy(data[i:], m.Type) + if m.Object != nil { + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Object.Size())) + n10, err := m.Object.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n10 + } + if m.Pods != nil { + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Pods.Size())) + n11, err := m.Pods.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n11 + } + if m.Resource != nil { + data[i] = 0x22 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Resource.Size())) + n12, err := m.Resource.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n12 + } + return i, nil +} + +func (m *ObjectMetricSource) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *ObjectMetricSource) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.Target.Size())) + n13, err := m.Target.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n13 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.MetricName))) + i += copy(data[i:], m.MetricName) + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.TargetValue.Size())) + n14, err := m.TargetValue.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n14 + return i, nil +} + +func (m *ObjectMetricStatus) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *ObjectMetricStatus) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.Target.Size())) + n15, err := m.Target.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n15 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.MetricName))) + i += copy(data[i:], m.MetricName) + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.CurrentValue.Size())) + n16, err := m.CurrentValue.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n16 + return i, nil +} + +func (m *PodsMetricSource) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *PodsMetricSource) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.MetricName))) + i += copy(data[i:], m.MetricName) + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.TargetAverageValue.Size())) + n17, err := m.TargetAverageValue.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n17 + return i, nil +} + +func (m *PodsMetricStatus) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *PodsMetricStatus) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.MetricName))) + i += copy(data[i:], m.MetricName) + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.CurrentAverageValue.Size())) + n18, err := m.CurrentAverageValue.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n18 + return i, nil +} + +func (m *ResourceMetricSource) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *ResourceMetricSource) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Name))) + i += copy(data[i:], m.Name) + if m.TargetAverageUtilization != nil { + data[i] = 0x10 + i++ + i = encodeVarintGenerated(data, i, uint64(*m.TargetAverageUtilization)) + } + if m.TargetAverageValue != nil { + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.TargetAverageValue.Size())) + n19, err := m.TargetAverageValue.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n19 + } + return i, nil +} + +func (m *ResourceMetricStatus) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *ResourceMetricStatus) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Name))) + i += copy(data[i:], m.Name) + if m.CurrentAverageUtilization != nil { + data[i] = 0x10 + i++ + i = encodeVarintGenerated(data, i, uint64(*m.CurrentAverageUtilization)) + } + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.CurrentAverageValue.Size())) + n20, err := m.CurrentAverageValue.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n20 + return i, nil +} + func (m *Scale) Marshal() (data []byte, err error) { size := m.Size() data = make([]byte, size) @@ -317,27 +680,27 @@ func (m *Scale) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n7, err := m.ObjectMeta.MarshalTo(data[i:]) + n21, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n7 + i += n21 data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) - n8, err := m.Spec.MarshalTo(data[i:]) + n22, err := m.Spec.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n8 + i += n22 data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) - n9, err := m.Status.MarshalTo(data[i:]) + n23, err := m.Status.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n9 + i += n23 return i, nil } @@ -485,6 +848,118 @@ func (m *HorizontalPodAutoscalerStatus) Size() (n int) { return n } +func (m *MetricSpec) Size() (n int) { + var l int + _ = l + l = len(m.Type) + n += 1 + l + sovGenerated(uint64(l)) + if m.Object != nil { + l = m.Object.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + if m.Pods != nil { + l = m.Pods.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + if m.Resource != nil { + l = m.Resource.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *MetricStatus) Size() (n int) { + var l int + _ = l + l = len(m.Type) + n += 1 + l + sovGenerated(uint64(l)) + if m.Object != nil { + l = m.Object.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + if m.Pods != nil { + l = m.Pods.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + if m.Resource != nil { + l = m.Resource.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *ObjectMetricSource) Size() (n int) { + var l int + _ = l + l = m.Target.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.MetricName) + n += 1 + l + sovGenerated(uint64(l)) + l = m.TargetValue.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *ObjectMetricStatus) Size() (n int) { + var l int + _ = l + l = m.Target.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.MetricName) + n += 1 + l + sovGenerated(uint64(l)) + l = m.CurrentValue.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *PodsMetricSource) Size() (n int) { + var l int + _ = l + l = len(m.MetricName) + n += 1 + l + sovGenerated(uint64(l)) + l = m.TargetAverageValue.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *PodsMetricStatus) Size() (n int) { + var l int + _ = l + l = len(m.MetricName) + n += 1 + l + sovGenerated(uint64(l)) + l = m.CurrentAverageValue.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *ResourceMetricSource) Size() (n int) { + var l int + _ = l + l = len(m.Name) + n += 1 + l + sovGenerated(uint64(l)) + if m.TargetAverageUtilization != nil { + n += 1 + sovGenerated(uint64(*m.TargetAverageUtilization)) + } + if m.TargetAverageValue != nil { + l = m.TargetAverageValue.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *ResourceMetricStatus) Size() (n int) { + var l int + _ = l + l = len(m.Name) + n += 1 + l + sovGenerated(uint64(l)) + if m.CurrentAverageUtilization != nil { + n += 1 + sovGenerated(uint64(*m.CurrentAverageUtilization)) + } + l = m.CurrentAverageValue.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + func (m *Scale) Size() (n int) { var l int _ = l @@ -588,6 +1063,102 @@ func (this *HorizontalPodAutoscalerStatus) String() string { }, "") return s } +func (this *MetricSpec) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&MetricSpec{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Object:` + strings.Replace(fmt.Sprintf("%v", this.Object), "ObjectMetricSource", "ObjectMetricSource", 1) + `,`, + `Pods:` + strings.Replace(fmt.Sprintf("%v", this.Pods), "PodsMetricSource", "PodsMetricSource", 1) + `,`, + `Resource:` + strings.Replace(fmt.Sprintf("%v", this.Resource), "ResourceMetricSource", "ResourceMetricSource", 1) + `,`, + `}`, + }, "") + return s +} +func (this *MetricStatus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&MetricStatus{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Object:` + strings.Replace(fmt.Sprintf("%v", this.Object), "ObjectMetricStatus", "ObjectMetricStatus", 1) + `,`, + `Pods:` + strings.Replace(fmt.Sprintf("%v", this.Pods), "PodsMetricStatus", "PodsMetricStatus", 1) + `,`, + `Resource:` + strings.Replace(fmt.Sprintf("%v", this.Resource), "ResourceMetricStatus", "ResourceMetricStatus", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectMetricSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectMetricSource{`, + `Target:` + strings.Replace(strings.Replace(this.Target.String(), "CrossVersionObjectReference", "CrossVersionObjectReference", 1), `&`, ``, 1) + `,`, + `MetricName:` + fmt.Sprintf("%v", this.MetricName) + `,`, + `TargetValue:` + strings.Replace(strings.Replace(this.TargetValue.String(), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectMetricStatus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectMetricStatus{`, + `Target:` + strings.Replace(strings.Replace(this.Target.String(), "CrossVersionObjectReference", "CrossVersionObjectReference", 1), `&`, ``, 1) + `,`, + `MetricName:` + fmt.Sprintf("%v", this.MetricName) + `,`, + `CurrentValue:` + strings.Replace(strings.Replace(this.CurrentValue.String(), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *PodsMetricSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PodsMetricSource{`, + `MetricName:` + fmt.Sprintf("%v", this.MetricName) + `,`, + `TargetAverageValue:` + strings.Replace(strings.Replace(this.TargetAverageValue.String(), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *PodsMetricStatus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PodsMetricStatus{`, + `MetricName:` + fmt.Sprintf("%v", this.MetricName) + `,`, + `CurrentAverageValue:` + strings.Replace(strings.Replace(this.CurrentAverageValue.String(), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *ResourceMetricSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ResourceMetricSource{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `TargetAverageUtilization:` + valueToStringGenerated(this.TargetAverageUtilization) + `,`, + `TargetAverageValue:` + strings.Replace(fmt.Sprintf("%v", this.TargetAverageValue), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ResourceMetricStatus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ResourceMetricStatus{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `CurrentAverageUtilization:` + valueToStringGenerated(this.CurrentAverageUtilization) + `,`, + `CurrentAverageValue:` + strings.Replace(strings.Replace(this.CurrentAverageValue.String(), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} func (this *Scale) String() string { if this == nil { return "nil" @@ -1317,6 +1888,1119 @@ func (m *HorizontalPodAutoscalerStatus) Unmarshal(data []byte) error { } return nil } +func (m *MetricSpec) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MetricSpec: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MetricSpec: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Type = MetricSourceType(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Object", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Object == nil { + m.Object = &ObjectMetricSource{} + } + if err := m.Object.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Pods", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Pods == nil { + m.Pods = &PodsMetricSource{} + } + if err := m.Pods.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Resource", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Resource == nil { + m.Resource = &ResourceMetricSource{} + } + if err := m.Resource.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MetricStatus) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MetricStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MetricStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Type = MetricSourceType(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Object", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Object == nil { + m.Object = &ObjectMetricStatus{} + } + if err := m.Object.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Pods", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Pods == nil { + m.Pods = &PodsMetricStatus{} + } + if err := m.Pods.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Resource", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Resource == nil { + m.Resource = &ResourceMetricStatus{} + } + if err := m.Resource.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectMetricSource) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectMetricSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectMetricSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Target", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Target.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MetricName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MetricName = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TargetValue", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.TargetValue.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectMetricStatus) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectMetricStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectMetricStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Target", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Target.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MetricName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MetricName = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentValue", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.CurrentValue.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *PodsMetricSource) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: PodsMetricSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PodsMetricSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MetricName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MetricName = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TargetAverageValue", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.TargetAverageValue.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *PodsMetricStatus) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: PodsMetricStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PodsMetricStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MetricName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MetricName = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentAverageValue", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.CurrentAverageValue.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ResourceMetricSource) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ResourceMetricSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ResourceMetricSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = k8s_io_kubernetes_pkg_api_v1.ResourceName(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field TargetAverageUtilization", wireType) + } + var v int32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + v |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.TargetAverageUtilization = &v + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TargetAverageValue", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.TargetAverageValue == nil { + m.TargetAverageValue = &k8s_io_apimachinery_pkg_api_resource.Quantity{} + } + if err := m.TargetAverageValue.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ResourceMetricStatus) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ResourceMetricStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ResourceMetricStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = k8s_io_kubernetes_pkg_api_v1.ResourceName(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentAverageUtilization", wireType) + } + var v int32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + v |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.CurrentAverageUtilization = &v + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentAverageValue", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.CurrentAverageValue.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *Scale) Unmarshal(data []byte) error { l := len(data) iNdEx := 0 @@ -1730,58 +3414,85 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 846 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xbc, 0x55, 0xcf, 0x6f, 0x1b, 0x45, - 0x14, 0xf6, 0xfa, 0x47, 0x95, 0xce, 0x92, 0x04, 0x06, 0xa9, 0xb5, 0x52, 0xb1, 0x1b, 0x19, 0x0e, - 0x05, 0x95, 0x5d, 0x6c, 0x4a, 0x45, 0x8f, 0xd9, 0xa0, 0xd2, 0x8a, 0x86, 0x46, 0x93, 0xb6, 0x07, - 0x84, 0x10, 0xe3, 0xf5, 0xeb, 0x66, 0x6a, 0xef, 0xec, 0x6a, 0x66, 0x6c, 0x41, 0x4f, 0x9c, 0x38, - 0x73, 0xe1, 0x0f, 0xe0, 0x4f, 0xe1, 0x96, 0x63, 0x6f, 0x70, 0xb2, 0xc8, 0xc2, 0x9f, 0xc1, 0x01, - 0xed, 0x78, 0xb2, 0x5e, 0xdb, 0x59, 0x27, 0x11, 0x88, 0x9b, 0x67, 0xde, 0xf7, 0x7d, 0xef, 0xcd, - 0xf7, 0xde, 0x3e, 0xa3, 0xfb, 0xc3, 0x4f, 0xa5, 0xc7, 0x12, 0x7f, 0x38, 0xee, 0x83, 0xe0, 0xa0, - 0x40, 0xfa, 0xe9, 0x30, 0xf2, 0x69, 0xca, 0xa4, 0x4f, 0xc7, 0x2a, 0x91, 0x21, 0x1d, 0x31, 0x1e, - 0xf9, 0x93, 0xae, 0x1f, 0x01, 0x07, 0x41, 0x15, 0x0c, 0xbc, 0x54, 0x24, 0x2a, 0xc1, 0xef, 0xcf, - 0xa8, 0xde, 0x9c, 0xea, 0xa5, 0xc3, 0xc8, 0xcb, 0xa9, 0x5e, 0x89, 0xea, 0x4d, 0xba, 0x3b, 0x1f, - 0x46, 0x4c, 0x1d, 0x8f, 0xfb, 0x5e, 0x98, 0xc4, 0x7e, 0x94, 0x44, 0x89, 0xaf, 0x15, 0xfa, 0xe3, - 0x17, 0xfa, 0xa4, 0x0f, 0xfa, 0xd7, 0x4c, 0x79, 0xe7, 0xae, 0x29, 0x8a, 0xa6, 0x2c, 0xa6, 0xe1, - 0x31, 0xe3, 0x20, 0xbe, 0x9f, 0x97, 0x15, 0x83, 0xa2, 0xe7, 0xd4, 0xb3, 0xe3, 0x57, 0xb1, 0xc4, - 0x98, 0x2b, 0x16, 0xc3, 0x0a, 0xe1, 0xde, 0x45, 0x04, 0x19, 0x1e, 0x43, 0x4c, 0x57, 0x78, 0x1f, - 0x57, 0xf1, 0xc6, 0x8a, 0x8d, 0x7c, 0xc6, 0x95, 0x54, 0x62, 0x85, 0x74, 0xa7, 0xd2, 0xe8, 0x73, - 0xde, 0xd2, 0xf9, 0xd9, 0x42, 0xb7, 0xf6, 0x45, 0x22, 0xe5, 0x73, 0x10, 0x92, 0x25, 0xfc, 0x49, - 0xff, 0x25, 0x84, 0x8a, 0xc0, 0x0b, 0x10, 0xc0, 0x43, 0xc0, 0xbb, 0xa8, 0x39, 0x64, 0x7c, 0xd0, - 0xb6, 0x76, 0xad, 0xdb, 0xd7, 0x83, 0x37, 0x4e, 0xa6, 0x6e, 0x2d, 0x9b, 0xba, 0xcd, 0x2f, 0x18, - 0x1f, 0x10, 0x1d, 0xc9, 0x11, 0x9c, 0xc6, 0xd0, 0xae, 0x2f, 0x22, 0xbe, 0xa4, 0x31, 0x10, 0x1d, - 0xc1, 0x3d, 0x84, 0x68, 0xca, 0x4c, 0x82, 0x76, 0x43, 0xe3, 0xb0, 0xc1, 0xa1, 0xbd, 0xc3, 0x47, - 0x26, 0x42, 0x4a, 0xa8, 0xce, 0x6f, 0x75, 0x74, 0xf3, 0x61, 0x22, 0xd8, 0xab, 0x84, 0x2b, 0x3a, - 0x3a, 0x4c, 0x06, 0x7b, 0xa6, 0xd1, 0x20, 0xf0, 0xb7, 0x68, 0x23, 0x6f, 0xcd, 0x80, 0x2a, 0xaa, - 0xeb, 0xb2, 0x7b, 0x1f, 0x79, 0x66, 0x44, 0xca, 0x4e, 0xcd, 0x87, 0x24, 0x47, 0x7b, 0x93, 0xae, - 0x37, 0x7b, 0xdc, 0x01, 0x28, 0x3a, 0xcf, 0x3f, 0xbf, 0x23, 0x85, 0x2a, 0x3e, 0x46, 0x4d, 0x99, - 0x42, 0xa8, 0xdf, 0x64, 0xf7, 0x1e, 0x78, 0x97, 0x1e, 0x40, 0xaf, 0xa2, 0xe6, 0xa3, 0x14, 0xc2, - 0xb9, 0x37, 0xf9, 0x89, 0xe8, 0x0c, 0x38, 0x45, 0xd7, 0xa4, 0xa2, 0x6a, 0x2c, 0xb5, 0x2f, 0x76, - 0xef, 0xe1, 0x7f, 0x90, 0x4b, 0xeb, 0x05, 0x5b, 0x26, 0xdb, 0xb5, 0xd9, 0x99, 0x98, 0x3c, 0x9d, - 0xbf, 0x2c, 0x74, 0xab, 0x82, 0xf9, 0x98, 0x49, 0x85, 0xbf, 0x5e, 0x71, 0xd7, 0xbb, 0x9c, 0xbb, - 0x39, 0x5b, 0x7b, 0xfb, 0xa6, 0xc9, 0xbc, 0x71, 0x76, 0x53, 0x72, 0x36, 0x42, 0x2d, 0xa6, 0x20, - 0x96, 0xed, 0xfa, 0x6e, 0xe3, 0xb6, 0xdd, 0x0b, 0xfe, 0xfd, 0x73, 0x83, 0x4d, 0x93, 0xae, 0xf5, - 0x28, 0x17, 0x26, 0x33, 0xfd, 0xce, 0xdf, 0xf5, 0xca, 0x67, 0xe6, 0xf6, 0xe3, 0x1f, 0x2d, 0xb4, - 0xa5, 0x8f, 0x4f, 0xa9, 0x88, 0x20, 0x9f, 0x78, 0xf3, 0xda, 0xab, 0x74, 0x7b, 0xcd, 0x97, 0x13, - 0xdc, 0x30, 0x65, 0x6d, 0x1d, 0x2d, 0x64, 0x21, 0x4b, 0x59, 0x71, 0x17, 0xd9, 0x31, 0xe3, 0x04, - 0xd2, 0x11, 0x0b, 0xa9, 0xd4, 0x23, 0xd7, 0x0a, 0xb6, 0xb3, 0xa9, 0x6b, 0x1f, 0xcc, 0xaf, 0x49, - 0x19, 0x83, 0x3f, 0x41, 0x76, 0x4c, 0xbf, 0x2b, 0x28, 0x0d, 0x4d, 0x79, 0xdb, 0xe4, 0xb3, 0x0f, - 0xe6, 0x21, 0x52, 0xc6, 0xe1, 0x97, 0xc8, 0x51, 0x3a, 0xed, 0xfe, 0xe1, 0xb3, 0x67, 0x8a, 0x8d, - 0xd8, 0x2b, 0xaa, 0x58, 0xc2, 0x0f, 0x41, 0x84, 0xc0, 0x15, 0x8d, 0xa0, 0xdd, 0xd4, 0x4a, 0x9d, - 0x6c, 0xea, 0x3a, 0x4f, 0xd7, 0x22, 0xc9, 0x05, 0x4a, 0x9d, 0x5f, 0x1b, 0xe8, 0x9d, 0xb5, 0xf3, - 0x89, 0x1f, 0x20, 0x9c, 0xf4, 0x25, 0x88, 0x09, 0x0c, 0x3e, 0x9f, 0x2d, 0xa5, 0x7c, 0x3b, 0xe4, - 0x3d, 0x68, 0x04, 0x37, 0xb2, 0xa9, 0x8b, 0x9f, 0xac, 0x44, 0xc9, 0x39, 0x0c, 0x1c, 0xa2, 0xcd, - 0x11, 0x95, 0x6a, 0xe6, 0x32, 0x33, 0x8b, 0xc8, 0xee, 0x7d, 0x70, 0xb9, 0xa1, 0xcd, 0x19, 0xc1, - 0x5b, 0xd9, 0xd4, 0xdd, 0x7c, 0x5c, 0x16, 0x21, 0x8b, 0x9a, 0x78, 0x0f, 0x6d, 0x87, 0x63, 0x21, - 0x80, 0xab, 0x25, 0xd7, 0x6f, 0x1a, 0xd7, 0xb7, 0xf7, 0x17, 0xc3, 0x64, 0x19, 0x9f, 0x4b, 0x0c, - 0x40, 0x32, 0x01, 0x83, 0x42, 0xa2, 0xb9, 0x28, 0xf1, 0xd9, 0x62, 0x98, 0x2c, 0xe3, 0x71, 0x8c, - 0x5c, 0xa3, 0x5a, 0xd9, 0xc1, 0x96, 0x96, 0x7c, 0x37, 0x9b, 0xba, 0xee, 0xfe, 0x7a, 0x28, 0xb9, - 0x48, 0xab, 0xf3, 0x4b, 0x1d, 0xb5, 0xb4, 0x05, 0xff, 0xc3, 0xc6, 0x7d, 0xbe, 0xb0, 0x71, 0xef, - 0x5e, 0xe1, 0x1b, 0xd4, 0x15, 0x56, 0xee, 0xd7, 0x6f, 0x96, 0xf6, 0xeb, 0xbd, 0x2b, 0x2b, 0xaf, - 0xdf, 0xa6, 0xf7, 0xd1, 0xf5, 0xa2, 0x00, 0x7c, 0x07, 0x6d, 0x88, 0xb3, 0xde, 0x5a, 0xba, 0x11, - 0xc5, 0x2a, 0x2c, 0x9a, 0x5a, 0x20, 0x3a, 0x0c, 0xd9, 0xa5, 0x0c, 0x57, 0x23, 0xe7, 0x68, 0x09, - 0x23, 0x08, 0x55, 0x22, 0xcc, 0x3f, 0x6f, 0x81, 0x3e, 0x32, 0xf7, 0xa4, 0x40, 0x04, 0xef, 0x9d, - 0x9c, 0x3a, 0xb5, 0xd7, 0xa7, 0x4e, 0xed, 0xf7, 0x53, 0xa7, 0xf6, 0x43, 0xe6, 0x58, 0x27, 0x99, - 0x63, 0xbd, 0xce, 0x1c, 0xeb, 0x8f, 0xcc, 0xb1, 0x7e, 0xfa, 0xd3, 0xa9, 0x7d, 0x55, 0x9f, 0x74, - 0xff, 0x09, 0x00, 0x00, 0xff, 0xff, 0x22, 0xc2, 0xa0, 0xa7, 0xa3, 0x09, 0x00, 0x00, + // 1279 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xd4, 0x57, 0xcd, 0x6f, 0x1b, 0x45, + 0x14, 0xcf, 0xda, 0x4e, 0x94, 0xce, 0xa6, 0x1f, 0x4c, 0xaa, 0xd4, 0x4d, 0xa8, 0x37, 0x5a, 0x38, + 0xb4, 0xa8, 0xec, 0x12, 0x13, 0x2a, 0x22, 0x84, 0x50, 0x6c, 0x54, 0x5a, 0x51, 0xb7, 0x61, 0xe2, + 0x46, 0x7c, 0x09, 0x31, 0x59, 0x4f, 0x9d, 0x69, 0xbc, 0x1f, 0x9a, 0x1d, 0x5b, 0x4d, 0x24, 0x24, + 0x4e, 0x9c, 0xb9, 0x70, 0x46, 0xf0, 0x4f, 0x70, 0x2e, 0x12, 0x52, 0x8e, 0xbd, 0xc1, 0xc9, 0x22, + 0x0b, 0x37, 0xc4, 0x3f, 0x50, 0x71, 0x40, 0x3b, 0x3b, 0x5e, 0xef, 0xda, 0x5e, 0x27, 0x4e, 0xd3, + 0x22, 0x6e, 0xbb, 0x33, 0xef, 0xfd, 0x7e, 0xef, 0xfd, 0xe6, 0xcd, 0x9b, 0x19, 0xb0, 0xb6, 0xfb, + 0xb6, 0x6f, 0x50, 0xd7, 0xdc, 0x6d, 0x6f, 0x13, 0xe6, 0x10, 0x4e, 0x7c, 0xd3, 0xdb, 0x6d, 0x9a, + 0xd8, 0xa3, 0xbe, 0x89, 0xdb, 0xdc, 0xf5, 0x2d, 0xdc, 0xa2, 0x4e, 0xd3, 0xec, 0xac, 0x98, 0x4d, + 0xe2, 0x10, 0x86, 0x39, 0x69, 0x18, 0x1e, 0x73, 0xb9, 0x0b, 0xaf, 0x45, 0xae, 0x46, 0xdf, 0xd5, + 0xf0, 0x76, 0x9b, 0x46, 0xe8, 0x6a, 0x24, 0x5c, 0x8d, 0xce, 0xca, 0xe2, 0xeb, 0x4d, 0xca, 0x77, + 0xda, 0xdb, 0x86, 0xe5, 0xda, 0x66, 0xd3, 0x6d, 0xba, 0xa6, 0x40, 0xd8, 0x6e, 0x3f, 0x10, 0x7f, + 0xe2, 0x47, 0x7c, 0x45, 0xc8, 0x8b, 0xab, 0x32, 0x28, 0xec, 0x51, 0x1b, 0x5b, 0x3b, 0xd4, 0x21, + 0x6c, 0xaf, 0x17, 0x96, 0xc9, 0x88, 0xef, 0xb6, 0x99, 0x45, 0x06, 0xe3, 0x19, 0xeb, 0xe5, 0x9b, + 0x36, 0xe1, 0x78, 0x44, 0x16, 0x8b, 0x66, 0x96, 0x17, 0x6b, 0x3b, 0x9c, 0xda, 0xc3, 0x34, 0x37, + 0x8e, 0x72, 0xf0, 0xad, 0x1d, 0x62, 0xe3, 0x21, 0xbf, 0x37, 0xb3, 0xfc, 0xda, 0x9c, 0xb6, 0x4c, + 0xea, 0x70, 0x9f, 0xb3, 0x71, 0x39, 0xf9, 0x84, 0x75, 0x08, 0xeb, 0x27, 0x44, 0x1e, 0x61, 0xdb, + 0x6b, 0x91, 0x51, 0x39, 0x5d, 0xcf, 0x5c, 0xd4, 0x11, 0xd6, 0xfa, 0x77, 0x0a, 0x58, 0xaa, 0x32, + 0xd7, 0xf7, 0xb7, 0x08, 0xf3, 0xa9, 0xeb, 0xdc, 0xdb, 0x7e, 0x48, 0x2c, 0x8e, 0xc8, 0x03, 0xc2, + 0x88, 0x63, 0x11, 0xb8, 0x0c, 0x0a, 0xbb, 0xd4, 0x69, 0x14, 0x95, 0x65, 0xe5, 0xea, 0x99, 0xca, + 0xdc, 0x41, 0x57, 0x9b, 0x0a, 0xba, 0x5a, 0xe1, 0x43, 0xea, 0x34, 0x90, 0x98, 0x09, 0x2d, 0x1c, + 0x6c, 0x93, 0x62, 0x2e, 0x6d, 0x71, 0x17, 0xdb, 0x04, 0x89, 0x19, 0x58, 0x06, 0x00, 0x7b, 0x54, + 0x12, 0x14, 0xf3, 0xc2, 0x0e, 0x4a, 0x3b, 0xb0, 0xbe, 0x71, 0x5b, 0xce, 0xa0, 0x84, 0x95, 0xfe, + 0x6b, 0x0e, 0x5c, 0xba, 0xe5, 0x32, 0xba, 0xef, 0x3a, 0x1c, 0xb7, 0x36, 0xdc, 0xc6, 0xba, 0x2c, + 0x2a, 0xc2, 0xe0, 0x97, 0x60, 0x36, 0x5c, 0xd0, 0x06, 0xe6, 0x58, 0xc4, 0xa5, 0x96, 0xdf, 0x30, + 0x64, 0x39, 0x26, 0xf5, 0xed, 0x17, 0x64, 0x68, 0x6d, 0x74, 0x56, 0x8c, 0x28, 0xb9, 0x1a, 0xe1, + 0xb8, 0xcf, 0xdf, 0x1f, 0x43, 0x31, 0x2a, 0xdc, 0x01, 0x05, 0xdf, 0x23, 0x96, 0xc8, 0x49, 0x2d, + 0xdf, 0x34, 0x8e, 0x5d, 0xec, 0x46, 0x46, 0xcc, 0x9b, 0x1e, 0xb1, 0xfa, 0xda, 0x84, 0x7f, 0x48, + 0x30, 0x40, 0x0f, 0xcc, 0xf8, 0x1c, 0xf3, 0xb6, 0x2f, 0x74, 0x51, 0xcb, 0xb7, 0x4e, 0x81, 0x4b, + 0xe0, 0x55, 0xce, 0x49, 0xb6, 0x99, 0xe8, 0x1f, 0x49, 0x1e, 0xfd, 0x4f, 0x05, 0x2c, 0x65, 0x78, + 0xde, 0xa1, 0x3e, 0x87, 0x9f, 0x0f, 0xa9, 0x6b, 0x1c, 0x4f, 0xdd, 0xd0, 0x5b, 0x68, 0x7b, 0x41, + 0x32, 0xcf, 0xf6, 0x46, 0x12, 0xca, 0x36, 0xc1, 0x34, 0xe5, 0xc4, 0xf6, 0x8b, 0xb9, 0xe5, 0xfc, + 0x55, 0xb5, 0x5c, 0x79, 0xf6, 0x74, 0x2b, 0x67, 0x25, 0xdd, 0xf4, 0xed, 0x10, 0x18, 0x45, 0xf8, + 0xfa, 0x3f, 0xb9, 0xcc, 0x34, 0x43, 0xf9, 0xe1, 0x37, 0x0a, 0x38, 0x27, 0x7e, 0xeb, 0x98, 0x35, + 0x49, 0x58, 0xf1, 0x32, 0xdb, 0x49, 0x56, 0x7b, 0xcc, 0xce, 0xa9, 0x2c, 0xc8, 0xb0, 0xce, 0x6d, + 0xa6, 0x58, 0xd0, 0x00, 0x2b, 0x5c, 0x01, 0xaa, 0x4d, 0x1d, 0x44, 0xbc, 0x16, 0xb5, 0xb0, 0x2f, + 0x4a, 0x6e, 0xba, 0x72, 0x3e, 0xe8, 0x6a, 0x6a, 0xad, 0x3f, 0x8c, 0x92, 0x36, 0xf0, 0x2d, 0xa0, + 0xda, 0xf8, 0x51, 0xec, 0x92, 0x17, 0x2e, 0xf3, 0x92, 0x4f, 0xad, 0xf5, 0xa7, 0x50, 0xd2, 0x0e, + 0x3e, 0x04, 0x25, 0x2e, 0x68, 0xab, 0x1b, 0xf7, 0xef, 0x73, 0xda, 0xa2, 0xfb, 0x98, 0x53, 0xd7, + 0xd9, 0x20, 0xcc, 0x22, 0x0e, 0xc7, 0x4d, 0x52, 0x2c, 0x08, 0x24, 0x3d, 0xe8, 0x6a, 0xa5, 0xfa, + 0x58, 0x4b, 0x74, 0x04, 0x92, 0xfe, 0x38, 0x0f, 0xae, 0x8c, 0xad, 0x4f, 0x78, 0x13, 0x40, 0x77, + 0x5b, 0xf4, 0xb5, 0xc6, 0x07, 0x51, 0x53, 0x0a, 0xbb, 0x43, 0xb8, 0x06, 0xf9, 0xca, 0x42, 0xd0, + 0xd5, 0xe0, 0xbd, 0xa1, 0x59, 0x34, 0xc2, 0x03, 0x5a, 0xe0, 0x6c, 0x0b, 0xfb, 0x3c, 0x52, 0x99, + 0xca, 0x46, 0xa4, 0x96, 0x5f, 0x3b, 0x5e, 0xd1, 0x86, 0x1e, 0x95, 0x97, 0x82, 0xae, 0x76, 0xf6, + 0x4e, 0x12, 0x04, 0xa5, 0x31, 0xe1, 0x3a, 0x38, 0x6f, 0xb5, 0x19, 0x23, 0x0e, 0x1f, 0x50, 0xfd, + 0x92, 0x54, 0xfd, 0x7c, 0x35, 0x3d, 0x8d, 0x06, 0xed, 0x43, 0x88, 0x06, 0xf1, 0x29, 0x23, 0x8d, + 0x18, 0xa2, 0x90, 0x86, 0x78, 0x3f, 0x3d, 0x8d, 0x06, 0xed, 0xa1, 0x0d, 0x34, 0x89, 0x9a, 0xb9, + 0x82, 0xd3, 0x02, 0xf2, 0x95, 0xa0, 0xab, 0x69, 0xd5, 0xf1, 0xa6, 0xe8, 0x28, 0x2c, 0xfd, 0xaf, + 0x1c, 0x00, 0x35, 0xc2, 0x19, 0xb5, 0xc4, 0x8e, 0x59, 0x05, 0x05, 0xbe, 0xe7, 0x11, 0x79, 0x14, + 0x2c, 0xf7, 0x9a, 0x59, 0x7d, 0xcf, 0x23, 0x4f, 0xbb, 0xda, 0x05, 0x69, 0x29, 0x8e, 0xe7, 0x70, + 0x0c, 0x09, 0x6b, 0x88, 0xc1, 0x8c, 0x2b, 0x76, 0x86, 0x5c, 0x97, 0x77, 0x27, 0xd8, 0x5e, 0x71, + 0x6f, 0x8e, 0x81, 0x2b, 0x20, 0xec, 0x68, 0x72, 0xab, 0x49, 0x60, 0xf8, 0x09, 0x28, 0x78, 0x6e, + 0xa3, 0xd7, 0x41, 0xdf, 0x99, 0x80, 0x60, 0xc3, 0x6d, 0xf8, 0x29, 0xf8, 0xd9, 0x30, 0xa3, 0x70, + 0x14, 0x09, 0x48, 0x48, 0xc1, 0x6c, 0xef, 0xca, 0x21, 0x56, 0x4b, 0x2d, 0xbf, 0x37, 0x01, 0x3c, + 0x92, 0xae, 0x29, 0x8a, 0xb9, 0xb0, 0x33, 0xf6, 0x66, 0x50, 0x0c, 0xaf, 0xff, 0x9d, 0x03, 0x73, + 0xd2, 0x30, 0xda, 0x20, 0xff, 0xb1, 0xde, 0xd1, 0x29, 0xf2, 0xdc, 0xf4, 0x8e, 0xe0, 0x9f, 0xab, + 0xde, 0x11, 0x45, 0x96, 0xde, 0xdf, 0xe7, 0x00, 0x1c, 0x2e, 0x30, 0xe8, 0x80, 0x99, 0xa8, 0xb5, + 0x9d, 0xf2, 0x71, 0x10, 0x1f, 0xc7, 0xb2, 0xf3, 0x4b, 0x96, 0xf0, 0x72, 0x64, 0x0b, 0xfe, 0xbb, + 0xfd, 0x4b, 0x54, 0x7c, 0x39, 0xa9, 0xc5, 0x33, 0x28, 0x61, 0x05, 0x09, 0x50, 0x23, 0xef, 0x2d, + 0xdc, 0x6a, 0x13, 0xb9, 0x0e, 0x63, 0x4f, 0x69, 0xa3, 0x97, 0xb6, 0xf1, 0x51, 0x1b, 0x3b, 0x9c, + 0xf2, 0xbd, 0xfe, 0x79, 0x51, 0xef, 0x43, 0xa1, 0x24, 0xae, 0xfe, 0xe3, 0xa0, 0x42, 0x51, 0x5d, + 0xfe, 0x1f, 0x14, 0xda, 0x01, 0x73, 0xb2, 0xbb, 0x3d, 0x8b, 0x44, 0x17, 0x25, 0xcb, 0x5c, 0x35, + 0x81, 0x85, 0x52, 0xc8, 0xfa, 0xcf, 0x0a, 0xb8, 0x30, 0xd8, 0x46, 0x06, 0x42, 0x56, 0x8e, 0x15, + 0xf2, 0x3e, 0x80, 0x51, 0xc2, 0xeb, 0x1d, 0xc2, 0x70, 0x93, 0x44, 0x81, 0xe7, 0x4e, 0x14, 0xf8, + 0xa2, 0xe4, 0x82, 0xf5, 0x21, 0x44, 0x34, 0x82, 0x45, 0xff, 0x25, 0x9d, 0x44, 0xb4, 0xce, 0x27, + 0x49, 0xe2, 0x2b, 0x30, 0x2f, 0xd5, 0x39, 0x85, 0x2c, 0x96, 0x24, 0xd9, 0x7c, 0x75, 0x18, 0x12, + 0x8d, 0xe2, 0xd1, 0x7f, 0xca, 0x81, 0x8b, 0xa3, 0x9a, 0x2e, 0xac, 0xc9, 0x47, 0x4a, 0x94, 0xc5, + 0x5a, 0xf2, 0x91, 0xf2, 0xb4, 0xab, 0x5d, 0x1b, 0xf7, 0x64, 0x8a, 0xbb, 0x4a, 0xe2, 0x45, 0xf3, + 0x31, 0x28, 0xa6, 0x54, 0x4c, 0x9c, 0x9f, 0xf2, 0x02, 0xf7, 0x72, 0xd0, 0xd5, 0x8a, 0xf5, 0x0c, + 0x1b, 0x94, 0xe9, 0x0d, 0x3b, 0x23, 0xab, 0xe0, 0x64, 0xe5, 0xbb, 0x30, 0x41, 0x05, 0x3c, 0x1e, + 0x56, 0x2e, 0xaa, 0x82, 0x53, 0x56, 0xee, 0x33, 0x70, 0x39, 0xbd, 0x70, 0xc3, 0xd2, 0x5d, 0x09, + 0xba, 0xda, 0xe5, 0x6a, 0x96, 0x11, 0xca, 0xf6, 0xcf, 0xaa, 0xbe, 0xfc, 0x0b, 0xaa, 0xbe, 0x1f, + 0x72, 0x60, 0x5a, 0x5c, 0x19, 0x5f, 0xc0, 0x0b, 0x75, 0x2b, 0xf5, 0x42, 0x5d, 0x9d, 0xa0, 0x05, + 0x8b, 0x08, 0x33, 0xdf, 0xa3, 0x5f, 0x0c, 0xbc, 0x47, 0x6f, 0x4c, 0x8c, 0x3c, 0xfe, 0xf5, 0xb9, + 0x06, 0xce, 0xc4, 0x01, 0xc0, 0xeb, 0xe1, 0x69, 0x2f, 0xef, 0xc2, 0x8a, 0x58, 0xfb, 0xf8, 0xe9, + 0x18, 0x5f, 0x82, 0x63, 0x0b, 0x9d, 0x02, 0x35, 0xc1, 0x30, 0x99, 0x73, 0x68, 0xed, 0x93, 0x16, + 0xb1, 0xb8, 0xcb, 0xe4, 0x11, 0x12, 0x5b, 0x6f, 0xca, 0x71, 0x14, 0x5b, 0x54, 0x5e, 0x3d, 0x38, + 0x2c, 0x4d, 0x3d, 0x39, 0x2c, 0x4d, 0xfd, 0x76, 0x58, 0x9a, 0xfa, 0x3a, 0x28, 0x29, 0x07, 0x41, + 0x49, 0x79, 0x12, 0x94, 0x94, 0xdf, 0x83, 0x92, 0xf2, 0xed, 0x1f, 0xa5, 0xa9, 0x4f, 0x73, 0x9d, + 0x95, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x61, 0xfc, 0xd4, 0x31, 0x3f, 0x13, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.proto index f625e3db135..4953624af68 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.proto @@ -21,10 +21,12 @@ syntax = 'proto2'; package k8s.io.kubernetes.pkg.apis.autoscaling.v1; +import "k8s.io/apimachinery/pkg/api/resource/generated.proto"; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". @@ -110,6 +112,155 @@ message HorizontalPodAutoscalerStatus { optional int32 currentCPUUtilizationPercentage = 5; } +// MetricSpec specifies how to scale based on a single metric +// (only `type` and one other matching field should be set at once). +message MetricSpec { + // type is the type of metric source. It should match one of the fields below. + optional string type = 1; + + // object refers to a metric describing a single kubernetes object + // (for example, hits-per-second on an Ingress object). + // +optional + optional ObjectMetricSource object = 2; + + // pods refers to a metric describing each pod in the current scale target + // (for example, transactions-processed-per-second). The values will be + // averaged together before being compared to the target value. + // +optional + optional PodsMetricSource pods = 3; + + // resource refers to a resource metric (such as those specified in + // requests and limits) known to Kubernetes describing each pod in the + // current scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics using the "pods" source. + // +optional + optional ResourceMetricSource resource = 4; +} + +// MetricStatus describes the last-read state of a single metric. +message MetricStatus { + // type is the type of metric source. It will match one of the fields below. + optional string type = 1; + + // object refers to a metric describing a single kubernetes object + // (for example, hits-per-second on an Ingress object). + // +optional + optional ObjectMetricStatus object = 2; + + // pods refers to a metric describing each pod in the current scale target + // (for example, transactions-processed-per-second). The values will be + // averaged together before being compared to the target value. + // +optional + optional PodsMetricStatus pods = 3; + + // resource refers to a resource metric (such as those specified in + // requests and limits) known to Kubernetes describing each pod in the + // current scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics using the "pods" source. + // +optional + optional ResourceMetricStatus resource = 4; +} + +// ObjectMetricSource indicates how to scale on a metric describing a +// kubernetes object (for example, hits-per-second on an Ingress object). +message ObjectMetricSource { + // target is the described Kubernetes object. + optional CrossVersionObjectReference target = 1; + + // metricName is the name of the metric in question. + optional string metricName = 2; + + // targetValue is the target value of the metric (as a quantity). + optional k8s.io.apimachinery.pkg.api.resource.Quantity targetValue = 3; +} + +// ObjectMetricStatus indicates the current value of a metric describing a +// kubernetes object (for example, hits-per-second on an Ingress object). +message ObjectMetricStatus { + // target is the described Kubernetes object. + optional CrossVersionObjectReference target = 1; + + // metricName is the name of the metric in question. + optional string metricName = 2; + + // currentValue is the current value of the metric (as a quantity). + optional k8s.io.apimachinery.pkg.api.resource.Quantity currentValue = 3; +} + +// PodsMetricSource indicates how to scale on a metric describing each pod in +// the current scale target (for example, transactions-processed-per-second). +// The values will be averaged together before being compared to the target +// value. +message PodsMetricSource { + // metricName is the name of the metric in question + optional string metricName = 1; + + // targetAverageValue is the target value of the average of the + // metric across all relevant pods (as a quantity) + optional k8s.io.apimachinery.pkg.api.resource.Quantity targetAverageValue = 2; +} + +// PodsMetricStatus indicates the current value of a metric describing each pod in +// the current scale target (for example, transactions-processed-per-second). +message PodsMetricStatus { + // metricName is the name of the metric in question + optional string metricName = 1; + + // currentAverageValue is the current value of the average of the + // metric across all relevant pods (as a quantity) + optional k8s.io.apimachinery.pkg.api.resource.Quantity currentAverageValue = 2; +} + +// ResourceMetricSource indicates how to scale on a resource metric known to +// Kubernetes, as specified in requests and limits, describing each pod in the +// current scale target (e.g. CPU or memory). The values will be averaged +// together before being compared to the target. Such metrics are built in to +// Kubernetes, and have special scaling options on top of those available to +// normal per-pod metrics using the "pods" source. Only one "target" type +// should be set. +message ResourceMetricSource { + // name is the name of the resource in question. + optional string name = 1; + + // targetAverageUtilization is the target value of the average of the + // resource metric across all relevant pods, represented as a percentage of + // the requested value of the resource for the pods. + // +optional + optional int32 targetAverageUtilization = 2; + + // targetAverageValue is the the target value of the average of the + // resource metric across all relevant pods, as a raw value (instead of as + // a percentage of the request), similar to the "pods" metric source type. + // +optional + optional k8s.io.apimachinery.pkg.api.resource.Quantity targetAverageValue = 3; +} + +// ResourceMetricStatus indicates the current value of a resource metric known to +// Kubernetes, as specified in requests and limits, describing each pod in the +// current scale target (e.g. CPU or memory). Such metrics are built in to +// Kubernetes, and have special scaling options on top of those available to +// normal per-pod metrics using the "pods" source. +message ResourceMetricStatus { + // name is the name of the resource in question. + optional string name = 1; + + // currentAverageUtilization is the current value of the average of the + // resource metric across all relevant pods, represented as a percentage of + // the requested value of the resource for the pods. It will only be + // present if `targetAverageValue` was set in the corresponding metric + // specification. + // +optional + optional int32 currentAverageUtilization = 2; + + // currentAverageValue is the the current value of the average of the + // resource metric across all relevant pods, as a raw value (instead of as + // a percentage of the request), similar to the "pods" metric source type. + // It will always be set, regardless of the corresponding metric specification. + optional k8s.io.apimachinery.pkg.api.resource.Quantity currentAverageValue = 3; +} + // Scale represents a scaling request for a resource. message Scale { // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/register.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/register.go index adb1d767f47..aaa225261ce 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/register.go +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/register.go @@ -34,7 +34,7 @@ func Resource(resource string) schema.GroupResource { } var ( - SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultingFuncs) + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultingFuncs, addConversionFuncs) AddToScheme = SchemeBuilder.AddToScheme ) diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/types.generated.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/types.generated.go index 41e91bad42a..aea5e38319f 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/types.generated.go +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/types.generated.go @@ -25,8 +25,10 @@ import ( "errors" "fmt" codec1978 "github.com/ugorji/go/codec" + pkg3_resource "k8s.io/apimachinery/pkg/api/resource" pkg1_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" pkg2_types "k8s.io/apimachinery/pkg/types" + pkg4_v1 "k8s.io/client-go/pkg/api/v1" "reflect" "runtime" time "time" @@ -62,10 +64,12 @@ func init() { panic(err) } if false { // reference the types, but skip this branch at build/run time - var v0 pkg1_v1.Time - var v1 pkg2_types.UID - var v2 time.Time - _, _, _ = v0, v1, v2 + var v0 pkg3_resource.Quantity + var v1 pkg1_v1.Time + var v2 pkg2_types.UID + var v3 pkg4_v1.ResourceName + var v4 time.Time + _, _, _, _, _ = v0, v1, v2, v3, v4 } } @@ -2765,6 +2769,2333 @@ func (x *ScaleStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } +func (x MetricSourceType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *MetricSourceType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *MetricSpec) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[1] = x.Object != nil + yyq2[2] = x.Pods != nil + yyq2[3] = x.Resource != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + x.Type.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("type")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + x.Type.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.Object == nil { + r.EncodeNil() + } else { + x.Object.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("object")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Object == nil { + r.EncodeNil() + } else { + x.Object.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.Pods == nil { + r.EncodeNil() + } else { + x.Pods.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("pods")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Pods == nil { + r.EncodeNil() + } else { + x.Pods.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.Resource == nil { + r.EncodeNil() + } else { + x.Resource.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("resource")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Resource == nil { + r.EncodeNil() + } else { + x.Resource.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *MetricSpec) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *MetricSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "type": + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv4 := &x.Type + yyv4.CodecDecodeSelf(d) + } + case "object": + if r.TryDecodeAsNil() { + if x.Object != nil { + x.Object = nil + } + } else { + if x.Object == nil { + x.Object = new(ObjectMetricSource) + } + x.Object.CodecDecodeSelf(d) + } + case "pods": + if r.TryDecodeAsNil() { + if x.Pods != nil { + x.Pods = nil + } + } else { + if x.Pods == nil { + x.Pods = new(PodsMetricSource) + } + x.Pods.CodecDecodeSelf(d) + } + case "resource": + if r.TryDecodeAsNil() { + if x.Resource != nil { + x.Resource = nil + } + } else { + if x.Resource == nil { + x.Resource = new(ResourceMetricSource) + } + x.Resource.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *MetricSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv9 := &x.Type + yyv9.CodecDecodeSelf(d) + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Object != nil { + x.Object = nil + } + } else { + if x.Object == nil { + x.Object = new(ObjectMetricSource) + } + x.Object.CodecDecodeSelf(d) + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Pods != nil { + x.Pods = nil + } + } else { + if x.Pods == nil { + x.Pods = new(PodsMetricSource) + } + x.Pods.CodecDecodeSelf(d) + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Resource != nil { + x.Resource = nil + } + } else { + if x.Resource == nil { + x.Resource = new(ResourceMetricSource) + } + x.Resource.CodecDecodeSelf(d) + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ObjectMetricSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(3) + } else { + yynn2 = 3 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy4 := &x.Target + yy4.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("target")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy6 := &x.Target + yy6.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym9 := z.EncBinary() + _ = yym9 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metricName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy12 := &x.TargetValue + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else if !yym13 && z.IsJSONHandle() { + z.EncJSONMarshal(yy12) + } else { + z.EncFallback(yy12) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("targetValue")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy14 := &x.TargetValue + yym15 := z.EncBinary() + _ = yym15 + if false { + } else if z.HasExtensions() && z.EncExt(yy14) { + } else if !yym15 && z.IsJSONHandle() { + z.EncJSONMarshal(yy14) + } else { + z.EncFallback(yy14) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ObjectMetricSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ObjectMetricSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "target": + if r.TryDecodeAsNil() { + x.Target = CrossVersionObjectReference{} + } else { + yyv4 := &x.Target + yyv4.CodecDecodeSelf(d) + } + case "metricName": + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv5 := &x.MetricName + yym6 := z.DecBinary() + _ = yym6 + if false { + } else { + *((*string)(yyv5)) = r.DecodeString() + } + } + case "targetValue": + if r.TryDecodeAsNil() { + x.TargetValue = pkg3_resource.Quantity{} + } else { + yyv7 := &x.TargetValue + yym8 := z.DecBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.DecExt(yyv7) { + } else if !yym8 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv7) + } else { + z.DecFallback(yyv7, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ObjectMetricSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj9 int + var yyb9 bool + var yyhl9 bool = l >= 0 + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Target = CrossVersionObjectReference{} + } else { + yyv10 := &x.Target + yyv10.CodecDecodeSelf(d) + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv11 := &x.MetricName + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*string)(yyv11)) = r.DecodeString() + } + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.TargetValue = pkg3_resource.Quantity{} + } else { + yyv13 := &x.TargetValue + yym14 := z.DecBinary() + _ = yym14 + if false { + } else if z.HasExtensions() && z.DecExt(yyv13) { + } else if !yym14 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv13) + } else { + z.DecFallback(yyv13, false) + } + } + for { + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj9-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *PodsMetricSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metricName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy7 := &x.TargetAverageValue + yym8 := z.EncBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.EncExt(yy7) { + } else if !yym8 && z.IsJSONHandle() { + z.EncJSONMarshal(yy7) + } else { + z.EncFallback(yy7) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("targetAverageValue")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy9 := &x.TargetAverageValue + yym10 := z.EncBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.EncExt(yy9) { + } else if !yym10 && z.IsJSONHandle() { + z.EncJSONMarshal(yy9) + } else { + z.EncFallback(yy9) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *PodsMetricSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *PodsMetricSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "metricName": + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv4 := &x.MetricName + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "targetAverageValue": + if r.TryDecodeAsNil() { + x.TargetAverageValue = pkg3_resource.Quantity{} + } else { + yyv6 := &x.TargetAverageValue + yym7 := z.DecBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.DecExt(yyv6) { + } else if !yym7 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv6) + } else { + z.DecFallback(yyv6, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *PodsMetricSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv9 := &x.MetricName + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + *((*string)(yyv9)) = r.DecodeString() + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.TargetAverageValue = pkg3_resource.Quantity{} + } else { + yyv11 := &x.TargetAverageValue + yym12 := z.DecBinary() + _ = yym12 + if false { + } else if z.HasExtensions() && z.DecExt(yyv11) { + } else if !yym12 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv11) + } else { + z.DecFallback(yyv11, false) + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ResourceMetricSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[1] = x.TargetAverageUtilization != nil + yyq2[2] = x.TargetAverageValue != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(3) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yysf4 := &x.Name + yysf4.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("name")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yysf5 := &x.Name + yysf5.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.TargetAverageUtilization == nil { + r.EncodeNil() + } else { + yy7 := *x.TargetAverageUtilization + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeInt(int64(yy7)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("targetAverageUtilization")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.TargetAverageUtilization == nil { + r.EncodeNil() + } else { + yy9 := *x.TargetAverageUtilization + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeInt(int64(yy9)) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.TargetAverageValue == nil { + r.EncodeNil() + } else { + yym12 := z.EncBinary() + _ = yym12 + if false { + } else if z.HasExtensions() && z.EncExt(x.TargetAverageValue) { + } else if !yym12 && z.IsJSONHandle() { + z.EncJSONMarshal(x.TargetAverageValue) + } else { + z.EncFallback(x.TargetAverageValue) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("targetAverageValue")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.TargetAverageValue == nil { + r.EncodeNil() + } else { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(x.TargetAverageValue) { + } else if !yym13 && z.IsJSONHandle() { + z.EncJSONMarshal(x.TargetAverageValue) + } else { + z.EncFallback(x.TargetAverageValue) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ResourceMetricSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ResourceMetricSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "name": + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv4 := &x.Name + yyv4.CodecDecodeSelf(d) + } + case "targetAverageUtilization": + if r.TryDecodeAsNil() { + if x.TargetAverageUtilization != nil { + x.TargetAverageUtilization = nil + } + } else { + if x.TargetAverageUtilization == nil { + x.TargetAverageUtilization = new(int32) + } + yym6 := z.DecBinary() + _ = yym6 + if false { + } else { + *((*int32)(x.TargetAverageUtilization)) = int32(r.DecodeInt(32)) + } + } + case "targetAverageValue": + if r.TryDecodeAsNil() { + if x.TargetAverageValue != nil { + x.TargetAverageValue = nil + } + } else { + if x.TargetAverageValue == nil { + x.TargetAverageValue = new(pkg3_resource.Quantity) + } + yym8 := z.DecBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.DecExt(x.TargetAverageValue) { + } else if !yym8 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.TargetAverageValue) + } else { + z.DecFallback(x.TargetAverageValue, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ResourceMetricSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj9 int + var yyb9 bool + var yyhl9 bool = l >= 0 + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv10 := &x.Name + yyv10.CodecDecodeSelf(d) + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.TargetAverageUtilization != nil { + x.TargetAverageUtilization = nil + } + } else { + if x.TargetAverageUtilization == nil { + x.TargetAverageUtilization = new(int32) + } + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*int32)(x.TargetAverageUtilization)) = int32(r.DecodeInt(32)) + } + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.TargetAverageValue != nil { + x.TargetAverageValue = nil + } + } else { + if x.TargetAverageValue == nil { + x.TargetAverageValue = new(pkg3_resource.Quantity) + } + yym14 := z.DecBinary() + _ = yym14 + if false { + } else if z.HasExtensions() && z.DecExt(x.TargetAverageValue) { + } else if !yym14 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.TargetAverageValue) + } else { + z.DecFallback(x.TargetAverageValue, false) + } + } + for { + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj9-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *MetricStatus) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[1] = x.Object != nil + yyq2[2] = x.Pods != nil + yyq2[3] = x.Resource != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + x.Type.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("type")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + x.Type.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.Object == nil { + r.EncodeNil() + } else { + x.Object.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("object")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Object == nil { + r.EncodeNil() + } else { + x.Object.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.Pods == nil { + r.EncodeNil() + } else { + x.Pods.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("pods")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Pods == nil { + r.EncodeNil() + } else { + x.Pods.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.Resource == nil { + r.EncodeNil() + } else { + x.Resource.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("resource")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Resource == nil { + r.EncodeNil() + } else { + x.Resource.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *MetricStatus) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *MetricStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "type": + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv4 := &x.Type + yyv4.CodecDecodeSelf(d) + } + case "object": + if r.TryDecodeAsNil() { + if x.Object != nil { + x.Object = nil + } + } else { + if x.Object == nil { + x.Object = new(ObjectMetricStatus) + } + x.Object.CodecDecodeSelf(d) + } + case "pods": + if r.TryDecodeAsNil() { + if x.Pods != nil { + x.Pods = nil + } + } else { + if x.Pods == nil { + x.Pods = new(PodsMetricStatus) + } + x.Pods.CodecDecodeSelf(d) + } + case "resource": + if r.TryDecodeAsNil() { + if x.Resource != nil { + x.Resource = nil + } + } else { + if x.Resource == nil { + x.Resource = new(ResourceMetricStatus) + } + x.Resource.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *MetricStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv9 := &x.Type + yyv9.CodecDecodeSelf(d) + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Object != nil { + x.Object = nil + } + } else { + if x.Object == nil { + x.Object = new(ObjectMetricStatus) + } + x.Object.CodecDecodeSelf(d) + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Pods != nil { + x.Pods = nil + } + } else { + if x.Pods == nil { + x.Pods = new(PodsMetricStatus) + } + x.Pods.CodecDecodeSelf(d) + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Resource != nil { + x.Resource = nil + } + } else { + if x.Resource == nil { + x.Resource = new(ResourceMetricStatus) + } + x.Resource.CodecDecodeSelf(d) + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ObjectMetricStatus) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(3) + } else { + yynn2 = 3 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy4 := &x.Target + yy4.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("target")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy6 := &x.Target + yy6.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym9 := z.EncBinary() + _ = yym9 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metricName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy12 := &x.CurrentValue + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else if !yym13 && z.IsJSONHandle() { + z.EncJSONMarshal(yy12) + } else { + z.EncFallback(yy12) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentValue")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy14 := &x.CurrentValue + yym15 := z.EncBinary() + _ = yym15 + if false { + } else if z.HasExtensions() && z.EncExt(yy14) { + } else if !yym15 && z.IsJSONHandle() { + z.EncJSONMarshal(yy14) + } else { + z.EncFallback(yy14) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ObjectMetricStatus) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ObjectMetricStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "target": + if r.TryDecodeAsNil() { + x.Target = CrossVersionObjectReference{} + } else { + yyv4 := &x.Target + yyv4.CodecDecodeSelf(d) + } + case "metricName": + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv5 := &x.MetricName + yym6 := z.DecBinary() + _ = yym6 + if false { + } else { + *((*string)(yyv5)) = r.DecodeString() + } + } + case "currentValue": + if r.TryDecodeAsNil() { + x.CurrentValue = pkg3_resource.Quantity{} + } else { + yyv7 := &x.CurrentValue + yym8 := z.DecBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.DecExt(yyv7) { + } else if !yym8 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv7) + } else { + z.DecFallback(yyv7, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ObjectMetricStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj9 int + var yyb9 bool + var yyhl9 bool = l >= 0 + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Target = CrossVersionObjectReference{} + } else { + yyv10 := &x.Target + yyv10.CodecDecodeSelf(d) + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv11 := &x.MetricName + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*string)(yyv11)) = r.DecodeString() + } + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CurrentValue = pkg3_resource.Quantity{} + } else { + yyv13 := &x.CurrentValue + yym14 := z.DecBinary() + _ = yym14 + if false { + } else if z.HasExtensions() && z.DecExt(yyv13) { + } else if !yym14 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv13) + } else { + z.DecFallback(yyv13, false) + } + } + for { + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj9-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *PodsMetricStatus) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metricName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy7 := &x.CurrentAverageValue + yym8 := z.EncBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.EncExt(yy7) { + } else if !yym8 && z.IsJSONHandle() { + z.EncJSONMarshal(yy7) + } else { + z.EncFallback(yy7) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentAverageValue")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy9 := &x.CurrentAverageValue + yym10 := z.EncBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.EncExt(yy9) { + } else if !yym10 && z.IsJSONHandle() { + z.EncJSONMarshal(yy9) + } else { + z.EncFallback(yy9) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *PodsMetricStatus) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *PodsMetricStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "metricName": + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv4 := &x.MetricName + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "currentAverageValue": + if r.TryDecodeAsNil() { + x.CurrentAverageValue = pkg3_resource.Quantity{} + } else { + yyv6 := &x.CurrentAverageValue + yym7 := z.DecBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.DecExt(yyv6) { + } else if !yym7 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv6) + } else { + z.DecFallback(yyv6, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *PodsMetricStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv9 := &x.MetricName + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + *((*string)(yyv9)) = r.DecodeString() + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CurrentAverageValue = pkg3_resource.Quantity{} + } else { + yyv11 := &x.CurrentAverageValue + yym12 := z.DecBinary() + _ = yym12 + if false { + } else if z.HasExtensions() && z.DecExt(yyv11) { + } else if !yym12 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv11) + } else { + z.DecFallback(yyv11, false) + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ResourceMetricStatus) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[1] = x.CurrentAverageUtilization != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(3) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yysf4 := &x.Name + yysf4.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("name")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yysf5 := &x.Name + yysf5.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.CurrentAverageUtilization == nil { + r.EncodeNil() + } else { + yy7 := *x.CurrentAverageUtilization + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeInt(int64(yy7)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentAverageUtilization")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.CurrentAverageUtilization == nil { + r.EncodeNil() + } else { + yy9 := *x.CurrentAverageUtilization + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeInt(int64(yy9)) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy12 := &x.CurrentAverageValue + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else if !yym13 && z.IsJSONHandle() { + z.EncJSONMarshal(yy12) + } else { + z.EncFallback(yy12) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentAverageValue")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy14 := &x.CurrentAverageValue + yym15 := z.EncBinary() + _ = yym15 + if false { + } else if z.HasExtensions() && z.EncExt(yy14) { + } else if !yym15 && z.IsJSONHandle() { + z.EncJSONMarshal(yy14) + } else { + z.EncFallback(yy14) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ResourceMetricStatus) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ResourceMetricStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "name": + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv4 := &x.Name + yyv4.CodecDecodeSelf(d) + } + case "currentAverageUtilization": + if r.TryDecodeAsNil() { + if x.CurrentAverageUtilization != nil { + x.CurrentAverageUtilization = nil + } + } else { + if x.CurrentAverageUtilization == nil { + x.CurrentAverageUtilization = new(int32) + } + yym6 := z.DecBinary() + _ = yym6 + if false { + } else { + *((*int32)(x.CurrentAverageUtilization)) = int32(r.DecodeInt(32)) + } + } + case "currentAverageValue": + if r.TryDecodeAsNil() { + x.CurrentAverageValue = pkg3_resource.Quantity{} + } else { + yyv7 := &x.CurrentAverageValue + yym8 := z.DecBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.DecExt(yyv7) { + } else if !yym8 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv7) + } else { + z.DecFallback(yyv7, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ResourceMetricStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj9 int + var yyb9 bool + var yyhl9 bool = l >= 0 + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv10 := &x.Name + yyv10.CodecDecodeSelf(d) + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.CurrentAverageUtilization != nil { + x.CurrentAverageUtilization = nil + } + } else { + if x.CurrentAverageUtilization == nil { + x.CurrentAverageUtilization = new(int32) + } + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*int32)(x.CurrentAverageUtilization)) = int32(r.DecodeInt(32)) + } + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CurrentAverageValue = pkg3_resource.Quantity{} + } else { + yyv13 := &x.CurrentAverageValue + yym14 := z.DecBinary() + _ = yym14 + if false { + } else if z.HasExtensions() && z.DecExt(yyv13) { + } else if !yym14 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv13) + } else { + z.DecFallback(yyv13, false) + } + } + for { + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj9-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + func (x codecSelfer1234) encSliceHorizontalPodAutoscaler(v []HorizontalPodAutoscaler, e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/types.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/types.go index 2e867c9c069..47fd31e2738 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/types.go +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/types.go @@ -16,7 +16,11 @@ limitations under the License. package v1 -import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" +import ( + "k8s.io/apimachinery/pkg/api/resource" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/client-go/pkg/api/v1" +) // CrossVersionObjectReference contains enough information to let you identify the referred resource. type CrossVersionObjectReference struct { @@ -132,3 +136,161 @@ type ScaleStatus struct { // +optional Selector string `json:"selector,omitempty" protobuf:"bytes,2,opt,name=selector"` } + +// the types below are used in the alpha metrics annotation + +// MetricSourceType indicates the type of metric. +type MetricSourceType string + +var ( + // ObjectMetricSourceType is a metric describing a kubernetes object + // (for example, hits-per-second on an Ingress object). + ObjectMetricSourceType MetricSourceType = "Object" + // PodsMetricSourceType is a metric describing each pod in the current scale + // target (for example, transactions-processed-per-second). The values + // will be averaged together before being compared to the target value. + PodsMetricSourceType MetricSourceType = "Pods" + // ResourceMetricSourceType is a resource metric known to Kubernetes, as + // specified in requests and limits, describing each pod in the current + // scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics (the "pods" source). + ResourceMetricSourceType MetricSourceType = "Resource" +) + +// MetricSpec specifies how to scale based on a single metric +// (only `type` and one other matching field should be set at once). +type MetricSpec struct { + // type is the type of metric source. It should match one of the fields below. + Type MetricSourceType `json:"type" protobuf:"bytes,1,name=type"` + + // object refers to a metric describing a single kubernetes object + // (for example, hits-per-second on an Ingress object). + // +optional + Object *ObjectMetricSource `json:"object,omitempty" protobuf:"bytes,2,opt,name=object"` + // pods refers to a metric describing each pod in the current scale target + // (for example, transactions-processed-per-second). The values will be + // averaged together before being compared to the target value. + // +optional + Pods *PodsMetricSource `json:"pods,omitempty" protobuf:"bytes,3,opt,name=pods"` + // resource refers to a resource metric (such as those specified in + // requests and limits) known to Kubernetes describing each pod in the + // current scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics using the "pods" source. + // +optional + Resource *ResourceMetricSource `json:"resource,omitempty" protobuf:"bytes,4,opt,name=resource"` +} + +// ObjectMetricSource indicates how to scale on a metric describing a +// kubernetes object (for example, hits-per-second on an Ingress object). +type ObjectMetricSource struct { + // target is the described Kubernetes object. + Target CrossVersionObjectReference `json:"target" protobuf:"bytes,1,name=target"` + + // metricName is the name of the metric in question. + MetricName string `json:"metricName" protobuf:"bytes,2,name=metricName"` + // targetValue is the target value of the metric (as a quantity). + TargetValue resource.Quantity `json:"targetValue" protobuf:"bytes,3,name=targetValue"` +} + +// PodsMetricSource indicates how to scale on a metric describing each pod in +// the current scale target (for example, transactions-processed-per-second). +// The values will be averaged together before being compared to the target +// value. +type PodsMetricSource struct { + // metricName is the name of the metric in question + MetricName string `json:"metricName" protobuf:"bytes,1,name=metricName"` + // targetAverageValue is the target value of the average of the + // metric across all relevant pods (as a quantity) + TargetAverageValue resource.Quantity `json:"targetAverageValue" protobuf:"bytes,2,name=targetAverageValue"` +} + +// ResourceMetricSource indicates how to scale on a resource metric known to +// Kubernetes, as specified in requests and limits, describing each pod in the +// current scale target (e.g. CPU or memory). The values will be averaged +// together before being compared to the target. Such metrics are built in to +// Kubernetes, and have special scaling options on top of those available to +// normal per-pod metrics using the "pods" source. Only one "target" type +// should be set. +type ResourceMetricSource struct { + // name is the name of the resource in question. + Name v1.ResourceName `json:"name" protobuf:"bytes,1,name=name"` + // targetAverageUtilization is the target value of the average of the + // resource metric across all relevant pods, represented as a percentage of + // the requested value of the resource for the pods. + // +optional + TargetAverageUtilization *int32 `json:"targetAverageUtilization,omitempty" protobuf:"varint,2,opt,name=targetAverageUtilization"` + // targetAverageValue is the the target value of the average of the + // resource metric across all relevant pods, as a raw value (instead of as + // a percentage of the request), similar to the "pods" metric source type. + // +optional + TargetAverageValue *resource.Quantity `json:"targetAverageValue,omitempty" protobuf:"bytes,3,opt,name=targetAverageValue"` +} + +// MetricStatus describes the last-read state of a single metric. +type MetricStatus struct { + // type is the type of metric source. It will match one of the fields below. + Type MetricSourceType `json:"type" protobuf:"bytes,1,name=type"` + + // object refers to a metric describing a single kubernetes object + // (for example, hits-per-second on an Ingress object). + // +optional + Object *ObjectMetricStatus `json:"object,omitempty" protobuf:"bytes,2,opt,name=object"` + // pods refers to a metric describing each pod in the current scale target + // (for example, transactions-processed-per-second). The values will be + // averaged together before being compared to the target value. + // +optional + Pods *PodsMetricStatus `json:"pods,omitempty" protobuf:"bytes,3,opt,name=pods"` + // resource refers to a resource metric (such as those specified in + // requests and limits) known to Kubernetes describing each pod in the + // current scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics using the "pods" source. + // +optional + Resource *ResourceMetricStatus `json:"resource,omitempty" protobuf:"bytes,4,opt,name=resource"` +} + +// ObjectMetricStatus indicates the current value of a metric describing a +// kubernetes object (for example, hits-per-second on an Ingress object). +type ObjectMetricStatus struct { + // target is the described Kubernetes object. + Target CrossVersionObjectReference `json:"target" protobuf:"bytes,1,name=target"` + + // metricName is the name of the metric in question. + MetricName string `json:"metricName" protobuf:"bytes,2,name=metricName"` + // currentValue is the current value of the metric (as a quantity). + CurrentValue resource.Quantity `json:"currentValue" protobuf:"bytes,3,name=currentValue"` +} + +// PodsMetricStatus indicates the current value of a metric describing each pod in +// the current scale target (for example, transactions-processed-per-second). +type PodsMetricStatus struct { + // metricName is the name of the metric in question + MetricName string `json:"metricName" protobuf:"bytes,1,name=metricName"` + // currentAverageValue is the current value of the average of the + // metric across all relevant pods (as a quantity) + CurrentAverageValue resource.Quantity `json:"currentAverageValue" protobuf:"bytes,2,name=currentAverageValue"` +} + +// ResourceMetricStatus indicates the current value of a resource metric known to +// Kubernetes, as specified in requests and limits, describing each pod in the +// current scale target (e.g. CPU or memory). Such metrics are built in to +// Kubernetes, and have special scaling options on top of those available to +// normal per-pod metrics using the "pods" source. +type ResourceMetricStatus struct { + // name is the name of the resource in question. + Name v1.ResourceName `json:"name" protobuf:"bytes,1,name=name"` + // currentAverageUtilization is the current value of the average of the + // resource metric across all relevant pods, represented as a percentage of + // the requested value of the resource for the pods. It will only be + // present if `targetAverageValue` was set in the corresponding metric + // specification. + // +optional + CurrentAverageUtilization *int32 `json:"currentAverageUtilization,omitempty" protobuf:"bytes,2,opt,name=currentAverageUtilization"` + // currentAverageValue is the the current value of the average of the + // resource metric across all relevant pods, as a raw value (instead of as + // a percentage of the request), similar to the "pods" metric source type. + // It will always be set, regardless of the corresponding metric specification. + CurrentAverageValue resource.Quantity `json:"currentAverageValue" protobuf:"bytes,3,name=currentAverageValue"` +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/types_swagger_doc_generated.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/types_swagger_doc_generated.go index 91b3f041c21..01d205f87ee 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/types_swagger_doc_generated.go +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/types_swagger_doc_generated.go @@ -84,6 +84,94 @@ func (HorizontalPodAutoscalerStatus) SwaggerDoc() map[string]string { return map_HorizontalPodAutoscalerStatus } +var map_MetricSpec = map[string]string{ + "": "MetricSpec specifies how to scale based on a single metric (only `type` and one other matching field should be set at once).", + "type": "type is the type of metric source. It should match one of the fields below.", + "object": "object refers to a metric describing a single kubernetes object (for example, hits-per-second on an Ingress object).", + "pods": "pods refers to a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.", + "resource": "resource refers to a resource metric (such as those specified in requests and limits) known to Kubernetes describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.", +} + +func (MetricSpec) SwaggerDoc() map[string]string { + return map_MetricSpec +} + +var map_MetricStatus = map[string]string{ + "": "MetricStatus describes the last-read state of a single metric.", + "type": "type is the type of metric source. It will match one of the fields below.", + "object": "object refers to a metric describing a single kubernetes object (for example, hits-per-second on an Ingress object).", + "pods": "pods refers to a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.", + "resource": "resource refers to a resource metric (such as those specified in requests and limits) known to Kubernetes describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.", +} + +func (MetricStatus) SwaggerDoc() map[string]string { + return map_MetricStatus +} + +var map_ObjectMetricSource = map[string]string{ + "": "ObjectMetricSource indicates how to scale on a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).", + "target": "target is the described Kubernetes object.", + "metricName": "metricName is the name of the metric in question.", + "targetValue": "targetValue is the target value of the metric (as a quantity).", +} + +func (ObjectMetricSource) SwaggerDoc() map[string]string { + return map_ObjectMetricSource +} + +var map_ObjectMetricStatus = map[string]string{ + "": "ObjectMetricStatus indicates the current value of a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).", + "target": "target is the described Kubernetes object.", + "metricName": "metricName is the name of the metric in question.", + "currentValue": "currentValue is the current value of the metric (as a quantity).", +} + +func (ObjectMetricStatus) SwaggerDoc() map[string]string { + return map_ObjectMetricStatus +} + +var map_PodsMetricSource = map[string]string{ + "": "PodsMetricSource indicates how to scale on a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.", + "metricName": "metricName is the name of the metric in question", + "targetAverageValue": "targetAverageValue is the target value of the average of the metric across all relevant pods (as a quantity)", +} + +func (PodsMetricSource) SwaggerDoc() map[string]string { + return map_PodsMetricSource +} + +var map_PodsMetricStatus = map[string]string{ + "": "PodsMetricStatus indicates the current value of a metric describing each pod in the current scale target (for example, transactions-processed-per-second).", + "metricName": "metricName is the name of the metric in question", + "currentAverageValue": "currentAverageValue is the current value of the average of the metric across all relevant pods (as a quantity)", +} + +func (PodsMetricStatus) SwaggerDoc() map[string]string { + return map_PodsMetricStatus +} + +var map_ResourceMetricSource = map[string]string{ + "": "ResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). The values will be averaged together before being compared to the target. Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source. Only one \"target\" type should be set.", + "name": "name is the name of the resource in question.", + "targetAverageUtilization": "targetAverageUtilization is the target value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods.", + "targetAverageValue": "targetAverageValue is the the target value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type.", +} + +func (ResourceMetricSource) SwaggerDoc() map[string]string { + return map_ResourceMetricSource +} + +var map_ResourceMetricStatus = map[string]string{ + "": "ResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.", + "name": "name is the name of the resource in question.", + "currentAverageUtilization": "currentAverageUtilization is the current value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods. It will only be present if `targetAverageValue` was set in the corresponding metric specification.", + "currentAverageValue": "currentAverageValue is the the current value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type. It will always be set, regardless of the corresponding metric specification.", +} + +func (ResourceMetricStatus) SwaggerDoc() map[string]string { + return map_ResourceMetricStatus +} + var map_Scale = map[string]string{ "": "Scale represents a scaling request for a resource.", "metadata": "Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata.", diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.conversion.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.conversion.go index 8ebe1ff2af6..923d793d896 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.conversion.go +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.conversion.go @@ -21,9 +21,12 @@ limitations under the License. package v1 import ( + resource "k8s.io/apimachinery/pkg/api/resource" meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" runtime "k8s.io/apimachinery/pkg/runtime" + api "k8s.io/client-go/pkg/api" + api_v1 "k8s.io/client-go/pkg/api/v1" autoscaling "k8s.io/client-go/pkg/apis/autoscaling" unsafe "unsafe" ) @@ -46,6 +49,22 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v1_HorizontalPodAutoscalerSpec, Convert_v1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus, Convert_autoscaling_HorizontalPodAutoscalerStatus_To_v1_HorizontalPodAutoscalerStatus, + Convert_v1_MetricSpec_To_autoscaling_MetricSpec, + Convert_autoscaling_MetricSpec_To_v1_MetricSpec, + Convert_v1_MetricStatus_To_autoscaling_MetricStatus, + Convert_autoscaling_MetricStatus_To_v1_MetricStatus, + Convert_v1_ObjectMetricSource_To_autoscaling_ObjectMetricSource, + Convert_autoscaling_ObjectMetricSource_To_v1_ObjectMetricSource, + Convert_v1_ObjectMetricStatus_To_autoscaling_ObjectMetricStatus, + Convert_autoscaling_ObjectMetricStatus_To_v1_ObjectMetricStatus, + Convert_v1_PodsMetricSource_To_autoscaling_PodsMetricSource, + Convert_autoscaling_PodsMetricSource_To_v1_PodsMetricSource, + Convert_v1_PodsMetricStatus_To_autoscaling_PodsMetricStatus, + Convert_autoscaling_PodsMetricStatus_To_v1_PodsMetricStatus, + Convert_v1_ResourceMetricSource_To_autoscaling_ResourceMetricSource, + Convert_autoscaling_ResourceMetricSource_To_v1_ResourceMetricSource, + Convert_v1_ResourceMetricStatus_To_autoscaling_ResourceMetricStatus, + Convert_autoscaling_ResourceMetricStatus_To_v1_ResourceMetricStatus, Convert_v1_Scale_To_autoscaling_Scale, Convert_autoscaling_Scale_To_v1_Scale, Convert_v1_ScaleSpec_To_autoscaling_ScaleSpec, @@ -88,10 +107,6 @@ func autoConvert_v1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscal return nil } -func Convert_v1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(in *HorizontalPodAutoscaler, out *autoscaling.HorizontalPodAutoscaler, s conversion.Scope) error { - return autoConvert_v1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(in, out, s) -} - func autoConvert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler(in *autoscaling.HorizontalPodAutoscaler, out *HorizontalPodAutoscaler, s conversion.Scope) error { out.ObjectMeta = in.ObjectMeta if err := Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v1_HorizontalPodAutoscalerSpec(&in.Spec, &out.Spec, s); err != nil { @@ -103,13 +118,19 @@ func autoConvert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscal return nil } -func Convert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler(in *autoscaling.HorizontalPodAutoscaler, out *HorizontalPodAutoscaler, s conversion.Scope) error { - return autoConvert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler(in, out, s) -} - func autoConvert_v1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList(in *HorizontalPodAutoscalerList, out *autoscaling.HorizontalPodAutoscalerList, s conversion.Scope) error { out.ListMeta = in.ListMeta - out.Items = *(*[]autoscaling.HorizontalPodAutoscaler)(unsafe.Pointer(&in.Items)) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]autoscaling.HorizontalPodAutoscaler, len(*in)) + for i := range *in { + if err := Convert_v1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(&(*in)[i], &(*out)[i], s); err != nil { + return err + } + } + } else { + out.Items = nil + } return nil } @@ -119,7 +140,17 @@ func Convert_v1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscal func autoConvert_autoscaling_HorizontalPodAutoscalerList_To_v1_HorizontalPodAutoscalerList(in *autoscaling.HorizontalPodAutoscalerList, out *HorizontalPodAutoscalerList, s conversion.Scope) error { out.ListMeta = in.ListMeta - out.Items = *(*[]HorizontalPodAutoscaler)(unsafe.Pointer(&in.Items)) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]HorizontalPodAutoscaler, len(*in)) + for i := range *in { + if err := Convert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler(&(*in)[i], &(*out)[i], s); err != nil { + return err + } + } + } else { + out.Items = nil + } return nil } @@ -133,52 +164,220 @@ func autoConvert_v1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAuto } out.MinReplicas = (*int32)(unsafe.Pointer(in.MinReplicas)) out.MaxReplicas = in.MaxReplicas - out.TargetCPUUtilizationPercentage = (*int32)(unsafe.Pointer(in.TargetCPUUtilizationPercentage)) + // WARNING: in.TargetCPUUtilizationPercentage requires manual conversion: does not exist in peer-type return nil } -func Convert_v1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec(in *HorizontalPodAutoscalerSpec, out *autoscaling.HorizontalPodAutoscalerSpec, s conversion.Scope) error { - return autoConvert_v1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec(in, out, s) -} - func autoConvert_autoscaling_HorizontalPodAutoscalerSpec_To_v1_HorizontalPodAutoscalerSpec(in *autoscaling.HorizontalPodAutoscalerSpec, out *HorizontalPodAutoscalerSpec, s conversion.Scope) error { if err := Convert_autoscaling_CrossVersionObjectReference_To_v1_CrossVersionObjectReference(&in.ScaleTargetRef, &out.ScaleTargetRef, s); err != nil { return err } out.MinReplicas = (*int32)(unsafe.Pointer(in.MinReplicas)) out.MaxReplicas = in.MaxReplicas - out.TargetCPUUtilizationPercentage = (*int32)(unsafe.Pointer(in.TargetCPUUtilizationPercentage)) + // WARNING: in.Metrics requires manual conversion: does not exist in peer-type return nil } -func Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v1_HorizontalPodAutoscalerSpec(in *autoscaling.HorizontalPodAutoscalerSpec, out *HorizontalPodAutoscalerSpec, s conversion.Scope) error { - return autoConvert_autoscaling_HorizontalPodAutoscalerSpec_To_v1_HorizontalPodAutoscalerSpec(in, out, s) -} - func autoConvert_v1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(in *HorizontalPodAutoscalerStatus, out *autoscaling.HorizontalPodAutoscalerStatus, s conversion.Scope) error { out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) out.LastScaleTime = (*meta_v1.Time)(unsafe.Pointer(in.LastScaleTime)) out.CurrentReplicas = in.CurrentReplicas out.DesiredReplicas = in.DesiredReplicas - out.CurrentCPUUtilizationPercentage = (*int32)(unsafe.Pointer(in.CurrentCPUUtilizationPercentage)) + // WARNING: in.CurrentCPUUtilizationPercentage requires manual conversion: does not exist in peer-type return nil } -func Convert_v1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(in *HorizontalPodAutoscalerStatus, out *autoscaling.HorizontalPodAutoscalerStatus, s conversion.Scope) error { - return autoConvert_v1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(in, out, s) -} - func autoConvert_autoscaling_HorizontalPodAutoscalerStatus_To_v1_HorizontalPodAutoscalerStatus(in *autoscaling.HorizontalPodAutoscalerStatus, out *HorizontalPodAutoscalerStatus, s conversion.Scope) error { out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) out.LastScaleTime = (*meta_v1.Time)(unsafe.Pointer(in.LastScaleTime)) out.CurrentReplicas = in.CurrentReplicas out.DesiredReplicas = in.DesiredReplicas - out.CurrentCPUUtilizationPercentage = (*int32)(unsafe.Pointer(in.CurrentCPUUtilizationPercentage)) + // WARNING: in.CurrentMetrics requires manual conversion: does not exist in peer-type return nil } -func Convert_autoscaling_HorizontalPodAutoscalerStatus_To_v1_HorizontalPodAutoscalerStatus(in *autoscaling.HorizontalPodAutoscalerStatus, out *HorizontalPodAutoscalerStatus, s conversion.Scope) error { - return autoConvert_autoscaling_HorizontalPodAutoscalerStatus_To_v1_HorizontalPodAutoscalerStatus(in, out, s) +func autoConvert_v1_MetricSpec_To_autoscaling_MetricSpec(in *MetricSpec, out *autoscaling.MetricSpec, s conversion.Scope) error { + out.Type = autoscaling.MetricSourceType(in.Type) + out.Object = (*autoscaling.ObjectMetricSource)(unsafe.Pointer(in.Object)) + out.Pods = (*autoscaling.PodsMetricSource)(unsafe.Pointer(in.Pods)) + out.Resource = (*autoscaling.ResourceMetricSource)(unsafe.Pointer(in.Resource)) + return nil +} + +func Convert_v1_MetricSpec_To_autoscaling_MetricSpec(in *MetricSpec, out *autoscaling.MetricSpec, s conversion.Scope) error { + return autoConvert_v1_MetricSpec_To_autoscaling_MetricSpec(in, out, s) +} + +func autoConvert_autoscaling_MetricSpec_To_v1_MetricSpec(in *autoscaling.MetricSpec, out *MetricSpec, s conversion.Scope) error { + out.Type = MetricSourceType(in.Type) + out.Object = (*ObjectMetricSource)(unsafe.Pointer(in.Object)) + out.Pods = (*PodsMetricSource)(unsafe.Pointer(in.Pods)) + out.Resource = (*ResourceMetricSource)(unsafe.Pointer(in.Resource)) + return nil +} + +func Convert_autoscaling_MetricSpec_To_v1_MetricSpec(in *autoscaling.MetricSpec, out *MetricSpec, s conversion.Scope) error { + return autoConvert_autoscaling_MetricSpec_To_v1_MetricSpec(in, out, s) +} + +func autoConvert_v1_MetricStatus_To_autoscaling_MetricStatus(in *MetricStatus, out *autoscaling.MetricStatus, s conversion.Scope) error { + out.Type = autoscaling.MetricSourceType(in.Type) + out.Object = (*autoscaling.ObjectMetricStatus)(unsafe.Pointer(in.Object)) + out.Pods = (*autoscaling.PodsMetricStatus)(unsafe.Pointer(in.Pods)) + out.Resource = (*autoscaling.ResourceMetricStatus)(unsafe.Pointer(in.Resource)) + return nil +} + +func Convert_v1_MetricStatus_To_autoscaling_MetricStatus(in *MetricStatus, out *autoscaling.MetricStatus, s conversion.Scope) error { + return autoConvert_v1_MetricStatus_To_autoscaling_MetricStatus(in, out, s) +} + +func autoConvert_autoscaling_MetricStatus_To_v1_MetricStatus(in *autoscaling.MetricStatus, out *MetricStatus, s conversion.Scope) error { + out.Type = MetricSourceType(in.Type) + out.Object = (*ObjectMetricStatus)(unsafe.Pointer(in.Object)) + out.Pods = (*PodsMetricStatus)(unsafe.Pointer(in.Pods)) + out.Resource = (*ResourceMetricStatus)(unsafe.Pointer(in.Resource)) + return nil +} + +func Convert_autoscaling_MetricStatus_To_v1_MetricStatus(in *autoscaling.MetricStatus, out *MetricStatus, s conversion.Scope) error { + return autoConvert_autoscaling_MetricStatus_To_v1_MetricStatus(in, out, s) +} + +func autoConvert_v1_ObjectMetricSource_To_autoscaling_ObjectMetricSource(in *ObjectMetricSource, out *autoscaling.ObjectMetricSource, s conversion.Scope) error { + if err := Convert_v1_CrossVersionObjectReference_To_autoscaling_CrossVersionObjectReference(&in.Target, &out.Target, s); err != nil { + return err + } + out.MetricName = in.MetricName + out.TargetValue = in.TargetValue + return nil +} + +func Convert_v1_ObjectMetricSource_To_autoscaling_ObjectMetricSource(in *ObjectMetricSource, out *autoscaling.ObjectMetricSource, s conversion.Scope) error { + return autoConvert_v1_ObjectMetricSource_To_autoscaling_ObjectMetricSource(in, out, s) +} + +func autoConvert_autoscaling_ObjectMetricSource_To_v1_ObjectMetricSource(in *autoscaling.ObjectMetricSource, out *ObjectMetricSource, s conversion.Scope) error { + if err := Convert_autoscaling_CrossVersionObjectReference_To_v1_CrossVersionObjectReference(&in.Target, &out.Target, s); err != nil { + return err + } + out.MetricName = in.MetricName + out.TargetValue = in.TargetValue + return nil +} + +func Convert_autoscaling_ObjectMetricSource_To_v1_ObjectMetricSource(in *autoscaling.ObjectMetricSource, out *ObjectMetricSource, s conversion.Scope) error { + return autoConvert_autoscaling_ObjectMetricSource_To_v1_ObjectMetricSource(in, out, s) +} + +func autoConvert_v1_ObjectMetricStatus_To_autoscaling_ObjectMetricStatus(in *ObjectMetricStatus, out *autoscaling.ObjectMetricStatus, s conversion.Scope) error { + if err := Convert_v1_CrossVersionObjectReference_To_autoscaling_CrossVersionObjectReference(&in.Target, &out.Target, s); err != nil { + return err + } + out.MetricName = in.MetricName + out.CurrentValue = in.CurrentValue + return nil +} + +func Convert_v1_ObjectMetricStatus_To_autoscaling_ObjectMetricStatus(in *ObjectMetricStatus, out *autoscaling.ObjectMetricStatus, s conversion.Scope) error { + return autoConvert_v1_ObjectMetricStatus_To_autoscaling_ObjectMetricStatus(in, out, s) +} + +func autoConvert_autoscaling_ObjectMetricStatus_To_v1_ObjectMetricStatus(in *autoscaling.ObjectMetricStatus, out *ObjectMetricStatus, s conversion.Scope) error { + if err := Convert_autoscaling_CrossVersionObjectReference_To_v1_CrossVersionObjectReference(&in.Target, &out.Target, s); err != nil { + return err + } + out.MetricName = in.MetricName + out.CurrentValue = in.CurrentValue + return nil +} + +func Convert_autoscaling_ObjectMetricStatus_To_v1_ObjectMetricStatus(in *autoscaling.ObjectMetricStatus, out *ObjectMetricStatus, s conversion.Scope) error { + return autoConvert_autoscaling_ObjectMetricStatus_To_v1_ObjectMetricStatus(in, out, s) +} + +func autoConvert_v1_PodsMetricSource_To_autoscaling_PodsMetricSource(in *PodsMetricSource, out *autoscaling.PodsMetricSource, s conversion.Scope) error { + out.MetricName = in.MetricName + out.TargetAverageValue = in.TargetAverageValue + return nil +} + +func Convert_v1_PodsMetricSource_To_autoscaling_PodsMetricSource(in *PodsMetricSource, out *autoscaling.PodsMetricSource, s conversion.Scope) error { + return autoConvert_v1_PodsMetricSource_To_autoscaling_PodsMetricSource(in, out, s) +} + +func autoConvert_autoscaling_PodsMetricSource_To_v1_PodsMetricSource(in *autoscaling.PodsMetricSource, out *PodsMetricSource, s conversion.Scope) error { + out.MetricName = in.MetricName + out.TargetAverageValue = in.TargetAverageValue + return nil +} + +func Convert_autoscaling_PodsMetricSource_To_v1_PodsMetricSource(in *autoscaling.PodsMetricSource, out *PodsMetricSource, s conversion.Scope) error { + return autoConvert_autoscaling_PodsMetricSource_To_v1_PodsMetricSource(in, out, s) +} + +func autoConvert_v1_PodsMetricStatus_To_autoscaling_PodsMetricStatus(in *PodsMetricStatus, out *autoscaling.PodsMetricStatus, s conversion.Scope) error { + out.MetricName = in.MetricName + out.CurrentAverageValue = in.CurrentAverageValue + return nil +} + +func Convert_v1_PodsMetricStatus_To_autoscaling_PodsMetricStatus(in *PodsMetricStatus, out *autoscaling.PodsMetricStatus, s conversion.Scope) error { + return autoConvert_v1_PodsMetricStatus_To_autoscaling_PodsMetricStatus(in, out, s) +} + +func autoConvert_autoscaling_PodsMetricStatus_To_v1_PodsMetricStatus(in *autoscaling.PodsMetricStatus, out *PodsMetricStatus, s conversion.Scope) error { + out.MetricName = in.MetricName + out.CurrentAverageValue = in.CurrentAverageValue + return nil +} + +func Convert_autoscaling_PodsMetricStatus_To_v1_PodsMetricStatus(in *autoscaling.PodsMetricStatus, out *PodsMetricStatus, s conversion.Scope) error { + return autoConvert_autoscaling_PodsMetricStatus_To_v1_PodsMetricStatus(in, out, s) +} + +func autoConvert_v1_ResourceMetricSource_To_autoscaling_ResourceMetricSource(in *ResourceMetricSource, out *autoscaling.ResourceMetricSource, s conversion.Scope) error { + out.Name = api.ResourceName(in.Name) + out.TargetAverageUtilization = (*int32)(unsafe.Pointer(in.TargetAverageUtilization)) + out.TargetAverageValue = (*resource.Quantity)(unsafe.Pointer(in.TargetAverageValue)) + return nil +} + +func Convert_v1_ResourceMetricSource_To_autoscaling_ResourceMetricSource(in *ResourceMetricSource, out *autoscaling.ResourceMetricSource, s conversion.Scope) error { + return autoConvert_v1_ResourceMetricSource_To_autoscaling_ResourceMetricSource(in, out, s) +} + +func autoConvert_autoscaling_ResourceMetricSource_To_v1_ResourceMetricSource(in *autoscaling.ResourceMetricSource, out *ResourceMetricSource, s conversion.Scope) error { + out.Name = api_v1.ResourceName(in.Name) + out.TargetAverageUtilization = (*int32)(unsafe.Pointer(in.TargetAverageUtilization)) + out.TargetAverageValue = (*resource.Quantity)(unsafe.Pointer(in.TargetAverageValue)) + return nil +} + +func Convert_autoscaling_ResourceMetricSource_To_v1_ResourceMetricSource(in *autoscaling.ResourceMetricSource, out *ResourceMetricSource, s conversion.Scope) error { + return autoConvert_autoscaling_ResourceMetricSource_To_v1_ResourceMetricSource(in, out, s) +} + +func autoConvert_v1_ResourceMetricStatus_To_autoscaling_ResourceMetricStatus(in *ResourceMetricStatus, out *autoscaling.ResourceMetricStatus, s conversion.Scope) error { + out.Name = api.ResourceName(in.Name) + out.CurrentAverageUtilization = (*int32)(unsafe.Pointer(in.CurrentAverageUtilization)) + out.CurrentAverageValue = in.CurrentAverageValue + return nil +} + +func Convert_v1_ResourceMetricStatus_To_autoscaling_ResourceMetricStatus(in *ResourceMetricStatus, out *autoscaling.ResourceMetricStatus, s conversion.Scope) error { + return autoConvert_v1_ResourceMetricStatus_To_autoscaling_ResourceMetricStatus(in, out, s) +} + +func autoConvert_autoscaling_ResourceMetricStatus_To_v1_ResourceMetricStatus(in *autoscaling.ResourceMetricStatus, out *ResourceMetricStatus, s conversion.Scope) error { + out.Name = api_v1.ResourceName(in.Name) + out.CurrentAverageUtilization = (*int32)(unsafe.Pointer(in.CurrentAverageUtilization)) + out.CurrentAverageValue = in.CurrentAverageValue + return nil +} + +func Convert_autoscaling_ResourceMetricStatus_To_v1_ResourceMetricStatus(in *autoscaling.ResourceMetricStatus, out *ResourceMetricStatus, s conversion.Scope) error { + return autoConvert_autoscaling_ResourceMetricStatus_To_v1_ResourceMetricStatus(in, out, s) } func autoConvert_v1_Scale_To_autoscaling_Scale(in *Scale, out *autoscaling.Scale, s conversion.Scope) error { diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go index f5c104d8c19..07047c2b069 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go @@ -21,6 +21,7 @@ limitations under the License. package v1 import ( + resource "k8s.io/apimachinery/pkg/api/resource" meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" runtime "k8s.io/apimachinery/pkg/runtime" @@ -40,6 +41,14 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscalerList, InType: reflect.TypeOf(&HorizontalPodAutoscalerList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscalerSpec, InType: reflect.TypeOf(&HorizontalPodAutoscalerSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscalerStatus, InType: reflect.TypeOf(&HorizontalPodAutoscalerStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_MetricSpec, InType: reflect.TypeOf(&MetricSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_MetricStatus, InType: reflect.TypeOf(&MetricStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ObjectMetricSource, InType: reflect.TypeOf(&ObjectMetricSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ObjectMetricStatus, InType: reflect.TypeOf(&ObjectMetricStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodsMetricSource, InType: reflect.TypeOf(&PodsMetricSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_PodsMetricStatus, InType: reflect.TypeOf(&PodsMetricStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ResourceMetricSource, InType: reflect.TypeOf(&ResourceMetricSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ResourceMetricStatus, InType: reflect.TypeOf(&ResourceMetricStatus{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Scale, InType: reflect.TypeOf(&Scale{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ScaleSpec, InType: reflect.TypeOf(&ScaleSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ScaleStatus, InType: reflect.TypeOf(&ScaleStatus{})}, @@ -136,6 +145,140 @@ func DeepCopy_v1_HorizontalPodAutoscalerStatus(in interface{}, out interface{}, } } +func DeepCopy_v1_MetricSpec(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*MetricSpec) + out := out.(*MetricSpec) + *out = *in + if in.Object != nil { + in, out := &in.Object, &out.Object + *out = new(ObjectMetricSource) + if err := DeepCopy_v1_ObjectMetricSource(*in, *out, c); err != nil { + return err + } + } + if in.Pods != nil { + in, out := &in.Pods, &out.Pods + *out = new(PodsMetricSource) + if err := DeepCopy_v1_PodsMetricSource(*in, *out, c); err != nil { + return err + } + } + if in.Resource != nil { + in, out := &in.Resource, &out.Resource + *out = new(ResourceMetricSource) + if err := DeepCopy_v1_ResourceMetricSource(*in, *out, c); err != nil { + return err + } + } + return nil + } +} + +func DeepCopy_v1_MetricStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*MetricStatus) + out := out.(*MetricStatus) + *out = *in + if in.Object != nil { + in, out := &in.Object, &out.Object + *out = new(ObjectMetricStatus) + if err := DeepCopy_v1_ObjectMetricStatus(*in, *out, c); err != nil { + return err + } + } + if in.Pods != nil { + in, out := &in.Pods, &out.Pods + *out = new(PodsMetricStatus) + if err := DeepCopy_v1_PodsMetricStatus(*in, *out, c); err != nil { + return err + } + } + if in.Resource != nil { + in, out := &in.Resource, &out.Resource + *out = new(ResourceMetricStatus) + if err := DeepCopy_v1_ResourceMetricStatus(*in, *out, c); err != nil { + return err + } + } + return nil + } +} + +func DeepCopy_v1_ObjectMetricSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ObjectMetricSource) + out := out.(*ObjectMetricSource) + *out = *in + out.TargetValue = in.TargetValue.DeepCopy() + return nil + } +} + +func DeepCopy_v1_ObjectMetricStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ObjectMetricStatus) + out := out.(*ObjectMetricStatus) + *out = *in + out.CurrentValue = in.CurrentValue.DeepCopy() + return nil + } +} + +func DeepCopy_v1_PodsMetricSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*PodsMetricSource) + out := out.(*PodsMetricSource) + *out = *in + out.TargetAverageValue = in.TargetAverageValue.DeepCopy() + return nil + } +} + +func DeepCopy_v1_PodsMetricStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*PodsMetricStatus) + out := out.(*PodsMetricStatus) + *out = *in + out.CurrentAverageValue = in.CurrentAverageValue.DeepCopy() + return nil + } +} + +func DeepCopy_v1_ResourceMetricSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ResourceMetricSource) + out := out.(*ResourceMetricSource) + *out = *in + if in.TargetAverageUtilization != nil { + in, out := &in.TargetAverageUtilization, &out.TargetAverageUtilization + *out = new(int32) + **out = **in + } + if in.TargetAverageValue != nil { + in, out := &in.TargetAverageValue, &out.TargetAverageValue + *out = new(resource.Quantity) + **out = (*in).DeepCopy() + } + return nil + } +} + +func DeepCopy_v1_ResourceMetricStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ResourceMetricStatus) + out := out.(*ResourceMetricStatus) + *out = *in + if in.CurrentAverageUtilization != nil { + in, out := &in.CurrentAverageUtilization, &out.CurrentAverageUtilization + *out = new(int32) + **out = **in + } + out.CurrentAverageValue = in.CurrentAverageValue.DeepCopy() + return nil + } +} + func DeepCopy_v1_Scale(in interface{}, out interface{}, c *conversion.Cloner) error { { in := in.(*Scale) diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/defaults.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/defaults.go new file mode 100644 index 00000000000..6cc60d298ad --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/defaults.go @@ -0,0 +1,49 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v2alpha1 + +import ( + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/client-go/pkg/api/v1" + "k8s.io/client-go/pkg/apis/autoscaling" +) + +func addDefaultingFuncs(scheme *runtime.Scheme) error { + return scheme.AddDefaultingFuncs( + SetDefaults_HorizontalPodAutoscaler, + ) +} + +func SetDefaults_HorizontalPodAutoscaler(obj *HorizontalPodAutoscaler) { + if obj.Spec.MinReplicas == nil { + minReplicas := int32(1) + obj.Spec.MinReplicas = &minReplicas + } + + if len(obj.Spec.Metrics) == 0 { + utilizationDefaultVal := int32(autoscaling.DefaultCPUUtilization) + obj.Spec.Metrics = []MetricSpec{ + { + Type: ResourceMetricSourceType, + Resource: &ResourceMetricSource{ + Name: v1.ResourceCPU, + TargetAverageUtilization: &utilizationDefaultVal, + }, + }, + } + } +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/doc.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/doc.go new file mode 100644 index 00000000000..a9fe60b1c76 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/doc.go @@ -0,0 +1,17 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v2alpha1 diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.pb.go new file mode 100644 index 00000000000..69e71edd99b --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.pb.go @@ -0,0 +1,3062 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by protoc-gen-gogo. +// source: k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/generated.proto +// DO NOT EDIT! + +/* + Package v2alpha1 is a generated protocol buffer package. + + It is generated from these files: + k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/generated.proto + + It has these top-level messages: + CrossVersionObjectReference + HorizontalPodAutoscaler + HorizontalPodAutoscalerList + HorizontalPodAutoscalerSpec + HorizontalPodAutoscalerStatus + MetricSpec + MetricStatus + ObjectMetricSource + ObjectMetricStatus + PodsMetricSource + PodsMetricStatus + ResourceMetricSource + ResourceMetricStatus +*/ +package v2alpha1 + +import proto "github.com/gogo/protobuf/proto" +import fmt "fmt" +import math "math" + +import k8s_io_apimachinery_pkg_api_resource "k8s.io/apimachinery/pkg/api/resource" +import k8s_io_apimachinery_pkg_apis_meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + +import k8s_io_kubernetes_pkg_api_v1 "k8s.io/client-go/pkg/api/v1" + +import strings "strings" +import reflect "reflect" + +import io "io" + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +const _ = proto.GoGoProtoPackageIsVersion1 + +func (m *CrossVersionObjectReference) Reset() { *m = CrossVersionObjectReference{} } +func (*CrossVersionObjectReference) ProtoMessage() {} +func (*CrossVersionObjectReference) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{0} +} + +func (m *HorizontalPodAutoscaler) Reset() { *m = HorizontalPodAutoscaler{} } +func (*HorizontalPodAutoscaler) ProtoMessage() {} +func (*HorizontalPodAutoscaler) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } + +func (m *HorizontalPodAutoscalerList) Reset() { *m = HorizontalPodAutoscalerList{} } +func (*HorizontalPodAutoscalerList) ProtoMessage() {} +func (*HorizontalPodAutoscalerList) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{2} +} + +func (m *HorizontalPodAutoscalerSpec) Reset() { *m = HorizontalPodAutoscalerSpec{} } +func (*HorizontalPodAutoscalerSpec) ProtoMessage() {} +func (*HorizontalPodAutoscalerSpec) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{3} +} + +func (m *HorizontalPodAutoscalerStatus) Reset() { *m = HorizontalPodAutoscalerStatus{} } +func (*HorizontalPodAutoscalerStatus) ProtoMessage() {} +func (*HorizontalPodAutoscalerStatus) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{4} +} + +func (m *MetricSpec) Reset() { *m = MetricSpec{} } +func (*MetricSpec) ProtoMessage() {} +func (*MetricSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } + +func (m *MetricStatus) Reset() { *m = MetricStatus{} } +func (*MetricStatus) ProtoMessage() {} +func (*MetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } + +func (m *ObjectMetricSource) Reset() { *m = ObjectMetricSource{} } +func (*ObjectMetricSource) ProtoMessage() {} +func (*ObjectMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } + +func (m *ObjectMetricStatus) Reset() { *m = ObjectMetricStatus{} } +func (*ObjectMetricStatus) ProtoMessage() {} +func (*ObjectMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } + +func (m *PodsMetricSource) Reset() { *m = PodsMetricSource{} } +func (*PodsMetricSource) ProtoMessage() {} +func (*PodsMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } + +func (m *PodsMetricStatus) Reset() { *m = PodsMetricStatus{} } +func (*PodsMetricStatus) ProtoMessage() {} +func (*PodsMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } + +func (m *ResourceMetricSource) Reset() { *m = ResourceMetricSource{} } +func (*ResourceMetricSource) ProtoMessage() {} +func (*ResourceMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } + +func (m *ResourceMetricStatus) Reset() { *m = ResourceMetricStatus{} } +func (*ResourceMetricStatus) ProtoMessage() {} +func (*ResourceMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } + +func init() { + proto.RegisterType((*CrossVersionObjectReference)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.CrossVersionObjectReference") + proto.RegisterType((*HorizontalPodAutoscaler)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscaler") + proto.RegisterType((*HorizontalPodAutoscalerList)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscalerList") + proto.RegisterType((*HorizontalPodAutoscalerSpec)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscalerSpec") + proto.RegisterType((*HorizontalPodAutoscalerStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscalerStatus") + proto.RegisterType((*MetricSpec)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.MetricSpec") + proto.RegisterType((*MetricStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.MetricStatus") + proto.RegisterType((*ObjectMetricSource)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.ObjectMetricSource") + proto.RegisterType((*ObjectMetricStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.ObjectMetricStatus") + proto.RegisterType((*PodsMetricSource)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.PodsMetricSource") + proto.RegisterType((*PodsMetricStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.PodsMetricStatus") + proto.RegisterType((*ResourceMetricSource)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.ResourceMetricSource") + proto.RegisterType((*ResourceMetricStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.ResourceMetricStatus") +} +func (m *CrossVersionObjectReference) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *CrossVersionObjectReference) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Kind))) + i += copy(data[i:], m.Kind) + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Name))) + i += copy(data[i:], m.Name) + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.APIVersion))) + i += copy(data[i:], m.APIVersion) + return i, nil +} + +func (m *HorizontalPodAutoscaler) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *HorizontalPodAutoscaler) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) + n1, err := m.ObjectMeta.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n1 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) + n2, err := m.Spec.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n2 + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) + n3, err := m.Status.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n3 + return i, nil +} + +func (m *HorizontalPodAutoscalerList) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *HorizontalPodAutoscalerList) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) + n4, err := m.ListMeta.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n4 + if len(m.Items) > 0 { + for _, msg := range m.Items { + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(msg.Size())) + n, err := msg.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *HorizontalPodAutoscalerSpec) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *HorizontalPodAutoscalerSpec) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.ScaleTargetRef.Size())) + n5, err := m.ScaleTargetRef.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n5 + if m.MinReplicas != nil { + data[i] = 0x10 + i++ + i = encodeVarintGenerated(data, i, uint64(*m.MinReplicas)) + } + data[i] = 0x18 + i++ + i = encodeVarintGenerated(data, i, uint64(m.MaxReplicas)) + if len(m.Metrics) > 0 { + for _, msg := range m.Metrics { + data[i] = 0x22 + i++ + i = encodeVarintGenerated(data, i, uint64(msg.Size())) + n, err := msg.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *HorizontalPodAutoscalerStatus) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *HorizontalPodAutoscalerStatus) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.ObservedGeneration != nil { + data[i] = 0x8 + i++ + i = encodeVarintGenerated(data, i, uint64(*m.ObservedGeneration)) + } + if m.LastScaleTime != nil { + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.LastScaleTime.Size())) + n6, err := m.LastScaleTime.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n6 + } + data[i] = 0x18 + i++ + i = encodeVarintGenerated(data, i, uint64(m.CurrentReplicas)) + data[i] = 0x20 + i++ + i = encodeVarintGenerated(data, i, uint64(m.DesiredReplicas)) + if len(m.CurrentMetrics) > 0 { + for _, msg := range m.CurrentMetrics { + data[i] = 0x2a + i++ + i = encodeVarintGenerated(data, i, uint64(msg.Size())) + n, err := msg.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *MetricSpec) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *MetricSpec) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Type))) + i += copy(data[i:], m.Type) + if m.Object != nil { + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Object.Size())) + n7, err := m.Object.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n7 + } + if m.Pods != nil { + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Pods.Size())) + n8, err := m.Pods.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n8 + } + if m.Resource != nil { + data[i] = 0x22 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Resource.Size())) + n9, err := m.Resource.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n9 + } + return i, nil +} + +func (m *MetricStatus) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *MetricStatus) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Type))) + i += copy(data[i:], m.Type) + if m.Object != nil { + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Object.Size())) + n10, err := m.Object.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n10 + } + if m.Pods != nil { + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.Pods.Size())) + n11, err := m.Pods.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n11 + } + if m.Resource != nil { + data[i] = 0x22 + i++ + i = encodeVarintGenerated(data, i, uint64(m.Resource.Size())) + n12, err := m.Resource.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n12 + } + return i, nil +} + +func (m *ObjectMetricSource) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *ObjectMetricSource) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.Target.Size())) + n13, err := m.Target.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n13 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.MetricName))) + i += copy(data[i:], m.MetricName) + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.TargetValue.Size())) + n14, err := m.TargetValue.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n14 + return i, nil +} + +func (m *ObjectMetricStatus) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *ObjectMetricStatus) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(m.Target.Size())) + n15, err := m.Target.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n15 + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.MetricName))) + i += copy(data[i:], m.MetricName) + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.CurrentValue.Size())) + n16, err := m.CurrentValue.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n16 + return i, nil +} + +func (m *PodsMetricSource) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *PodsMetricSource) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.MetricName))) + i += copy(data[i:], m.MetricName) + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.TargetAverageValue.Size())) + n17, err := m.TargetAverageValue.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n17 + return i, nil +} + +func (m *PodsMetricStatus) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *PodsMetricStatus) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.MetricName))) + i += copy(data[i:], m.MetricName) + data[i] = 0x12 + i++ + i = encodeVarintGenerated(data, i, uint64(m.CurrentAverageValue.Size())) + n18, err := m.CurrentAverageValue.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n18 + return i, nil +} + +func (m *ResourceMetricSource) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *ResourceMetricSource) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Name))) + i += copy(data[i:], m.Name) + if m.TargetAverageUtilization != nil { + data[i] = 0x10 + i++ + i = encodeVarintGenerated(data, i, uint64(*m.TargetAverageUtilization)) + } + if m.TargetAverageValue != nil { + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.TargetAverageValue.Size())) + n19, err := m.TargetAverageValue.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n19 + } + return i, nil +} + +func (m *ResourceMetricStatus) Marshal() (data []byte, err error) { + size := m.Size() + data = make([]byte, size) + n, err := m.MarshalTo(data) + if err != nil { + return nil, err + } + return data[:n], nil +} + +func (m *ResourceMetricStatus) MarshalTo(data []byte) (int, error) { + var i int + _ = i + var l int + _ = l + data[i] = 0xa + i++ + i = encodeVarintGenerated(data, i, uint64(len(m.Name))) + i += copy(data[i:], m.Name) + if m.CurrentAverageUtilization != nil { + data[i] = 0x10 + i++ + i = encodeVarintGenerated(data, i, uint64(*m.CurrentAverageUtilization)) + } + data[i] = 0x1a + i++ + i = encodeVarintGenerated(data, i, uint64(m.CurrentAverageValue.Size())) + n20, err := m.CurrentAverageValue.MarshalTo(data[i:]) + if err != nil { + return 0, err + } + i += n20 + return i, nil +} + +func encodeFixed64Generated(data []byte, offset int, v uint64) int { + data[offset] = uint8(v) + data[offset+1] = uint8(v >> 8) + data[offset+2] = uint8(v >> 16) + data[offset+3] = uint8(v >> 24) + data[offset+4] = uint8(v >> 32) + data[offset+5] = uint8(v >> 40) + data[offset+6] = uint8(v >> 48) + data[offset+7] = uint8(v >> 56) + return offset + 8 +} +func encodeFixed32Generated(data []byte, offset int, v uint32) int { + data[offset] = uint8(v) + data[offset+1] = uint8(v >> 8) + data[offset+2] = uint8(v >> 16) + data[offset+3] = uint8(v >> 24) + return offset + 4 +} +func encodeVarintGenerated(data []byte, offset int, v uint64) int { + for v >= 1<<7 { + data[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + data[offset] = uint8(v) + return offset + 1 +} +func (m *CrossVersionObjectReference) Size() (n int) { + var l int + _ = l + l = len(m.Kind) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Name) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.APIVersion) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *HorizontalPodAutoscaler) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Spec.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Status.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *HorizontalPodAutoscalerList) Size() (n int) { + var l int + _ = l + l = m.ListMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *HorizontalPodAutoscalerSpec) Size() (n int) { + var l int + _ = l + l = m.ScaleTargetRef.Size() + n += 1 + l + sovGenerated(uint64(l)) + if m.MinReplicas != nil { + n += 1 + sovGenerated(uint64(*m.MinReplicas)) + } + n += 1 + sovGenerated(uint64(m.MaxReplicas)) + if len(m.Metrics) > 0 { + for _, e := range m.Metrics { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *HorizontalPodAutoscalerStatus) Size() (n int) { + var l int + _ = l + if m.ObservedGeneration != nil { + n += 1 + sovGenerated(uint64(*m.ObservedGeneration)) + } + if m.LastScaleTime != nil { + l = m.LastScaleTime.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + n += 1 + sovGenerated(uint64(m.CurrentReplicas)) + n += 1 + sovGenerated(uint64(m.DesiredReplicas)) + if len(m.CurrentMetrics) > 0 { + for _, e := range m.CurrentMetrics { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *MetricSpec) Size() (n int) { + var l int + _ = l + l = len(m.Type) + n += 1 + l + sovGenerated(uint64(l)) + if m.Object != nil { + l = m.Object.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + if m.Pods != nil { + l = m.Pods.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + if m.Resource != nil { + l = m.Resource.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *MetricStatus) Size() (n int) { + var l int + _ = l + l = len(m.Type) + n += 1 + l + sovGenerated(uint64(l)) + if m.Object != nil { + l = m.Object.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + if m.Pods != nil { + l = m.Pods.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + if m.Resource != nil { + l = m.Resource.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *ObjectMetricSource) Size() (n int) { + var l int + _ = l + l = m.Target.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.MetricName) + n += 1 + l + sovGenerated(uint64(l)) + l = m.TargetValue.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *ObjectMetricStatus) Size() (n int) { + var l int + _ = l + l = m.Target.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.MetricName) + n += 1 + l + sovGenerated(uint64(l)) + l = m.CurrentValue.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *PodsMetricSource) Size() (n int) { + var l int + _ = l + l = len(m.MetricName) + n += 1 + l + sovGenerated(uint64(l)) + l = m.TargetAverageValue.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *PodsMetricStatus) Size() (n int) { + var l int + _ = l + l = len(m.MetricName) + n += 1 + l + sovGenerated(uint64(l)) + l = m.CurrentAverageValue.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *ResourceMetricSource) Size() (n int) { + var l int + _ = l + l = len(m.Name) + n += 1 + l + sovGenerated(uint64(l)) + if m.TargetAverageUtilization != nil { + n += 1 + sovGenerated(uint64(*m.TargetAverageUtilization)) + } + if m.TargetAverageValue != nil { + l = m.TargetAverageValue.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *ResourceMetricStatus) Size() (n int) { + var l int + _ = l + l = len(m.Name) + n += 1 + l + sovGenerated(uint64(l)) + if m.CurrentAverageUtilization != nil { + n += 1 + sovGenerated(uint64(*m.CurrentAverageUtilization)) + } + l = m.CurrentAverageValue.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func sovGenerated(x uint64) (n int) { + for { + n++ + x >>= 7 + if x == 0 { + break + } + } + return n +} +func sozGenerated(x uint64) (n int) { + return sovGenerated(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *CrossVersionObjectReference) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CrossVersionObjectReference{`, + `Kind:` + fmt.Sprintf("%v", this.Kind) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `APIVersion:` + fmt.Sprintf("%v", this.APIVersion) + `,`, + `}`, + }, "") + return s +} +func (this *HorizontalPodAutoscaler) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&HorizontalPodAutoscaler{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "HorizontalPodAutoscalerSpec", "HorizontalPodAutoscalerSpec", 1), `&`, ``, 1) + `,`, + `Status:` + strings.Replace(strings.Replace(this.Status.String(), "HorizontalPodAutoscalerStatus", "HorizontalPodAutoscalerStatus", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *HorizontalPodAutoscalerList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&HorizontalPodAutoscalerList{`, + `ListMeta:` + strings.Replace(strings.Replace(this.ListMeta.String(), "ListMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ListMeta", 1), `&`, ``, 1) + `,`, + `Items:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Items), "HorizontalPodAutoscaler", "HorizontalPodAutoscaler", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *HorizontalPodAutoscalerSpec) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&HorizontalPodAutoscalerSpec{`, + `ScaleTargetRef:` + strings.Replace(strings.Replace(this.ScaleTargetRef.String(), "CrossVersionObjectReference", "CrossVersionObjectReference", 1), `&`, ``, 1) + `,`, + `MinReplicas:` + valueToStringGenerated(this.MinReplicas) + `,`, + `MaxReplicas:` + fmt.Sprintf("%v", this.MaxReplicas) + `,`, + `Metrics:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Metrics), "MetricSpec", "MetricSpec", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *HorizontalPodAutoscalerStatus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&HorizontalPodAutoscalerStatus{`, + `ObservedGeneration:` + valueToStringGenerated(this.ObservedGeneration) + `,`, + `LastScaleTime:` + strings.Replace(fmt.Sprintf("%v", this.LastScaleTime), "Time", "k8s_io_apimachinery_pkg_apis_meta_v1.Time", 1) + `,`, + `CurrentReplicas:` + fmt.Sprintf("%v", this.CurrentReplicas) + `,`, + `DesiredReplicas:` + fmt.Sprintf("%v", this.DesiredReplicas) + `,`, + `CurrentMetrics:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.CurrentMetrics), "MetricStatus", "MetricStatus", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *MetricSpec) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&MetricSpec{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Object:` + strings.Replace(fmt.Sprintf("%v", this.Object), "ObjectMetricSource", "ObjectMetricSource", 1) + `,`, + `Pods:` + strings.Replace(fmt.Sprintf("%v", this.Pods), "PodsMetricSource", "PodsMetricSource", 1) + `,`, + `Resource:` + strings.Replace(fmt.Sprintf("%v", this.Resource), "ResourceMetricSource", "ResourceMetricSource", 1) + `,`, + `}`, + }, "") + return s +} +func (this *MetricStatus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&MetricStatus{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Object:` + strings.Replace(fmt.Sprintf("%v", this.Object), "ObjectMetricStatus", "ObjectMetricStatus", 1) + `,`, + `Pods:` + strings.Replace(fmt.Sprintf("%v", this.Pods), "PodsMetricStatus", "PodsMetricStatus", 1) + `,`, + `Resource:` + strings.Replace(fmt.Sprintf("%v", this.Resource), "ResourceMetricStatus", "ResourceMetricStatus", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectMetricSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectMetricSource{`, + `Target:` + strings.Replace(strings.Replace(this.Target.String(), "CrossVersionObjectReference", "CrossVersionObjectReference", 1), `&`, ``, 1) + `,`, + `MetricName:` + fmt.Sprintf("%v", this.MetricName) + `,`, + `TargetValue:` + strings.Replace(strings.Replace(this.TargetValue.String(), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *ObjectMetricStatus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ObjectMetricStatus{`, + `Target:` + strings.Replace(strings.Replace(this.Target.String(), "CrossVersionObjectReference", "CrossVersionObjectReference", 1), `&`, ``, 1) + `,`, + `MetricName:` + fmt.Sprintf("%v", this.MetricName) + `,`, + `CurrentValue:` + strings.Replace(strings.Replace(this.CurrentValue.String(), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *PodsMetricSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PodsMetricSource{`, + `MetricName:` + fmt.Sprintf("%v", this.MetricName) + `,`, + `TargetAverageValue:` + strings.Replace(strings.Replace(this.TargetAverageValue.String(), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *PodsMetricStatus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PodsMetricStatus{`, + `MetricName:` + fmt.Sprintf("%v", this.MetricName) + `,`, + `CurrentAverageValue:` + strings.Replace(strings.Replace(this.CurrentAverageValue.String(), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *ResourceMetricSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ResourceMetricSource{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `TargetAverageUtilization:` + valueToStringGenerated(this.TargetAverageUtilization) + `,`, + `TargetAverageValue:` + strings.Replace(fmt.Sprintf("%v", this.TargetAverageValue), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ResourceMetricStatus) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ResourceMetricStatus{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `CurrentAverageUtilization:` + valueToStringGenerated(this.CurrentAverageUtilization) + `,`, + `CurrentAverageValue:` + strings.Replace(strings.Replace(this.CurrentAverageValue.String(), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func valueToStringGenerated(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *CrossVersionObjectReference) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CrossVersionObjectReference: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CrossVersionObjectReference: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Kind", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Kind = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field APIVersion", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.APIVersion = string(data[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *HorizontalPodAutoscaler) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: HorizontalPodAutoscaler: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: HorizontalPodAutoscaler: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Spec.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Status.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *HorizontalPodAutoscalerList) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: HorizontalPodAutoscalerList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: HorizontalPodAutoscalerList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ListMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ListMeta.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, HorizontalPodAutoscaler{}) + if err := m.Items[len(m.Items)-1].Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *HorizontalPodAutoscalerSpec) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: HorizontalPodAutoscalerSpec: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: HorizontalPodAutoscalerSpec: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ScaleTargetRef", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ScaleTargetRef.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field MinReplicas", wireType) + } + var v int32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + v |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.MinReplicas = &v + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field MaxReplicas", wireType) + } + m.MaxReplicas = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + m.MaxReplicas |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metrics", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Metrics = append(m.Metrics, MetricSpec{}) + if err := m.Metrics[len(m.Metrics)-1].Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *HorizontalPodAutoscalerStatus) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: HorizontalPodAutoscalerStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: HorizontalPodAutoscalerStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ObservedGeneration", wireType) + } + var v int64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + v |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.ObservedGeneration = &v + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LastScaleTime", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.LastScaleTime == nil { + m.LastScaleTime = &k8s_io_apimachinery_pkg_apis_meta_v1.Time{} + } + if err := m.LastScaleTime.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentReplicas", wireType) + } + m.CurrentReplicas = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + m.CurrentReplicas |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DesiredReplicas", wireType) + } + m.DesiredReplicas = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + m.DesiredReplicas |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentMetrics", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.CurrentMetrics = append(m.CurrentMetrics, MetricStatus{}) + if err := m.CurrentMetrics[len(m.CurrentMetrics)-1].Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MetricSpec) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MetricSpec: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MetricSpec: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Type = MetricSourceType(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Object", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Object == nil { + m.Object = &ObjectMetricSource{} + } + if err := m.Object.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Pods", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Pods == nil { + m.Pods = &PodsMetricSource{} + } + if err := m.Pods.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Resource", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Resource == nil { + m.Resource = &ResourceMetricSource{} + } + if err := m.Resource.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MetricStatus) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MetricStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MetricStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Type = MetricSourceType(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Object", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Object == nil { + m.Object = &ObjectMetricStatus{} + } + if err := m.Object.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Pods", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Pods == nil { + m.Pods = &PodsMetricStatus{} + } + if err := m.Pods.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Resource", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Resource == nil { + m.Resource = &ResourceMetricStatus{} + } + if err := m.Resource.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectMetricSource) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectMetricSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectMetricSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Target", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Target.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MetricName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MetricName = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TargetValue", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.TargetValue.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ObjectMetricStatus) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ObjectMetricStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ObjectMetricStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Target", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Target.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MetricName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MetricName = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentValue", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.CurrentValue.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *PodsMetricSource) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: PodsMetricSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PodsMetricSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MetricName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MetricName = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TargetAverageValue", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.TargetAverageValue.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *PodsMetricStatus) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: PodsMetricStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PodsMetricStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MetricName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.MetricName = string(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentAverageValue", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.CurrentAverageValue.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ResourceMetricSource) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ResourceMetricSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ResourceMetricSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = k8s_io_kubernetes_pkg_api_v1.ResourceName(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field TargetAverageUtilization", wireType) + } + var v int32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + v |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.TargetAverageUtilization = &v + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field TargetAverageValue", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.TargetAverageValue == nil { + m.TargetAverageValue = &k8s_io_apimachinery_pkg_api_resource.Quantity{} + } + if err := m.TargetAverageValue.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ResourceMetricStatus) Unmarshal(data []byte) error { + l := len(data) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ResourceMetricStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ResourceMetricStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Name = k8s_io_kubernetes_pkg_api_v1.ResourceName(data[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentAverageUtilization", wireType) + } + var v int32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + v |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.CurrentAverageUtilization = &v + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentAverageValue", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.CurrentAverageValue.Unmarshal(data[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(data[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipGenerated(data []byte) (n int, err error) { + l := len(data) + iNdEx := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if data[iNdEx-1] < 0x80 { + break + } + } + return iNdEx, nil + case 1: + iNdEx += 8 + return iNdEx, nil + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + iNdEx += length + if length < 0 { + return 0, ErrInvalidLengthGenerated + } + return iNdEx, nil + case 3: + for { + var innerWire uint64 + var start int = iNdEx + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := data[iNdEx] + iNdEx++ + innerWire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + innerWireType := int(innerWire & 0x7) + if innerWireType == 4 { + break + } + next, err := skipGenerated(data[start:]) + if err != nil { + return 0, err + } + iNdEx = start + next + } + return iNdEx, nil + case 4: + return iNdEx, nil + case 5: + iNdEx += 4 + return iNdEx, nil + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + } + panic("unreachable") +} + +var ( + ErrInvalidLengthGenerated = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowGenerated = fmt.Errorf("proto: integer overflow") +) + +var fileDescriptorGenerated = []byte{ + // 1208 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xd4, 0x57, 0x5b, 0x6f, 0x1b, 0x45, + 0x14, 0x8e, 0x2f, 0x49, 0xc3, 0x38, 0x37, 0x26, 0x55, 0xea, 0x26, 0xd4, 0x8e, 0xf6, 0xa9, 0x54, + 0xb0, 0x4b, 0x4c, 0x41, 0x54, 0x08, 0xa1, 0xd8, 0x5c, 0x5a, 0x11, 0xa7, 0x61, 0x1a, 0x2a, 0x04, + 0x48, 0x30, 0x59, 0x4f, 0x9c, 0x21, 0xde, 0x8b, 0x76, 0x66, 0xad, 0x26, 0x52, 0x25, 0x7e, 0x00, + 0x0f, 0xbc, 0xf0, 0x13, 0x90, 0xf8, 0x07, 0x3c, 0x83, 0x84, 0x94, 0xc7, 0xf2, 0xc6, 0x93, 0x45, + 0xdc, 0x37, 0x7e, 0x42, 0x25, 0x2e, 0xda, 0x99, 0xf1, 0x5e, 0xbc, 0x5e, 0x13, 0x87, 0xb4, 0x82, + 0x37, 0xef, 0xcc, 0x39, 0xdf, 0x77, 0xce, 0xf9, 0xce, 0x9c, 0x19, 0x83, 0xb7, 0x0f, 0xdf, 0x60, + 0x3a, 0x75, 0x8c, 0x43, 0x7f, 0x8f, 0x78, 0x36, 0xe1, 0x84, 0x19, 0xee, 0x61, 0xdb, 0xc0, 0x2e, + 0x65, 0x06, 0xf6, 0xb9, 0xc3, 0x4c, 0xdc, 0xa1, 0x76, 0xdb, 0xe8, 0xd6, 0x70, 0xc7, 0x3d, 0xc0, + 0x1b, 0x46, 0x9b, 0xd8, 0xc4, 0xc3, 0x9c, 0xb4, 0x74, 0xd7, 0x73, 0xb8, 0x03, 0x0d, 0x09, 0xa0, + 0x47, 0x00, 0xba, 0x7b, 0xd8, 0xd6, 0x03, 0x00, 0x3d, 0x06, 0xa0, 0x0f, 0x00, 0x56, 0x5f, 0x6e, + 0x53, 0x7e, 0xe0, 0xef, 0xe9, 0xa6, 0x63, 0x19, 0x6d, 0xa7, 0xed, 0x18, 0x02, 0x67, 0xcf, 0xdf, + 0x17, 0x5f, 0xe2, 0x43, 0xfc, 0x92, 0xf8, 0xab, 0x37, 0x55, 0x80, 0xd8, 0xa5, 0x16, 0x36, 0x0f, + 0xa8, 0x4d, 0xbc, 0xa3, 0x41, 0x88, 0x86, 0x47, 0x98, 0xe3, 0x7b, 0x26, 0x19, 0x8e, 0x6a, 0xac, + 0x17, 0x33, 0x2c, 0xc2, 0xb1, 0xd1, 0x4d, 0xe5, 0xb2, 0x6a, 0x64, 0x79, 0x79, 0xbe, 0xcd, 0xa9, + 0x95, 0xa6, 0x79, 0xfd, 0x9f, 0x1c, 0x98, 0x79, 0x40, 0x2c, 0x9c, 0xf2, 0x7b, 0x35, 0xcb, 0xcf, + 0xe7, 0xb4, 0x63, 0x50, 0x9b, 0x33, 0xee, 0x8d, 0xcb, 0x89, 0x11, 0xaf, 0x4b, 0xbc, 0x28, 0x21, + 0xf2, 0x00, 0x5b, 0x6e, 0x87, 0x8c, 0xca, 0xe9, 0xa5, 0x4c, 0x81, 0x47, 0x59, 0xdf, 0x3a, 0x6b, + 0x3b, 0xa4, 0x5c, 0xb5, 0x6f, 0x73, 0x60, 0xad, 0xe1, 0x39, 0x8c, 0xdd, 0x27, 0x1e, 0xa3, 0x8e, + 0x7d, 0x77, 0xef, 0x4b, 0x62, 0x72, 0x44, 0xf6, 0x89, 0x47, 0x6c, 0x93, 0xc0, 0x75, 0x50, 0x3c, + 0xa4, 0x76, 0xab, 0x9c, 0x5b, 0xcf, 0x5d, 0x7f, 0xae, 0x3e, 0x77, 0xd2, 0xab, 0x4e, 0xf5, 0x7b, + 0xd5, 0xe2, 0x07, 0xd4, 0x6e, 0x21, 0xb1, 0x13, 0x58, 0xd8, 0xd8, 0x22, 0xe5, 0x7c, 0xd2, 0x62, + 0x1b, 0x5b, 0x04, 0x89, 0x1d, 0x58, 0x03, 0x00, 0xbb, 0x54, 0x11, 0x94, 0x0b, 0xc2, 0x0e, 0x2a, + 0x3b, 0xb0, 0xb9, 0x73, 0x47, 0xed, 0xa0, 0x98, 0x95, 0xf6, 0x38, 0x0f, 0xae, 0xdc, 0x76, 0x3c, + 0x7a, 0xec, 0xd8, 0x1c, 0x77, 0x76, 0x9c, 0xd6, 0xa6, 0xca, 0x83, 0x78, 0xf0, 0x0b, 0x30, 0x1b, + 0xf4, 0x42, 0x0b, 0x73, 0x2c, 0xe2, 0x2a, 0xd5, 0x5e, 0xd1, 0x55, 0x3f, 0xc7, 0xa5, 0x89, 0x3a, + 0x3a, 0xb0, 0xd6, 0xbb, 0x1b, 0xba, 0x4c, 0xae, 0x49, 0x38, 0x8e, 0xf8, 0xa3, 0x35, 0x14, 0xa2, + 0x42, 0x1b, 0x14, 0x99, 0x4b, 0x4c, 0x91, 0x53, 0xa9, 0xb6, 0xa5, 0x4f, 0x78, 0x5a, 0xf4, 0x8c, + 0xc8, 0xef, 0xb9, 0xc4, 0x8c, 0x2a, 0x14, 0x7c, 0x21, 0xc1, 0x03, 0xbb, 0x60, 0x86, 0x71, 0xcc, + 0x7d, 0x26, 0xaa, 0x53, 0xaa, 0x6d, 0x5f, 0x18, 0xa3, 0x40, 0xad, 0x2f, 0x28, 0xce, 0x19, 0xf9, + 0x8d, 0x14, 0x9b, 0xf6, 0x7b, 0x0e, 0xac, 0x65, 0x78, 0x6e, 0x51, 0xc6, 0xe1, 0x67, 0xa9, 0x4a, + 0xeb, 0x67, 0xab, 0x74, 0xe0, 0x2d, 0xea, 0xbc, 0xa4, 0x98, 0x67, 0x07, 0x2b, 0xb1, 0x2a, 0x5b, + 0x60, 0x9a, 0x72, 0x62, 0xb1, 0x72, 0x7e, 0xbd, 0x70, 0xbd, 0x54, 0xbb, 0x7d, 0x51, 0x49, 0xd7, + 0xe7, 0x15, 0xe9, 0xf4, 0x9d, 0x00, 0x1e, 0x49, 0x16, 0xed, 0xcf, 0x7c, 0x66, 0xb2, 0x81, 0x14, + 0xf0, 0xeb, 0x1c, 0x58, 0x10, 0x9f, 0xbb, 0xd8, 0x6b, 0x93, 0xe0, 0x0c, 0xa8, 0x9c, 0x27, 0xd7, + 0x7f, 0xcc, 0x89, 0xaa, 0xaf, 0xa8, 0xe0, 0x16, 0xee, 0x25, 0xb8, 0xd0, 0x10, 0x37, 0xdc, 0x00, + 0x25, 0x8b, 0xda, 0x88, 0xb8, 0x1d, 0x6a, 0x62, 0x26, 0x5a, 0x71, 0xba, 0xbe, 0xd8, 0xef, 0x55, + 0x4b, 0xcd, 0x68, 0x19, 0xc5, 0x6d, 0xe0, 0x6b, 0xa0, 0x64, 0xe1, 0x07, 0xa1, 0x4b, 0x41, 0xb8, + 0x2c, 0x2b, 0xbe, 0x52, 0x33, 0xda, 0x42, 0x71, 0x3b, 0xb8, 0x0f, 0x2e, 0x59, 0x84, 0x7b, 0xd4, + 0x64, 0xe5, 0xa2, 0x50, 0xe2, 0xcd, 0x89, 0x13, 0x6e, 0x0a, 0x7f, 0xd1, 0xdf, 0x8b, 0x8a, 0xef, + 0x92, 0x5c, 0x63, 0x68, 0x00, 0xae, 0xfd, 0x52, 0x00, 0xd7, 0xc6, 0xf6, 0x29, 0x7c, 0x0f, 0x40, + 0x67, 0x4f, 0x8c, 0xc9, 0xd6, 0xfb, 0x72, 0x50, 0x05, 0x13, 0x23, 0x50, 0xa1, 0x50, 0x5f, 0xe9, + 0xf7, 0xaa, 0xf0, 0x6e, 0x6a, 0x17, 0x8d, 0xf0, 0x80, 0x26, 0x98, 0xef, 0x60, 0xc6, 0x65, 0x85, + 0xa9, 0x1a, 0x4e, 0xa5, 0xda, 0x8d, 0xb3, 0x35, 0x6f, 0xe0, 0x51, 0x7f, 0xbe, 0xdf, 0xab, 0xce, + 0x6f, 0xc5, 0x41, 0x50, 0x12, 0x13, 0x6e, 0x82, 0x45, 0xd3, 0xf7, 0x3c, 0x62, 0xf3, 0xa1, 0x8a, + 0x5f, 0x51, 0x15, 0x58, 0x6c, 0x24, 0xb7, 0xd1, 0xb0, 0x7d, 0x00, 0xd1, 0x22, 0x8c, 0x7a, 0xa4, + 0x15, 0x42, 0x14, 0x93, 0x10, 0xef, 0x24, 0xb7, 0xd1, 0xb0, 0x3d, 0x7c, 0x08, 0x16, 0x14, 0xaa, + 0xaa, 0x77, 0x79, 0x5a, 0x68, 0xf8, 0xd6, 0x79, 0x35, 0x94, 0x13, 0x23, 0xec, 0xd2, 0x46, 0x02, + 0x1c, 0x0d, 0x91, 0x69, 0x7f, 0xe4, 0x01, 0x88, 0xc4, 0x87, 0x37, 0x41, 0x91, 0x1f, 0xb9, 0x44, + 0x5d, 0x17, 0xeb, 0x83, 0x51, 0xb7, 0x7b, 0xe4, 0x92, 0x27, 0xbd, 0xea, 0x92, 0xb2, 0x14, 0xb7, + 0x7f, 0xb0, 0x86, 0x84, 0x35, 0x6c, 0x83, 0x19, 0x47, 0x9c, 0x12, 0xa5, 0x53, 0x63, 0xe2, 0xd8, + 0xc3, 0x29, 0x1e, 0xc2, 0xd7, 0x41, 0x30, 0xef, 0xd4, 0xe1, 0x53, 0xf0, 0xf0, 0x73, 0x50, 0x74, + 0x9d, 0xd6, 0x60, 0xca, 0x6e, 0x4e, 0x4c, 0xb3, 0xe3, 0xb4, 0x58, 0x82, 0x64, 0x36, 0xc8, 0x2e, + 0x58, 0x45, 0x02, 0x18, 0x3a, 0x60, 0x76, 0xf0, 0xba, 0x11, 0x4a, 0x96, 0x6a, 0xef, 0x4e, 0x4c, + 0x82, 0x14, 0x40, 0x82, 0x68, 0x2e, 0x98, 0xa1, 0x83, 0x1d, 0x14, 0x92, 0x68, 0x7f, 0xe5, 0xc1, + 0x5c, 0x5c, 0xb8, 0xff, 0x86, 0x02, 0xb2, 0x87, 0x9e, 0xb2, 0x02, 0x92, 0xe4, 0x19, 0x28, 0x20, + 0x89, 0xb2, 0x14, 0xf8, 0x2e, 0x0f, 0x60, 0xba, 0xfd, 0x20, 0x07, 0x33, 0x5c, 0xcc, 0xf2, 0xa7, + 0x72, 0x89, 0x84, 0x17, 0xba, 0xba, 0x2f, 0x14, 0x57, 0xf0, 0xd4, 0x92, 0xd3, 0x76, 0x3b, 0x7a, + 0x92, 0x85, 0x4f, 0x9d, 0x66, 0xb8, 0x83, 0x62, 0x56, 0x90, 0x80, 0x92, 0xf4, 0xbe, 0x8f, 0x3b, + 0x3e, 0x51, 0xca, 0x8c, 0xbd, 0xe7, 0xf5, 0x41, 0xf2, 0xfa, 0x87, 0x3e, 0xb6, 0x39, 0xe5, 0x47, + 0xd1, 0x2d, 0xb3, 0x1b, 0x41, 0xa1, 0x38, 0xae, 0xf6, 0xfd, 0x70, 0x9d, 0x64, 0xbf, 0xfe, 0x7f, + 0xea, 0x74, 0x00, 0xe6, 0xd4, 0xf0, 0xfb, 0x37, 0x85, 0xba, 0xac, 0x58, 0xe6, 0x1a, 0x31, 0x2c, + 0x94, 0x40, 0xd6, 0x7e, 0xca, 0x81, 0xa5, 0xe1, 0x51, 0x33, 0x14, 0x72, 0xee, 0x4c, 0x21, 0x1f, + 0x03, 0x28, 0x13, 0xde, 0xec, 0x12, 0x0f, 0xb7, 0x89, 0x0c, 0x3c, 0x7f, 0xae, 0xc0, 0x57, 0x15, + 0x17, 0xdc, 0x4d, 0x21, 0xa2, 0x11, 0x2c, 0xda, 0xcf, 0xc9, 0x24, 0xa4, 0xda, 0xe7, 0x49, 0xe2, + 0x21, 0x58, 0x56, 0xd5, 0xb9, 0x80, 0x2c, 0xd6, 0x14, 0xd9, 0x72, 0x23, 0x0d, 0x89, 0x46, 0xf1, + 0x68, 0x3f, 0xe4, 0xc1, 0xe5, 0x51, 0x23, 0x19, 0x36, 0xd5, 0x1f, 0x1f, 0x99, 0xc5, 0xad, 0xf8, + 0x1f, 0x9f, 0x27, 0xbd, 0xea, 0x8b, 0xe3, 0xfe, 0xc1, 0x85, 0x13, 0x26, 0xf6, 0x2f, 0xe9, 0x63, + 0x50, 0x4e, 0x54, 0xf1, 0x23, 0x4e, 0x3b, 0xf4, 0x58, 0xbe, 0x80, 0xe4, 0xe3, 0xef, 0x85, 0x7e, + 0xaf, 0x5a, 0xde, 0xcd, 0xb0, 0x41, 0x99, 0xde, 0xb0, 0x3b, 0xb2, 0x0b, 0xce, 0xd7, 0xbe, 0x2b, + 0x13, 0x74, 0xc0, 0x8f, 0xe9, 0xca, 0xc9, 0x2e, 0xb8, 0xe0, 0xca, 0x7d, 0x0a, 0xae, 0x26, 0x85, + 0x4b, 0x97, 0xee, 0x5a, 0xbf, 0x57, 0xbd, 0xda, 0xc8, 0x32, 0x42, 0xd9, 0xfe, 0x59, 0xdd, 0x57, + 0x78, 0x36, 0xdd, 0x57, 0xbf, 0x71, 0x72, 0x5a, 0x99, 0x7a, 0x74, 0x5a, 0x99, 0xfa, 0xf5, 0xb4, + 0x32, 0xf5, 0x55, 0xbf, 0x92, 0x3b, 0xe9, 0x57, 0x72, 0x8f, 0xfa, 0x95, 0xdc, 0x6f, 0xfd, 0x4a, + 0xee, 0x9b, 0xc7, 0x95, 0xa9, 0x4f, 0x66, 0x07, 0x83, 0xf0, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, + 0x95, 0xf2, 0xec, 0x8a, 0x16, 0x12, 0x00, 0x00, +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.proto new file mode 100644 index 00000000000..27b99c2242e --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.proto @@ -0,0 +1,275 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + + +// This file was autogenerated by go-to-protobuf. Do not edit it manually! + +syntax = 'proto2'; + +package k8s.io.kubernetes.pkg.apis.autoscaling.v2alpha1; + +import "k8s.io/apimachinery/pkg/api/resource/generated.proto"; +import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; +import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; +import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; +import "k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.proto"; + +// Package-wide variables from generator "generated". +option go_package = "v2alpha1"; + +// CrossVersionObjectReference contains enough information to let you identify the referred resource. +message CrossVersionObjectReference { + // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds" + optional string kind = 1; + + // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names + optional string name = 2; + + // API version of the referent + // +optional + optional string apiVersion = 3; +} + +// HorizontalPodAutoscaler is the configuration for a horizontal pod +// autoscaler, which automatically manages the replica count of any resource +// implementing the scale subresource based on the metrics specified. +message HorizontalPodAutoscaler { + // metadata is the standard object metadata. + // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // spec is the specification for the behaviour of the autoscaler. + // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // +optional + optional HorizontalPodAutoscalerSpec spec = 2; + + // status is the current information about the autoscaler. + // +optional + optional HorizontalPodAutoscalerStatus status = 3; +} + +// HorizontalPodAutoscaler is a list of horizontal pod autoscaler objects. +message HorizontalPodAutoscalerList { + // metadata is the standard list metadata. + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; + + // items is the list of horizontal pod autoscaler objects. + repeated HorizontalPodAutoscaler items = 2; +} + +// HorizontalPodAutoscalerSpec describes the desired functionality of the HorizontalPodAutoscaler. +message HorizontalPodAutoscalerSpec { + // scaleTargetRef points to the target resource to scale, and is used to the pods for which metrics + // should be collected, as well as to actually change the replica count. + optional CrossVersionObjectReference scaleTargetRef = 1; + + // minReplicas is the lower limit for the number of replicas to which the autoscaler can scale down. + // It defaults to 1 pod. + // +optional + optional int32 minReplicas = 2; + + // maxReplicas is the upper limit for the number of replicas to which the autoscaler can scale up. + // It cannot be less that minReplicas. + optional int32 maxReplicas = 3; + + // metrics contains the specifications for which to use to calculate the + // desired replica count (the maximum replica count across all metrics will + // be used). The desired replica count is calculated multiplying the + // ratio between the target value and the current value by the current + // number of pods. Ergo, metrics used must decrease as the pod count is + // increased, and vice-versa. See the individual metric source types for + // more information about how each type of metric must respond. + // +optional + repeated MetricSpec metrics = 4; +} + +// HorizontalPodAutoscalerStatus describes the current status of a horizontal pod autoscaler. +message HorizontalPodAutoscalerStatus { + // observedGeneration is the most recent generation observed by this autoscaler. + // +optional + optional int64 observedGeneration = 1; + + // lastScaleTime is the last time the HorizontalPodAutoscaler scaled the number of pods, + // used by the autoscaler to control how often the number of pods is changed. + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.Time lastScaleTime = 2; + + // currentReplicas is current number of replicas of pods managed by this autoscaler, + // as last seen by the autoscaler. + optional int32 currentReplicas = 3; + + // desiredReplicas is the desired number of replicas of pods managed by this autoscaler, + // as last calculated by the autoscaler. + optional int32 desiredReplicas = 4; + + // currentMetrics is the last read state of the metrics used by this autoscaler. + repeated MetricStatus currentMetrics = 5; +} + +// MetricSpec specifies how to scale based on a single metric +// (only `type` and one other matching field should be set at once). +message MetricSpec { + // type is the type of metric source. It should match one of the fields below. + optional string type = 1; + + // object refers to a metric describing a single kubernetes object + // (for example, hits-per-second on an Ingress object). + // +optional + optional ObjectMetricSource object = 2; + + // pods refers to a metric describing each pod in the current scale target + // (for example, transactions-processed-per-second). The values will be + // averaged together before being compared to the target value. + // +optional + optional PodsMetricSource pods = 3; + + // resource refers to a resource metric (such as those specified in + // requests and limits) known to Kubernetes describing each pod in the + // current scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics using the "pods" source. + // +optional + optional ResourceMetricSource resource = 4; +} + +// MetricStatus describes the last-read state of a single metric. +message MetricStatus { + // type is the type of metric source. It will match one of the fields below. + optional string type = 1; + + // object refers to a metric describing a single kubernetes object + // (for example, hits-per-second on an Ingress object). + // +optional + optional ObjectMetricStatus object = 2; + + // pods refers to a metric describing each pod in the current scale target + // (for example, transactions-processed-per-second). The values will be + // averaged together before being compared to the target value. + // +optional + optional PodsMetricStatus pods = 3; + + // resource refers to a resource metric (such as those specified in + // requests and limits) known to Kubernetes describing each pod in the + // current scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics using the "pods" source. + // +optional + optional ResourceMetricStatus resource = 4; +} + +// ObjectMetricSource indicates how to scale on a metric describing a +// kubernetes object (for example, hits-per-second on an Ingress object). +message ObjectMetricSource { + // target is the described Kubernetes object. + optional CrossVersionObjectReference target = 1; + + // metricName is the name of the metric in question. + optional string metricName = 2; + + // targetValue is the target value of the metric (as a quantity). + optional k8s.io.apimachinery.pkg.api.resource.Quantity targetValue = 3; +} + +// ObjectMetricStatus indicates the current value of a metric describing a +// kubernetes object (for example, hits-per-second on an Ingress object). +message ObjectMetricStatus { + // target is the described Kubernetes object. + optional CrossVersionObjectReference target = 1; + + // metricName is the name of the metric in question. + optional string metricName = 2; + + // currentValue is the current value of the metric (as a quantity). + optional k8s.io.apimachinery.pkg.api.resource.Quantity currentValue = 3; +} + +// PodsMetricSource indicates how to scale on a metric describing each pod in +// the current scale target (for example, transactions-processed-per-second). +// The values will be averaged together before being compared to the target +// value. +message PodsMetricSource { + // metricName is the name of the metric in question + optional string metricName = 1; + + // targetAverageValue is the target value of the average of the + // metric across all relevant pods (as a quantity) + optional k8s.io.apimachinery.pkg.api.resource.Quantity targetAverageValue = 2; +} + +// PodsMetricStatus indicates the current value of a metric describing each pod in +// the current scale target (for example, transactions-processed-per-second). +message PodsMetricStatus { + // metricName is the name of the metric in question + optional string metricName = 1; + + // currentAverageValue is the current value of the average of the + // metric across all relevant pods (as a quantity) + optional k8s.io.apimachinery.pkg.api.resource.Quantity currentAverageValue = 2; +} + +// ResourceMetricSource indicates how to scale on a resource metric known to +// Kubernetes, as specified in requests and limits, describing each pod in the +// current scale target (e.g. CPU or memory). The values will be averaged +// together before being compared to the target. Such metrics are built in to +// Kubernetes, and have special scaling options on top of those available to +// normal per-pod metrics using the "pods" source. Only one "target" type +// should be set. +message ResourceMetricSource { + // name is the name of the resource in question. + optional string name = 1; + + // targetAverageUtilization is the target value of the average of the + // resource metric across all relevant pods, represented as a percentage of + // the requested value of the resource for the pods. + // +optional + optional int32 targetAverageUtilization = 2; + + // targetAverageValue is the the target value of the average of the + // resource metric across all relevant pods, as a raw value (instead of as + // a percentage of the request), similar to the "pods" metric source type. + // +optional + optional k8s.io.apimachinery.pkg.api.resource.Quantity targetAverageValue = 3; +} + +// ResourceMetricStatus indicates the current value of a resource metric known to +// Kubernetes, as specified in requests and limits, describing each pod in the +// current scale target (e.g. CPU or memory). Such metrics are built in to +// Kubernetes, and have special scaling options on top of those available to +// normal per-pod metrics using the "pods" source. +message ResourceMetricStatus { + // name is the name of the resource in question. + optional string name = 1; + + // currentAverageUtilization is the current value of the average of the + // resource metric across all relevant pods, represented as a percentage of + // the requested value of the resource for the pods. It will only be + // present if `targetAverageValue` was set in the corresponding metric + // specification. + // +optional + optional int32 currentAverageUtilization = 2; + + // currentAverageValue is the the current value of the average of the + // resource metric across all relevant pods, as a raw value (instead of as + // a percentage of the request), similar to the "pods" metric source type. + // It will always be set, regardless of the corresponding metric specification. + optional k8s.io.apimachinery.pkg.api.resource.Quantity currentAverageValue = 3; +} + diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/register.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/register.go new file mode 100644 index 00000000000..98535e5a365 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/register.go @@ -0,0 +1,49 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v2alpha1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" + "k8s.io/client-go/pkg/api/v1" +) + +// GroupName is the group name use in this package +const GroupName = "autoscaling" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v2alpha1"} + +var ( + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultingFuncs) + AddToScheme = SchemeBuilder.AddToScheme +) + +// Adds the list of known types to api.Scheme. +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &HorizontalPodAutoscaler{}, + &HorizontalPodAutoscalerList{}, + &v1.ListOptions{}, + &v1.DeleteOptions{}, + &metav1.GetOptions{}, + &metav1.ExportOptions{}, + ) + metav1.AddToGroupVersion(scheme, SchemeGroupVersion) + return nil +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.generated.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.generated.go new file mode 100644 index 00000000000..9eb6919a363 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.generated.go @@ -0,0 +1,4621 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// ************************************************************ +// DO NOT EDIT. +// THIS FILE IS AUTO-GENERATED BY codecgen. +// ************************************************************ + +package v2alpha1 + +import ( + "errors" + "fmt" + codec1978 "github.com/ugorji/go/codec" + pkg1_resource "k8s.io/apimachinery/pkg/api/resource" + pkg3_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + pkg4_types "k8s.io/apimachinery/pkg/types" + pkg2_v1 "k8s.io/client-go/pkg/api/v1" + "reflect" + "runtime" + time "time" +) + +const ( + // ----- content types ---- + codecSelferC_UTF81234 = 1 + codecSelferC_RAW1234 = 0 + // ----- value types used ---- + codecSelferValueTypeArray1234 = 10 + codecSelferValueTypeMap1234 = 9 + // ----- containerStateValues ---- + codecSelfer_containerMapKey1234 = 2 + codecSelfer_containerMapValue1234 = 3 + codecSelfer_containerMapEnd1234 = 4 + codecSelfer_containerArrayElem1234 = 6 + codecSelfer_containerArrayEnd1234 = 7 +) + +var ( + codecSelferBitsize1234 = uint8(reflect.TypeOf(uint(0)).Bits()) + codecSelferOnlyMapOrArrayEncodeToStructErr1234 = errors.New(`only encoded map or array can be decoded into a struct`) +) + +type codecSelfer1234 struct{} + +func init() { + if codec1978.GenVersion != 5 { + _, file, _, _ := runtime.Caller(0) + err := fmt.Errorf("codecgen version mismatch: current: %v, need %v. Re-generate file: %v", + 5, codec1978.GenVersion, file) + panic(err) + } + if false { // reference the types, but skip this branch at build/run time + var v0 pkg1_resource.Quantity + var v1 pkg3_v1.Time + var v2 pkg4_types.UID + var v3 pkg2_v1.ResourceName + var v4 time.Time + _, _, _, _, _ = v0, v1, v2, v3, v4 + } +} + +func (x *CrossVersionObjectReference) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[2] = x.APIVersion != "" + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(3) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("name")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *CrossVersionObjectReference) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *CrossVersionObjectReference) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "name": + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv6 := &x.Name + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv8 := &x.APIVersion + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *CrossVersionObjectReference) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj10 int + var yyb10 bool + var yyhl10 bool = l >= 0 + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv11 := &x.Kind + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*string)(yyv11)) = r.DecodeString() + } + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv13 := &x.Name + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + for { + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj10-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *HorizontalPodAutoscalerSpec) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[1] = x.MinReplicas != nil + yyq2[3] = len(x.Metrics) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy4 := &x.ScaleTargetRef + yy4.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("scaleTargetRef")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy6 := &x.ScaleTargetRef + yy6.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.MinReplicas == nil { + r.EncodeNil() + } else { + yy9 := *x.MinReplicas + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeInt(int64(yy9)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("minReplicas")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.MinReplicas == nil { + r.EncodeNil() + } else { + yy11 := *x.MinReplicas + yym12 := z.EncBinary() + _ = yym12 + if false { + } else { + r.EncodeInt(int64(yy11)) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym14 := z.EncBinary() + _ = yym14 + if false { + } else { + r.EncodeInt(int64(x.MaxReplicas)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("maxReplicas")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + r.EncodeInt(int64(x.MaxReplicas)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.Metrics == nil { + r.EncodeNil() + } else { + yym17 := z.EncBinary() + _ = yym17 + if false { + } else { + h.encSliceMetricSpec(([]MetricSpec)(x.Metrics), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metrics")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Metrics == nil { + r.EncodeNil() + } else { + yym18 := z.EncBinary() + _ = yym18 + if false { + } else { + h.encSliceMetricSpec(([]MetricSpec)(x.Metrics), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *HorizontalPodAutoscalerSpec) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *HorizontalPodAutoscalerSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "scaleTargetRef": + if r.TryDecodeAsNil() { + x.ScaleTargetRef = CrossVersionObjectReference{} + } else { + yyv4 := &x.ScaleTargetRef + yyv4.CodecDecodeSelf(d) + } + case "minReplicas": + if r.TryDecodeAsNil() { + if x.MinReplicas != nil { + x.MinReplicas = nil + } + } else { + if x.MinReplicas == nil { + x.MinReplicas = new(int32) + } + yym6 := z.DecBinary() + _ = yym6 + if false { + } else { + *((*int32)(x.MinReplicas)) = int32(r.DecodeInt(32)) + } + } + case "maxReplicas": + if r.TryDecodeAsNil() { + x.MaxReplicas = 0 + } else { + yyv7 := &x.MaxReplicas + yym8 := z.DecBinary() + _ = yym8 + if false { + } else { + *((*int32)(yyv7)) = int32(r.DecodeInt(32)) + } + } + case "metrics": + if r.TryDecodeAsNil() { + x.Metrics = nil + } else { + yyv9 := &x.Metrics + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + h.decSliceMetricSpec((*[]MetricSpec)(yyv9), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *HorizontalPodAutoscalerSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj11 int + var yyb11 bool + var yyhl11 bool = l >= 0 + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ScaleTargetRef = CrossVersionObjectReference{} + } else { + yyv12 := &x.ScaleTargetRef + yyv12.CodecDecodeSelf(d) + } + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.MinReplicas != nil { + x.MinReplicas = nil + } + } else { + if x.MinReplicas == nil { + x.MinReplicas = new(int32) + } + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*int32)(x.MinReplicas)) = int32(r.DecodeInt(32)) + } + } + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.MaxReplicas = 0 + } else { + yyv15 := &x.MaxReplicas + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*int32)(yyv15)) = int32(r.DecodeInt(32)) + } + } + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Metrics = nil + } else { + yyv17 := &x.Metrics + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + h.decSliceMetricSpec((*[]MetricSpec)(yyv17), d) + } + } + for { + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj11-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x MetricSourceType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *MetricSourceType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *MetricSpec) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[1] = x.Object != nil + yyq2[2] = x.Pods != nil + yyq2[3] = x.Resource != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + x.Type.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("type")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + x.Type.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.Object == nil { + r.EncodeNil() + } else { + x.Object.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("object")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Object == nil { + r.EncodeNil() + } else { + x.Object.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.Pods == nil { + r.EncodeNil() + } else { + x.Pods.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("pods")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Pods == nil { + r.EncodeNil() + } else { + x.Pods.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.Resource == nil { + r.EncodeNil() + } else { + x.Resource.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("resource")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Resource == nil { + r.EncodeNil() + } else { + x.Resource.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *MetricSpec) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *MetricSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "type": + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv4 := &x.Type + yyv4.CodecDecodeSelf(d) + } + case "object": + if r.TryDecodeAsNil() { + if x.Object != nil { + x.Object = nil + } + } else { + if x.Object == nil { + x.Object = new(ObjectMetricSource) + } + x.Object.CodecDecodeSelf(d) + } + case "pods": + if r.TryDecodeAsNil() { + if x.Pods != nil { + x.Pods = nil + } + } else { + if x.Pods == nil { + x.Pods = new(PodsMetricSource) + } + x.Pods.CodecDecodeSelf(d) + } + case "resource": + if r.TryDecodeAsNil() { + if x.Resource != nil { + x.Resource = nil + } + } else { + if x.Resource == nil { + x.Resource = new(ResourceMetricSource) + } + x.Resource.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *MetricSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv9 := &x.Type + yyv9.CodecDecodeSelf(d) + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Object != nil { + x.Object = nil + } + } else { + if x.Object == nil { + x.Object = new(ObjectMetricSource) + } + x.Object.CodecDecodeSelf(d) + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Pods != nil { + x.Pods = nil + } + } else { + if x.Pods == nil { + x.Pods = new(PodsMetricSource) + } + x.Pods.CodecDecodeSelf(d) + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Resource != nil { + x.Resource = nil + } + } else { + if x.Resource == nil { + x.Resource = new(ResourceMetricSource) + } + x.Resource.CodecDecodeSelf(d) + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ObjectMetricSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(3) + } else { + yynn2 = 3 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy4 := &x.Target + yy4.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("target")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy6 := &x.Target + yy6.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym9 := z.EncBinary() + _ = yym9 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metricName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy12 := &x.TargetValue + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else if !yym13 && z.IsJSONHandle() { + z.EncJSONMarshal(yy12) + } else { + z.EncFallback(yy12) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("targetValue")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy14 := &x.TargetValue + yym15 := z.EncBinary() + _ = yym15 + if false { + } else if z.HasExtensions() && z.EncExt(yy14) { + } else if !yym15 && z.IsJSONHandle() { + z.EncJSONMarshal(yy14) + } else { + z.EncFallback(yy14) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ObjectMetricSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ObjectMetricSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "target": + if r.TryDecodeAsNil() { + x.Target = CrossVersionObjectReference{} + } else { + yyv4 := &x.Target + yyv4.CodecDecodeSelf(d) + } + case "metricName": + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv5 := &x.MetricName + yym6 := z.DecBinary() + _ = yym6 + if false { + } else { + *((*string)(yyv5)) = r.DecodeString() + } + } + case "targetValue": + if r.TryDecodeAsNil() { + x.TargetValue = pkg1_resource.Quantity{} + } else { + yyv7 := &x.TargetValue + yym8 := z.DecBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.DecExt(yyv7) { + } else if !yym8 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv7) + } else { + z.DecFallback(yyv7, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ObjectMetricSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj9 int + var yyb9 bool + var yyhl9 bool = l >= 0 + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Target = CrossVersionObjectReference{} + } else { + yyv10 := &x.Target + yyv10.CodecDecodeSelf(d) + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv11 := &x.MetricName + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*string)(yyv11)) = r.DecodeString() + } + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.TargetValue = pkg1_resource.Quantity{} + } else { + yyv13 := &x.TargetValue + yym14 := z.DecBinary() + _ = yym14 + if false { + } else if z.HasExtensions() && z.DecExt(yyv13) { + } else if !yym14 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv13) + } else { + z.DecFallback(yyv13, false) + } + } + for { + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj9-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *PodsMetricSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metricName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy7 := &x.TargetAverageValue + yym8 := z.EncBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.EncExt(yy7) { + } else if !yym8 && z.IsJSONHandle() { + z.EncJSONMarshal(yy7) + } else { + z.EncFallback(yy7) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("targetAverageValue")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy9 := &x.TargetAverageValue + yym10 := z.EncBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.EncExt(yy9) { + } else if !yym10 && z.IsJSONHandle() { + z.EncJSONMarshal(yy9) + } else { + z.EncFallback(yy9) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *PodsMetricSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *PodsMetricSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "metricName": + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv4 := &x.MetricName + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "targetAverageValue": + if r.TryDecodeAsNil() { + x.TargetAverageValue = pkg1_resource.Quantity{} + } else { + yyv6 := &x.TargetAverageValue + yym7 := z.DecBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.DecExt(yyv6) { + } else if !yym7 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv6) + } else { + z.DecFallback(yyv6, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *PodsMetricSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv9 := &x.MetricName + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + *((*string)(yyv9)) = r.DecodeString() + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.TargetAverageValue = pkg1_resource.Quantity{} + } else { + yyv11 := &x.TargetAverageValue + yym12 := z.DecBinary() + _ = yym12 + if false { + } else if z.HasExtensions() && z.DecExt(yyv11) { + } else if !yym12 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv11) + } else { + z.DecFallback(yyv11, false) + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ResourceMetricSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[1] = x.TargetAverageUtilization != nil + yyq2[2] = x.TargetAverageValue != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(3) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yysf4 := &x.Name + yysf4.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("name")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yysf5 := &x.Name + yysf5.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.TargetAverageUtilization == nil { + r.EncodeNil() + } else { + yy7 := *x.TargetAverageUtilization + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeInt(int64(yy7)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("targetAverageUtilization")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.TargetAverageUtilization == nil { + r.EncodeNil() + } else { + yy9 := *x.TargetAverageUtilization + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeInt(int64(yy9)) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.TargetAverageValue == nil { + r.EncodeNil() + } else { + yym12 := z.EncBinary() + _ = yym12 + if false { + } else if z.HasExtensions() && z.EncExt(x.TargetAverageValue) { + } else if !yym12 && z.IsJSONHandle() { + z.EncJSONMarshal(x.TargetAverageValue) + } else { + z.EncFallback(x.TargetAverageValue) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("targetAverageValue")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.TargetAverageValue == nil { + r.EncodeNil() + } else { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(x.TargetAverageValue) { + } else if !yym13 && z.IsJSONHandle() { + z.EncJSONMarshal(x.TargetAverageValue) + } else { + z.EncFallback(x.TargetAverageValue) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ResourceMetricSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ResourceMetricSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "name": + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv4 := &x.Name + yyv4.CodecDecodeSelf(d) + } + case "targetAverageUtilization": + if r.TryDecodeAsNil() { + if x.TargetAverageUtilization != nil { + x.TargetAverageUtilization = nil + } + } else { + if x.TargetAverageUtilization == nil { + x.TargetAverageUtilization = new(int32) + } + yym6 := z.DecBinary() + _ = yym6 + if false { + } else { + *((*int32)(x.TargetAverageUtilization)) = int32(r.DecodeInt(32)) + } + } + case "targetAverageValue": + if r.TryDecodeAsNil() { + if x.TargetAverageValue != nil { + x.TargetAverageValue = nil + } + } else { + if x.TargetAverageValue == nil { + x.TargetAverageValue = new(pkg1_resource.Quantity) + } + yym8 := z.DecBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.DecExt(x.TargetAverageValue) { + } else if !yym8 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.TargetAverageValue) + } else { + z.DecFallback(x.TargetAverageValue, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ResourceMetricSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj9 int + var yyb9 bool + var yyhl9 bool = l >= 0 + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv10 := &x.Name + yyv10.CodecDecodeSelf(d) + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.TargetAverageUtilization != nil { + x.TargetAverageUtilization = nil + } + } else { + if x.TargetAverageUtilization == nil { + x.TargetAverageUtilization = new(int32) + } + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*int32)(x.TargetAverageUtilization)) = int32(r.DecodeInt(32)) + } + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.TargetAverageValue != nil { + x.TargetAverageValue = nil + } + } else { + if x.TargetAverageValue == nil { + x.TargetAverageValue = new(pkg1_resource.Quantity) + } + yym14 := z.DecBinary() + _ = yym14 + if false { + } else if z.HasExtensions() && z.DecExt(x.TargetAverageValue) { + } else if !yym14 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.TargetAverageValue) + } else { + z.DecFallback(x.TargetAverageValue, false) + } + } + for { + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj9-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *HorizontalPodAutoscalerStatus) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.ObservedGeneration != nil + yyq2[1] = x.LastScaleTime != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 3 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.ObservedGeneration == nil { + r.EncodeNil() + } else { + yy4 := *x.ObservedGeneration + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeInt(int64(yy4)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("observedGeneration")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.ObservedGeneration == nil { + r.EncodeNil() + } else { + yy6 := *x.ObservedGeneration + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeInt(int64(yy6)) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.LastScaleTime == nil { + r.EncodeNil() + } else { + yym9 := z.EncBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.EncExt(x.LastScaleTime) { + } else if yym9 { + z.EncBinaryMarshal(x.LastScaleTime) + } else if !yym9 && z.IsJSONHandle() { + z.EncJSONMarshal(x.LastScaleTime) + } else { + z.EncFallback(x.LastScaleTime) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("lastScaleTime")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.LastScaleTime == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.EncExt(x.LastScaleTime) { + } else if yym10 { + z.EncBinaryMarshal(x.LastScaleTime) + } else if !yym10 && z.IsJSONHandle() { + z.EncJSONMarshal(x.LastScaleTime) + } else { + z.EncFallback(x.LastScaleTime) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym12 := z.EncBinary() + _ = yym12 + if false { + } else { + r.EncodeInt(int64(x.CurrentReplicas)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentReplicas")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + r.EncodeInt(int64(x.CurrentReplicas)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + r.EncodeInt(int64(x.DesiredReplicas)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("desiredReplicas")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + r.EncodeInt(int64(x.DesiredReplicas)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.CurrentMetrics == nil { + r.EncodeNil() + } else { + yym18 := z.EncBinary() + _ = yym18 + if false { + } else { + h.encSliceMetricStatus(([]MetricStatus)(x.CurrentMetrics), e) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentMetrics")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.CurrentMetrics == nil { + r.EncodeNil() + } else { + yym19 := z.EncBinary() + _ = yym19 + if false { + } else { + h.encSliceMetricStatus(([]MetricStatus)(x.CurrentMetrics), e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *HorizontalPodAutoscalerStatus) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "observedGeneration": + if r.TryDecodeAsNil() { + if x.ObservedGeneration != nil { + x.ObservedGeneration = nil + } + } else { + if x.ObservedGeneration == nil { + x.ObservedGeneration = new(int64) + } + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*int64)(x.ObservedGeneration)) = int64(r.DecodeInt(64)) + } + } + case "lastScaleTime": + if r.TryDecodeAsNil() { + if x.LastScaleTime != nil { + x.LastScaleTime = nil + } + } else { + if x.LastScaleTime == nil { + x.LastScaleTime = new(pkg3_v1.Time) + } + yym7 := z.DecBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.DecExt(x.LastScaleTime) { + } else if yym7 { + z.DecBinaryUnmarshal(x.LastScaleTime) + } else if !yym7 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.LastScaleTime) + } else { + z.DecFallback(x.LastScaleTime, false) + } + } + case "currentReplicas": + if r.TryDecodeAsNil() { + x.CurrentReplicas = 0 + } else { + yyv8 := &x.CurrentReplicas + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*int32)(yyv8)) = int32(r.DecodeInt(32)) + } + } + case "desiredReplicas": + if r.TryDecodeAsNil() { + x.DesiredReplicas = 0 + } else { + yyv10 := &x.DesiredReplicas + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*int32)(yyv10)) = int32(r.DecodeInt(32)) + } + } + case "currentMetrics": + if r.TryDecodeAsNil() { + x.CurrentMetrics = nil + } else { + yyv12 := &x.CurrentMetrics + yym13 := z.DecBinary() + _ = yym13 + if false { + } else { + h.decSliceMetricStatus((*[]MetricStatus)(yyv12), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj14 int + var yyb14 bool + var yyhl14 bool = l >= 0 + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.ObservedGeneration != nil { + x.ObservedGeneration = nil + } + } else { + if x.ObservedGeneration == nil { + x.ObservedGeneration = new(int64) + } + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*int64)(x.ObservedGeneration)) = int64(r.DecodeInt(64)) + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.LastScaleTime != nil { + x.LastScaleTime = nil + } + } else { + if x.LastScaleTime == nil { + x.LastScaleTime = new(pkg3_v1.Time) + } + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(x.LastScaleTime) { + } else if yym18 { + z.DecBinaryUnmarshal(x.LastScaleTime) + } else if !yym18 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.LastScaleTime) + } else { + z.DecFallback(x.LastScaleTime, false) + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CurrentReplicas = 0 + } else { + yyv19 := &x.CurrentReplicas + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + *((*int32)(yyv19)) = int32(r.DecodeInt(32)) + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.DesiredReplicas = 0 + } else { + yyv21 := &x.DesiredReplicas + yym22 := z.DecBinary() + _ = yym22 + if false { + } else { + *((*int32)(yyv21)) = int32(r.DecodeInt(32)) + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CurrentMetrics = nil + } else { + yyv23 := &x.CurrentMetrics + yym24 := z.DecBinary() + _ = yym24 + if false { + } else { + h.decSliceMetricStatus((*[]MetricStatus)(yyv23), d) + } + } + for { + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj14-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *MetricStatus) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[1] = x.Object != nil + yyq2[2] = x.Pods != nil + yyq2[3] = x.Resource != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + x.Type.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("type")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + x.Type.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.Object == nil { + r.EncodeNil() + } else { + x.Object.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("object")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Object == nil { + r.EncodeNil() + } else { + x.Object.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.Pods == nil { + r.EncodeNil() + } else { + x.Pods.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("pods")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Pods == nil { + r.EncodeNil() + } else { + x.Pods.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.Resource == nil { + r.EncodeNil() + } else { + x.Resource.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("resource")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Resource == nil { + r.EncodeNil() + } else { + x.Resource.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *MetricStatus) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *MetricStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "type": + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv4 := &x.Type + yyv4.CodecDecodeSelf(d) + } + case "object": + if r.TryDecodeAsNil() { + if x.Object != nil { + x.Object = nil + } + } else { + if x.Object == nil { + x.Object = new(ObjectMetricStatus) + } + x.Object.CodecDecodeSelf(d) + } + case "pods": + if r.TryDecodeAsNil() { + if x.Pods != nil { + x.Pods = nil + } + } else { + if x.Pods == nil { + x.Pods = new(PodsMetricStatus) + } + x.Pods.CodecDecodeSelf(d) + } + case "resource": + if r.TryDecodeAsNil() { + if x.Resource != nil { + x.Resource = nil + } + } else { + if x.Resource == nil { + x.Resource = new(ResourceMetricStatus) + } + x.Resource.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *MetricStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv9 := &x.Type + yyv9.CodecDecodeSelf(d) + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Object != nil { + x.Object = nil + } + } else { + if x.Object == nil { + x.Object = new(ObjectMetricStatus) + } + x.Object.CodecDecodeSelf(d) + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Pods != nil { + x.Pods = nil + } + } else { + if x.Pods == nil { + x.Pods = new(PodsMetricStatus) + } + x.Pods.CodecDecodeSelf(d) + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Resource != nil { + x.Resource = nil + } + } else { + if x.Resource == nil { + x.Resource = new(ResourceMetricStatus) + } + x.Resource.CodecDecodeSelf(d) + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ObjectMetricStatus) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(3) + } else { + yynn2 = 3 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy4 := &x.Target + yy4.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("target")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy6 := &x.Target + yy6.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym9 := z.EncBinary() + _ = yym9 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metricName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy12 := &x.CurrentValue + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else if !yym13 && z.IsJSONHandle() { + z.EncJSONMarshal(yy12) + } else { + z.EncFallback(yy12) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentValue")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy14 := &x.CurrentValue + yym15 := z.EncBinary() + _ = yym15 + if false { + } else if z.HasExtensions() && z.EncExt(yy14) { + } else if !yym15 && z.IsJSONHandle() { + z.EncJSONMarshal(yy14) + } else { + z.EncFallback(yy14) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ObjectMetricStatus) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ObjectMetricStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "target": + if r.TryDecodeAsNil() { + x.Target = CrossVersionObjectReference{} + } else { + yyv4 := &x.Target + yyv4.CodecDecodeSelf(d) + } + case "metricName": + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv5 := &x.MetricName + yym6 := z.DecBinary() + _ = yym6 + if false { + } else { + *((*string)(yyv5)) = r.DecodeString() + } + } + case "currentValue": + if r.TryDecodeAsNil() { + x.CurrentValue = pkg1_resource.Quantity{} + } else { + yyv7 := &x.CurrentValue + yym8 := z.DecBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.DecExt(yyv7) { + } else if !yym8 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv7) + } else { + z.DecFallback(yyv7, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ObjectMetricStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj9 int + var yyb9 bool + var yyhl9 bool = l >= 0 + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Target = CrossVersionObjectReference{} + } else { + yyv10 := &x.Target + yyv10.CodecDecodeSelf(d) + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv11 := &x.MetricName + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*string)(yyv11)) = r.DecodeString() + } + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CurrentValue = pkg1_resource.Quantity{} + } else { + yyv13 := &x.CurrentValue + yym14 := z.DecBinary() + _ = yym14 + if false { + } else if z.HasExtensions() && z.DecExt(yyv13) { + } else if !yym14 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv13) + } else { + z.DecFallback(yyv13, false) + } + } + for { + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj9-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *PodsMetricStatus) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metricName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.MetricName)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy7 := &x.CurrentAverageValue + yym8 := z.EncBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.EncExt(yy7) { + } else if !yym8 && z.IsJSONHandle() { + z.EncJSONMarshal(yy7) + } else { + z.EncFallback(yy7) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentAverageValue")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy9 := &x.CurrentAverageValue + yym10 := z.EncBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.EncExt(yy9) { + } else if !yym10 && z.IsJSONHandle() { + z.EncJSONMarshal(yy9) + } else { + z.EncFallback(yy9) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *PodsMetricStatus) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *PodsMetricStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "metricName": + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv4 := &x.MetricName + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "currentAverageValue": + if r.TryDecodeAsNil() { + x.CurrentAverageValue = pkg1_resource.Quantity{} + } else { + yyv6 := &x.CurrentAverageValue + yym7 := z.DecBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.DecExt(yyv6) { + } else if !yym7 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv6) + } else { + z.DecFallback(yyv6, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *PodsMetricStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.MetricName = "" + } else { + yyv9 := &x.MetricName + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + *((*string)(yyv9)) = r.DecodeString() + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CurrentAverageValue = pkg1_resource.Quantity{} + } else { + yyv11 := &x.CurrentAverageValue + yym12 := z.DecBinary() + _ = yym12 + if false { + } else if z.HasExtensions() && z.DecExt(yyv11) { + } else if !yym12 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv11) + } else { + z.DecFallback(yyv11, false) + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ResourceMetricStatus) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[1] = x.CurrentAverageUtilization != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(3) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yysf4 := &x.Name + yysf4.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("name")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yysf5 := &x.Name + yysf5.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.CurrentAverageUtilization == nil { + r.EncodeNil() + } else { + yy7 := *x.CurrentAverageUtilization + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeInt(int64(yy7)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentAverageUtilization")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.CurrentAverageUtilization == nil { + r.EncodeNil() + } else { + yy9 := *x.CurrentAverageUtilization + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeInt(int64(yy9)) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy12 := &x.CurrentAverageValue + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else if !yym13 && z.IsJSONHandle() { + z.EncJSONMarshal(yy12) + } else { + z.EncFallback(yy12) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentAverageValue")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy14 := &x.CurrentAverageValue + yym15 := z.EncBinary() + _ = yym15 + if false { + } else if z.HasExtensions() && z.EncExt(yy14) { + } else if !yym15 && z.IsJSONHandle() { + z.EncJSONMarshal(yy14) + } else { + z.EncFallback(yy14) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ResourceMetricStatus) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ResourceMetricStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "name": + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv4 := &x.Name + yyv4.CodecDecodeSelf(d) + } + case "currentAverageUtilization": + if r.TryDecodeAsNil() { + if x.CurrentAverageUtilization != nil { + x.CurrentAverageUtilization = nil + } + } else { + if x.CurrentAverageUtilization == nil { + x.CurrentAverageUtilization = new(int32) + } + yym6 := z.DecBinary() + _ = yym6 + if false { + } else { + *((*int32)(x.CurrentAverageUtilization)) = int32(r.DecodeInt(32)) + } + } + case "currentAverageValue": + if r.TryDecodeAsNil() { + x.CurrentAverageValue = pkg1_resource.Quantity{} + } else { + yyv7 := &x.CurrentAverageValue + yym8 := z.DecBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.DecExt(yyv7) { + } else if !yym8 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv7) + } else { + z.DecFallback(yyv7, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ResourceMetricStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj9 int + var yyb9 bool + var yyhl9 bool = l >= 0 + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv10 := &x.Name + yyv10.CodecDecodeSelf(d) + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.CurrentAverageUtilization != nil { + x.CurrentAverageUtilization = nil + } + } else { + if x.CurrentAverageUtilization == nil { + x.CurrentAverageUtilization = new(int32) + } + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*int32)(x.CurrentAverageUtilization)) = int32(r.DecodeInt(32)) + } + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CurrentAverageValue = pkg1_resource.Quantity{} + } else { + yyv13 := &x.CurrentAverageValue + yym14 := z.DecBinary() + _ = yym14 + if false { + } else if z.HasExtensions() && z.DecExt(yyv13) { + } else if !yym14 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv13) + } else { + z.DecFallback(yyv13, false) + } + } + for { + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj9-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *HorizontalPodAutoscaler) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + yyq2[3] = true + yyq2[4] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ObjectMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ObjectMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yy15 := &x.Spec + yy15.CodecEncodeSelf(e) + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("spec")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy17 := &x.Spec + yy17.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + yy20 := &x.Status + yy20.CodecEncodeSelf(e) + } else { + r.EncodeNil() + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("status")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy22 := &x.Status + yy22.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *HorizontalPodAutoscaler) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *HorizontalPodAutoscaler) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg3_v1.ObjectMeta{} + } else { + yyv8 := &x.ObjectMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "spec": + if r.TryDecodeAsNil() { + x.Spec = HorizontalPodAutoscalerSpec{} + } else { + yyv10 := &x.Spec + yyv10.CodecDecodeSelf(d) + } + case "status": + if r.TryDecodeAsNil() { + x.Status = HorizontalPodAutoscalerStatus{} + } else { + yyv11 := &x.Status + yyv11.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *HorizontalPodAutoscaler) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg3_v1.ObjectMeta{} + } else { + yyv17 := &x.ObjectMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Spec = HorizontalPodAutoscalerSpec{} + } else { + yyv19 := &x.Spec + yyv19.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Status = HorizontalPodAutoscalerStatus{} + } else { + yyv20 := &x.Status + yyv20.CodecDecodeSelf(d) + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *HorizontalPodAutoscalerList) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ListMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ListMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceHorizontalPodAutoscaler(([]HorizontalPodAutoscaler)(x.Items), e) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("items")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceHorizontalPodAutoscaler(([]HorizontalPodAutoscaler)(x.Items), e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *HorizontalPodAutoscalerList) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *HorizontalPodAutoscalerList) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ListMeta = pkg3_v1.ListMeta{} + } else { + yyv8 := &x.ListMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "items": + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv10 := &x.Items + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceHorizontalPodAutoscaler((*[]HorizontalPodAutoscaler)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *HorizontalPodAutoscalerList) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ListMeta = pkg3_v1.ListMeta{} + } else { + yyv17 := &x.ListMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv19 := &x.Items + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceHorizontalPodAutoscaler((*[]HorizontalPodAutoscaler)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) encSliceMetricSpec(v []MetricSpec, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceMetricSpec(v *[]MetricSpec, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []MetricSpec{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 40) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]MetricSpec, yyrl1) + } + } else { + yyv1 = make([]MetricSpec, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = MetricSpec{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, MetricSpec{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = MetricSpec{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, MetricSpec{}) // var yyz1 MetricSpec + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = MetricSpec{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []MetricSpec{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceMetricStatus(v []MetricStatus, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceMetricStatus(v *[]MetricStatus, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []MetricStatus{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 40) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]MetricStatus, yyrl1) + } + } else { + yyv1 = make([]MetricStatus, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = MetricStatus{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, MetricStatus{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = MetricStatus{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, MetricStatus{}) // var yyz1 MetricStatus + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = MetricStatus{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []MetricStatus{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceHorizontalPodAutoscaler(v []HorizontalPodAutoscaler, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceHorizontalPodAutoscaler(v *[]HorizontalPodAutoscaler, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []HorizontalPodAutoscaler{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 392) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]HorizontalPodAutoscaler, yyrl1) + } + } else { + yyv1 = make([]HorizontalPodAutoscaler, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = HorizontalPodAutoscaler{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, HorizontalPodAutoscaler{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = HorizontalPodAutoscaler{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, HorizontalPodAutoscaler{}) // var yyz1 HorizontalPodAutoscaler + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = HorizontalPodAutoscaler{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []HorizontalPodAutoscaler{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.go new file mode 100644 index 00000000000..4df8ae41427 --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.go @@ -0,0 +1,269 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v2alpha1 + +import ( + "k8s.io/apimachinery/pkg/api/resource" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/client-go/pkg/api/v1" +) + +// CrossVersionObjectReference contains enough information to let you identify the referred resource. +type CrossVersionObjectReference struct { + // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds" + Kind string `json:"kind" protobuf:"bytes,1,opt,name=kind"` + // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names + Name string `json:"name" protobuf:"bytes,2,opt,name=name"` + // API version of the referent + // +optional + APIVersion string `json:"apiVersion,omitempty" protobuf:"bytes,3,opt,name=apiVersion"` +} + +// HorizontalPodAutoscalerSpec describes the desired functionality of the HorizontalPodAutoscaler. +type HorizontalPodAutoscalerSpec struct { + // scaleTargetRef points to the target resource to scale, and is used to the pods for which metrics + // should be collected, as well as to actually change the replica count. + ScaleTargetRef CrossVersionObjectReference `json:"scaleTargetRef" protobuf:"bytes,1,opt,name=scaleTargetRef"` + // minReplicas is the lower limit for the number of replicas to which the autoscaler can scale down. + // It defaults to 1 pod. + // +optional + MinReplicas *int32 `json:"minReplicas,omitempty" protobuf:"varint,2,opt,name=minReplicas"` + // maxReplicas is the upper limit for the number of replicas to which the autoscaler can scale up. + // It cannot be less that minReplicas. + MaxReplicas int32 `json:"maxReplicas" protobuf:"varint,3,opt,name=maxReplicas"` + // metrics contains the specifications for which to use to calculate the + // desired replica count (the maximum replica count across all metrics will + // be used). The desired replica count is calculated multiplying the + // ratio between the target value and the current value by the current + // number of pods. Ergo, metrics used must decrease as the pod count is + // increased, and vice-versa. See the individual metric source types for + // more information about how each type of metric must respond. + // +optional + Metrics []MetricSpec `json:"metrics,omitempty" protobuf:"bytes,4,rep,name=metrics"` +} + +// MetricSourceType indicates the type of metric. +type MetricSourceType string + +var ( + // ObjectMetricSourceType is a metric describing a kubernetes object + // (for example, hits-per-second on an Ingress object). + ObjectMetricSourceType MetricSourceType = "Object" + // PodsMetricSourceType is a metric describing each pod in the current scale + // target (for example, transactions-processed-per-second). The values + // will be averaged together before being compared to the target value. + PodsMetricSourceType MetricSourceType = "Pods" + // ResourceMetricSourceType is a resource metric known to Kubernetes, as + // specified in requests and limits, describing each pod in the current + // scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics (the "pods" source). + ResourceMetricSourceType MetricSourceType = "Resource" +) + +// MetricSpec specifies how to scale based on a single metric +// (only `type` and one other matching field should be set at once). +type MetricSpec struct { + // type is the type of metric source. It should match one of the fields below. + Type MetricSourceType `json:"type" protobuf:"bytes,1,name=type"` + + // object refers to a metric describing a single kubernetes object + // (for example, hits-per-second on an Ingress object). + // +optional + Object *ObjectMetricSource `json:"object,omitempty" protobuf:"bytes,2,opt,name=object"` + // pods refers to a metric describing each pod in the current scale target + // (for example, transactions-processed-per-second). The values will be + // averaged together before being compared to the target value. + // +optional + Pods *PodsMetricSource `json:"pods,omitempty" protobuf:"bytes,3,opt,name=pods"` + // resource refers to a resource metric (such as those specified in + // requests and limits) known to Kubernetes describing each pod in the + // current scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics using the "pods" source. + // +optional + Resource *ResourceMetricSource `json:"resource,omitempty" protobuf:"bytes,4,opt,name=resource"` +} + +// ObjectMetricSource indicates how to scale on a metric describing a +// kubernetes object (for example, hits-per-second on an Ingress object). +type ObjectMetricSource struct { + // target is the described Kubernetes object. + Target CrossVersionObjectReference `json:"target" protobuf:"bytes,1,name=target"` + + // metricName is the name of the metric in question. + MetricName string `json:"metricName" protobuf:"bytes,2,name=metricName"` + // targetValue is the target value of the metric (as a quantity). + TargetValue resource.Quantity `json:"targetValue" protobuf:"bytes,3,name=targetValue"` +} + +// PodsMetricSource indicates how to scale on a metric describing each pod in +// the current scale target (for example, transactions-processed-per-second). +// The values will be averaged together before being compared to the target +// value. +type PodsMetricSource struct { + // metricName is the name of the metric in question + MetricName string `json:"metricName" protobuf:"bytes,1,name=metricName"` + // targetAverageValue is the target value of the average of the + // metric across all relevant pods (as a quantity) + TargetAverageValue resource.Quantity `json:"targetAverageValue" protobuf:"bytes,2,name=targetAverageValue"` +} + +// ResourceMetricSource indicates how to scale on a resource metric known to +// Kubernetes, as specified in requests and limits, describing each pod in the +// current scale target (e.g. CPU or memory). The values will be averaged +// together before being compared to the target. Such metrics are built in to +// Kubernetes, and have special scaling options on top of those available to +// normal per-pod metrics using the "pods" source. Only one "target" type +// should be set. +type ResourceMetricSource struct { + // name is the name of the resource in question. + Name v1.ResourceName `json:"name" protobuf:"bytes,1,name=name"` + // targetAverageUtilization is the target value of the average of the + // resource metric across all relevant pods, represented as a percentage of + // the requested value of the resource for the pods. + // +optional + TargetAverageUtilization *int32 `json:"targetAverageUtilization,omitempty" protobuf:"varint,2,opt,name=targetAverageUtilization"` + // targetAverageValue is the the target value of the average of the + // resource metric across all relevant pods, as a raw value (instead of as + // a percentage of the request), similar to the "pods" metric source type. + // +optional + TargetAverageValue *resource.Quantity `json:"targetAverageValue,omitempty" protobuf:"bytes,3,opt,name=targetAverageValue"` +} + +// HorizontalPodAutoscalerStatus describes the current status of a horizontal pod autoscaler. +type HorizontalPodAutoscalerStatus struct { + // observedGeneration is the most recent generation observed by this autoscaler. + // +optional + ObservedGeneration *int64 `json:"observedGeneration,omitempty" protobuf:"varint,1,opt,name=observedGeneration"` + + // lastScaleTime is the last time the HorizontalPodAutoscaler scaled the number of pods, + // used by the autoscaler to control how often the number of pods is changed. + // +optional + LastScaleTime *metav1.Time `json:"lastScaleTime,omitempty" protobuf:"bytes,2,opt,name=lastScaleTime"` + + // currentReplicas is current number of replicas of pods managed by this autoscaler, + // as last seen by the autoscaler. + CurrentReplicas int32 `json:"currentReplicas" protobuf:"varint,3,opt,name=currentReplicas"` + + // desiredReplicas is the desired number of replicas of pods managed by this autoscaler, + // as last calculated by the autoscaler. + DesiredReplicas int32 `json:"desiredReplicas" protobuf:"varint,4,opt,name=desiredReplicas"` + + // currentMetrics is the last read state of the metrics used by this autoscaler. + CurrentMetrics []MetricStatus `json:"currentMetrics" protobuf:"bytes,5,rep,name=currentMetrics"` +} + +// MetricStatus describes the last-read state of a single metric. +type MetricStatus struct { + // type is the type of metric source. It will match one of the fields below. + Type MetricSourceType `json:"type" protobuf:"bytes,1,name=type"` + + // object refers to a metric describing a single kubernetes object + // (for example, hits-per-second on an Ingress object). + // +optional + Object *ObjectMetricStatus `json:"object,omitempty" protobuf:"bytes,2,opt,name=object"` + // pods refers to a metric describing each pod in the current scale target + // (for example, transactions-processed-per-second). The values will be + // averaged together before being compared to the target value. + // +optional + Pods *PodsMetricStatus `json:"pods,omitempty" protobuf:"bytes,3,opt,name=pods"` + // resource refers to a resource metric (such as those specified in + // requests and limits) known to Kubernetes describing each pod in the + // current scale target (e.g. CPU or memory). Such metrics are built in to + // Kubernetes, and have special scaling options on top of those available + // to normal per-pod metrics using the "pods" source. + // +optional + Resource *ResourceMetricStatus `json:"resource,omitempty" protobuf:"bytes,4,opt,name=resource"` +} + +// ObjectMetricStatus indicates the current value of a metric describing a +// kubernetes object (for example, hits-per-second on an Ingress object). +type ObjectMetricStatus struct { + // target is the described Kubernetes object. + Target CrossVersionObjectReference `json:"target" protobuf:"bytes,1,name=target"` + + // metricName is the name of the metric in question. + MetricName string `json:"metricName" protobuf:"bytes,2,name=metricName"` + // currentValue is the current value of the metric (as a quantity). + CurrentValue resource.Quantity `json:"currentValue" protobuf:"bytes,3,name=currentValue"` +} + +// PodsMetricStatus indicates the current value of a metric describing each pod in +// the current scale target (for example, transactions-processed-per-second). +type PodsMetricStatus struct { + // metricName is the name of the metric in question + MetricName string `json:"metricName" protobuf:"bytes,1,name=metricName"` + // currentAverageValue is the current value of the average of the + // metric across all relevant pods (as a quantity) + CurrentAverageValue resource.Quantity `json:"currentAverageValue" protobuf:"bytes,2,name=currentAverageValue"` +} + +// ResourceMetricStatus indicates the current value of a resource metric known to +// Kubernetes, as specified in requests and limits, describing each pod in the +// current scale target (e.g. CPU or memory). Such metrics are built in to +// Kubernetes, and have special scaling options on top of those available to +// normal per-pod metrics using the "pods" source. +type ResourceMetricStatus struct { + // name is the name of the resource in question. + Name v1.ResourceName `json:"name" protobuf:"bytes,1,name=name"` + // currentAverageUtilization is the current value of the average of the + // resource metric across all relevant pods, represented as a percentage of + // the requested value of the resource for the pods. It will only be + // present if `targetAverageValue` was set in the corresponding metric + // specification. + // +optional + CurrentAverageUtilization *int32 `json:"currentAverageUtilization,omitempty" protobuf:"bytes,2,opt,name=currentAverageUtilization"` + // currentAverageValue is the the current value of the average of the + // resource metric across all relevant pods, as a raw value (instead of as + // a percentage of the request), similar to the "pods" metric source type. + // It will always be set, regardless of the corresponding metric specification. + CurrentAverageValue resource.Quantity `json:"currentAverageValue" protobuf:"bytes,3,name=currentAverageValue"` +} + +// +genclient=true + +// HorizontalPodAutoscaler is the configuration for a horizontal pod +// autoscaler, which automatically manages the replica count of any resource +// implementing the scale subresource based on the metrics specified. +type HorizontalPodAutoscaler struct { + metav1.TypeMeta `json:",inline"` + // metadata is the standard object metadata. + // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // spec is the specification for the behaviour of the autoscaler. + // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // +optional + Spec HorizontalPodAutoscalerSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` + + // status is the current information about the autoscaler. + // +optional + Status HorizontalPodAutoscalerStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` +} + +// HorizontalPodAutoscaler is a list of horizontal pod autoscaler objects. +type HorizontalPodAutoscalerList struct { + metav1.TypeMeta `json:",inline"` + // metadata is the standard list metadata. + // +optional + metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // items is the list of horizontal pod autoscaler objects. + Items []HorizontalPodAutoscaler `json:"items" protobuf:"bytes,2,rep,name=items"` +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types_swagger_doc_generated.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types_swagger_doc_generated.go new file mode 100644 index 00000000000..6030e2dc33a --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types_swagger_doc_generated.go @@ -0,0 +1,175 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v2alpha1 + +// This file contains a collection of methods that can be used from go-restful to +// generate Swagger API documentation for its models. Please read this PR for more +// information on the implementation: https://github.com/emicklei/go-restful/pull/215 +// +// TODOs are ignored from the parser (e.g. TODO(andronat):... || TODO:...) if and only if +// they are on one line! For multiple line or blocks that you want to ignore use ---. +// Any context after a --- is ignored. +// +// Those methods can be generated by using hack/update-generated-swagger-docs.sh + +// AUTO-GENERATED FUNCTIONS START HERE +var map_CrossVersionObjectReference = map[string]string{ + "": "CrossVersionObjectReference contains enough information to let you identify the referred resource.", + "kind": "Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds\"", + "name": "Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names", + "apiVersion": "API version of the referent", +} + +func (CrossVersionObjectReference) SwaggerDoc() map[string]string { + return map_CrossVersionObjectReference +} + +var map_HorizontalPodAutoscaler = map[string]string{ + "": "HorizontalPodAutoscaler is the configuration for a horizontal pod autoscaler, which automatically manages the replica count of any resource implementing the scale subresource based on the metrics specified.", + "metadata": "metadata is the standard object metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", + "spec": "spec is the specification for the behaviour of the autoscaler. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status.", + "status": "status is the current information about the autoscaler.", +} + +func (HorizontalPodAutoscaler) SwaggerDoc() map[string]string { + return map_HorizontalPodAutoscaler +} + +var map_HorizontalPodAutoscalerList = map[string]string{ + "": "HorizontalPodAutoscaler is a list of horizontal pod autoscaler objects.", + "metadata": "metadata is the standard list metadata.", + "items": "items is the list of horizontal pod autoscaler objects.", +} + +func (HorizontalPodAutoscalerList) SwaggerDoc() map[string]string { + return map_HorizontalPodAutoscalerList +} + +var map_HorizontalPodAutoscalerSpec = map[string]string{ + "": "HorizontalPodAutoscalerSpec describes the desired functionality of the HorizontalPodAutoscaler.", + "scaleTargetRef": "scaleTargetRef points to the target resource to scale, and is used to the pods for which metrics should be collected, as well as to actually change the replica count.", + "minReplicas": "minReplicas is the lower limit for the number of replicas to which the autoscaler can scale down. It defaults to 1 pod.", + "maxReplicas": "maxReplicas is the upper limit for the number of replicas to which the autoscaler can scale up. It cannot be less that minReplicas.", + "metrics": "metrics contains the specifications for which to use to calculate the desired replica count (the maximum replica count across all metrics will be used). The desired replica count is calculated multiplying the ratio between the target value and the current value by the current number of pods. Ergo, metrics used must decrease as the pod count is increased, and vice-versa. See the individual metric source types for more information about how each type of metric must respond.", +} + +func (HorizontalPodAutoscalerSpec) SwaggerDoc() map[string]string { + return map_HorizontalPodAutoscalerSpec +} + +var map_HorizontalPodAutoscalerStatus = map[string]string{ + "": "HorizontalPodAutoscalerStatus describes the current status of a horizontal pod autoscaler.", + "observedGeneration": "observedGeneration is the most recent generation observed by this autoscaler.", + "lastScaleTime": "lastScaleTime is the last time the HorizontalPodAutoscaler scaled the number of pods, used by the autoscaler to control how often the number of pods is changed.", + "currentReplicas": "currentReplicas is current number of replicas of pods managed by this autoscaler, as last seen by the autoscaler.", + "desiredReplicas": "desiredReplicas is the desired number of replicas of pods managed by this autoscaler, as last calculated by the autoscaler.", + "currentMetrics": "currentMetrics is the last read state of the metrics used by this autoscaler.", +} + +func (HorizontalPodAutoscalerStatus) SwaggerDoc() map[string]string { + return map_HorizontalPodAutoscalerStatus +} + +var map_MetricSpec = map[string]string{ + "": "MetricSpec specifies how to scale based on a single metric (only `type` and one other matching field should be set at once).", + "type": "type is the type of metric source. It should match one of the fields below.", + "object": "object refers to a metric describing a single kubernetes object (for example, hits-per-second on an Ingress object).", + "pods": "pods refers to a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.", + "resource": "resource refers to a resource metric (such as those specified in requests and limits) known to Kubernetes describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.", +} + +func (MetricSpec) SwaggerDoc() map[string]string { + return map_MetricSpec +} + +var map_MetricStatus = map[string]string{ + "": "MetricStatus describes the last-read state of a single metric.", + "type": "type is the type of metric source. It will match one of the fields below.", + "object": "object refers to a metric describing a single kubernetes object (for example, hits-per-second on an Ingress object).", + "pods": "pods refers to a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.", + "resource": "resource refers to a resource metric (such as those specified in requests and limits) known to Kubernetes describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.", +} + +func (MetricStatus) SwaggerDoc() map[string]string { + return map_MetricStatus +} + +var map_ObjectMetricSource = map[string]string{ + "": "ObjectMetricSource indicates how to scale on a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).", + "target": "target is the described Kubernetes object.", + "metricName": "metricName is the name of the metric in question.", + "targetValue": "targetValue is the target value of the metric (as a quantity).", +} + +func (ObjectMetricSource) SwaggerDoc() map[string]string { + return map_ObjectMetricSource +} + +var map_ObjectMetricStatus = map[string]string{ + "": "ObjectMetricStatus indicates the current value of a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).", + "target": "target is the described Kubernetes object.", + "metricName": "metricName is the name of the metric in question.", + "currentValue": "currentValue is the current value of the metric (as a quantity).", +} + +func (ObjectMetricStatus) SwaggerDoc() map[string]string { + return map_ObjectMetricStatus +} + +var map_PodsMetricSource = map[string]string{ + "": "PodsMetricSource indicates how to scale on a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.", + "metricName": "metricName is the name of the metric in question", + "targetAverageValue": "targetAverageValue is the target value of the average of the metric across all relevant pods (as a quantity)", +} + +func (PodsMetricSource) SwaggerDoc() map[string]string { + return map_PodsMetricSource +} + +var map_PodsMetricStatus = map[string]string{ + "": "PodsMetricStatus indicates the current value of a metric describing each pod in the current scale target (for example, transactions-processed-per-second).", + "metricName": "metricName is the name of the metric in question", + "currentAverageValue": "currentAverageValue is the current value of the average of the metric across all relevant pods (as a quantity)", +} + +func (PodsMetricStatus) SwaggerDoc() map[string]string { + return map_PodsMetricStatus +} + +var map_ResourceMetricSource = map[string]string{ + "": "ResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). The values will be averaged together before being compared to the target. Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source. Only one \"target\" type should be set.", + "name": "name is the name of the resource in question.", + "targetAverageUtilization": "targetAverageUtilization is the target value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods.", + "targetAverageValue": "targetAverageValue is the the target value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type.", +} + +func (ResourceMetricSource) SwaggerDoc() map[string]string { + return map_ResourceMetricSource +} + +var map_ResourceMetricStatus = map[string]string{ + "": "ResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.", + "name": "name is the name of the resource in question.", + "currentAverageUtilization": "currentAverageUtilization is the current value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods. It will only be present if `targetAverageValue` was set in the corresponding metric specification.", + "currentAverageValue": "currentAverageValue is the the current value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type. It will always be set, regardless of the corresponding metric specification.", +} + +func (ResourceMetricStatus) SwaggerDoc() map[string]string { + return map_ResourceMetricStatus +} + +// AUTO-GENERATED FUNCTIONS END HERE diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.conversion.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.conversion.go new file mode 100644 index 00000000000..e39667fefca --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.conversion.go @@ -0,0 +1,379 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by conversion-gen. Do not edit it manually! + +package v2alpha1 + +import ( + resource "k8s.io/apimachinery/pkg/api/resource" + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + api "k8s.io/client-go/pkg/api" + api_v1 "k8s.io/client-go/pkg/api/v1" + autoscaling "k8s.io/client-go/pkg/apis/autoscaling" + unsafe "unsafe" +) + +func init() { + SchemeBuilder.Register(RegisterConversions) +} + +// RegisterConversions adds conversion functions to the given scheme. +// Public to allow building arbitrary schemes. +func RegisterConversions(scheme *runtime.Scheme) error { + return scheme.AddGeneratedConversionFuncs( + Convert_v2alpha1_CrossVersionObjectReference_To_autoscaling_CrossVersionObjectReference, + Convert_autoscaling_CrossVersionObjectReference_To_v2alpha1_CrossVersionObjectReference, + Convert_v2alpha1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler, + Convert_autoscaling_HorizontalPodAutoscaler_To_v2alpha1_HorizontalPodAutoscaler, + Convert_v2alpha1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList, + Convert_autoscaling_HorizontalPodAutoscalerList_To_v2alpha1_HorizontalPodAutoscalerList, + Convert_v2alpha1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec, + Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v2alpha1_HorizontalPodAutoscalerSpec, + Convert_v2alpha1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus, + Convert_autoscaling_HorizontalPodAutoscalerStatus_To_v2alpha1_HorizontalPodAutoscalerStatus, + Convert_v2alpha1_MetricSpec_To_autoscaling_MetricSpec, + Convert_autoscaling_MetricSpec_To_v2alpha1_MetricSpec, + Convert_v2alpha1_MetricStatus_To_autoscaling_MetricStatus, + Convert_autoscaling_MetricStatus_To_v2alpha1_MetricStatus, + Convert_v2alpha1_ObjectMetricSource_To_autoscaling_ObjectMetricSource, + Convert_autoscaling_ObjectMetricSource_To_v2alpha1_ObjectMetricSource, + Convert_v2alpha1_ObjectMetricStatus_To_autoscaling_ObjectMetricStatus, + Convert_autoscaling_ObjectMetricStatus_To_v2alpha1_ObjectMetricStatus, + Convert_v2alpha1_PodsMetricSource_To_autoscaling_PodsMetricSource, + Convert_autoscaling_PodsMetricSource_To_v2alpha1_PodsMetricSource, + Convert_v2alpha1_PodsMetricStatus_To_autoscaling_PodsMetricStatus, + Convert_autoscaling_PodsMetricStatus_To_v2alpha1_PodsMetricStatus, + Convert_v2alpha1_ResourceMetricSource_To_autoscaling_ResourceMetricSource, + Convert_autoscaling_ResourceMetricSource_To_v2alpha1_ResourceMetricSource, + Convert_v2alpha1_ResourceMetricStatus_To_autoscaling_ResourceMetricStatus, + Convert_autoscaling_ResourceMetricStatus_To_v2alpha1_ResourceMetricStatus, + ) +} + +func autoConvert_v2alpha1_CrossVersionObjectReference_To_autoscaling_CrossVersionObjectReference(in *CrossVersionObjectReference, out *autoscaling.CrossVersionObjectReference, s conversion.Scope) error { + out.Kind = in.Kind + out.Name = in.Name + out.APIVersion = in.APIVersion + return nil +} + +func Convert_v2alpha1_CrossVersionObjectReference_To_autoscaling_CrossVersionObjectReference(in *CrossVersionObjectReference, out *autoscaling.CrossVersionObjectReference, s conversion.Scope) error { + return autoConvert_v2alpha1_CrossVersionObjectReference_To_autoscaling_CrossVersionObjectReference(in, out, s) +} + +func autoConvert_autoscaling_CrossVersionObjectReference_To_v2alpha1_CrossVersionObjectReference(in *autoscaling.CrossVersionObjectReference, out *CrossVersionObjectReference, s conversion.Scope) error { + out.Kind = in.Kind + out.Name = in.Name + out.APIVersion = in.APIVersion + return nil +} + +func Convert_autoscaling_CrossVersionObjectReference_To_v2alpha1_CrossVersionObjectReference(in *autoscaling.CrossVersionObjectReference, out *CrossVersionObjectReference, s conversion.Scope) error { + return autoConvert_autoscaling_CrossVersionObjectReference_To_v2alpha1_CrossVersionObjectReference(in, out, s) +} + +func autoConvert_v2alpha1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(in *HorizontalPodAutoscaler, out *autoscaling.HorizontalPodAutoscaler, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_v2alpha1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + if err := Convert_v2alpha1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(&in.Status, &out.Status, s); err != nil { + return err + } + return nil +} + +func Convert_v2alpha1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(in *HorizontalPodAutoscaler, out *autoscaling.HorizontalPodAutoscaler, s conversion.Scope) error { + return autoConvert_v2alpha1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(in, out, s) +} + +func autoConvert_autoscaling_HorizontalPodAutoscaler_To_v2alpha1_HorizontalPodAutoscaler(in *autoscaling.HorizontalPodAutoscaler, out *HorizontalPodAutoscaler, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v2alpha1_HorizontalPodAutoscalerSpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + if err := Convert_autoscaling_HorizontalPodAutoscalerStatus_To_v2alpha1_HorizontalPodAutoscalerStatus(&in.Status, &out.Status, s); err != nil { + return err + } + return nil +} + +func Convert_autoscaling_HorizontalPodAutoscaler_To_v2alpha1_HorizontalPodAutoscaler(in *autoscaling.HorizontalPodAutoscaler, out *HorizontalPodAutoscaler, s conversion.Scope) error { + return autoConvert_autoscaling_HorizontalPodAutoscaler_To_v2alpha1_HorizontalPodAutoscaler(in, out, s) +} + +func autoConvert_v2alpha1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList(in *HorizontalPodAutoscalerList, out *autoscaling.HorizontalPodAutoscalerList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = *(*[]autoscaling.HorizontalPodAutoscaler)(unsafe.Pointer(&in.Items)) + return nil +} + +func Convert_v2alpha1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList(in *HorizontalPodAutoscalerList, out *autoscaling.HorizontalPodAutoscalerList, s conversion.Scope) error { + return autoConvert_v2alpha1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList(in, out, s) +} + +func autoConvert_autoscaling_HorizontalPodAutoscalerList_To_v2alpha1_HorizontalPodAutoscalerList(in *autoscaling.HorizontalPodAutoscalerList, out *HorizontalPodAutoscalerList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = *(*[]HorizontalPodAutoscaler)(unsafe.Pointer(&in.Items)) + return nil +} + +func Convert_autoscaling_HorizontalPodAutoscalerList_To_v2alpha1_HorizontalPodAutoscalerList(in *autoscaling.HorizontalPodAutoscalerList, out *HorizontalPodAutoscalerList, s conversion.Scope) error { + return autoConvert_autoscaling_HorizontalPodAutoscalerList_To_v2alpha1_HorizontalPodAutoscalerList(in, out, s) +} + +func autoConvert_v2alpha1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec(in *HorizontalPodAutoscalerSpec, out *autoscaling.HorizontalPodAutoscalerSpec, s conversion.Scope) error { + if err := Convert_v2alpha1_CrossVersionObjectReference_To_autoscaling_CrossVersionObjectReference(&in.ScaleTargetRef, &out.ScaleTargetRef, s); err != nil { + return err + } + out.MinReplicas = (*int32)(unsafe.Pointer(in.MinReplicas)) + out.MaxReplicas = in.MaxReplicas + out.Metrics = *(*[]autoscaling.MetricSpec)(unsafe.Pointer(&in.Metrics)) + return nil +} + +func Convert_v2alpha1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec(in *HorizontalPodAutoscalerSpec, out *autoscaling.HorizontalPodAutoscalerSpec, s conversion.Scope) error { + return autoConvert_v2alpha1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec(in, out, s) +} + +func autoConvert_autoscaling_HorizontalPodAutoscalerSpec_To_v2alpha1_HorizontalPodAutoscalerSpec(in *autoscaling.HorizontalPodAutoscalerSpec, out *HorizontalPodAutoscalerSpec, s conversion.Scope) error { + if err := Convert_autoscaling_CrossVersionObjectReference_To_v2alpha1_CrossVersionObjectReference(&in.ScaleTargetRef, &out.ScaleTargetRef, s); err != nil { + return err + } + out.MinReplicas = (*int32)(unsafe.Pointer(in.MinReplicas)) + out.MaxReplicas = in.MaxReplicas + out.Metrics = *(*[]MetricSpec)(unsafe.Pointer(&in.Metrics)) + return nil +} + +func Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v2alpha1_HorizontalPodAutoscalerSpec(in *autoscaling.HorizontalPodAutoscalerSpec, out *HorizontalPodAutoscalerSpec, s conversion.Scope) error { + return autoConvert_autoscaling_HorizontalPodAutoscalerSpec_To_v2alpha1_HorizontalPodAutoscalerSpec(in, out, s) +} + +func autoConvert_v2alpha1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(in *HorizontalPodAutoscalerStatus, out *autoscaling.HorizontalPodAutoscalerStatus, s conversion.Scope) error { + out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) + out.LastScaleTime = (*v1.Time)(unsafe.Pointer(in.LastScaleTime)) + out.CurrentReplicas = in.CurrentReplicas + out.DesiredReplicas = in.DesiredReplicas + out.CurrentMetrics = *(*[]autoscaling.MetricStatus)(unsafe.Pointer(&in.CurrentMetrics)) + return nil +} + +func Convert_v2alpha1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(in *HorizontalPodAutoscalerStatus, out *autoscaling.HorizontalPodAutoscalerStatus, s conversion.Scope) error { + return autoConvert_v2alpha1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(in, out, s) +} + +func autoConvert_autoscaling_HorizontalPodAutoscalerStatus_To_v2alpha1_HorizontalPodAutoscalerStatus(in *autoscaling.HorizontalPodAutoscalerStatus, out *HorizontalPodAutoscalerStatus, s conversion.Scope) error { + out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) + out.LastScaleTime = (*v1.Time)(unsafe.Pointer(in.LastScaleTime)) + out.CurrentReplicas = in.CurrentReplicas + out.DesiredReplicas = in.DesiredReplicas + out.CurrentMetrics = *(*[]MetricStatus)(unsafe.Pointer(&in.CurrentMetrics)) + return nil +} + +func Convert_autoscaling_HorizontalPodAutoscalerStatus_To_v2alpha1_HorizontalPodAutoscalerStatus(in *autoscaling.HorizontalPodAutoscalerStatus, out *HorizontalPodAutoscalerStatus, s conversion.Scope) error { + return autoConvert_autoscaling_HorizontalPodAutoscalerStatus_To_v2alpha1_HorizontalPodAutoscalerStatus(in, out, s) +} + +func autoConvert_v2alpha1_MetricSpec_To_autoscaling_MetricSpec(in *MetricSpec, out *autoscaling.MetricSpec, s conversion.Scope) error { + out.Type = autoscaling.MetricSourceType(in.Type) + out.Object = (*autoscaling.ObjectMetricSource)(unsafe.Pointer(in.Object)) + out.Pods = (*autoscaling.PodsMetricSource)(unsafe.Pointer(in.Pods)) + out.Resource = (*autoscaling.ResourceMetricSource)(unsafe.Pointer(in.Resource)) + return nil +} + +func Convert_v2alpha1_MetricSpec_To_autoscaling_MetricSpec(in *MetricSpec, out *autoscaling.MetricSpec, s conversion.Scope) error { + return autoConvert_v2alpha1_MetricSpec_To_autoscaling_MetricSpec(in, out, s) +} + +func autoConvert_autoscaling_MetricSpec_To_v2alpha1_MetricSpec(in *autoscaling.MetricSpec, out *MetricSpec, s conversion.Scope) error { + out.Type = MetricSourceType(in.Type) + out.Object = (*ObjectMetricSource)(unsafe.Pointer(in.Object)) + out.Pods = (*PodsMetricSource)(unsafe.Pointer(in.Pods)) + out.Resource = (*ResourceMetricSource)(unsafe.Pointer(in.Resource)) + return nil +} + +func Convert_autoscaling_MetricSpec_To_v2alpha1_MetricSpec(in *autoscaling.MetricSpec, out *MetricSpec, s conversion.Scope) error { + return autoConvert_autoscaling_MetricSpec_To_v2alpha1_MetricSpec(in, out, s) +} + +func autoConvert_v2alpha1_MetricStatus_To_autoscaling_MetricStatus(in *MetricStatus, out *autoscaling.MetricStatus, s conversion.Scope) error { + out.Type = autoscaling.MetricSourceType(in.Type) + out.Object = (*autoscaling.ObjectMetricStatus)(unsafe.Pointer(in.Object)) + out.Pods = (*autoscaling.PodsMetricStatus)(unsafe.Pointer(in.Pods)) + out.Resource = (*autoscaling.ResourceMetricStatus)(unsafe.Pointer(in.Resource)) + return nil +} + +func Convert_v2alpha1_MetricStatus_To_autoscaling_MetricStatus(in *MetricStatus, out *autoscaling.MetricStatus, s conversion.Scope) error { + return autoConvert_v2alpha1_MetricStatus_To_autoscaling_MetricStatus(in, out, s) +} + +func autoConvert_autoscaling_MetricStatus_To_v2alpha1_MetricStatus(in *autoscaling.MetricStatus, out *MetricStatus, s conversion.Scope) error { + out.Type = MetricSourceType(in.Type) + out.Object = (*ObjectMetricStatus)(unsafe.Pointer(in.Object)) + out.Pods = (*PodsMetricStatus)(unsafe.Pointer(in.Pods)) + out.Resource = (*ResourceMetricStatus)(unsafe.Pointer(in.Resource)) + return nil +} + +func Convert_autoscaling_MetricStatus_To_v2alpha1_MetricStatus(in *autoscaling.MetricStatus, out *MetricStatus, s conversion.Scope) error { + return autoConvert_autoscaling_MetricStatus_To_v2alpha1_MetricStatus(in, out, s) +} + +func autoConvert_v2alpha1_ObjectMetricSource_To_autoscaling_ObjectMetricSource(in *ObjectMetricSource, out *autoscaling.ObjectMetricSource, s conversion.Scope) error { + if err := Convert_v2alpha1_CrossVersionObjectReference_To_autoscaling_CrossVersionObjectReference(&in.Target, &out.Target, s); err != nil { + return err + } + out.MetricName = in.MetricName + out.TargetValue = in.TargetValue + return nil +} + +func Convert_v2alpha1_ObjectMetricSource_To_autoscaling_ObjectMetricSource(in *ObjectMetricSource, out *autoscaling.ObjectMetricSource, s conversion.Scope) error { + return autoConvert_v2alpha1_ObjectMetricSource_To_autoscaling_ObjectMetricSource(in, out, s) +} + +func autoConvert_autoscaling_ObjectMetricSource_To_v2alpha1_ObjectMetricSource(in *autoscaling.ObjectMetricSource, out *ObjectMetricSource, s conversion.Scope) error { + if err := Convert_autoscaling_CrossVersionObjectReference_To_v2alpha1_CrossVersionObjectReference(&in.Target, &out.Target, s); err != nil { + return err + } + out.MetricName = in.MetricName + out.TargetValue = in.TargetValue + return nil +} + +func Convert_autoscaling_ObjectMetricSource_To_v2alpha1_ObjectMetricSource(in *autoscaling.ObjectMetricSource, out *ObjectMetricSource, s conversion.Scope) error { + return autoConvert_autoscaling_ObjectMetricSource_To_v2alpha1_ObjectMetricSource(in, out, s) +} + +func autoConvert_v2alpha1_ObjectMetricStatus_To_autoscaling_ObjectMetricStatus(in *ObjectMetricStatus, out *autoscaling.ObjectMetricStatus, s conversion.Scope) error { + if err := Convert_v2alpha1_CrossVersionObjectReference_To_autoscaling_CrossVersionObjectReference(&in.Target, &out.Target, s); err != nil { + return err + } + out.MetricName = in.MetricName + out.CurrentValue = in.CurrentValue + return nil +} + +func Convert_v2alpha1_ObjectMetricStatus_To_autoscaling_ObjectMetricStatus(in *ObjectMetricStatus, out *autoscaling.ObjectMetricStatus, s conversion.Scope) error { + return autoConvert_v2alpha1_ObjectMetricStatus_To_autoscaling_ObjectMetricStatus(in, out, s) +} + +func autoConvert_autoscaling_ObjectMetricStatus_To_v2alpha1_ObjectMetricStatus(in *autoscaling.ObjectMetricStatus, out *ObjectMetricStatus, s conversion.Scope) error { + if err := Convert_autoscaling_CrossVersionObjectReference_To_v2alpha1_CrossVersionObjectReference(&in.Target, &out.Target, s); err != nil { + return err + } + out.MetricName = in.MetricName + out.CurrentValue = in.CurrentValue + return nil +} + +func Convert_autoscaling_ObjectMetricStatus_To_v2alpha1_ObjectMetricStatus(in *autoscaling.ObjectMetricStatus, out *ObjectMetricStatus, s conversion.Scope) error { + return autoConvert_autoscaling_ObjectMetricStatus_To_v2alpha1_ObjectMetricStatus(in, out, s) +} + +func autoConvert_v2alpha1_PodsMetricSource_To_autoscaling_PodsMetricSource(in *PodsMetricSource, out *autoscaling.PodsMetricSource, s conversion.Scope) error { + out.MetricName = in.MetricName + out.TargetAverageValue = in.TargetAverageValue + return nil +} + +func Convert_v2alpha1_PodsMetricSource_To_autoscaling_PodsMetricSource(in *PodsMetricSource, out *autoscaling.PodsMetricSource, s conversion.Scope) error { + return autoConvert_v2alpha1_PodsMetricSource_To_autoscaling_PodsMetricSource(in, out, s) +} + +func autoConvert_autoscaling_PodsMetricSource_To_v2alpha1_PodsMetricSource(in *autoscaling.PodsMetricSource, out *PodsMetricSource, s conversion.Scope) error { + out.MetricName = in.MetricName + out.TargetAverageValue = in.TargetAverageValue + return nil +} + +func Convert_autoscaling_PodsMetricSource_To_v2alpha1_PodsMetricSource(in *autoscaling.PodsMetricSource, out *PodsMetricSource, s conversion.Scope) error { + return autoConvert_autoscaling_PodsMetricSource_To_v2alpha1_PodsMetricSource(in, out, s) +} + +func autoConvert_v2alpha1_PodsMetricStatus_To_autoscaling_PodsMetricStatus(in *PodsMetricStatus, out *autoscaling.PodsMetricStatus, s conversion.Scope) error { + out.MetricName = in.MetricName + out.CurrentAverageValue = in.CurrentAverageValue + return nil +} + +func Convert_v2alpha1_PodsMetricStatus_To_autoscaling_PodsMetricStatus(in *PodsMetricStatus, out *autoscaling.PodsMetricStatus, s conversion.Scope) error { + return autoConvert_v2alpha1_PodsMetricStatus_To_autoscaling_PodsMetricStatus(in, out, s) +} + +func autoConvert_autoscaling_PodsMetricStatus_To_v2alpha1_PodsMetricStatus(in *autoscaling.PodsMetricStatus, out *PodsMetricStatus, s conversion.Scope) error { + out.MetricName = in.MetricName + out.CurrentAverageValue = in.CurrentAverageValue + return nil +} + +func Convert_autoscaling_PodsMetricStatus_To_v2alpha1_PodsMetricStatus(in *autoscaling.PodsMetricStatus, out *PodsMetricStatus, s conversion.Scope) error { + return autoConvert_autoscaling_PodsMetricStatus_To_v2alpha1_PodsMetricStatus(in, out, s) +} + +func autoConvert_v2alpha1_ResourceMetricSource_To_autoscaling_ResourceMetricSource(in *ResourceMetricSource, out *autoscaling.ResourceMetricSource, s conversion.Scope) error { + out.Name = api.ResourceName(in.Name) + out.TargetAverageUtilization = (*int32)(unsafe.Pointer(in.TargetAverageUtilization)) + out.TargetAverageValue = (*resource.Quantity)(unsafe.Pointer(in.TargetAverageValue)) + return nil +} + +func Convert_v2alpha1_ResourceMetricSource_To_autoscaling_ResourceMetricSource(in *ResourceMetricSource, out *autoscaling.ResourceMetricSource, s conversion.Scope) error { + return autoConvert_v2alpha1_ResourceMetricSource_To_autoscaling_ResourceMetricSource(in, out, s) +} + +func autoConvert_autoscaling_ResourceMetricSource_To_v2alpha1_ResourceMetricSource(in *autoscaling.ResourceMetricSource, out *ResourceMetricSource, s conversion.Scope) error { + out.Name = api_v1.ResourceName(in.Name) + out.TargetAverageUtilization = (*int32)(unsafe.Pointer(in.TargetAverageUtilization)) + out.TargetAverageValue = (*resource.Quantity)(unsafe.Pointer(in.TargetAverageValue)) + return nil +} + +func Convert_autoscaling_ResourceMetricSource_To_v2alpha1_ResourceMetricSource(in *autoscaling.ResourceMetricSource, out *ResourceMetricSource, s conversion.Scope) error { + return autoConvert_autoscaling_ResourceMetricSource_To_v2alpha1_ResourceMetricSource(in, out, s) +} + +func autoConvert_v2alpha1_ResourceMetricStatus_To_autoscaling_ResourceMetricStatus(in *ResourceMetricStatus, out *autoscaling.ResourceMetricStatus, s conversion.Scope) error { + out.Name = api.ResourceName(in.Name) + out.CurrentAverageUtilization = (*int32)(unsafe.Pointer(in.CurrentAverageUtilization)) + out.CurrentAverageValue = in.CurrentAverageValue + return nil +} + +func Convert_v2alpha1_ResourceMetricStatus_To_autoscaling_ResourceMetricStatus(in *ResourceMetricStatus, out *autoscaling.ResourceMetricStatus, s conversion.Scope) error { + return autoConvert_v2alpha1_ResourceMetricStatus_To_autoscaling_ResourceMetricStatus(in, out, s) +} + +func autoConvert_autoscaling_ResourceMetricStatus_To_v2alpha1_ResourceMetricStatus(in *autoscaling.ResourceMetricStatus, out *ResourceMetricStatus, s conversion.Scope) error { + out.Name = api_v1.ResourceName(in.Name) + out.CurrentAverageUtilization = (*int32)(unsafe.Pointer(in.CurrentAverageUtilization)) + out.CurrentAverageValue = in.CurrentAverageValue + return nil +} + +func Convert_autoscaling_ResourceMetricStatus_To_v2alpha1_ResourceMetricStatus(in *autoscaling.ResourceMetricStatus, out *ResourceMetricStatus, s conversion.Scope) error { + return autoConvert_autoscaling_ResourceMetricStatus_To_v2alpha1_ResourceMetricStatus(in, out, s) +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.deepcopy.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.deepcopy.go new file mode 100644 index 00000000000..1953eaea66c --- /dev/null +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.deepcopy.go @@ -0,0 +1,285 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by deepcopy-gen. Do not edit it manually! + +package v2alpha1 + +import ( + resource "k8s.io/apimachinery/pkg/api/resource" + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + reflect "reflect" +) + +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// RegisterDeepCopies adds deep-copy functions to the given scheme. Public +// to allow building arbitrary schemes. +func RegisterDeepCopies(scheme *runtime.Scheme) error { + return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_CrossVersionObjectReference, InType: reflect.TypeOf(&CrossVersionObjectReference{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscaler, InType: reflect.TypeOf(&HorizontalPodAutoscaler{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscalerList, InType: reflect.TypeOf(&HorizontalPodAutoscalerList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscalerSpec, InType: reflect.TypeOf(&HorizontalPodAutoscalerSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscalerStatus, InType: reflect.TypeOf(&HorizontalPodAutoscalerStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_MetricSpec, InType: reflect.TypeOf(&MetricSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_MetricStatus, InType: reflect.TypeOf(&MetricStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_ObjectMetricSource, InType: reflect.TypeOf(&ObjectMetricSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_ObjectMetricStatus, InType: reflect.TypeOf(&ObjectMetricStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_PodsMetricSource, InType: reflect.TypeOf(&PodsMetricSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_PodsMetricStatus, InType: reflect.TypeOf(&PodsMetricStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_ResourceMetricSource, InType: reflect.TypeOf(&ResourceMetricSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_ResourceMetricStatus, InType: reflect.TypeOf(&ResourceMetricStatus{})}, + ) +} + +func DeepCopy_v2alpha1_CrossVersionObjectReference(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*CrossVersionObjectReference) + out := out.(*CrossVersionObjectReference) + *out = *in + return nil + } +} + +func DeepCopy_v2alpha1_HorizontalPodAutoscaler(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*HorizontalPodAutoscaler) + out := out.(*HorizontalPodAutoscaler) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if err := DeepCopy_v2alpha1_HorizontalPodAutoscalerSpec(&in.Spec, &out.Spec, c); err != nil { + return err + } + if err := DeepCopy_v2alpha1_HorizontalPodAutoscalerStatus(&in.Status, &out.Status, c); err != nil { + return err + } + return nil + } +} + +func DeepCopy_v2alpha1_HorizontalPodAutoscalerList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*HorizontalPodAutoscalerList) + out := out.(*HorizontalPodAutoscalerList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]HorizontalPodAutoscaler, len(*in)) + for i := range *in { + if err := DeepCopy_v2alpha1_HorizontalPodAutoscaler(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +func DeepCopy_v2alpha1_HorizontalPodAutoscalerSpec(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*HorizontalPodAutoscalerSpec) + out := out.(*HorizontalPodAutoscalerSpec) + *out = *in + if in.MinReplicas != nil { + in, out := &in.MinReplicas, &out.MinReplicas + *out = new(int32) + **out = **in + } + if in.Metrics != nil { + in, out := &in.Metrics, &out.Metrics + *out = make([]MetricSpec, len(*in)) + for i := range *in { + if err := DeepCopy_v2alpha1_MetricSpec(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +func DeepCopy_v2alpha1_HorizontalPodAutoscalerStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*HorizontalPodAutoscalerStatus) + out := out.(*HorizontalPodAutoscalerStatus) + *out = *in + if in.ObservedGeneration != nil { + in, out := &in.ObservedGeneration, &out.ObservedGeneration + *out = new(int64) + **out = **in + } + if in.LastScaleTime != nil { + in, out := &in.LastScaleTime, &out.LastScaleTime + *out = new(v1.Time) + **out = (*in).DeepCopy() + } + if in.CurrentMetrics != nil { + in, out := &in.CurrentMetrics, &out.CurrentMetrics + *out = make([]MetricStatus, len(*in)) + for i := range *in { + if err := DeepCopy_v2alpha1_MetricStatus(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +func DeepCopy_v2alpha1_MetricSpec(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*MetricSpec) + out := out.(*MetricSpec) + *out = *in + if in.Object != nil { + in, out := &in.Object, &out.Object + *out = new(ObjectMetricSource) + if err := DeepCopy_v2alpha1_ObjectMetricSource(*in, *out, c); err != nil { + return err + } + } + if in.Pods != nil { + in, out := &in.Pods, &out.Pods + *out = new(PodsMetricSource) + if err := DeepCopy_v2alpha1_PodsMetricSource(*in, *out, c); err != nil { + return err + } + } + if in.Resource != nil { + in, out := &in.Resource, &out.Resource + *out = new(ResourceMetricSource) + if err := DeepCopy_v2alpha1_ResourceMetricSource(*in, *out, c); err != nil { + return err + } + } + return nil + } +} + +func DeepCopy_v2alpha1_MetricStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*MetricStatus) + out := out.(*MetricStatus) + *out = *in + if in.Object != nil { + in, out := &in.Object, &out.Object + *out = new(ObjectMetricStatus) + if err := DeepCopy_v2alpha1_ObjectMetricStatus(*in, *out, c); err != nil { + return err + } + } + if in.Pods != nil { + in, out := &in.Pods, &out.Pods + *out = new(PodsMetricStatus) + if err := DeepCopy_v2alpha1_PodsMetricStatus(*in, *out, c); err != nil { + return err + } + } + if in.Resource != nil { + in, out := &in.Resource, &out.Resource + *out = new(ResourceMetricStatus) + if err := DeepCopy_v2alpha1_ResourceMetricStatus(*in, *out, c); err != nil { + return err + } + } + return nil + } +} + +func DeepCopy_v2alpha1_ObjectMetricSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ObjectMetricSource) + out := out.(*ObjectMetricSource) + *out = *in + out.TargetValue = in.TargetValue.DeepCopy() + return nil + } +} + +func DeepCopy_v2alpha1_ObjectMetricStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ObjectMetricStatus) + out := out.(*ObjectMetricStatus) + *out = *in + out.CurrentValue = in.CurrentValue.DeepCopy() + return nil + } +} + +func DeepCopy_v2alpha1_PodsMetricSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*PodsMetricSource) + out := out.(*PodsMetricSource) + *out = *in + out.TargetAverageValue = in.TargetAverageValue.DeepCopy() + return nil + } +} + +func DeepCopy_v2alpha1_PodsMetricStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*PodsMetricStatus) + out := out.(*PodsMetricStatus) + *out = *in + out.CurrentAverageValue = in.CurrentAverageValue.DeepCopy() + return nil + } +} + +func DeepCopy_v2alpha1_ResourceMetricSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ResourceMetricSource) + out := out.(*ResourceMetricSource) + *out = *in + if in.TargetAverageUtilization != nil { + in, out := &in.TargetAverageUtilization, &out.TargetAverageUtilization + *out = new(int32) + **out = **in + } + if in.TargetAverageValue != nil { + in, out := &in.TargetAverageValue, &out.TargetAverageValue + *out = new(resource.Quantity) + **out = (*in).DeepCopy() + } + return nil + } +} + +func DeepCopy_v2alpha1_ResourceMetricStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ResourceMetricStatus) + out := out.(*ResourceMetricStatus) + *out = *in + if in.CurrentAverageUtilization != nil { + in, out := &in.CurrentAverageUtilization, &out.CurrentAverageUtilization + *out = new(int32) + **out = **in + } + out.CurrentAverageValue = in.CurrentAverageValue.DeepCopy() + return nil + } +} diff --git a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/zz_generated.deepcopy.go b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/zz_generated.deepcopy.go index 2a62cfb53a2..8639502a97a 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/autoscaling/zz_generated.deepcopy.go +++ b/staging/src/k8s.io/client-go/pkg/apis/autoscaling/zz_generated.deepcopy.go @@ -21,6 +21,7 @@ limitations under the License. package autoscaling import ( + resource "k8s.io/apimachinery/pkg/api/resource" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" runtime "k8s.io/apimachinery/pkg/runtime" @@ -40,6 +41,14 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscalerList, InType: reflect.TypeOf(&HorizontalPodAutoscalerList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscalerSpec, InType: reflect.TypeOf(&HorizontalPodAutoscalerSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscalerStatus, InType: reflect.TypeOf(&HorizontalPodAutoscalerStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_MetricSpec, InType: reflect.TypeOf(&MetricSpec{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_MetricStatus, InType: reflect.TypeOf(&MetricStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_ObjectMetricSource, InType: reflect.TypeOf(&ObjectMetricSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_ObjectMetricStatus, InType: reflect.TypeOf(&ObjectMetricStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_PodsMetricSource, InType: reflect.TypeOf(&PodsMetricSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_PodsMetricStatus, InType: reflect.TypeOf(&PodsMetricStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_ResourceMetricSource, InType: reflect.TypeOf(&ResourceMetricSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_ResourceMetricStatus, InType: reflect.TypeOf(&ResourceMetricStatus{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_Scale, InType: reflect.TypeOf(&Scale{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_ScaleSpec, InType: reflect.TypeOf(&ScaleSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_ScaleStatus, InType: reflect.TypeOf(&ScaleStatus{})}, @@ -103,10 +112,14 @@ func DeepCopy_autoscaling_HorizontalPodAutoscalerSpec(in interface{}, out interf *out = new(int32) **out = **in } - if in.TargetCPUUtilizationPercentage != nil { - in, out := &in.TargetCPUUtilizationPercentage, &out.TargetCPUUtilizationPercentage - *out = new(int32) - **out = **in + if in.Metrics != nil { + in, out := &in.Metrics, &out.Metrics + *out = make([]MetricSpec, len(*in)) + for i := range *in { + if err := DeepCopy_autoscaling_MetricSpec(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } } return nil } @@ -127,11 +140,149 @@ func DeepCopy_autoscaling_HorizontalPodAutoscalerStatus(in interface{}, out inte *out = new(v1.Time) **out = (*in).DeepCopy() } - if in.CurrentCPUUtilizationPercentage != nil { - in, out := &in.CurrentCPUUtilizationPercentage, &out.CurrentCPUUtilizationPercentage + if in.CurrentMetrics != nil { + in, out := &in.CurrentMetrics, &out.CurrentMetrics + *out = make([]MetricStatus, len(*in)) + for i := range *in { + if err := DeepCopy_autoscaling_MetricStatus(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +func DeepCopy_autoscaling_MetricSpec(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*MetricSpec) + out := out.(*MetricSpec) + *out = *in + if in.Object != nil { + in, out := &in.Object, &out.Object + *out = new(ObjectMetricSource) + if err := DeepCopy_autoscaling_ObjectMetricSource(*in, *out, c); err != nil { + return err + } + } + if in.Pods != nil { + in, out := &in.Pods, &out.Pods + *out = new(PodsMetricSource) + if err := DeepCopy_autoscaling_PodsMetricSource(*in, *out, c); err != nil { + return err + } + } + if in.Resource != nil { + in, out := &in.Resource, &out.Resource + *out = new(ResourceMetricSource) + if err := DeepCopy_autoscaling_ResourceMetricSource(*in, *out, c); err != nil { + return err + } + } + return nil + } +} + +func DeepCopy_autoscaling_MetricStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*MetricStatus) + out := out.(*MetricStatus) + *out = *in + if in.Object != nil { + in, out := &in.Object, &out.Object + *out = new(ObjectMetricStatus) + if err := DeepCopy_autoscaling_ObjectMetricStatus(*in, *out, c); err != nil { + return err + } + } + if in.Pods != nil { + in, out := &in.Pods, &out.Pods + *out = new(PodsMetricStatus) + if err := DeepCopy_autoscaling_PodsMetricStatus(*in, *out, c); err != nil { + return err + } + } + if in.Resource != nil { + in, out := &in.Resource, &out.Resource + *out = new(ResourceMetricStatus) + if err := DeepCopy_autoscaling_ResourceMetricStatus(*in, *out, c); err != nil { + return err + } + } + return nil + } +} + +func DeepCopy_autoscaling_ObjectMetricSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ObjectMetricSource) + out := out.(*ObjectMetricSource) + *out = *in + out.TargetValue = in.TargetValue.DeepCopy() + return nil + } +} + +func DeepCopy_autoscaling_ObjectMetricStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ObjectMetricStatus) + out := out.(*ObjectMetricStatus) + *out = *in + out.CurrentValue = in.CurrentValue.DeepCopy() + return nil + } +} + +func DeepCopy_autoscaling_PodsMetricSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*PodsMetricSource) + out := out.(*PodsMetricSource) + *out = *in + out.TargetAverageValue = in.TargetAverageValue.DeepCopy() + return nil + } +} + +func DeepCopy_autoscaling_PodsMetricStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*PodsMetricStatus) + out := out.(*PodsMetricStatus) + *out = *in + out.CurrentAverageValue = in.CurrentAverageValue.DeepCopy() + return nil + } +} + +func DeepCopy_autoscaling_ResourceMetricSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ResourceMetricSource) + out := out.(*ResourceMetricSource) + *out = *in + if in.TargetAverageUtilization != nil { + in, out := &in.TargetAverageUtilization, &out.TargetAverageUtilization *out = new(int32) **out = **in } + if in.TargetAverageValue != nil { + in, out := &in.TargetAverageValue, &out.TargetAverageValue + *out = new(resource.Quantity) + **out = (*in).DeepCopy() + } + return nil + } +} + +func DeepCopy_autoscaling_ResourceMetricStatus(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ResourceMetricStatus) + out := out.(*ResourceMetricStatus) + *out = *in + if in.CurrentAverageUtilization != nil { + in, out := &in.CurrentAverageUtilization, &out.CurrentAverageUtilization + *out = new(int32) + **out = **in + } + out.CurrentAverageValue = in.CurrentAverageValue.DeepCopy() return nil } } diff --git a/staging/src/k8s.io/client-go/pkg/apis/batch/v1/conversion.go b/staging/src/k8s.io/client-go/pkg/apis/batch/v1/conversion.go index c509d4a4a28..7f2bc9d1574 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/batch/v1/conversion.go +++ b/staging/src/k8s.io/client-go/pkg/apis/batch/v1/conversion.go @@ -21,7 +21,6 @@ import ( "k8s.io/apimachinery/pkg/conversion" "k8s.io/apimachinery/pkg/runtime" - "k8s.io/client-go/pkg/api" v1 "k8s.io/client-go/pkg/api/v1" "k8s.io/client-go/pkg/apis/batch" ) @@ -36,13 +35,13 @@ func addConversionFuncs(scheme *runtime.Scheme) error { return err } - return api.Scheme.AddFieldLabelConversionFunc("batch/v1", "Job", + return scheme.AddFieldLabelConversionFunc("batch/v1", "Job", func(label, value string) (string, string, error) { switch label { case "metadata.name", "metadata.namespace", "status.successful": return label, value, nil default: - return "", "", fmt.Errorf("field label not supported: %s", label) + return "", "", fmt.Errorf("field label %q not supported for Job", label) } }, ) diff --git a/staging/src/k8s.io/client-go/pkg/apis/batch/v1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/batch/v1/generated.pb.go index df4ae06de4a..0ebc07be721 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/batch/v1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/apis/batch/v1/generated.pb.go @@ -1520,60 +1520,61 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 870 bytes of a gzipped FileDescriptorProto + // 885 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x9c, 0x54, 0xdd, 0x6e, 0xe3, 0x44, 0x14, 0xce, 0x4f, 0xd3, 0x26, 0x93, 0xb6, 0xbb, 0x8c, 0x54, 0x29, 0xf4, 0x22, 0x59, 0x05, 0x84, 0x0a, 0xda, 0xb5, 0x49, 0xbb, 0x42, 0x88, 0x0b, 0x24, 0x5c, 0x84, 0x44, 0xd5, 0xb2, 0xd5, 0xa4, - 0x02, 0x89, 0x1f, 0x89, 0xb1, 0x7d, 0x9a, 0x0e, 0xb5, 0x3d, 0x96, 0x67, 0x12, 0xa9, 0x77, 0xbc, - 0x01, 0x3c, 0x0c, 0x42, 0x3c, 0x42, 0x2f, 0x7b, 0xc9, 0x55, 0x44, 0xcd, 0x5b, 0xec, 0x15, 0x9a, - 0xf1, 0xf8, 0x27, 0x9b, 0x14, 0x52, 0xee, 0xec, 0x33, 0xdf, 0xf7, 0x9d, 0x33, 0xe7, 0x7c, 0x67, - 0xd0, 0xd1, 0xf5, 0xc7, 0xc2, 0x62, 0xdc, 0xbe, 0x9e, 0xba, 0x90, 0x44, 0x20, 0x41, 0xd8, 0xf1, - 0xf5, 0xc4, 0xa6, 0x31, 0x13, 0xb6, 0x4b, 0xa5, 0x77, 0x65, 0xcf, 0x46, 0xf6, 0x04, 0x22, 0x48, - 0xa8, 0x04, 0xdf, 0x8a, 0x13, 0x2e, 0x39, 0x7e, 0x27, 0x23, 0x59, 0x25, 0xc9, 0x8a, 0xaf, 0x27, - 0x96, 0x22, 0x59, 0x9a, 0x64, 0xcd, 0x46, 0xfb, 0x2f, 0x26, 0x4c, 0x5e, 0x4d, 0x5d, 0xcb, 0xe3, - 0xa1, 0x3d, 0xe1, 0x13, 0x6e, 0x6b, 0xae, 0x3b, 0xbd, 0xd4, 0x7f, 0xfa, 0x47, 0x7f, 0x65, 0x9a, - 0xfb, 0x2f, 0x4d, 0x21, 0x34, 0x66, 0x21, 0xf5, 0xae, 0x58, 0x04, 0xc9, 0x4d, 0x59, 0x4a, 0x08, - 0x92, 0xae, 0xa8, 0x64, 0xdf, 0x7e, 0x88, 0x95, 0x4c, 0x23, 0xc9, 0x42, 0x58, 0x22, 0x7c, 0xf4, - 0x5f, 0x04, 0xe1, 0x5d, 0x41, 0x48, 0x97, 0x78, 0x47, 0x0f, 0xf1, 0xa6, 0x92, 0x05, 0x36, 0x8b, - 0xa4, 0x90, 0xc9, 0x12, 0xe9, 0xf9, 0x83, 0xcd, 0x5d, 0x71, 0x97, 0xe1, 0x2f, 0x0d, 0xd4, 0x3c, - 0xe1, 0x2e, 0xfe, 0x11, 0xb5, 0xd5, 0x75, 0x7d, 0x2a, 0x69, 0xaf, 0xfe, 0xac, 0x7e, 0xd0, 0x3d, - 0xfc, 0xd0, 0x32, 0x0d, 0xaf, 0x66, 0x2f, 0x5b, 0xae, 0xd0, 0xd6, 0x6c, 0x64, 0xbd, 0x72, 0x7f, - 0x02, 0x4f, 0x9e, 0x81, 0xa4, 0x0e, 0xbe, 0x9d, 0x0f, 0x6a, 0xe9, 0x7c, 0x80, 0xca, 0x18, 0x29, - 0x54, 0xf1, 0x57, 0x68, 0x43, 0xc4, 0xe0, 0xf5, 0x1a, 0x5a, 0xfd, 0xb9, 0xb5, 0xc6, 0x38, 0xad, - 0x13, 0xee, 0x8e, 0x63, 0xf0, 0x9c, 0x6d, 0xa3, 0xbc, 0xa1, 0xfe, 0x88, 0xd6, 0xc1, 0x5f, 0xa3, - 0x4d, 0x21, 0xa9, 0x9c, 0x8a, 0x5e, 0x53, 0x2b, 0x5a, 0x6b, 0x2b, 0x6a, 0x96, 0xb3, 0x6b, 0x34, - 0x37, 0xb3, 0x7f, 0x62, 0xd4, 0x86, 0x77, 0x4d, 0xb4, 0x7d, 0xc2, 0xdd, 0x63, 0x1e, 0xf9, 0x4c, - 0x32, 0x1e, 0xe1, 0x97, 0x68, 0x43, 0xde, 0xc4, 0xa0, 0xdb, 0xd2, 0x71, 0x9e, 0xe5, 0xa5, 0x5c, - 0xdc, 0xc4, 0xf0, 0x7a, 0x3e, 0x78, 0x5a, 0xc5, 0xaa, 0x18, 0xd1, 0xe8, 0x4a, 0x79, 0x0d, 0xcd, - 0xfb, 0x74, 0x31, 0xdd, 0xeb, 0xf9, 0xe0, 0x5f, 0x07, 0x65, 0x15, 0x9a, 0x8b, 0xe5, 0xe1, 0x09, - 0xda, 0x09, 0xa8, 0x90, 0xe7, 0x09, 0x77, 0xe1, 0x82, 0x85, 0x60, 0x6e, 0xff, 0xc1, 0x7a, 0xd3, - 0x52, 0x0c, 0x67, 0xcf, 0x94, 0xb2, 0x73, 0x5a, 0x15, 0x22, 0x8b, 0xba, 0x78, 0x86, 0xb0, 0x0a, - 0x5c, 0x24, 0x34, 0x12, 0xd9, 0xe5, 0x54, 0xb6, 0x8d, 0x47, 0x67, 0xdb, 0x37, 0xd9, 0xf0, 0xe9, - 0x92, 0x1a, 0x59, 0x91, 0x01, 0xbf, 0x87, 0x36, 0x13, 0xa0, 0x82, 0x47, 0xbd, 0x96, 0x6e, 0x5c, - 0x31, 0x27, 0xa2, 0xa3, 0xc4, 0x9c, 0xe2, 0xf7, 0xd1, 0x56, 0x08, 0x42, 0xd0, 0x09, 0xf4, 0x36, - 0x35, 0xf0, 0x89, 0x01, 0x6e, 0x9d, 0x65, 0x61, 0x92, 0x9f, 0x0f, 0x7f, 0xaf, 0xa3, 0xad, 0x13, - 0xee, 0x9e, 0x32, 0x21, 0xf1, 0xf7, 0x4b, 0x46, 0xb7, 0xd6, 0xbb, 0x8c, 0x62, 0x6b, 0x9b, 0x3f, - 0x35, 0x79, 0xda, 0x79, 0xa4, 0x62, 0xf2, 0x33, 0xd4, 0x62, 0x12, 0x42, 0x35, 0xf4, 0xe6, 0x41, - 0xf7, 0xf0, 0x60, 0x5d, 0x4f, 0x3a, 0x3b, 0x46, 0xb4, 0xf5, 0xa5, 0xa2, 0x93, 0x4c, 0x65, 0xf8, - 0x47, 0x53, 0x17, 0xae, 0x5c, 0x8f, 0x47, 0xa8, 0x1b, 0xd3, 0x84, 0x06, 0x01, 0x04, 0x4c, 0x84, - 0xba, 0xf6, 0x96, 0xf3, 0x24, 0x9d, 0x0f, 0xba, 0xe7, 0x65, 0x98, 0x54, 0x31, 0x8a, 0xe2, 0xf1, - 0x30, 0x0e, 0x40, 0x35, 0x37, 0x33, 0xa2, 0xa1, 0x1c, 0x97, 0x61, 0x52, 0xc5, 0xe0, 0x57, 0x68, - 0x8f, 0x7a, 0x92, 0xcd, 0xe0, 0x73, 0xa0, 0x7e, 0xc0, 0x22, 0x18, 0x83, 0xc7, 0x23, 0x3f, 0x5b, - 0xb2, 0xa6, 0xf3, 0x76, 0x3a, 0x1f, 0xec, 0x7d, 0xb6, 0x0a, 0x40, 0x56, 0xf3, 0xf0, 0x0f, 0xa8, - 0x2d, 0x20, 0x00, 0x4f, 0xf2, 0xc4, 0x98, 0xe7, 0x68, 0xcd, 0x7e, 0x53, 0x17, 0x82, 0xb1, 0xa1, - 0x3a, 0xdb, 0xaa, 0xe1, 0xf9, 0x1f, 0x29, 0x24, 0xf1, 0x27, 0x68, 0x37, 0xa4, 0xd1, 0x94, 0x16, - 0x48, 0xed, 0x9a, 0xb6, 0x83, 0xd3, 0xf9, 0x60, 0xf7, 0x6c, 0xe1, 0x84, 0xbc, 0x81, 0xc4, 0xdf, - 0xa1, 0xb6, 0x84, 0x30, 0x0e, 0xa8, 0xcc, 0x2c, 0xd4, 0x3d, 0x7c, 0xf1, 0xf0, 0xbc, 0x54, 0x49, - 0xe7, 0xdc, 0xbf, 0x30, 0x04, 0xfd, 0x2c, 0x15, 0x4e, 0xc8, 0xa3, 0xa4, 0x10, 0x1c, 0xfe, 0xd6, - 0x44, 0x9d, 0xe2, 0xb1, 0xc1, 0x80, 0x90, 0x97, 0x2f, 0xb4, 0xe8, 0xd5, 0xb5, 0x39, 0x46, 0xeb, - 0x9a, 0xa3, 0x78, 0x0a, 0xca, 0x17, 0xb6, 0x08, 0x09, 0x52, 0x11, 0xc6, 0xdf, 0xa0, 0x8e, 0x90, - 0x34, 0x91, 0x7a, 0x55, 0x1b, 0x8f, 0x5e, 0xd5, 0x9d, 0x74, 0x3e, 0xe8, 0x8c, 0x73, 0x01, 0x52, - 0x6a, 0xe1, 0x4b, 0xb4, 0x5b, 0xba, 0xe4, 0x7f, 0x3e, 0x3b, 0x7a, 0x24, 0xc7, 0x0b, 0x2a, 0xe4, - 0x0d, 0x55, 0xb5, 0xfc, 0x99, 0x8d, 0xb4, 0x57, 0x5a, 0xe5, 0xf2, 0x67, 0x9e, 0x23, 0xe6, 0x14, - 0xdb, 0xa8, 0x23, 0xa6, 0x9e, 0x07, 0xe0, 0x83, 0xaf, 0x27, 0xde, 0x72, 0xde, 0x32, 0xd0, 0xce, - 0x38, 0x3f, 0x20, 0x25, 0x46, 0x09, 0x5f, 0x52, 0x16, 0x80, 0xaf, 0x27, 0x5d, 0x11, 0xfe, 0x42, - 0x47, 0x89, 0x39, 0x75, 0xde, 0xbd, 0xbd, 0xef, 0xd7, 0xee, 0xee, 0xfb, 0xb5, 0x3f, 0xef, 0xfb, - 0xb5, 0x9f, 0xd3, 0x7e, 0xfd, 0x36, 0xed, 0xd7, 0xef, 0xd2, 0x7e, 0xfd, 0xaf, 0xb4, 0x5f, 0xff, - 0xf5, 0xef, 0x7e, 0xed, 0xdb, 0xc6, 0x6c, 0xf4, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x3b, 0xa8, - 0x29, 0x00, 0xc1, 0x08, 0x00, 0x00, + 0x02, 0x89, 0x1f, 0x89, 0xb1, 0x7d, 0x9a, 0x0e, 0xb5, 0x3d, 0x96, 0x67, 0x12, 0xd1, 0x3b, 0xde, + 0x00, 0x1e, 0x06, 0x21, 0x1e, 0xa1, 0x97, 0xbd, 0xe4, 0x2a, 0xa2, 0xe6, 0x2d, 0xf6, 0x0a, 0xcd, + 0x78, 0xfc, 0x93, 0x4d, 0x0a, 0xd9, 0xbd, 0xb3, 0xcf, 0x7c, 0xdf, 0x37, 0x67, 0xce, 0xf9, 0xce, + 0x41, 0x47, 0xd7, 0x1f, 0x0b, 0x8b, 0x71, 0xfb, 0x7a, 0xea, 0x42, 0x12, 0x81, 0x04, 0x61, 0xc7, + 0xd7, 0x13, 0x9b, 0xc6, 0x4c, 0xd8, 0x2e, 0x95, 0xde, 0x95, 0x3d, 0x1b, 0xd9, 0x13, 0x88, 0x20, + 0xa1, 0x12, 0x7c, 0x2b, 0x4e, 0xb8, 0xe4, 0xf8, 0x9d, 0x8c, 0x64, 0x95, 0x24, 0x2b, 0xbe, 0x9e, + 0x58, 0x8a, 0x64, 0x69, 0x92, 0x35, 0x1b, 0xed, 0x3f, 0x9b, 0x30, 0x79, 0x35, 0x75, 0x2d, 0x8f, + 0x87, 0xf6, 0x84, 0x4f, 0xb8, 0xad, 0xb9, 0xee, 0xf4, 0x52, 0xff, 0xe9, 0x1f, 0xfd, 0x95, 0x69, + 0xee, 0x3f, 0x37, 0x89, 0xd0, 0x98, 0x85, 0xd4, 0xbb, 0x62, 0x11, 0x24, 0x37, 0x65, 0x2a, 0x21, + 0x48, 0xba, 0x22, 0x93, 0x7d, 0xfb, 0x21, 0x56, 0x32, 0x8d, 0x24, 0x0b, 0x61, 0x89, 0xf0, 0xd1, + 0xff, 0x11, 0x84, 0x77, 0x05, 0x21, 0x5d, 0xe2, 0x1d, 0x3d, 0xc4, 0x9b, 0x4a, 0x16, 0xd8, 0x2c, + 0x92, 0x42, 0x26, 0x4b, 0xa4, 0xca, 0x9b, 0x04, 0x24, 0x33, 0x48, 0xca, 0x07, 0xc1, 0xcf, 0x34, + 0x8c, 0x03, 0x58, 0xf5, 0xa6, 0xa7, 0x0f, 0xb6, 0x64, 0x05, 0x7a, 0xf8, 0x6b, 0x03, 0x35, 0x4f, + 0xb8, 0x8b, 0x7f, 0x44, 0x6d, 0x55, 0x24, 0x9f, 0x4a, 0xda, 0xab, 0x3f, 0xa9, 0x1f, 0x74, 0x0f, + 0x3f, 0xb4, 0x4c, 0x9b, 0xaa, 0x39, 0x97, 0x8d, 0x52, 0x68, 0x6b, 0x36, 0xb2, 0x5e, 0xb8, 0x3f, + 0x81, 0x27, 0xcf, 0x40, 0x52, 0x07, 0xdf, 0xce, 0x07, 0xb5, 0x74, 0x3e, 0x40, 0x65, 0x8c, 0x14, + 0xaa, 0xf8, 0x2b, 0xb4, 0x21, 0x62, 0xf0, 0x7a, 0x0d, 0xad, 0xfe, 0xd4, 0x5a, 0xc3, 0x04, 0xd6, + 0x09, 0x77, 0xc7, 0x31, 0x78, 0xce, 0xb6, 0x51, 0xde, 0x50, 0x7f, 0x44, 0xeb, 0xe0, 0xaf, 0xd1, + 0xa6, 0x90, 0x54, 0x4e, 0x45, 0xaf, 0xa9, 0x15, 0xad, 0xb5, 0x15, 0x35, 0xcb, 0xd9, 0x35, 0x9a, + 0x9b, 0xd9, 0x3f, 0x31, 0x6a, 0xc3, 0xbb, 0x26, 0xda, 0x3e, 0xe1, 0xee, 0x31, 0x8f, 0x7c, 0x26, + 0x19, 0x8f, 0xf0, 0x73, 0xb4, 0x21, 0x6f, 0x62, 0xd0, 0x65, 0xe9, 0x38, 0x4f, 0xf2, 0x54, 0x2e, + 0x6e, 0x62, 0x78, 0x39, 0x1f, 0x3c, 0xae, 0x62, 0x55, 0x8c, 0x68, 0x74, 0x25, 0xbd, 0x86, 0xe6, + 0x7d, 0xba, 0x78, 0xdd, 0xcb, 0xf9, 0xe0, 0x3f, 0x1b, 0x65, 0x15, 0x9a, 0x8b, 0xe9, 0xe1, 0x09, + 0xda, 0x09, 0xa8, 0x90, 0xe7, 0x09, 0x77, 0xe1, 0x82, 0x85, 0x60, 0x5e, 0xff, 0xc1, 0x7a, 0xdd, + 0x52, 0x0c, 0x67, 0xcf, 0xa4, 0xb2, 0x73, 0x5a, 0x15, 0x22, 0x8b, 0xba, 0x78, 0x86, 0xb0, 0x0a, + 0x5c, 0x24, 0x34, 0x12, 0xd9, 0xe3, 0xd4, 0x6d, 0x1b, 0xaf, 0x7d, 0xdb, 0xbe, 0xb9, 0x0d, 0x9f, + 0x2e, 0xa9, 0x91, 0x15, 0x37, 0xe0, 0xf7, 0xd0, 0x66, 0x02, 0x54, 0xf0, 0xa8, 0xd7, 0xd2, 0x85, + 0x2b, 0xfa, 0x44, 0x74, 0x94, 0x98, 0x53, 0xfc, 0x3e, 0xda, 0x0a, 0x41, 0x08, 0x3a, 0x81, 0xde, + 0xa6, 0x06, 0x3e, 0x32, 0xc0, 0xad, 0xb3, 0x2c, 0x4c, 0xf2, 0xf3, 0xe1, 0x1f, 0x75, 0xb4, 0x75, + 0xc2, 0xdd, 0x53, 0x26, 0x24, 0xfe, 0x7e, 0xc9, 0xe8, 0xd6, 0x7a, 0x8f, 0x51, 0x6c, 0x6d, 0xf3, + 0xc7, 0xe6, 0x9e, 0x76, 0x1e, 0xa9, 0x98, 0xfc, 0x0c, 0xb5, 0x98, 0x84, 0x50, 0x35, 0xbd, 0x79, + 0xd0, 0x3d, 0x3c, 0x58, 0xd7, 0x93, 0xce, 0x8e, 0x11, 0x6d, 0x7d, 0xa9, 0xe8, 0x24, 0x53, 0x19, + 0xfe, 0xd9, 0xd4, 0x89, 0x2b, 0xd7, 0xe3, 0x11, 0xea, 0xc6, 0x34, 0xa1, 0x41, 0x00, 0x01, 0x13, + 0xa1, 0xce, 0xbd, 0xe5, 0x3c, 0x4a, 0xe7, 0x83, 0xee, 0x79, 0x19, 0x26, 0x55, 0x8c, 0xa2, 0x78, + 0x5c, 0xed, 0x09, 0x55, 0xdc, 0xcc, 0x88, 0x86, 0x72, 0x5c, 0x86, 0x49, 0x15, 0x83, 0x5f, 0xa0, + 0x3d, 0xea, 0x49, 0x36, 0x83, 0xcf, 0x81, 0xfa, 0x01, 0x8b, 0x60, 0x0c, 0x1e, 0x8f, 0xfc, 0x6c, + 0xc8, 0x9a, 0xce, 0xdb, 0xe9, 0x7c, 0xb0, 0xf7, 0xd9, 0x2a, 0x00, 0x59, 0xcd, 0xc3, 0x3f, 0xa0, + 0xb6, 0x80, 0x00, 0x3c, 0xc9, 0x13, 0x63, 0x9e, 0xa3, 0x35, 0xeb, 0x4d, 0x5d, 0x08, 0xc6, 0x86, + 0xea, 0x6c, 0xab, 0x82, 0xe7, 0x7f, 0xa4, 0x90, 0xc4, 0x9f, 0xa0, 0xdd, 0x90, 0x46, 0x53, 0x5a, + 0x20, 0xb5, 0x6b, 0xda, 0x0e, 0x4e, 0xe7, 0x83, 0xdd, 0xb3, 0x85, 0x13, 0xf2, 0x0a, 0x12, 0x7f, + 0x87, 0xda, 0x12, 0xc2, 0x38, 0xa0, 0x32, 0xb3, 0x50, 0xf7, 0xf0, 0xd9, 0xc3, 0xfd, 0x52, 0x29, + 0x9d, 0x73, 0xff, 0xc2, 0x10, 0xf4, 0x5a, 0x2a, 0x9c, 0x90, 0x47, 0x49, 0x21, 0x38, 0xfc, 0xbd, + 0x89, 0x3a, 0xc5, 0xb2, 0xc1, 0x80, 0x90, 0x97, 0x0f, 0xb4, 0xe8, 0xd5, 0xb5, 0x39, 0x46, 0xeb, + 0x9a, 0xa3, 0x58, 0x05, 0xe5, 0x86, 0x2d, 0x42, 0x82, 0x54, 0x84, 0xf1, 0x37, 0xa8, 0x23, 0x24, + 0x4d, 0xa4, 0x1e, 0xd5, 0xc6, 0x6b, 0x8f, 0xea, 0x4e, 0x3a, 0x1f, 0x74, 0xc6, 0xb9, 0x00, 0x29, + 0xb5, 0xf0, 0x25, 0xda, 0x2d, 0x5d, 0xf2, 0x86, 0x6b, 0x47, 0xb7, 0xe4, 0x78, 0x41, 0x85, 0xbc, + 0xa2, 0xaa, 0x86, 0x3f, 0xb3, 0x91, 0xf6, 0x4a, 0xab, 0x1c, 0xfe, 0xcc, 0x73, 0xc4, 0x9c, 0x62, + 0x1b, 0x75, 0xc4, 0xd4, 0xf3, 0x00, 0x7c, 0xf0, 0x75, 0xc7, 0x5b, 0xce, 0x5b, 0x06, 0xda, 0x19, + 0xe7, 0x07, 0xa4, 0xc4, 0x28, 0xe1, 0x4b, 0xca, 0x02, 0xf0, 0x75, 0xa7, 0x2b, 0xc2, 0x5f, 0xe8, + 0x28, 0x31, 0xa7, 0xce, 0xbb, 0xb7, 0xf7, 0xfd, 0xda, 0xdd, 0x7d, 0xbf, 0xf6, 0xd7, 0x7d, 0xbf, + 0xf6, 0x4b, 0xda, 0xaf, 0xdf, 0xa6, 0xfd, 0xfa, 0x5d, 0xda, 0xaf, 0xff, 0x9d, 0xf6, 0xeb, 0xbf, + 0xfd, 0xd3, 0xaf, 0x7d, 0xdb, 0x98, 0x8d, 0xfe, 0x0d, 0x00, 0x00, 0xff, 0xff, 0xe7, 0xe7, 0x0a, + 0x8d, 0xf7, 0x08, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/apis/batch/v1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/batch/v1/generated.proto index c54224c71e2..283da1c8dc3 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/batch/v1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/apis/batch/v1/generated.proto @@ -25,6 +25,7 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". diff --git a/staging/src/k8s.io/client-go/pkg/apis/batch/v2alpha1/conversion.go b/staging/src/k8s.io/client-go/pkg/apis/batch/v2alpha1/conversion.go index e567a00ca42..7808e04d520 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/batch/v2alpha1/conversion.go +++ b/staging/src/k8s.io/client-go/pkg/apis/batch/v2alpha1/conversion.go @@ -21,7 +21,6 @@ import ( "k8s.io/apimachinery/pkg/conversion" "k8s.io/apimachinery/pkg/runtime" - "k8s.io/client-go/pkg/api" v1 "k8s.io/client-go/pkg/api/v1" "k8s.io/client-go/pkg/apis/batch" ) @@ -37,14 +36,15 @@ func addConversionFuncs(scheme *runtime.Scheme) error { } // Add field label conversions for kinds having selectable nothing but ObjectMeta fields. - for _, kind := range []string{"Job", "JobTemplate", "CronJob"} { - err = api.Scheme.AddFieldLabelConversionFunc("batch/v2alpha1", kind, + for _, k := range []string{"Job", "JobTemplate", "CronJob"} { + kind := k // don't close over range variables + err = scheme.AddFieldLabelConversionFunc("batch/v2alpha1", kind, func(label, value string) (string, string, error) { switch label { case "metadata.name", "metadata.namespace", "status.successful": return label, value, nil default: - return "", "", fmt.Errorf("field label not supported: %s", label) + return "", "", fmt.Errorf("field label %q not supported for %q", label, kind) } }) if err != nil { diff --git a/staging/src/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.pb.go index bed4c7c5ebf..d075fb121ac 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.pb.go @@ -2707,77 +2707,78 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 1148 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xd4, 0x56, 0xcb, 0x6e, 0x23, 0x45, - 0x17, 0x4e, 0xdb, 0x89, 0x2f, 0xe5, 0x5c, 0xeb, 0xff, 0xa3, 0x31, 0x41, 0xb2, 0x23, 0x4b, 0xa0, - 0xcc, 0x68, 0xa6, 0x9b, 0x78, 0xa2, 0x61, 0x98, 0x05, 0xd2, 0x74, 0x10, 0x12, 0x51, 0xa2, 0x89, - 0xca, 0x19, 0x06, 0x41, 0x90, 0xa6, 0xdc, 0x5d, 0xb1, 0x7b, 0xd2, 0x37, 0xba, 0xaa, 0x23, 0x79, - 0xc7, 0x9a, 0x15, 0x7b, 0x1e, 0x80, 0x57, 0x40, 0x88, 0x25, 0x8b, 0xb0, 0xcb, 0x82, 0x05, 0x6c, - 0x2c, 0xd2, 0xbc, 0x45, 0x56, 0xa8, 0xca, 0xd5, 0x17, 0xdf, 0x32, 0x71, 0x90, 0x22, 0xb1, 0xeb, - 0x3a, 0x75, 0xbe, 0xaf, 0x4e, 0x9d, 0xf3, 0xd5, 0x39, 0x0d, 0x3e, 0x3a, 0x7d, 0x4a, 0x55, 0xcb, - 0xd3, 0x4e, 0xc3, 0x36, 0x09, 0x5c, 0xc2, 0x08, 0xd5, 0xfc, 0xd3, 0x8e, 0x86, 0x7d, 0x8b, 0x6a, - 0x6d, 0xcc, 0x8c, 0xae, 0x76, 0xd6, 0xc4, 0xb6, 0xdf, 0xc5, 0xdb, 0x5a, 0x87, 0xb8, 0x24, 0xc0, - 0x8c, 0x98, 0xaa, 0x1f, 0x78, 0xcc, 0x83, 0xf7, 0x07, 0x50, 0x35, 0x85, 0xaa, 0xfe, 0x69, 0x47, - 0xe5, 0x50, 0x55, 0x40, 0xd5, 0x18, 0xba, 0xf1, 0xa8, 0x63, 0xb1, 0x6e, 0xd8, 0x56, 0x0d, 0xcf, - 0xd1, 0x3a, 0x5e, 0xc7, 0xd3, 0x04, 0x43, 0x3b, 0x3c, 0x11, 0x2b, 0xb1, 0x10, 0x5f, 0x03, 0xe6, - 0x8d, 0x1d, 0x19, 0x14, 0xf6, 0x2d, 0x07, 0x1b, 0x5d, 0xcb, 0x25, 0x41, 0x2f, 0x0d, 0xcb, 0x21, - 0x0c, 0x6b, 0x67, 0x63, 0xf1, 0x6c, 0x68, 0xd3, 0x50, 0x41, 0xe8, 0x32, 0xcb, 0x21, 0x63, 0x80, - 0x27, 0x6f, 0x03, 0x50, 0xa3, 0x4b, 0x1c, 0x3c, 0x86, 0x7b, 0x3c, 0x0d, 0x17, 0x32, 0xcb, 0xd6, - 0x2c, 0x97, 0x51, 0x16, 0x8c, 0x81, 0x1e, 0x4e, 0x4d, 0xf4, 0x84, 0xbb, 0x34, 0x7e, 0xcc, 0x81, - 0xe2, 0x6e, 0xe0, 0xb9, 0x7b, 0x5e, 0x1b, 0xbe, 0x06, 0x25, 0x7e, 0x65, 0x13, 0x33, 0x5c, 0x55, - 0x36, 0x95, 0xad, 0x4a, 0xf3, 0x03, 0x55, 0xa6, 0x3e, 0x1b, 0x41, 0x9a, 0x7c, 0xee, 0xad, 0x9e, - 0x6d, 0xab, 0x2f, 0xda, 0x6f, 0x88, 0xc1, 0x0e, 0x08, 0xc3, 0x3a, 0x3c, 0xef, 0xd7, 0xe7, 0xa2, - 0x7e, 0x1d, 0xa4, 0x36, 0x94, 0xb0, 0xc2, 0x2f, 0xc0, 0x3c, 0xf5, 0x89, 0x51, 0xcd, 0x09, 0xf6, - 0x27, 0xea, 0x8d, 0x0b, 0xab, 0xca, 0x18, 0x5b, 0x3e, 0x31, 0xf4, 0x45, 0x79, 0xc6, 0x3c, 0x5f, - 0x21, 0xc1, 0x08, 0x5f, 0x83, 0x02, 0x65, 0x98, 0x85, 0xb4, 0x9a, 0x17, 0xdc, 0x4f, 0x6f, 0xc1, - 0x2d, 0xf0, 0xfa, 0xb2, 0x64, 0x2f, 0x0c, 0xd6, 0x48, 0xf2, 0x36, 0x7e, 0x55, 0x40, 0x45, 0x7a, - 0xee, 0x5b, 0x94, 0xc1, 0xe3, 0xb1, 0x6c, 0xa9, 0x37, 0xcb, 0x16, 0x47, 0x8b, 0x5c, 0xad, 0xca, - 0x93, 0x4a, 0xb1, 0x25, 0x93, 0xa9, 0x57, 0x60, 0xc1, 0x62, 0xc4, 0xa1, 0xd5, 0xdc, 0x66, 0x7e, - 0xab, 0xd2, 0x6c, 0xce, 0x7e, 0x1d, 0x7d, 0x49, 0xd2, 0x2f, 0x7c, 0xc6, 0x89, 0xd0, 0x80, 0xaf, - 0xf1, 0x5d, 0x3e, 0xb9, 0x06, 0x4f, 0x1f, 0x7c, 0x08, 0x4a, 0x5c, 0x7d, 0x66, 0x68, 0x13, 0x71, - 0x8d, 0x72, 0x1a, 0x56, 0x4b, 0xda, 0x51, 0xe2, 0x01, 0x5f, 0x82, 0x7b, 0x94, 0xe1, 0x80, 0x59, - 0x6e, 0xe7, 0x13, 0x82, 0x4d, 0xdb, 0x72, 0x49, 0x8b, 0x18, 0x9e, 0x6b, 0x52, 0x51, 0xd3, 0xbc, - 0xfe, 0x6e, 0xd4, 0xaf, 0xdf, 0x6b, 0x4d, 0x76, 0x41, 0xd3, 0xb0, 0xf0, 0x18, 0xac, 0x19, 0x9e, - 0x6b, 0x84, 0x41, 0x40, 0x5c, 0xa3, 0x77, 0xe8, 0xd9, 0x96, 0xd1, 0x13, 0x85, 0x2c, 0xeb, 0xaa, - 0x8c, 0x66, 0x6d, 0x77, 0xd4, 0xe1, 0x6a, 0x92, 0x11, 0x8d, 0x13, 0xc1, 0xf7, 0x40, 0x91, 0x86, - 0xd4, 0x27, 0xae, 0x59, 0x9d, 0xdf, 0x54, 0xb6, 0x4a, 0x7a, 0x25, 0xea, 0xd7, 0x8b, 0xad, 0x81, - 0x09, 0xc5, 0x7b, 0xf0, 0x1b, 0x50, 0x79, 0xe3, 0xb5, 0x8f, 0x88, 0xe3, 0xdb, 0x98, 0x91, 0xea, - 0x82, 0xa8, 0xe9, 0xb3, 0x19, 0x12, 0xbf, 0x97, 0xa2, 0x85, 0x4e, 0xff, 0x27, 0x43, 0xaf, 0x64, - 0x36, 0x50, 0xf6, 0x8c, 0xc6, 0xef, 0x0a, 0x58, 0x1a, 0x52, 0x1f, 0x7c, 0x09, 0x0a, 0xd8, 0x60, - 0xd6, 0x19, 0x2f, 0x06, 0x2f, 0xfc, 0xa3, 0xe9, 0xe7, 0xa7, 0x2f, 0x0f, 0x91, 0x13, 0xc2, 0x2f, - 0x4c, 0x52, 0xf1, 0x3e, 0x17, 0x24, 0x48, 0x92, 0x41, 0x1b, 0xac, 0xda, 0x98, 0xb2, 0xb8, 0xa2, - 0x47, 0x96, 0x43, 0x44, 0x2e, 0x2a, 0xcd, 0x07, 0x37, 0x13, 0x2d, 0x47, 0xe8, 0xff, 0x8f, 0xfa, - 0xf5, 0xd5, 0xfd, 0x11, 0x1e, 0x34, 0xc6, 0xdc, 0xf8, 0x21, 0x07, 0xf2, 0x77, 0xd3, 0x50, 0x8e, - 0x86, 0x1a, 0x4a, 0x73, 0xb6, 0x62, 0x4d, 0x6d, 0x26, 0xc7, 0x23, 0xcd, 0x64, 0x67, 0x46, 0xde, - 0xeb, 0x1b, 0xc9, 0x45, 0x1e, 0x2c, 0xee, 0x79, 0xed, 0x5d, 0xcf, 0x35, 0x2d, 0x66, 0x79, 0x2e, - 0xdc, 0x01, 0xf3, 0xac, 0xe7, 0xc7, 0xcf, 0x6f, 0x33, 0x0e, 0xe8, 0xa8, 0xe7, 0x93, 0xab, 0x7e, - 0x7d, 0x35, 0xeb, 0xcb, 0x6d, 0x48, 0x78, 0xc3, 0xcf, 0x93, 0x20, 0x73, 0x02, 0xf7, 0xf1, 0xf0, - 0x71, 0x57, 0xfd, 0xfa, 0xb5, 0x93, 0x40, 0x4d, 0x38, 0x87, 0xc3, 0x83, 0x1d, 0xb0, 0xc4, 0x0b, - 0x7a, 0x18, 0x78, 0xed, 0x81, 0x4e, 0xf2, 0x33, 0xeb, 0x64, 0x5d, 0x86, 0xb2, 0xb4, 0x9f, 0x25, - 0x42, 0xc3, 0xbc, 0xf0, 0x0c, 0x40, 0x6e, 0x38, 0x0a, 0xb0, 0x4b, 0x07, 0x97, 0xbb, 0x9d, 0x2a, - 0x37, 0xe4, 0x69, 0x70, 0x7f, 0x8c, 0x0d, 0x4d, 0x38, 0x01, 0xbe, 0x0f, 0x0a, 0x01, 0xc1, 0xd4, - 0x73, 0xc5, 0x13, 0x2f, 0xa7, 0x75, 0x42, 0xc2, 0x8a, 0xe4, 0x2e, 0xbc, 0x0f, 0x8a, 0x0e, 0xa1, - 0x14, 0x77, 0x48, 0xb5, 0x20, 0x1c, 0x57, 0xa4, 0x63, 0xf1, 0x60, 0x60, 0x46, 0xf1, 0x7e, 0xe3, - 0x17, 0x05, 0x14, 0xef, 0x66, 0x2e, 0xb4, 0x86, 0xe7, 0x82, 0x3a, 0x9b, 0x32, 0xa7, 0xcc, 0x84, - 0x9f, 0xf2, 0x22, 0x7c, 0x31, 0x0f, 0xb6, 0x41, 0xc5, 0xc7, 0x01, 0xb6, 0x6d, 0x62, 0x5b, 0xd4, - 0x11, 0x37, 0x58, 0xd0, 0x57, 0x78, 0x17, 0x3b, 0x4c, 0xcd, 0x28, 0xeb, 0xc3, 0x21, 0x86, 0xe7, - 0xf8, 0x36, 0xe1, 0x29, 0x1e, 0xc8, 0x51, 0x42, 0x76, 0x53, 0x33, 0xca, 0xfa, 0xc0, 0x17, 0x60, - 0x7d, 0xd0, 0x99, 0x46, 0xa7, 0x48, 0x5e, 0x4c, 0x91, 0x77, 0xa2, 0x7e, 0x7d, 0xfd, 0xf9, 0x24, - 0x07, 0x34, 0x19, 0x07, 0xbf, 0x06, 0x25, 0x4a, 0x6c, 0x62, 0x30, 0x2f, 0x90, 0x12, 0x7a, 0x7c, - 0xc3, 0xac, 0xe3, 0x36, 0xb1, 0x5b, 0x12, 0xaa, 0x2f, 0x8a, 0xb9, 0x27, 0x57, 0x28, 0xa1, 0x84, - 0xcf, 0xc0, 0xb2, 0x83, 0xdd, 0x10, 0x27, 0x9e, 0x42, 0x3b, 0x25, 0x1d, 0x46, 0xfd, 0xfa, 0xf2, - 0xc1, 0xd0, 0x0e, 0x1a, 0xf1, 0x84, 0x5f, 0x81, 0x12, 0x8b, 0x87, 0x4a, 0x41, 0x84, 0xf6, 0x96, - 0xa6, 0x7e, 0xe8, 0x99, 0x43, 0x73, 0x24, 0xd1, 0x43, 0x32, 0x44, 0x12, 0xc2, 0xc6, 0xcf, 0x79, - 0x50, 0x4e, 0xa7, 0xc7, 0x29, 0x00, 0x46, 0xfc, 0xac, 0xa9, 0x9c, 0x20, 0x1f, 0xce, 0x26, 0x91, - 0xa4, 0x2d, 0xa4, 0x9d, 0x37, 0x31, 0x51, 0x94, 0xa1, 0x87, 0xaf, 0x40, 0x59, 0xcc, 0x73, 0xf1, - 0x6c, 0x73, 0x33, 0x3f, 0xdb, 0xa5, 0xa8, 0x5f, 0x2f, 0xb7, 0x62, 0x02, 0x94, 0x72, 0xc1, 0x13, - 0xb0, 0x9c, 0x6a, 0xe5, 0x96, 0x2d, 0x48, 0x14, 0x66, 0x77, 0x88, 0x05, 0x8d, 0xb0, 0xf2, 0x46, - 0x20, 0x67, 0xed, 0xbc, 0x90, 0xec, 0xb4, 0xe1, 0xa9, 0x81, 0x32, 0x0d, 0x0d, 0x83, 0x10, 0x93, - 0x98, 0xa2, 0xee, 0x0b, 0xfa, 0x9a, 0x74, 0x2d, 0xb7, 0xe2, 0x0d, 0x94, 0xfa, 0x70, 0xe2, 0x13, - 0x6c, 0xd9, 0xc4, 0x14, 0xf5, 0xce, 0x10, 0x7f, 0x2a, 0xac, 0x48, 0xee, 0x36, 0xfe, 0x54, 0x40, - 0xf6, 0xdf, 0xe0, 0x0e, 0xe6, 0x65, 0x37, 0xa3, 0xc5, 0xdc, 0xbf, 0xfe, 0xc1, 0xb9, 0x4e, 0x98, - 0xbf, 0x29, 0x60, 0x65, 0xc4, 0xff, 0xbf, 0xfa, 0x3f, 0xa0, 0x3f, 0x38, 0xbf, 0xac, 0xcd, 0x5d, - 0x5c, 0xd6, 0xe6, 0xfe, 0xb8, 0xac, 0xcd, 0x7d, 0x1b, 0xd5, 0x94, 0xf3, 0xa8, 0xa6, 0x5c, 0x44, - 0x35, 0xe5, 0xaf, 0xa8, 0xa6, 0x7c, 0xff, 0x77, 0x6d, 0xee, 0xcb, 0x52, 0xcc, 0xf3, 0x4f, 0x00, - 0x00, 0x00, 0xff, 0xff, 0x92, 0x82, 0xe8, 0xe4, 0xe8, 0x0e, 0x00, 0x00, + // 1162 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xd4, 0x56, 0x4b, 0x6f, 0x23, 0x45, + 0x10, 0xce, 0xd8, 0x89, 0x1f, 0xed, 0xcd, 0xab, 0x21, 0x5a, 0x13, 0x24, 0x3b, 0xb2, 0x04, 0xca, + 0xae, 0x76, 0x67, 0x88, 0x37, 0x5a, 0x96, 0x3d, 0x20, 0xed, 0x04, 0x21, 0x11, 0x25, 0xda, 0xa8, + 0x9d, 0x65, 0x11, 0x04, 0x69, 0xdb, 0xe3, 0x8a, 0x3d, 0x9b, 0x79, 0x31, 0xdd, 0xb6, 0xc8, 0x8d, + 0x33, 0x27, 0xee, 0xfc, 0x00, 0xfe, 0x02, 0x42, 0x1c, 0x39, 0x84, 0x5b, 0x0e, 0x1c, 0xe0, 0x62, + 0x91, 0xe1, 0x5f, 0xe4, 0x84, 0xa6, 0xdd, 0xf3, 0xf0, 0x2b, 0x1b, 0x07, 0x29, 0x12, 0xb7, 0xe9, + 0xea, 0xfa, 0xbe, 0xae, 0xae, 0xfa, 0xba, 0x6a, 0xd0, 0x47, 0x27, 0x4f, 0x98, 0x6a, 0xba, 0xda, + 0x49, 0xb7, 0x09, 0xbe, 0x03, 0x1c, 0x98, 0xe6, 0x9d, 0xb4, 0x35, 0xea, 0x99, 0x4c, 0x6b, 0x52, + 0x6e, 0x74, 0xb4, 0x5e, 0x9d, 0x5a, 0x5e, 0x87, 0x6e, 0x69, 0x6d, 0x70, 0xc0, 0xa7, 0x1c, 0x5a, + 0xaa, 0xe7, 0xbb, 0xdc, 0xc5, 0xf7, 0x06, 0x50, 0x35, 0x81, 0xaa, 0xde, 0x49, 0x5b, 0x0d, 0xa1, + 0xaa, 0x80, 0xaa, 0x11, 0x74, 0xfd, 0x61, 0xdb, 0xe4, 0x9d, 0x6e, 0x53, 0x35, 0x5c, 0x5b, 0x6b, + 0xbb, 0x6d, 0x57, 0x13, 0x0c, 0xcd, 0xee, 0xb1, 0x58, 0x89, 0x85, 0xf8, 0x1a, 0x30, 0xaf, 0x6f, + 0xcb, 0xa0, 0xa8, 0x67, 0xda, 0xd4, 0xe8, 0x98, 0x0e, 0xf8, 0xa7, 0x49, 0x58, 0x36, 0x70, 0xaa, + 0xf5, 0xc6, 0xe2, 0x59, 0xd7, 0xa6, 0xa1, 0xfc, 0xae, 0xc3, 0x4d, 0x1b, 0xc6, 0x00, 0x8f, 0xdf, + 0x04, 0x60, 0x46, 0x07, 0x6c, 0x3a, 0x86, 0x7b, 0x34, 0x0d, 0xd7, 0xe5, 0xa6, 0xa5, 0x99, 0x0e, + 0x67, 0xdc, 0x1f, 0x03, 0xa5, 0xee, 0xc4, 0xc0, 0xef, 0x81, 0x9f, 0x5c, 0x08, 0xbe, 0xa5, 0xb6, + 0x67, 0xc1, 0xa4, 0x3b, 0x3d, 0x98, 0x5a, 0x9e, 0x09, 0xde, 0xb5, 0x9f, 0x32, 0x28, 0xbf, 0xe3, + 0xbb, 0xce, 0xae, 0xdb, 0xc4, 0xaf, 0x50, 0x21, 0x4c, 0x54, 0x8b, 0x72, 0x5a, 0x56, 0x36, 0x94, + 0xcd, 0x52, 0xfd, 0x03, 0x55, 0x16, 0x2c, 0x1d, 0x77, 0x52, 0xb2, 0xd0, 0x5b, 0xed, 0x6d, 0xa9, + 0xcf, 0x9b, 0xaf, 0xc1, 0xe0, 0xfb, 0xc0, 0xa9, 0x8e, 0xcf, 0xfa, 0xd5, 0xb9, 0xa0, 0x5f, 0x45, + 0x89, 0x8d, 0xc4, 0xac, 0xf8, 0x0b, 0x34, 0xcf, 0x3c, 0x30, 0xca, 0x19, 0xc1, 0xfe, 0x58, 0xbd, + 0xb6, 0x1c, 0x54, 0x19, 0x63, 0xc3, 0x03, 0x43, 0xbf, 0x23, 0xcf, 0x98, 0x0f, 0x57, 0x44, 0x30, + 0xe2, 0x57, 0x28, 0xc7, 0x38, 0xe5, 0x5d, 0x56, 0xce, 0x0a, 0xee, 0x27, 0x37, 0xe0, 0x16, 0x78, + 0x7d, 0x49, 0xb2, 0xe7, 0x06, 0x6b, 0x22, 0x79, 0x6b, 0xbf, 0x29, 0xa8, 0x24, 0x3d, 0xf7, 0x4c, + 0xc6, 0xf1, 0xd1, 0x58, 0xb6, 0xd4, 0xeb, 0x65, 0x2b, 0x44, 0x8b, 0x5c, 0xad, 0xc8, 0x93, 0x0a, + 0x91, 0x25, 0x95, 0xa9, 0x97, 0x68, 0xc1, 0xe4, 0x60, 0xb3, 0x72, 0x66, 0x23, 0xbb, 0x59, 0xaa, + 0xd7, 0x67, 0xbf, 0x8e, 0xbe, 0x28, 0xe9, 0x17, 0x3e, 0x0b, 0x89, 0xc8, 0x80, 0xaf, 0xf6, 0x7d, + 0x36, 0xbe, 0x46, 0x98, 0x3e, 0xfc, 0x00, 0x15, 0x42, 0xcd, 0xb6, 0xba, 0x16, 0x88, 0x6b, 0x14, + 0x93, 0xb0, 0x1a, 0xd2, 0x4e, 0x62, 0x0f, 0xfc, 0x02, 0xdd, 0x65, 0x9c, 0xfa, 0xdc, 0x74, 0xda, + 0x9f, 0x00, 0x6d, 0x59, 0xa6, 0x03, 0x0d, 0x30, 0x5c, 0xa7, 0xc5, 0x44, 0x4d, 0xb3, 0xfa, 0xbb, + 0x41, 0xbf, 0x7a, 0xb7, 0x31, 0xd9, 0x85, 0x4c, 0xc3, 0xe2, 0x23, 0xb4, 0x6a, 0xb8, 0x8e, 0xd1, + 0xf5, 0x7d, 0x70, 0x8c, 0xd3, 0x03, 0xd7, 0x32, 0x8d, 0x53, 0x51, 0xc8, 0xa2, 0xae, 0xca, 0x68, + 0x56, 0x77, 0x46, 0x1d, 0x2e, 0x27, 0x19, 0xc9, 0x38, 0x11, 0x7e, 0x0f, 0xe5, 0x59, 0x97, 0x79, + 0xe0, 0xb4, 0xca, 0xf3, 0x1b, 0xca, 0x66, 0x41, 0x2f, 0x05, 0xfd, 0x6a, 0xbe, 0x31, 0x30, 0x91, + 0x68, 0x0f, 0x7f, 0x83, 0x4a, 0xaf, 0xdd, 0xe6, 0x21, 0xd8, 0x9e, 0x45, 0x39, 0x94, 0x17, 0x44, + 0x4d, 0x9f, 0xce, 0x90, 0xf8, 0xdd, 0x04, 0x2d, 0x74, 0xfa, 0x96, 0x0c, 0xbd, 0x94, 0xda, 0x20, + 0xe9, 0x33, 0x6a, 0x7f, 0x28, 0x68, 0x71, 0x48, 0x7d, 0xf8, 0x05, 0xca, 0x51, 0x83, 0x9b, 0xbd, + 0xb0, 0x18, 0x61, 0xe1, 0x1f, 0x4e, 0x3f, 0x3f, 0x79, 0x79, 0x04, 0x8e, 0x21, 0xbc, 0x30, 0x24, + 0xe2, 0x7d, 0x26, 0x48, 0x88, 0x24, 0xc3, 0x16, 0x5a, 0xb1, 0x28, 0xe3, 0x51, 0x45, 0x0f, 0x4d, + 0x1b, 0x44, 0x2e, 0x4a, 0xf5, 0xfb, 0xd7, 0x13, 0x6d, 0x88, 0xd0, 0xdf, 0x0e, 0xfa, 0xd5, 0x95, + 0xbd, 0x11, 0x1e, 0x32, 0xc6, 0x5c, 0xfb, 0x31, 0x83, 0xb2, 0xb7, 0xd3, 0x50, 0x0e, 0x87, 0x1a, + 0x4a, 0x7d, 0xb6, 0x62, 0x4d, 0x6d, 0x26, 0x47, 0x23, 0xcd, 0x64, 0x7b, 0x46, 0xde, 0xab, 0x1b, + 0xc9, 0x79, 0x16, 0xdd, 0xd9, 0x75, 0x9b, 0x3b, 0xae, 0xd3, 0x32, 0xb9, 0xe9, 0x3a, 0x78, 0x1b, + 0xcd, 0xf3, 0x53, 0x2f, 0x7a, 0x7e, 0x1b, 0x51, 0x40, 0x87, 0xa7, 0x1e, 0x5c, 0xf6, 0xab, 0x2b, + 0x69, 0xdf, 0xd0, 0x46, 0x84, 0x37, 0xfe, 0x3c, 0x0e, 0x32, 0x23, 0x70, 0x1f, 0x0f, 0x1f, 0x77, + 0xd9, 0xaf, 0x5e, 0x39, 0x09, 0xd4, 0x98, 0x73, 0x38, 0x3c, 0xdc, 0x46, 0x8b, 0x61, 0x41, 0x0f, + 0x7c, 0xb7, 0x39, 0xd0, 0x49, 0x76, 0x66, 0x9d, 0xac, 0xc9, 0x50, 0x16, 0xf7, 0xd2, 0x44, 0x64, + 0x98, 0x17, 0xf7, 0x10, 0x0e, 0x0d, 0x87, 0x3e, 0x75, 0xd8, 0xe0, 0x72, 0x37, 0x53, 0xe5, 0xba, + 0x3c, 0x0d, 0xef, 0x8d, 0xb1, 0x91, 0x09, 0x27, 0xe0, 0xf7, 0x51, 0xce, 0x07, 0xca, 0x5c, 0x47, + 0x3c, 0xf1, 0x62, 0x52, 0x27, 0x22, 0xac, 0x44, 0xee, 0xe2, 0x7b, 0x28, 0x6f, 0x03, 0x63, 0xb4, + 0x0d, 0xe5, 0x9c, 0x70, 0x5c, 0x96, 0x8e, 0xf9, 0xfd, 0x81, 0x99, 0x44, 0xfb, 0xb5, 0x5f, 0x15, + 0x94, 0xbf, 0x9d, 0xb9, 0xd0, 0x18, 0x9e, 0x0b, 0xea, 0x6c, 0xca, 0x9c, 0x32, 0x13, 0x7e, 0xce, + 0x8a, 0xf0, 0xc5, 0x3c, 0xd8, 0x42, 0x25, 0x8f, 0xfa, 0xd4, 0xb2, 0xc0, 0x32, 0x99, 0x2d, 0x6e, + 0xb0, 0xa0, 0x2f, 0x87, 0x5d, 0xec, 0x20, 0x31, 0x93, 0xb4, 0x4f, 0x08, 0x31, 0xdc, 0xf0, 0x77, + 0x24, 0x4c, 0xf1, 0x40, 0x8e, 0x12, 0xb2, 0x93, 0x98, 0x49, 0xda, 0x07, 0x3f, 0x47, 0x6b, 0x83, + 0xce, 0x34, 0x3a, 0x45, 0xb2, 0x62, 0x8a, 0xbc, 0x13, 0xf4, 0xab, 0x6b, 0xcf, 0x26, 0x39, 0x90, + 0xc9, 0x38, 0xfc, 0x35, 0x2a, 0x30, 0xb0, 0xc0, 0xe0, 0xae, 0x2f, 0x25, 0xf4, 0xe8, 0x9a, 0x59, + 0xa7, 0x4d, 0xb0, 0x1a, 0x12, 0xaa, 0xdf, 0x11, 0x73, 0x4f, 0xae, 0x48, 0x4c, 0x89, 0x9f, 0xa2, + 0x25, 0x9b, 0x3a, 0x5d, 0x1a, 0x7b, 0x0a, 0xed, 0x14, 0x74, 0x1c, 0xf4, 0xab, 0x4b, 0xfb, 0x43, + 0x3b, 0x64, 0xc4, 0x13, 0x7f, 0x85, 0x0a, 0x3c, 0x1a, 0x2a, 0x39, 0x11, 0xda, 0x1b, 0x9a, 0xfa, + 0x81, 0xdb, 0x1a, 0x9a, 0x23, 0xb1, 0x1e, 0xe2, 0x21, 0x12, 0x13, 0xd6, 0x7e, 0xc9, 0xa2, 0x62, + 0x32, 0x3d, 0x4e, 0x10, 0x32, 0xa2, 0x67, 0xcd, 0xe4, 0x04, 0xf9, 0x70, 0x36, 0x89, 0xc4, 0x6d, + 0x21, 0xe9, 0xbc, 0xb1, 0x89, 0x91, 0x14, 0x3d, 0x7e, 0x89, 0x8a, 0x62, 0x9e, 0x8b, 0x67, 0x9b, + 0x99, 0xf9, 0xd9, 0x2e, 0x06, 0xfd, 0x6a, 0xb1, 0x11, 0x11, 0x90, 0x84, 0x0b, 0x1f, 0xa3, 0xa5, + 0x44, 0x2b, 0x37, 0x6c, 0x41, 0xa2, 0x30, 0x3b, 0x43, 0x2c, 0x64, 0x84, 0x35, 0x6c, 0x04, 0x72, + 0xd6, 0xce, 0x0b, 0xc9, 0x4e, 0x1b, 0x9e, 0x1a, 0x2a, 0xb2, 0xae, 0x61, 0x00, 0xb4, 0xa0, 0x25, + 0xea, 0xbe, 0xa0, 0xaf, 0x4a, 0xd7, 0x62, 0x23, 0xda, 0x20, 0x89, 0x4f, 0x48, 0x7c, 0x4c, 0x4d, + 0x0b, 0x5a, 0xa2, 0xde, 0x29, 0xe2, 0x4f, 0x85, 0x95, 0xc8, 0xdd, 0xda, 0x5f, 0x0a, 0x4a, 0xff, + 0x1b, 0xdc, 0xc2, 0xbc, 0xec, 0xa4, 0xb4, 0x98, 0xf9, 0xcf, 0x3f, 0x38, 0x57, 0x09, 0xf3, 0x77, + 0x05, 0x2d, 0x8f, 0xf8, 0xff, 0x5f, 0xff, 0x07, 0xf4, 0xfb, 0x67, 0x17, 0x95, 0xb9, 0xf3, 0x8b, + 0xca, 0xdc, 0x9f, 0x17, 0x95, 0xb9, 0xef, 0x82, 0x8a, 0x72, 0x16, 0x54, 0x94, 0xf3, 0xa0, 0xa2, + 0xfc, 0x1d, 0x54, 0x94, 0x1f, 0xfe, 0xa9, 0xcc, 0x7d, 0x59, 0x88, 0x78, 0xfe, 0x0d, 0x00, 0x00, + 0xff, 0xff, 0xef, 0x59, 0xca, 0xdd, 0x1e, 0x0f, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.proto index b657608094c..6a842429ad7 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.proto @@ -25,6 +25,7 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". diff --git a/staging/src/k8s.io/client-go/pkg/apis/certificates/v1beta1/conversion.go b/staging/src/k8s.io/client-go/pkg/apis/certificates/v1beta1/conversion.go index a51b37ae69d..b9cf0b0163a 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/certificates/v1beta1/conversion.go +++ b/staging/src/k8s.io/client-go/pkg/apis/certificates/v1beta1/conversion.go @@ -20,13 +20,12 @@ import ( "fmt" "k8s.io/apimachinery/pkg/runtime" - "k8s.io/client-go/pkg/api" ) func addConversionFuncs(scheme *runtime.Scheme) error { // Add non-generated conversion functions here. Currently there are none. - return api.Scheme.AddFieldLabelConversionFunc(SchemeGroupVersion.String(), "CertificateSigningRequest", + return scheme.AddFieldLabelConversionFunc(SchemeGroupVersion.String(), "CertificateSigningRequest", func(label, value string) (string, string, error) { switch label { case "metadata.name": diff --git a/staging/src/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.pb.go index 9123d5205bb..4bc31ca1788 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.pb.go @@ -1328,50 +1328,51 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 718 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xac, 0x54, 0x4d, 0x4f, 0x13, 0x4f, - 0x18, 0xef, 0xb6, 0xa5, 0x2f, 0x53, 0xfe, 0xf0, 0xcf, 0xc4, 0x90, 0x4a, 0xc2, 0x96, 0x34, 0x6a, - 0xc0, 0xe0, 0xae, 0x45, 0x63, 0xb8, 0x99, 0x2c, 0x26, 0x06, 0x05, 0x35, 0x03, 0xbd, 0x18, 0x0f, - 0x4e, 0xb7, 0x0f, 0xcb, 0x50, 0xf6, 0xc5, 0x9d, 0x59, 0x62, 0x6f, 0xde, 0xbc, 0xfa, 0x05, 0xfc, - 0x3e, 0x1c, 0x39, 0x7a, 0x6a, 0xa4, 0x9e, 0x8c, 0x89, 0x1f, 0x80, 0x93, 0x99, 0xe9, 0xb4, 0x5d, - 0xa9, 0x15, 0x4c, 0xb8, 0x75, 0x7e, 0xf3, 0x7b, 0x79, 0xe6, 0x79, 0x9e, 0x2d, 0x7a, 0xdc, 0xd9, - 0xe0, 0x16, 0x0b, 0xed, 0x4e, 0xd2, 0x82, 0x38, 0x00, 0x01, 0xdc, 0x8e, 0x3a, 0x9e, 0x4d, 0x23, - 0xc6, 0x6d, 0x17, 0x62, 0xc1, 0xf6, 0x99, 0x4b, 0x25, 0x7a, 0xdc, 0x68, 0x81, 0xa0, 0x0d, 0xdb, - 0x83, 0x00, 0x62, 0x2a, 0xa0, 0x6d, 0x45, 0x71, 0x28, 0x42, 0x6c, 0x0f, 0x0c, 0xac, 0xb1, 0x81, - 0x15, 0x75, 0x3c, 0x4b, 0x1a, 0x58, 0x69, 0x03, 0x4b, 0x1b, 0x2c, 0xde, 0xf3, 0x98, 0x38, 0x48, - 0x5a, 0x96, 0x1b, 0xfa, 0xb6, 0x17, 0x7a, 0xa1, 0xad, 0x7c, 0x5a, 0xc9, 0xbe, 0x3a, 0xa9, 0x83, - 0xfa, 0x35, 0xf0, 0x5f, 0x7c, 0xa8, 0x0b, 0xa4, 0x11, 0xf3, 0xa9, 0x7b, 0xc0, 0x02, 0x88, 0xbb, - 0xe3, 0x12, 0x7d, 0x10, 0xd4, 0x3e, 0x9e, 0xa8, 0x6a, 0xd1, 0x9e, 0xa6, 0x8a, 0x93, 0x40, 0x30, - 0x1f, 0x26, 0x04, 0x8f, 0x2e, 0x13, 0x70, 0xf7, 0x00, 0x7c, 0x3a, 0xa1, 0x7b, 0x30, 0x4d, 0x97, - 0x08, 0x76, 0x64, 0xb3, 0x40, 0x70, 0x11, 0x4f, 0x88, 0xd6, 0xa6, 0x36, 0xfd, 0x0f, 0x6f, 0xa9, - 0x7f, 0xcf, 0xa2, 0x9b, 0x9b, 0xe3, 0x4e, 0xee, 0x32, 0x2f, 0x60, 0x81, 0x47, 0xe0, 0x5d, 0x02, - 0x5c, 0xe0, 0xb7, 0xa8, 0x24, 0x9b, 0xd0, 0xa6, 0x82, 0x56, 0x8d, 0x65, 0x63, 0xa5, 0xb2, 0x7e, - 0xdf, 0xd2, 0x23, 0x49, 0xd7, 0x34, 0x1e, 0x8a, 0x64, 0x5b, 0xc7, 0x0d, 0xeb, 0x65, 0xeb, 0x10, - 0x5c, 0xb1, 0x03, 0x82, 0x3a, 0xf8, 0xa4, 0x57, 0xcb, 0xf4, 0x7b, 0x35, 0x34, 0xc6, 0xc8, 0xc8, - 0x15, 0x47, 0x28, 0xcf, 0x23, 0x70, 0xab, 0x59, 0xe5, 0xfe, 0xc2, 0xfa, 0xc7, 0x81, 0x5b, 0x53, - 0x6b, 0xdf, 0x8d, 0xc0, 0x75, 0x66, 0x75, 0x76, 0x5e, 0x9e, 0x88, 0x4a, 0xc2, 0xef, 0x51, 0x81, - 0x0b, 0x2a, 0x12, 0x5e, 0xcd, 0xa9, 0xcc, 0x57, 0xd7, 0x98, 0xa9, 0x7c, 0x9d, 0x39, 0x9d, 0x5a, - 0x18, 0x9c, 0x89, 0xce, 0xab, 0x7f, 0xce, 0xa2, 0xfa, 0x54, 0xed, 0x66, 0x18, 0xb4, 0x99, 0x60, - 0x61, 0x80, 0x37, 0x50, 0x5e, 0x74, 0x23, 0x50, 0x0d, 0x2f, 0x3b, 0xb7, 0x86, 0x4f, 0xd8, 0xeb, - 0x46, 0x70, 0xde, 0xab, 0xdd, 0xb8, 0xc8, 0x97, 0x38, 0x51, 0x0a, 0x7c, 0x07, 0x15, 0x62, 0xa0, - 0x3c, 0x0c, 0x54, 0x3b, 0xcb, 0xe3, 0x42, 0x88, 0x42, 0x89, 0xbe, 0xc5, 0xab, 0xa8, 0xe8, 0x03, - 0xe7, 0xd4, 0x03, 0xd5, 0x83, 0xb2, 0x33, 0xaf, 0x89, 0xc5, 0x9d, 0x01, 0x4c, 0x86, 0xf7, 0xf8, - 0x10, 0xcd, 0x1d, 0x51, 0x2e, 0x9a, 0x51, 0x9b, 0x0a, 0xd8, 0x63, 0x3e, 0x54, 0xf3, 0xaa, 0x6b, - 0x77, 0xaf, 0xb6, 0x07, 0x52, 0xe1, 0x2c, 0x68, 0xf7, 0xb9, 0xed, 0xdf, 0x9c, 0xc8, 0x05, 0xe7, - 0xfa, 0x4f, 0x03, 0x2d, 0x4d, 0xed, 0xcf, 0x36, 0xe3, 0x02, 0xbf, 0x99, 0xd8, 0x47, 0xeb, 0x6a, - 0x75, 0x48, 0xb5, 0xda, 0xc6, 0xff, 0x75, 0x2d, 0xa5, 0x21, 0x92, 0xda, 0xc5, 0x10, 0xcd, 0x30, - 0x01, 0x3e, 0xaf, 0x66, 0x97, 0x73, 0x2b, 0x95, 0xf5, 0x67, 0xd7, 0xb7, 0x18, 0xce, 0x7f, 0x3a, - 0x76, 0x66, 0x4b, 0x06, 0x90, 0x41, 0x4e, 0xfd, 0xc7, 0xdf, 0x1e, 0x2c, 0x57, 0x16, 0xdf, 0x46, - 0xc5, 0x78, 0x70, 0x54, 0xef, 0x9d, 0x75, 0x2a, 0x72, 0x4a, 0x9a, 0x41, 0x86, 0x77, 0x78, 0x0d, - 0x95, 0x12, 0x0e, 0x71, 0x40, 0x7d, 0xd0, 0xa3, 0x1f, 0xbd, 0xb3, 0xa9, 0x71, 0x32, 0x62, 0xe0, - 0x25, 0x94, 0x4b, 0x58, 0x5b, 0x8f, 0xbe, 0xa2, 0x89, 0xb9, 0xe6, 0xd6, 0x13, 0x22, 0x71, 0x5c, - 0x47, 0x05, 0x2f, 0x0e, 0x93, 0x88, 0x57, 0xf3, 0xcb, 0xb9, 0x95, 0xb2, 0x83, 0xe4, 0x06, 0x3d, - 0x55, 0x08, 0xd1, 0x37, 0x78, 0x1d, 0x95, 0x3a, 0xd0, 0x6d, 0xaa, 0x15, 0x9a, 0x51, 0xac, 0x05, - 0xc9, 0x52, 0x00, 0x3f, 0xef, 0xd5, 0x4a, 0xcf, 0xf5, 0x2d, 0x19, 0xf1, 0xea, 0x3d, 0x03, 0xd5, - 0x2e, 0xf9, 0x74, 0xf0, 0x47, 0x03, 0x21, 0x77, 0xb8, 0xd9, 0xbc, 0x6a, 0xa8, 0x41, 0xec, 0x5e, - 0xdf, 0x20, 0x46, 0x5f, 0xcd, 0xf8, 0x6f, 0x69, 0x04, 0x71, 0x92, 0x8a, 0xc6, 0x0d, 0x54, 0x49, - 0x59, 0xab, 0xae, 0xce, 0x3a, 0xf3, 0xfd, 0x5e, 0xad, 0x92, 0x32, 0x27, 0x69, 0x8e, 0xb3, 0x7a, - 0x72, 0x66, 0x66, 0x4e, 0xcf, 0xcc, 0xcc, 0x97, 0x33, 0x33, 0xf3, 0xa1, 0x6f, 0x1a, 0x27, 0x7d, - 0xd3, 0x38, 0xed, 0x9b, 0xc6, 0xd7, 0xbe, 0x69, 0x7c, 0xfa, 0x66, 0x66, 0x5e, 0x17, 0x75, 0x81, - 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, 0xa3, 0xfe, 0x90, 0x2c, 0x1a, 0x07, 0x00, 0x00, + // 734 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xac, 0x54, 0x4f, 0x4f, 0x13, 0x4f, + 0x18, 0xee, 0xb6, 0xa5, 0x7f, 0xa6, 0xfc, 0xe0, 0x97, 0x89, 0x21, 0x95, 0x84, 0x2d, 0x69, 0xd4, + 0x80, 0xc1, 0x5d, 0x8b, 0xc6, 0x70, 0x33, 0x59, 0x4c, 0x0c, 0x0a, 0x6a, 0x06, 0x7a, 0x31, 0x1e, + 0x9c, 0x6e, 0x5f, 0x96, 0xa1, 0xec, 0x1f, 0x77, 0x66, 0x1b, 0x7a, 0xf3, 0xe6, 0xd5, 0x2f, 0xe0, + 0xf7, 0xe1, 0xc8, 0xd1, 0x53, 0x23, 0xf5, 0x64, 0x4c, 0xfc, 0x00, 0x9c, 0xcc, 0x4e, 0xa7, 0xdd, + 0x95, 0x52, 0xc1, 0x84, 0x5b, 0xe7, 0x79, 0x9f, 0xf7, 0x79, 0xff, 0x3d, 0x5b, 0xf4, 0xb4, 0xb3, + 0xc1, 0x0d, 0xe6, 0x9b, 0x9d, 0xa8, 0x05, 0xa1, 0x07, 0x02, 0xb8, 0x19, 0x74, 0x1c, 0x93, 0x06, + 0x8c, 0x9b, 0x36, 0x84, 0x82, 0xed, 0x33, 0x9b, 0xc6, 0x68, 0xb7, 0xd1, 0x02, 0x41, 0x1b, 0xa6, + 0x03, 0x1e, 0x84, 0x54, 0x40, 0xdb, 0x08, 0x42, 0x5f, 0xf8, 0xd8, 0x1c, 0x0a, 0x18, 0x89, 0x80, + 0x11, 0x74, 0x1c, 0x23, 0x16, 0x30, 0xd2, 0x02, 0x86, 0x12, 0x58, 0x7c, 0xe0, 0x30, 0x71, 0x10, + 0xb5, 0x0c, 0xdb, 0x77, 0x4d, 0xc7, 0x77, 0x7c, 0x53, 0xea, 0xb4, 0xa2, 0x7d, 0xf9, 0x92, 0x0f, + 0xf9, 0x6b, 0xa8, 0xbf, 0xf8, 0x58, 0x35, 0x48, 0x03, 0xe6, 0x52, 0xfb, 0x80, 0x79, 0x10, 0xf6, + 0x92, 0x16, 0x5d, 0x10, 0xd4, 0xec, 0x4e, 0x74, 0xb5, 0x68, 0x4e, 0xcb, 0x0a, 0x23, 0x4f, 0x30, + 0x17, 0x26, 0x12, 0x9e, 0x5c, 0x95, 0xc0, 0xed, 0x03, 0x70, 0xe9, 0x44, 0xde, 0xa3, 0x69, 0x79, + 0x91, 0x60, 0x47, 0x26, 0xf3, 0x04, 0x17, 0xe1, 0x44, 0x52, 0x6a, 0x26, 0x0e, 0x61, 0x17, 0xc2, + 0x64, 0x20, 0x38, 0xa6, 0x6e, 0x70, 0x04, 0x97, 0xcd, 0xb4, 0x36, 0xf5, 0x54, 0x97, 0xb0, 0xeb, + 0x3f, 0xb2, 0xe8, 0xf6, 0x66, 0xb2, 0xff, 0x5d, 0xe6, 0x78, 0xcc, 0x73, 0x08, 0x7c, 0x88, 0x80, + 0x0b, 0xfc, 0x1e, 0x95, 0xe2, 0xd5, 0xb5, 0xa9, 0xa0, 0x55, 0x6d, 0x59, 0x5b, 0xa9, 0xac, 0x3f, + 0x34, 0xd4, 0x21, 0xd3, 0x93, 0x24, 0xa7, 0x8c, 0xd9, 0x46, 0xb7, 0x61, 0xbc, 0x6e, 0x1d, 0x82, + 0x2d, 0x76, 0x40, 0x50, 0x0b, 0x9f, 0xf4, 0x6b, 0x99, 0x41, 0xbf, 0x86, 0x12, 0x8c, 0x8c, 0x55, + 0x71, 0x80, 0xf2, 0x3c, 0x00, 0xbb, 0x9a, 0x95, 0xea, 0xaf, 0x8c, 0x7f, 0xb4, 0x89, 0x31, 0xb5, + 0xf7, 0xdd, 0x00, 0x6c, 0x6b, 0x56, 0xd5, 0xce, 0xc7, 0x2f, 0x22, 0x2b, 0xe1, 0x63, 0x54, 0xe0, + 0x82, 0x8a, 0x88, 0x57, 0x73, 0xb2, 0xe6, 0x9b, 0x1b, 0xac, 0x29, 0x75, 0xad, 0x39, 0x55, 0xb5, + 0x30, 0x7c, 0x13, 0x55, 0xaf, 0xfe, 0x25, 0x8b, 0xea, 0x53, 0x73, 0x37, 0x7d, 0xaf, 0xcd, 0x04, + 0xf3, 0x3d, 0xbc, 0x81, 0xf2, 0xa2, 0x17, 0x80, 0x5c, 0x78, 0xd9, 0xba, 0x33, 0x1a, 0x61, 0xaf, + 0x17, 0xc0, 0x79, 0xbf, 0x76, 0xeb, 0x22, 0x3f, 0xc6, 0x89, 0xcc, 0xc0, 0xf7, 0x50, 0x21, 0x04, + 0xca, 0x7d, 0x4f, 0xae, 0xb3, 0x9c, 0x34, 0x42, 0x24, 0x4a, 0x54, 0x14, 0xaf, 0xa2, 0xa2, 0x0b, + 0x9c, 0x53, 0x07, 0xe4, 0x0e, 0xca, 0xd6, 0xbc, 0x22, 0x16, 0x77, 0x86, 0x30, 0x19, 0xc5, 0xf1, + 0x21, 0x9a, 0x3b, 0xa2, 0x5c, 0x34, 0x83, 0x36, 0x15, 0xb0, 0xc7, 0x5c, 0xa8, 0xe6, 0xe5, 0xd6, + 0xee, 0x5f, 0xcf, 0x07, 0x71, 0x86, 0xb5, 0xa0, 0xd4, 0xe7, 0xb6, 0xff, 0x50, 0x22, 0x17, 0x94, + 0xeb, 0xbf, 0x34, 0xb4, 0x34, 0x75, 0x3f, 0xdb, 0x8c, 0x0b, 0xfc, 0x6e, 0xc2, 0x8f, 0xc6, 0xf5, + 0xfa, 0x88, 0xb3, 0xa5, 0x1b, 0xff, 0x57, 0xbd, 0x94, 0x46, 0x48, 0xca, 0x8b, 0x3e, 0x9a, 0x61, + 0x02, 0x5c, 0x5e, 0xcd, 0x2e, 0xe7, 0x56, 0x2a, 0xeb, 0x2f, 0x6e, 0xce, 0x18, 0xd6, 0x7f, 0xaa, + 0xec, 0xcc, 0x56, 0x5c, 0x80, 0x0c, 0xeb, 0xd4, 0x7f, 0xfe, 0x6d, 0xe0, 0xd8, 0xb2, 0xf8, 0x2e, + 0x2a, 0x86, 0xc3, 0xa7, 0x9c, 0x77, 0xd6, 0xaa, 0xc4, 0x57, 0x52, 0x0c, 0x32, 0x8a, 0xe1, 0x35, + 0x54, 0x8a, 0x38, 0x84, 0x1e, 0x75, 0x41, 0x9d, 0x7e, 0x3c, 0x67, 0x53, 0xe1, 0x64, 0xcc, 0xc0, + 0x4b, 0x28, 0x17, 0xb1, 0xb6, 0x3a, 0x7d, 0x45, 0x11, 0x73, 0xcd, 0xad, 0x67, 0x24, 0xc6, 0x71, + 0x1d, 0x15, 0x9c, 0xd0, 0x8f, 0x02, 0x5e, 0xcd, 0x2f, 0xe7, 0x56, 0xca, 0x16, 0x8a, 0x1d, 0xf4, + 0x5c, 0x22, 0x44, 0x45, 0xf0, 0x3a, 0x2a, 0x75, 0xa0, 0xd7, 0x94, 0x16, 0x9a, 0x91, 0xac, 0x85, + 0x98, 0x25, 0x01, 0x7e, 0xde, 0xaf, 0x95, 0x5e, 0xaa, 0x28, 0x19, 0xf3, 0xea, 0x7d, 0x0d, 0xd5, + 0xae, 0xf8, 0x74, 0xf0, 0x27, 0x0d, 0x21, 0x7b, 0xe4, 0x6c, 0x5e, 0xd5, 0xe4, 0x21, 0x76, 0x6f, + 0xee, 0x10, 0xe3, 0xaf, 0x26, 0xf9, 0x5b, 0x1a, 0x43, 0x9c, 0xa4, 0x4a, 0xe3, 0x06, 0xaa, 0xa4, + 0xa4, 0xe5, 0x56, 0x67, 0xad, 0xf9, 0x41, 0xbf, 0x56, 0x49, 0x89, 0x93, 0x34, 0xc7, 0x5a, 0x3d, + 0x39, 0xd3, 0x33, 0xa7, 0x67, 0x7a, 0xe6, 0xeb, 0x99, 0x9e, 0xf9, 0x38, 0xd0, 0xb5, 0x93, 0x81, + 0xae, 0x9d, 0x0e, 0x74, 0xed, 0xdb, 0x40, 0xd7, 0x3e, 0x7f, 0xd7, 0x33, 0x6f, 0x8b, 0xaa, 0xc1, + 0xdf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x57, 0xf9, 0x1c, 0x67, 0x50, 0x07, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.proto index e3a580cecdd..1be309db311 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.proto @@ -25,6 +25,7 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". diff --git a/staging/src/k8s.io/client-go/pkg/apis/extensions/register.go b/staging/src/k8s.io/client-go/pkg/apis/extensions/register.go index bd772f114f9..5983636c225 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/extensions/register.go +++ b/staging/src/k8s.io/client-go/pkg/apis/extensions/register.go @@ -19,7 +19,6 @@ package extensions import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" - "k8s.io/client-go/pkg/apis/autoscaling" ) // GroupName is the group name use in this package @@ -50,8 +49,6 @@ func addKnownTypes(scheme *runtime.Scheme) error { &Deployment{}, &DeploymentList{}, &DeploymentRollback{}, - &autoscaling.HorizontalPodAutoscaler{}, - &autoscaling.HorizontalPodAutoscalerList{}, &ReplicationControllerDummy{}, &Scale{}, &ThirdPartyResource{}, diff --git a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/conversion.go b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/conversion.go index 77f7d958b1d..a511c671300 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/conversion.go +++ b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/conversion.go @@ -23,9 +23,7 @@ import ( "k8s.io/apimachinery/pkg/conversion" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/intstr" - "k8s.io/client-go/pkg/api" v1 "k8s.io/client-go/pkg/api/v1" - "k8s.io/client-go/pkg/apis/autoscaling" "k8s.io/client-go/pkg/apis/extensions" ) @@ -42,11 +40,6 @@ func addConversionFuncs(scheme *runtime.Scheme) error { Convert_v1beta1_RollingUpdateDeployment_To_extensions_RollingUpdateDeployment, Convert_extensions_ReplicaSetSpec_To_v1beta1_ReplicaSetSpec, Convert_v1beta1_ReplicaSetSpec_To_extensions_ReplicaSetSpec, - // autoscaling - Convert_autoscaling_CrossVersionObjectReference_To_v1beta1_SubresourceReference, - Convert_v1beta1_SubresourceReference_To_autoscaling_CrossVersionObjectReference, - Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v1beta1_HorizontalPodAutoscalerSpec, - Convert_v1beta1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec, ) if err != nil { return err @@ -55,7 +48,7 @@ func addConversionFuncs(scheme *runtime.Scheme) error { // Add field label conversions for kinds having selectable nothing but ObjectMeta fields. for _, k := range []string{"DaemonSet", "Deployment", "Ingress"} { kind := k // don't close over range variables - err = api.Scheme.AddFieldLabelConversionFunc("extensions/v1beta1", kind, + err = scheme.AddFieldLabelConversionFunc("extensions/v1beta1", kind, func(label, value string) (string, string, error) { switch label { case "metadata.name", "metadata.namespace": @@ -248,53 +241,3 @@ func Convert_v1beta1_ReplicaSetSpec_To_extensions_ReplicaSetSpec(in *ReplicaSetS } return nil } - -func Convert_autoscaling_CrossVersionObjectReference_To_v1beta1_SubresourceReference(in *autoscaling.CrossVersionObjectReference, out *SubresourceReference, s conversion.Scope) error { - out.Kind = in.Kind - out.Name = in.Name - out.APIVersion = in.APIVersion - out.Subresource = "scale" - return nil -} - -func Convert_v1beta1_SubresourceReference_To_autoscaling_CrossVersionObjectReference(in *SubresourceReference, out *autoscaling.CrossVersionObjectReference, s conversion.Scope) error { - out.Kind = in.Kind - out.Name = in.Name - out.APIVersion = in.APIVersion - return nil -} - -func Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v1beta1_HorizontalPodAutoscalerSpec(in *autoscaling.HorizontalPodAutoscalerSpec, out *HorizontalPodAutoscalerSpec, s conversion.Scope) error { - if err := Convert_autoscaling_CrossVersionObjectReference_To_v1beta1_SubresourceReference(&in.ScaleTargetRef, &out.ScaleRef, s); err != nil { - return err - } - if in.MinReplicas != nil { - out.MinReplicas = new(int32) - *out.MinReplicas = *in.MinReplicas - } else { - out.MinReplicas = nil - } - out.MaxReplicas = in.MaxReplicas - if in.TargetCPUUtilizationPercentage != nil { - out.CPUUtilization = &CPUTargetUtilization{TargetPercentage: *in.TargetCPUUtilizationPercentage} - } - return nil -} - -func Convert_v1beta1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec(in *HorizontalPodAutoscalerSpec, out *autoscaling.HorizontalPodAutoscalerSpec, s conversion.Scope) error { - if err := Convert_v1beta1_SubresourceReference_To_autoscaling_CrossVersionObjectReference(&in.ScaleRef, &out.ScaleTargetRef, s); err != nil { - return err - } - if in.MinReplicas != nil { - out.MinReplicas = new(int32) - *out.MinReplicas = int32(*in.MinReplicas) - } else { - out.MinReplicas = nil - } - out.MaxReplicas = int32(in.MaxReplicas) - if in.CPUUtilization != nil { - out.TargetCPUUtilizationPercentage = new(int32) - *out.TargetCPUUtilizationPercentage = int32(in.CPUUtilization.TargetPercentage) - } - return nil -} diff --git a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/defaults.go b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/defaults.go index 6a5199f52aa..576e8d47aa0 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/defaults.go +++ b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/defaults.go @@ -28,7 +28,6 @@ func addDefaultingFuncs(scheme *runtime.Scheme) error { return scheme.AddDefaultingFuncs( SetDefaults_DaemonSet, SetDefaults_Deployment, - SetDefaults_HorizontalPodAutoscaler, SetDefaults_ReplicaSet, SetDefaults_NetworkPolicy, ) @@ -90,16 +89,6 @@ func SetDefaults_Deployment(obj *Deployment) { } } -func SetDefaults_HorizontalPodAutoscaler(obj *HorizontalPodAutoscaler) { - if obj.Spec.MinReplicas == nil { - minReplicas := int32(1) - obj.Spec.MinReplicas = &minReplicas - } - if obj.Spec.CPUUtilization == nil { - obj.Spec.CPUUtilization = &CPUTargetUtilization{TargetPercentage: 80} - } -} - func SetDefaults_ReplicaSet(obj *ReplicaSet) { labels := obj.Spec.Template.Labels diff --git a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.pb.go index 181bd766488..d2a2bb470d6 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.pb.go @@ -26,7 +26,6 @@ limitations under the License. It has these top-level messages: APIVersion - CPUTargetUtilization CustomMetricCurrentStatus CustomMetricCurrentStatusList CustomMetricTarget @@ -45,10 +44,6 @@ limitations under the License. FSGroupStrategyOptions HTTPIngressPath HTTPIngressRuleValue - HorizontalPodAutoscaler - HorizontalPodAutoscalerList - HorizontalPodAutoscalerSpec - HorizontalPodAutoscalerStatus HostPortRange IDRange Ingress @@ -81,7 +76,6 @@ limitations under the License. Scale ScaleSpec ScaleStatus - SubresourceReference SupplementalGroupsStrategyOptions ThirdPartyResource ThirdPartyResourceData @@ -97,6 +91,7 @@ import math "math" import k8s_io_apimachinery_pkg_apis_meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" import k8s_io_apimachinery_pkg_util_intstr "k8s.io/apimachinery/pkg/util/intstr" + import k8s_io_kubernetes_pkg_api_v1 "k8s.io/client-go/pkg/api/v1" import strings "strings" @@ -118,277 +113,244 @@ func (m *APIVersion) Reset() { *m = APIVersion{} } func (*APIVersion) ProtoMessage() {} func (*APIVersion) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{0} } -func (m *CPUTargetUtilization) Reset() { *m = CPUTargetUtilization{} } -func (*CPUTargetUtilization) ProtoMessage() {} -func (*CPUTargetUtilization) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } - func (m *CustomMetricCurrentStatus) Reset() { *m = CustomMetricCurrentStatus{} } func (*CustomMetricCurrentStatus) ProtoMessage() {} func (*CustomMetricCurrentStatus) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{2} + return fileDescriptorGenerated, []int{1} } func (m *CustomMetricCurrentStatusList) Reset() { *m = CustomMetricCurrentStatusList{} } func (*CustomMetricCurrentStatusList) ProtoMessage() {} func (*CustomMetricCurrentStatusList) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{3} + return fileDescriptorGenerated, []int{2} } func (m *CustomMetricTarget) Reset() { *m = CustomMetricTarget{} } func (*CustomMetricTarget) ProtoMessage() {} -func (*CustomMetricTarget) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } +func (*CustomMetricTarget) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{3} } func (m *CustomMetricTargetList) Reset() { *m = CustomMetricTargetList{} } func (*CustomMetricTargetList) ProtoMessage() {} -func (*CustomMetricTargetList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } +func (*CustomMetricTargetList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } func (m *DaemonSet) Reset() { *m = DaemonSet{} } func (*DaemonSet) ProtoMessage() {} -func (*DaemonSet) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } +func (*DaemonSet) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } func (m *DaemonSetList) Reset() { *m = DaemonSetList{} } func (*DaemonSetList) ProtoMessage() {} -func (*DaemonSetList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } +func (*DaemonSetList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } func (m *DaemonSetSpec) Reset() { *m = DaemonSetSpec{} } func (*DaemonSetSpec) ProtoMessage() {} -func (*DaemonSetSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } +func (*DaemonSetSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } func (m *DaemonSetStatus) Reset() { *m = DaemonSetStatus{} } func (*DaemonSetStatus) ProtoMessage() {} -func (*DaemonSetStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } +func (*DaemonSetStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } func (m *Deployment) Reset() { *m = Deployment{} } func (*Deployment) ProtoMessage() {} -func (*Deployment) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } +func (*Deployment) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } func (m *DeploymentCondition) Reset() { *m = DeploymentCondition{} } func (*DeploymentCondition) ProtoMessage() {} -func (*DeploymentCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } +func (*DeploymentCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } func (m *DeploymentList) Reset() { *m = DeploymentList{} } func (*DeploymentList) ProtoMessage() {} -func (*DeploymentList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } +func (*DeploymentList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } func (m *DeploymentRollback) Reset() { *m = DeploymentRollback{} } func (*DeploymentRollback) ProtoMessage() {} -func (*DeploymentRollback) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } +func (*DeploymentRollback) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } func (m *DeploymentSpec) Reset() { *m = DeploymentSpec{} } func (*DeploymentSpec) ProtoMessage() {} -func (*DeploymentSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{14} } +func (*DeploymentSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } func (m *DeploymentStatus) Reset() { *m = DeploymentStatus{} } func (*DeploymentStatus) ProtoMessage() {} -func (*DeploymentStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{15} } +func (*DeploymentStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{14} } func (m *DeploymentStrategy) Reset() { *m = DeploymentStrategy{} } func (*DeploymentStrategy) ProtoMessage() {} -func (*DeploymentStrategy) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{16} } +func (*DeploymentStrategy) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{15} } func (m *FSGroupStrategyOptions) Reset() { *m = FSGroupStrategyOptions{} } func (*FSGroupStrategyOptions) ProtoMessage() {} -func (*FSGroupStrategyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{17} } +func (*FSGroupStrategyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{16} } func (m *HTTPIngressPath) Reset() { *m = HTTPIngressPath{} } func (*HTTPIngressPath) ProtoMessage() {} -func (*HTTPIngressPath) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{18} } +func (*HTTPIngressPath) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{17} } func (m *HTTPIngressRuleValue) Reset() { *m = HTTPIngressRuleValue{} } func (*HTTPIngressRuleValue) ProtoMessage() {} -func (*HTTPIngressRuleValue) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{19} } - -func (m *HorizontalPodAutoscaler) Reset() { *m = HorizontalPodAutoscaler{} } -func (*HorizontalPodAutoscaler) ProtoMessage() {} -func (*HorizontalPodAutoscaler) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{20} -} - -func (m *HorizontalPodAutoscalerList) Reset() { *m = HorizontalPodAutoscalerList{} } -func (*HorizontalPodAutoscalerList) ProtoMessage() {} -func (*HorizontalPodAutoscalerList) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{21} -} - -func (m *HorizontalPodAutoscalerSpec) Reset() { *m = HorizontalPodAutoscalerSpec{} } -func (*HorizontalPodAutoscalerSpec) ProtoMessage() {} -func (*HorizontalPodAutoscalerSpec) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{22} -} - -func (m *HorizontalPodAutoscalerStatus) Reset() { *m = HorizontalPodAutoscalerStatus{} } -func (*HorizontalPodAutoscalerStatus) ProtoMessage() {} -func (*HorizontalPodAutoscalerStatus) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{23} -} +func (*HTTPIngressRuleValue) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{18} } func (m *HostPortRange) Reset() { *m = HostPortRange{} } func (*HostPortRange) ProtoMessage() {} -func (*HostPortRange) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{24} } +func (*HostPortRange) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{19} } func (m *IDRange) Reset() { *m = IDRange{} } func (*IDRange) ProtoMessage() {} -func (*IDRange) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{25} } +func (*IDRange) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{20} } func (m *Ingress) Reset() { *m = Ingress{} } func (*Ingress) ProtoMessage() {} -func (*Ingress) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{26} } +func (*Ingress) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{21} } func (m *IngressBackend) Reset() { *m = IngressBackend{} } func (*IngressBackend) ProtoMessage() {} -func (*IngressBackend) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{27} } +func (*IngressBackend) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{22} } func (m *IngressList) Reset() { *m = IngressList{} } func (*IngressList) ProtoMessage() {} -func (*IngressList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{28} } +func (*IngressList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{23} } func (m *IngressRule) Reset() { *m = IngressRule{} } func (*IngressRule) ProtoMessage() {} -func (*IngressRule) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{29} } +func (*IngressRule) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{24} } func (m *IngressRuleValue) Reset() { *m = IngressRuleValue{} } func (*IngressRuleValue) ProtoMessage() {} -func (*IngressRuleValue) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{30} } +func (*IngressRuleValue) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{25} } func (m *IngressSpec) Reset() { *m = IngressSpec{} } func (*IngressSpec) ProtoMessage() {} -func (*IngressSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{31} } +func (*IngressSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{26} } func (m *IngressStatus) Reset() { *m = IngressStatus{} } func (*IngressStatus) ProtoMessage() {} -func (*IngressStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{32} } +func (*IngressStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{27} } func (m *IngressTLS) Reset() { *m = IngressTLS{} } func (*IngressTLS) ProtoMessage() {} -func (*IngressTLS) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{33} } +func (*IngressTLS) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{28} } func (m *NetworkPolicy) Reset() { *m = NetworkPolicy{} } func (*NetworkPolicy) ProtoMessage() {} -func (*NetworkPolicy) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{34} } +func (*NetworkPolicy) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{29} } func (m *NetworkPolicyIngressRule) Reset() { *m = NetworkPolicyIngressRule{} } func (*NetworkPolicyIngressRule) ProtoMessage() {} func (*NetworkPolicyIngressRule) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{35} + return fileDescriptorGenerated, []int{30} } func (m *NetworkPolicyList) Reset() { *m = NetworkPolicyList{} } func (*NetworkPolicyList) ProtoMessage() {} -func (*NetworkPolicyList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{36} } +func (*NetworkPolicyList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{31} } func (m *NetworkPolicyPeer) Reset() { *m = NetworkPolicyPeer{} } func (*NetworkPolicyPeer) ProtoMessage() {} -func (*NetworkPolicyPeer) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{37} } +func (*NetworkPolicyPeer) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{32} } func (m *NetworkPolicyPort) Reset() { *m = NetworkPolicyPort{} } func (*NetworkPolicyPort) ProtoMessage() {} -func (*NetworkPolicyPort) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{38} } +func (*NetworkPolicyPort) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{33} } func (m *NetworkPolicySpec) Reset() { *m = NetworkPolicySpec{} } func (*NetworkPolicySpec) ProtoMessage() {} -func (*NetworkPolicySpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{39} } +func (*NetworkPolicySpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{34} } func (m *PodSecurityPolicy) Reset() { *m = PodSecurityPolicy{} } func (*PodSecurityPolicy) ProtoMessage() {} -func (*PodSecurityPolicy) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{40} } +func (*PodSecurityPolicy) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{35} } func (m *PodSecurityPolicyList) Reset() { *m = PodSecurityPolicyList{} } func (*PodSecurityPolicyList) ProtoMessage() {} -func (*PodSecurityPolicyList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{41} } +func (*PodSecurityPolicyList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{36} } func (m *PodSecurityPolicySpec) Reset() { *m = PodSecurityPolicySpec{} } func (*PodSecurityPolicySpec) ProtoMessage() {} -func (*PodSecurityPolicySpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{42} } +func (*PodSecurityPolicySpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{37} } func (m *ReplicaSet) Reset() { *m = ReplicaSet{} } func (*ReplicaSet) ProtoMessage() {} -func (*ReplicaSet) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{43} } +func (*ReplicaSet) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{38} } func (m *ReplicaSetCondition) Reset() { *m = ReplicaSetCondition{} } func (*ReplicaSetCondition) ProtoMessage() {} -func (*ReplicaSetCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{44} } +func (*ReplicaSetCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{39} } func (m *ReplicaSetList) Reset() { *m = ReplicaSetList{} } func (*ReplicaSetList) ProtoMessage() {} -func (*ReplicaSetList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{45} } +func (*ReplicaSetList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{40} } func (m *ReplicaSetSpec) Reset() { *m = ReplicaSetSpec{} } func (*ReplicaSetSpec) ProtoMessage() {} -func (*ReplicaSetSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{46} } +func (*ReplicaSetSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{41} } func (m *ReplicaSetStatus) Reset() { *m = ReplicaSetStatus{} } func (*ReplicaSetStatus) ProtoMessage() {} -func (*ReplicaSetStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{47} } +func (*ReplicaSetStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{42} } func (m *ReplicationControllerDummy) Reset() { *m = ReplicationControllerDummy{} } func (*ReplicationControllerDummy) ProtoMessage() {} func (*ReplicationControllerDummy) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{48} + return fileDescriptorGenerated, []int{43} } func (m *RollbackConfig) Reset() { *m = RollbackConfig{} } func (*RollbackConfig) ProtoMessage() {} -func (*RollbackConfig) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{49} } +func (*RollbackConfig) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{44} } func (m *RollingUpdateDeployment) Reset() { *m = RollingUpdateDeployment{} } func (*RollingUpdateDeployment) ProtoMessage() {} func (*RollingUpdateDeployment) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{50} + return fileDescriptorGenerated, []int{45} } func (m *RunAsUserStrategyOptions) Reset() { *m = RunAsUserStrategyOptions{} } func (*RunAsUserStrategyOptions) ProtoMessage() {} func (*RunAsUserStrategyOptions) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{51} + return fileDescriptorGenerated, []int{46} } func (m *SELinuxStrategyOptions) Reset() { *m = SELinuxStrategyOptions{} } func (*SELinuxStrategyOptions) ProtoMessage() {} -func (*SELinuxStrategyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{52} } +func (*SELinuxStrategyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{47} } func (m *Scale) Reset() { *m = Scale{} } func (*Scale) ProtoMessage() {} -func (*Scale) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{53} } +func (*Scale) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{48} } func (m *ScaleSpec) Reset() { *m = ScaleSpec{} } func (*ScaleSpec) ProtoMessage() {} -func (*ScaleSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{54} } +func (*ScaleSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{49} } func (m *ScaleStatus) Reset() { *m = ScaleStatus{} } func (*ScaleStatus) ProtoMessage() {} -func (*ScaleStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{55} } - -func (m *SubresourceReference) Reset() { *m = SubresourceReference{} } -func (*SubresourceReference) ProtoMessage() {} -func (*SubresourceReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{56} } +func (*ScaleStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{50} } func (m *SupplementalGroupsStrategyOptions) Reset() { *m = SupplementalGroupsStrategyOptions{} } func (*SupplementalGroupsStrategyOptions) ProtoMessage() {} func (*SupplementalGroupsStrategyOptions) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{57} + return fileDescriptorGenerated, []int{51} } func (m *ThirdPartyResource) Reset() { *m = ThirdPartyResource{} } func (*ThirdPartyResource) ProtoMessage() {} -func (*ThirdPartyResource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{58} } +func (*ThirdPartyResource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{52} } func (m *ThirdPartyResourceData) Reset() { *m = ThirdPartyResourceData{} } func (*ThirdPartyResourceData) ProtoMessage() {} -func (*ThirdPartyResourceData) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{59} } +func (*ThirdPartyResourceData) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{53} } func (m *ThirdPartyResourceDataList) Reset() { *m = ThirdPartyResourceDataList{} } func (*ThirdPartyResourceDataList) ProtoMessage() {} func (*ThirdPartyResourceDataList) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{60} + return fileDescriptorGenerated, []int{54} } func (m *ThirdPartyResourceList) Reset() { *m = ThirdPartyResourceList{} } func (*ThirdPartyResourceList) ProtoMessage() {} -func (*ThirdPartyResourceList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{61} } +func (*ThirdPartyResourceList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{55} } func init() { proto.RegisterType((*APIVersion)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.APIVersion") - proto.RegisterType((*CPUTargetUtilization)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.CPUTargetUtilization") proto.RegisterType((*CustomMetricCurrentStatus)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.CustomMetricCurrentStatus") proto.RegisterType((*CustomMetricCurrentStatusList)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.CustomMetricCurrentStatusList") proto.RegisterType((*CustomMetricTarget)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.CustomMetricTarget") @@ -407,10 +369,6 @@ func init() { proto.RegisterType((*FSGroupStrategyOptions)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.FSGroupStrategyOptions") proto.RegisterType((*HTTPIngressPath)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.HTTPIngressPath") proto.RegisterType((*HTTPIngressRuleValue)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.HTTPIngressRuleValue") - proto.RegisterType((*HorizontalPodAutoscaler)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.HorizontalPodAutoscaler") - proto.RegisterType((*HorizontalPodAutoscalerList)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.HorizontalPodAutoscalerList") - proto.RegisterType((*HorizontalPodAutoscalerSpec)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.HorizontalPodAutoscalerSpec") - proto.RegisterType((*HorizontalPodAutoscalerStatus)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.HorizontalPodAutoscalerStatus") proto.RegisterType((*HostPortRange)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.HostPortRange") proto.RegisterType((*IDRange)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.IDRange") proto.RegisterType((*Ingress)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.Ingress") @@ -443,7 +401,6 @@ func init() { proto.RegisterType((*Scale)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.Scale") proto.RegisterType((*ScaleSpec)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.ScaleSpec") proto.RegisterType((*ScaleStatus)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.ScaleStatus") - proto.RegisterType((*SubresourceReference)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.SubresourceReference") proto.RegisterType((*SupplementalGroupsStrategyOptions)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.SupplementalGroupsStrategyOptions") proto.RegisterType((*ThirdPartyResource)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.ThirdPartyResource") proto.RegisterType((*ThirdPartyResourceData)(nil), "k8s.io.client-go.pkg.apis.extensions.v1beta1.ThirdPartyResourceData") @@ -472,27 +429,6 @@ func (m *APIVersion) MarshalTo(data []byte) (int, error) { return i, nil } -func (m *CPUTargetUtilization) Marshal() (data []byte, err error) { - size := m.Size() - data = make([]byte, size) - n, err := m.MarshalTo(data) - if err != nil { - return nil, err - } - return data[:n], nil -} - -func (m *CPUTargetUtilization) MarshalTo(data []byte) (int, error) { - var i int - _ = i - var l int - _ = l - data[i] = 0x8 - i++ - i = encodeVarintGenerated(data, i, uint64(m.TargetPercentage)) - return i, nil -} - func (m *CustomMetricCurrentStatus) Marshal() (data []byte, err error) { size := m.Size() data = make([]byte, size) @@ -1193,174 +1129,6 @@ func (m *HTTPIngressRuleValue) MarshalTo(data []byte) (int, error) { return i, nil } -func (m *HorizontalPodAutoscaler) Marshal() (data []byte, err error) { - size := m.Size() - data = make([]byte, size) - n, err := m.MarshalTo(data) - if err != nil { - return nil, err - } - return data[:n], nil -} - -func (m *HorizontalPodAutoscaler) MarshalTo(data []byte) (int, error) { - var i int - _ = i - var l int - _ = l - data[i] = 0xa - i++ - i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n22, err := m.ObjectMeta.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n22 - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) - n23, err := m.Spec.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n23 - data[i] = 0x1a - i++ - i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) - n24, err := m.Status.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n24 - return i, nil -} - -func (m *HorizontalPodAutoscalerList) Marshal() (data []byte, err error) { - size := m.Size() - data = make([]byte, size) - n, err := m.MarshalTo(data) - if err != nil { - return nil, err - } - return data[:n], nil -} - -func (m *HorizontalPodAutoscalerList) MarshalTo(data []byte) (int, error) { - var i int - _ = i - var l int - _ = l - data[i] = 0xa - i++ - i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n25, err := m.ListMeta.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n25 - if len(m.Items) > 0 { - for _, msg := range m.Items { - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(msg.Size())) - n, err := msg.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n - } - } - return i, nil -} - -func (m *HorizontalPodAutoscalerSpec) Marshal() (data []byte, err error) { - size := m.Size() - data = make([]byte, size) - n, err := m.MarshalTo(data) - if err != nil { - return nil, err - } - return data[:n], nil -} - -func (m *HorizontalPodAutoscalerSpec) MarshalTo(data []byte) (int, error) { - var i int - _ = i - var l int - _ = l - data[i] = 0xa - i++ - i = encodeVarintGenerated(data, i, uint64(m.ScaleRef.Size())) - n26, err := m.ScaleRef.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n26 - if m.MinReplicas != nil { - data[i] = 0x10 - i++ - i = encodeVarintGenerated(data, i, uint64(*m.MinReplicas)) - } - data[i] = 0x18 - i++ - i = encodeVarintGenerated(data, i, uint64(m.MaxReplicas)) - if m.CPUUtilization != nil { - data[i] = 0x22 - i++ - i = encodeVarintGenerated(data, i, uint64(m.CPUUtilization.Size())) - n27, err := m.CPUUtilization.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n27 - } - return i, nil -} - -func (m *HorizontalPodAutoscalerStatus) Marshal() (data []byte, err error) { - size := m.Size() - data = make([]byte, size) - n, err := m.MarshalTo(data) - if err != nil { - return nil, err - } - return data[:n], nil -} - -func (m *HorizontalPodAutoscalerStatus) MarshalTo(data []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.ObservedGeneration != nil { - data[i] = 0x8 - i++ - i = encodeVarintGenerated(data, i, uint64(*m.ObservedGeneration)) - } - if m.LastScaleTime != nil { - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(m.LastScaleTime.Size())) - n28, err := m.LastScaleTime.MarshalTo(data[i:]) - if err != nil { - return 0, err - } - i += n28 - } - data[i] = 0x18 - i++ - i = encodeVarintGenerated(data, i, uint64(m.CurrentReplicas)) - data[i] = 0x20 - i++ - i = encodeVarintGenerated(data, i, uint64(m.DesiredReplicas)) - if m.CurrentCPUUtilizationPercentage != nil { - data[i] = 0x28 - i++ - i = encodeVarintGenerated(data, i, uint64(*m.CurrentCPUUtilizationPercentage)) - } - return i, nil -} - func (m *HostPortRange) Marshal() (data []byte, err error) { size := m.Size() data = make([]byte, size) @@ -1427,27 +1195,27 @@ func (m *Ingress) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n29, err := m.ObjectMeta.MarshalTo(data[i:]) + n22, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n29 + i += n22 data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) - n30, err := m.Spec.MarshalTo(data[i:]) + n23, err := m.Spec.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n30 + i += n23 data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) - n31, err := m.Status.MarshalTo(data[i:]) + n24, err := m.Status.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n31 + i += n24 return i, nil } @@ -1473,11 +1241,11 @@ func (m *IngressBackend) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.ServicePort.Size())) - n32, err := m.ServicePort.MarshalTo(data[i:]) + n25, err := m.ServicePort.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n32 + i += n25 return i, nil } @@ -1499,11 +1267,11 @@ func (m *IngressList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n33, err := m.ListMeta.MarshalTo(data[i:]) + n26, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n33 + i += n26 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -1541,11 +1309,11 @@ func (m *IngressRule) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.IngressRuleValue.Size())) - n34, err := m.IngressRuleValue.MarshalTo(data[i:]) + n27, err := m.IngressRuleValue.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n34 + i += n27 return i, nil } @@ -1568,11 +1336,11 @@ func (m *IngressRuleValue) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.HTTP.Size())) - n35, err := m.HTTP.MarshalTo(data[i:]) + n28, err := m.HTTP.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n35 + i += n28 } return i, nil } @@ -1596,11 +1364,11 @@ func (m *IngressSpec) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.Backend.Size())) - n36, err := m.Backend.MarshalTo(data[i:]) + n29, err := m.Backend.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n36 + i += n29 } if len(m.TLS) > 0 { for _, msg := range m.TLS { @@ -1647,11 +1415,11 @@ func (m *IngressStatus) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.LoadBalancer.Size())) - n37, err := m.LoadBalancer.MarshalTo(data[i:]) + n30, err := m.LoadBalancer.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n37 + i += n30 return i, nil } @@ -1710,19 +1478,19 @@ func (m *NetworkPolicy) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n38, err := m.ObjectMeta.MarshalTo(data[i:]) + n31, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n38 + i += n31 data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) - n39, err := m.Spec.MarshalTo(data[i:]) + n32, err := m.Spec.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n39 + i += n32 return i, nil } @@ -1786,11 +1554,11 @@ func (m *NetworkPolicyList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n40, err := m.ListMeta.MarshalTo(data[i:]) + n33, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n40 + i += n33 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -1825,21 +1593,21 @@ func (m *NetworkPolicyPeer) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.PodSelector.Size())) - n41, err := m.PodSelector.MarshalTo(data[i:]) + n34, err := m.PodSelector.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n41 + i += n34 } if m.NamespaceSelector != nil { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.NamespaceSelector.Size())) - n42, err := m.NamespaceSelector.MarshalTo(data[i:]) + n35, err := m.NamespaceSelector.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n42 + i += n35 } return i, nil } @@ -1869,11 +1637,11 @@ func (m *NetworkPolicyPort) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.Port.Size())) - n43, err := m.Port.MarshalTo(data[i:]) + n36, err := m.Port.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n43 + i += n36 } return i, nil } @@ -1896,11 +1664,11 @@ func (m *NetworkPolicySpec) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.PodSelector.Size())) - n44, err := m.PodSelector.MarshalTo(data[i:]) + n37, err := m.PodSelector.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n44 + i += n37 if len(m.Ingress) > 0 { for _, msg := range m.Ingress { data[i] = 0x12 @@ -1934,19 +1702,19 @@ func (m *PodSecurityPolicy) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n45, err := m.ObjectMeta.MarshalTo(data[i:]) + n38, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n45 + i += n38 data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) - n46, err := m.Spec.MarshalTo(data[i:]) + n39, err := m.Spec.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n46 + i += n39 return i, nil } @@ -1968,11 +1736,11 @@ func (m *PodSecurityPolicyList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n47, err := m.ListMeta.MarshalTo(data[i:]) + n40, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n47 + i += n40 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -2110,35 +1878,35 @@ func (m *PodSecurityPolicySpec) MarshalTo(data []byte) (int, error) { data[i] = 0x52 i++ i = encodeVarintGenerated(data, i, uint64(m.SELinux.Size())) - n48, err := m.SELinux.MarshalTo(data[i:]) + n41, err := m.SELinux.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n48 + i += n41 data[i] = 0x5a i++ i = encodeVarintGenerated(data, i, uint64(m.RunAsUser.Size())) - n49, err := m.RunAsUser.MarshalTo(data[i:]) + n42, err := m.RunAsUser.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n49 + i += n42 data[i] = 0x62 i++ i = encodeVarintGenerated(data, i, uint64(m.SupplementalGroups.Size())) - n50, err := m.SupplementalGroups.MarshalTo(data[i:]) + n43, err := m.SupplementalGroups.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n50 + i += n43 data[i] = 0x6a i++ i = encodeVarintGenerated(data, i, uint64(m.FSGroup.Size())) - n51, err := m.FSGroup.MarshalTo(data[i:]) + n44, err := m.FSGroup.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n51 + i += n44 data[i] = 0x70 i++ if m.ReadOnlyRootFilesystem { @@ -2168,27 +1936,27 @@ func (m *ReplicaSet) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n52, err := m.ObjectMeta.MarshalTo(data[i:]) + n45, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n52 + i += n45 data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) - n53, err := m.Spec.MarshalTo(data[i:]) + n46, err := m.Spec.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n53 + i += n46 data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) - n54, err := m.Status.MarshalTo(data[i:]) + n47, err := m.Status.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n54 + i += n47 return i, nil } @@ -2218,11 +1986,11 @@ func (m *ReplicaSetCondition) MarshalTo(data []byte) (int, error) { data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(m.LastTransitionTime.Size())) - n55, err := m.LastTransitionTime.MarshalTo(data[i:]) + n48, err := m.LastTransitionTime.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n55 + i += n48 data[i] = 0x22 i++ i = encodeVarintGenerated(data, i, uint64(len(m.Reason))) @@ -2252,11 +2020,11 @@ func (m *ReplicaSetList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n56, err := m.ListMeta.MarshalTo(data[i:]) + n49, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n56 + i += n49 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -2296,20 +2064,20 @@ func (m *ReplicaSetSpec) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.Selector.Size())) - n57, err := m.Selector.MarshalTo(data[i:]) + n50, err := m.Selector.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n57 + i += n50 } data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(m.Template.Size())) - n58, err := m.Template.MarshalTo(data[i:]) + n51, err := m.Template.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n58 + i += n51 data[i] = 0x20 i++ i = encodeVarintGenerated(data, i, uint64(m.MinReadySeconds)) @@ -2419,21 +2187,21 @@ func (m *RollingUpdateDeployment) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.MaxUnavailable.Size())) - n59, err := m.MaxUnavailable.MarshalTo(data[i:]) + n52, err := m.MaxUnavailable.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n59 + i += n52 } if m.MaxSurge != nil { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.MaxSurge.Size())) - n60, err := m.MaxSurge.MarshalTo(data[i:]) + n53, err := m.MaxSurge.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n60 + i += n53 } return i, nil } @@ -2495,11 +2263,11 @@ func (m *SELinuxStrategyOptions) MarshalTo(data []byte) (int, error) { data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.SELinuxOptions.Size())) - n61, err := m.SELinuxOptions.MarshalTo(data[i:]) + n54, err := m.SELinuxOptions.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n61 + i += n54 } return i, nil } @@ -2522,27 +2290,27 @@ func (m *Scale) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n62, err := m.ObjectMeta.MarshalTo(data[i:]) + n55, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n62 + i += n55 data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(m.Spec.Size())) - n63, err := m.Spec.MarshalTo(data[i:]) + n56, err := m.Spec.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n63 + i += n56 data[i] = 0x1a i++ i = encodeVarintGenerated(data, i, uint64(m.Status.Size())) - n64, err := m.Status.MarshalTo(data[i:]) + n57, err := m.Status.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n64 + i += n57 return i, nil } @@ -2609,40 +2377,6 @@ func (m *ScaleStatus) MarshalTo(data []byte) (int, error) { return i, nil } -func (m *SubresourceReference) Marshal() (data []byte, err error) { - size := m.Size() - data = make([]byte, size) - n, err := m.MarshalTo(data) - if err != nil { - return nil, err - } - return data[:n], nil -} - -func (m *SubresourceReference) MarshalTo(data []byte) (int, error) { - var i int - _ = i - var l int - _ = l - data[i] = 0xa - i++ - i = encodeVarintGenerated(data, i, uint64(len(m.Kind))) - i += copy(data[i:], m.Kind) - data[i] = 0x12 - i++ - i = encodeVarintGenerated(data, i, uint64(len(m.Name))) - i += copy(data[i:], m.Name) - data[i] = 0x1a - i++ - i = encodeVarintGenerated(data, i, uint64(len(m.APIVersion))) - i += copy(data[i:], m.APIVersion) - data[i] = 0x22 - i++ - i = encodeVarintGenerated(data, i, uint64(len(m.Subresource))) - i += copy(data[i:], m.Subresource) - return i, nil -} - func (m *SupplementalGroupsStrategyOptions) Marshal() (data []byte, err error) { size := m.Size() data = make([]byte, size) @@ -2695,11 +2429,11 @@ func (m *ThirdPartyResource) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n65, err := m.ObjectMeta.MarshalTo(data[i:]) + n58, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n65 + i += n58 data[i] = 0x12 i++ i = encodeVarintGenerated(data, i, uint64(len(m.Description))) @@ -2737,11 +2471,11 @@ func (m *ThirdPartyResourceData) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ObjectMeta.Size())) - n66, err := m.ObjectMeta.MarshalTo(data[i:]) + n59, err := m.ObjectMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n66 + i += n59 if m.Data != nil { data[i] = 0x12 i++ @@ -2769,11 +2503,11 @@ func (m *ThirdPartyResourceDataList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n67, err := m.ListMeta.MarshalTo(data[i:]) + n60, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n67 + i += n60 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -2807,11 +2541,11 @@ func (m *ThirdPartyResourceList) MarshalTo(data []byte) (int, error) { data[i] = 0xa i++ i = encodeVarintGenerated(data, i, uint64(m.ListMeta.Size())) - n68, err := m.ListMeta.MarshalTo(data[i:]) + n61, err := m.ListMeta.MarshalTo(data[i:]) if err != nil { return 0, err } - i += n68 + i += n61 if len(m.Items) > 0 { for _, msg := range m.Items { data[i] = 0x12 @@ -2862,13 +2596,6 @@ func (m *APIVersion) Size() (n int) { return n } -func (m *CPUTargetUtilization) Size() (n int) { - var l int - _ = l - n += 1 + sovGenerated(uint64(m.TargetPercentage)) - return n -} - func (m *CustomMetricCurrentStatus) Size() (n int) { var l int _ = l @@ -3119,66 +2846,6 @@ func (m *HTTPIngressRuleValue) Size() (n int) { return n } -func (m *HorizontalPodAutoscaler) Size() (n int) { - var l int - _ = l - l = m.ObjectMeta.Size() - n += 1 + l + sovGenerated(uint64(l)) - l = m.Spec.Size() - n += 1 + l + sovGenerated(uint64(l)) - l = m.Status.Size() - n += 1 + l + sovGenerated(uint64(l)) - return n -} - -func (m *HorizontalPodAutoscalerList) Size() (n int) { - var l int - _ = l - l = m.ListMeta.Size() - n += 1 + l + sovGenerated(uint64(l)) - if len(m.Items) > 0 { - for _, e := range m.Items { - l = e.Size() - n += 1 + l + sovGenerated(uint64(l)) - } - } - return n -} - -func (m *HorizontalPodAutoscalerSpec) Size() (n int) { - var l int - _ = l - l = m.ScaleRef.Size() - n += 1 + l + sovGenerated(uint64(l)) - if m.MinReplicas != nil { - n += 1 + sovGenerated(uint64(*m.MinReplicas)) - } - n += 1 + sovGenerated(uint64(m.MaxReplicas)) - if m.CPUUtilization != nil { - l = m.CPUUtilization.Size() - n += 1 + l + sovGenerated(uint64(l)) - } - return n -} - -func (m *HorizontalPodAutoscalerStatus) Size() (n int) { - var l int - _ = l - if m.ObservedGeneration != nil { - n += 1 + sovGenerated(uint64(*m.ObservedGeneration)) - } - if m.LastScaleTime != nil { - l = m.LastScaleTime.Size() - n += 1 + l + sovGenerated(uint64(l)) - } - n += 1 + sovGenerated(uint64(m.CurrentReplicas)) - n += 1 + sovGenerated(uint64(m.DesiredReplicas)) - if m.CurrentCPUUtilizationPercentage != nil { - n += 1 + sovGenerated(uint64(*m.CurrentCPUUtilizationPercentage)) - } - return n -} - func (m *HostPortRange) Size() (n int) { var l int _ = l @@ -3616,20 +3283,6 @@ func (m *ScaleStatus) Size() (n int) { return n } -func (m *SubresourceReference) Size() (n int) { - var l int - _ = l - l = len(m.Kind) - n += 1 + l + sovGenerated(uint64(l)) - l = len(m.Name) - n += 1 + l + sovGenerated(uint64(l)) - l = len(m.APIVersion) - n += 1 + l + sovGenerated(uint64(l)) - l = len(m.Subresource) - n += 1 + l + sovGenerated(uint64(l)) - return n -} - func (m *SupplementalGroupsStrategyOptions) Size() (n int) { var l int _ = l @@ -3723,16 +3376,6 @@ func (this *APIVersion) String() string { }, "") return s } -func (this *CPUTargetUtilization) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&CPUTargetUtilization{`, - `TargetPercentage:` + fmt.Sprintf("%v", this.TargetPercentage) + `,`, - `}`, - }, "") - return s -} func (this *CustomMetricCurrentStatus) String() string { if this == nil { return "nil" @@ -3960,56 +3603,6 @@ func (this *HTTPIngressRuleValue) String() string { }, "") return s } -func (this *HorizontalPodAutoscaler) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&HorizontalPodAutoscaler{`, - `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, - `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "HorizontalPodAutoscalerSpec", "HorizontalPodAutoscalerSpec", 1), `&`, ``, 1) + `,`, - `Status:` + strings.Replace(strings.Replace(this.Status.String(), "HorizontalPodAutoscalerStatus", "HorizontalPodAutoscalerStatus", 1), `&`, ``, 1) + `,`, - `}`, - }, "") - return s -} -func (this *HorizontalPodAutoscalerList) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&HorizontalPodAutoscalerList{`, - `ListMeta:` + strings.Replace(strings.Replace(this.ListMeta.String(), "ListMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ListMeta", 1), `&`, ``, 1) + `,`, - `Items:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Items), "HorizontalPodAutoscaler", "HorizontalPodAutoscaler", 1), `&`, ``, 1) + `,`, - `}`, - }, "") - return s -} -func (this *HorizontalPodAutoscalerSpec) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&HorizontalPodAutoscalerSpec{`, - `ScaleRef:` + strings.Replace(strings.Replace(this.ScaleRef.String(), "SubresourceReference", "SubresourceReference", 1), `&`, ``, 1) + `,`, - `MinReplicas:` + valueToStringGenerated(this.MinReplicas) + `,`, - `MaxReplicas:` + fmt.Sprintf("%v", this.MaxReplicas) + `,`, - `CPUUtilization:` + strings.Replace(fmt.Sprintf("%v", this.CPUUtilization), "CPUTargetUtilization", "CPUTargetUtilization", 1) + `,`, - `}`, - }, "") - return s -} -func (this *HorizontalPodAutoscalerStatus) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&HorizontalPodAutoscalerStatus{`, - `ObservedGeneration:` + valueToStringGenerated(this.ObservedGeneration) + `,`, - `LastScaleTime:` + strings.Replace(fmt.Sprintf("%v", this.LastScaleTime), "Time", "k8s_io_apimachinery_pkg_apis_meta_v1.Time", 1) + `,`, - `CurrentReplicas:` + fmt.Sprintf("%v", this.CurrentReplicas) + `,`, - `DesiredReplicas:` + fmt.Sprintf("%v", this.DesiredReplicas) + `,`, - `CurrentCPUUtilizationPercentage:` + valueToStringGenerated(this.CurrentCPUUtilizationPercentage) + `,`, - `}`, - }, "") - return s -} func (this *HostPortRange) String() string { if this == nil { return "nil" @@ -4392,19 +3985,6 @@ func (this *ScaleStatus) String() string { }, "") return s } -func (this *SubresourceReference) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&SubresourceReference{`, - `Kind:` + fmt.Sprintf("%v", this.Kind) + `,`, - `Name:` + fmt.Sprintf("%v", this.Name) + `,`, - `APIVersion:` + fmt.Sprintf("%v", this.APIVersion) + `,`, - `Subresource:` + fmt.Sprintf("%v", this.Subresource) + `,`, - `}`, - }, "") - return s -} func (this *SupplementalGroupsStrategyOptions) String() string { if this == nil { return "nil" @@ -4548,75 +4128,6 @@ func (m *APIVersion) Unmarshal(data []byte) error { } return nil } -func (m *CPUTargetUtilization) Unmarshal(data []byte) error { - l := len(data) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - wire |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: CPUTargetUtilization: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: CPUTargetUtilization: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field TargetPercentage", wireType) - } - m.TargetPercentage = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - m.TargetPercentage |= (int32(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipGenerated(data[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthGenerated - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *CustomMetricCurrentStatus) Unmarshal(data []byte) error { l := len(data) iNdEx := 0 @@ -7085,570 +6596,6 @@ func (m *HTTPIngressRuleValue) Unmarshal(data []byte) error { } return nil } -func (m *HorizontalPodAutoscaler) Unmarshal(data []byte) error { - l := len(data) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - wire |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: HorizontalPodAutoscaler: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: HorizontalPodAutoscaler: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - msglen |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthGenerated - } - postIndex := iNdEx + msglen - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.ObjectMeta.Unmarshal(data[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - msglen |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthGenerated - } - postIndex := iNdEx + msglen - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Spec.Unmarshal(data[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - msglen |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthGenerated - } - postIndex := iNdEx + msglen - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Status.Unmarshal(data[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipGenerated(data[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthGenerated - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *HorizontalPodAutoscalerList) Unmarshal(data []byte) error { - l := len(data) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - wire |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: HorizontalPodAutoscalerList: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: HorizontalPodAutoscalerList: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ListMeta", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - msglen |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthGenerated - } - postIndex := iNdEx + msglen - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.ListMeta.Unmarshal(data[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - msglen |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthGenerated - } - postIndex := iNdEx + msglen - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Items = append(m.Items, HorizontalPodAutoscaler{}) - if err := m.Items[len(m.Items)-1].Unmarshal(data[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipGenerated(data[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthGenerated - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *HorizontalPodAutoscalerSpec) Unmarshal(data []byte) error { - l := len(data) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - wire |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: HorizontalPodAutoscalerSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: HorizontalPodAutoscalerSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ScaleRef", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - msglen |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthGenerated - } - postIndex := iNdEx + msglen - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.ScaleRef.Unmarshal(data[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field MinReplicas", wireType) - } - var v int32 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - v |= (int32(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - m.MinReplicas = &v - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field MaxReplicas", wireType) - } - m.MaxReplicas = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - m.MaxReplicas |= (int32(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CPUUtilization", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - msglen |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthGenerated - } - postIndex := iNdEx + msglen - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CPUUtilization == nil { - m.CPUUtilization = &CPUTargetUtilization{} - } - if err := m.CPUUtilization.Unmarshal(data[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipGenerated(data[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthGenerated - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *HorizontalPodAutoscalerStatus) Unmarshal(data []byte) error { - l := len(data) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - wire |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: HorizontalPodAutoscalerStatus: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: HorizontalPodAutoscalerStatus: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field ObservedGeneration", wireType) - } - var v int64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - v |= (int64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - m.ObservedGeneration = &v - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LastScaleTime", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - msglen |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthGenerated - } - postIndex := iNdEx + msglen - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.LastScaleTime == nil { - m.LastScaleTime = &k8s_io_apimachinery_pkg_apis_meta_v1.Time{} - } - if err := m.LastScaleTime.Unmarshal(data[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field CurrentReplicas", wireType) - } - m.CurrentReplicas = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - m.CurrentReplicas |= (int32(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field DesiredReplicas", wireType) - } - m.DesiredReplicas = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - m.DesiredReplicas |= (int32(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field CurrentCPUUtilizationPercentage", wireType) - } - var v int32 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - v |= (int32(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - m.CurrentCPUUtilizationPercentage = &v - default: - iNdEx = preIndex - skippy, err := skipGenerated(data[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthGenerated - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *HostPortRange) Unmarshal(data []byte) error { l := len(data) iNdEx := 0 @@ -11671,172 +10618,6 @@ func (m *ScaleStatus) Unmarshal(data []byte) error { } return nil } -func (m *SubresourceReference) Unmarshal(data []byte) error { - l := len(data) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - wire |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: SubresourceReference: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: SubresourceReference: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Kind", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - stringLen |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthGenerated - } - postIndex := iNdEx + intStringLen - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Kind = string(data[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - stringLen |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthGenerated - } - postIndex := iNdEx + intStringLen - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Name = string(data[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field APIVersion", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - stringLen |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthGenerated - } - postIndex := iNdEx + intStringLen - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.APIVersion = string(data[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Subresource", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := data[iNdEx] - iNdEx++ - stringLen |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthGenerated - } - postIndex := iNdEx + intStringLen - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Subresource = string(data[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipGenerated(data[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthGenerated - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *SupplementalGroupsStrategyOptions) Unmarshal(data []byte) error { l := len(data) iNdEx := 0 @@ -12526,229 +11307,208 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 3582 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe4, 0x5b, 0x4d, 0x6c, 0x1c, 0xc7, - 0x95, 0x56, 0xcf, 0x70, 0xc4, 0xe1, 0xa3, 0x48, 0x8a, 0x45, 0x9a, 0x1a, 0xd3, 0x36, 0x47, 0x6e, - 0x63, 0x6d, 0x79, 0x61, 0x0f, 0x57, 0xf2, 0xca, 0x6b, 0xcb, 0xb6, 0x6c, 0x0e, 0x29, 0x4a, 0xf4, - 0x92, 0xd4, 0xb8, 0x86, 0x14, 0xd6, 0xf2, 0xdf, 0x36, 0x67, 0x8a, 0xc3, 0x16, 0xfb, 0xcf, 0xdd, - 0xd5, 0x34, 0xc7, 0x46, 0x60, 0x03, 0x41, 0xae, 0x81, 0x73, 0x09, 0x1c, 0xc0, 0x39, 0xe6, 0x90, - 0x4b, 0x62, 0x1f, 0x12, 0x27, 0xc7, 0x1c, 0x82, 0x08, 0x48, 0x10, 0x38, 0x40, 0x02, 0xe4, 0xe0, - 0x30, 0x11, 0x8d, 0x18, 0xb9, 0x07, 0xbe, 0x28, 0x97, 0xa0, 0xaa, 0xab, 0x7f, 0xa7, 0x9b, 0xd2, - 0x0c, 0xa9, 0x41, 0x80, 0xdc, 0x38, 0x55, 0xef, 0x7d, 0xef, 0xa7, 0xaa, 0xdf, 0x7b, 0x55, 0xf5, - 0x08, 0x2f, 0x6c, 0x3f, 0xe3, 0x54, 0x54, 0x73, 0x76, 0xdb, 0xdd, 0x20, 0xb6, 0x41, 0x28, 0x71, - 0x66, 0xad, 0xed, 0xd6, 0xac, 0x62, 0xa9, 0xce, 0x2c, 0xd9, 0xa5, 0xc4, 0x70, 0x54, 0xd3, 0x70, - 0x66, 0x77, 0xce, 0x6e, 0x10, 0xaa, 0x9c, 0x9d, 0x6d, 0x11, 0x83, 0xd8, 0x0a, 0x25, 0xcd, 0x8a, - 0x65, 0x9b, 0xd4, 0x44, 0x4f, 0x7a, 0xec, 0x95, 0x90, 0xbd, 0x62, 0x6d, 0xb7, 0x2a, 0x8c, 0xbd, - 0x12, 0xb2, 0x57, 0x04, 0xfb, 0xf4, 0x93, 0x2d, 0x95, 0x6e, 0xb9, 0x1b, 0x95, 0x86, 0xa9, 0xcf, - 0xb6, 0xcc, 0x96, 0x39, 0xcb, 0x51, 0x36, 0xdc, 0x4d, 0xfe, 0x8b, 0xff, 0xe0, 0x7f, 0x79, 0xe8, - 0xd3, 0xff, 0x2d, 0x94, 0x53, 0x2c, 0x55, 0x57, 0x1a, 0x5b, 0xaa, 0x41, 0xec, 0xb6, 0xaf, 0xde, - 0xac, 0x4d, 0x1c, 0xd3, 0xb5, 0x1b, 0x24, 0xa9, 0xd3, 0x81, 0x5c, 0xce, 0xac, 0x4e, 0xa8, 0x32, - 0xbb, 0xd3, 0x61, 0xc9, 0xf4, 0x6c, 0x16, 0x97, 0xed, 0x1a, 0x54, 0xd5, 0x3b, 0xc5, 0x3c, 0x7d, - 0x27, 0x06, 0xa7, 0xb1, 0x45, 0x74, 0xa5, 0x83, 0xef, 0xa9, 0x2c, 0x3e, 0x97, 0xaa, 0xda, 0xac, - 0x6a, 0x50, 0x87, 0xda, 0x1d, 0x4c, 0x4f, 0x64, 0x2e, 0x53, 0x8a, 0x2d, 0x72, 0x05, 0x60, 0xae, - 0xb6, 0x74, 0x8d, 0xd8, 0xcc, 0xfb, 0xe8, 0x34, 0x0c, 0x18, 0x8a, 0x4e, 0x4a, 0xd2, 0x69, 0xe9, - 0xcc, 0x50, 0xf5, 0xc4, 0xcd, 0xbd, 0xf2, 0xb1, 0xfd, 0xbd, 0xf2, 0xc0, 0xaa, 0xa2, 0x13, 0xcc, - 0x67, 0xe4, 0xd7, 0x61, 0x72, 0xbe, 0xb6, 0xbe, 0xa6, 0xd8, 0x2d, 0x42, 0xd7, 0xa9, 0xaa, 0xa9, - 0xef, 0x2a, 0x94, 0x71, 0x2e, 0xc0, 0x49, 0xca, 0x07, 0x6b, 0xc4, 0x6e, 0x10, 0x83, 0x2a, 0x2d, - 0x0f, 0xa5, 0x50, 0x2d, 0x09, 0x94, 0x93, 0x6b, 0x89, 0x79, 0xdc, 0xc1, 0x21, 0x7f, 0x4f, 0x82, - 0xfb, 0xe7, 0x5d, 0x87, 0x9a, 0xfa, 0x0a, 0xa1, 0xb6, 0xda, 0x98, 0x77, 0x6d, 0x9b, 0x18, 0xb4, - 0x4e, 0x15, 0xea, 0x3a, 0x77, 0xd6, 0x0e, 0x5d, 0x87, 0xc2, 0x8e, 0xa2, 0xb9, 0xa4, 0x94, 0x3b, - 0x2d, 0x9d, 0x19, 0x3e, 0x57, 0xa9, 0x88, 0x3d, 0x17, 0x75, 0xa0, 0xbf, 0xeb, 0x2a, 0xfe, 0xae, - 0xa8, 0xbc, 0xe2, 0x2a, 0x06, 0x55, 0x69, 0xbb, 0x3a, 0x29, 0x20, 0x4f, 0x08, 0xb9, 0xd7, 0x18, - 0x16, 0xf6, 0x20, 0xe5, 0x6f, 0x4b, 0xf0, 0x50, 0xa6, 0x6e, 0xcb, 0xaa, 0x43, 0x91, 0x0e, 0x05, - 0x95, 0x12, 0xdd, 0x29, 0x49, 0xa7, 0xf3, 0x67, 0x86, 0xcf, 0x5d, 0xa9, 0x74, 0xb5, 0xe3, 0x2b, - 0x99, 0xe0, 0xd5, 0x11, 0xa1, 0x57, 0x61, 0x89, 0xc1, 0x63, 0x4f, 0x8a, 0xfc, 0x1d, 0x09, 0x50, - 0x94, 0xc7, 0xf3, 0xef, 0x5d, 0x78, 0xe9, 0xd5, 0xc3, 0x79, 0x69, 0x42, 0x40, 0x0e, 0x7b, 0x02, - 0x63, 0x4e, 0xfa, 0x40, 0x82, 0xa9, 0x4e, 0x9d, 0xb8, 0x77, 0x36, 0xe3, 0xde, 0x99, 0x3b, 0x84, - 0x77, 0x3c, 0xd4, 0x0c, 0xb7, 0xfc, 0x24, 0x07, 0x43, 0x0b, 0x0a, 0xd1, 0x4d, 0xa3, 0x4e, 0x28, - 0xfa, 0x7f, 0x28, 0xb2, 0xcf, 0xb8, 0xa9, 0x50, 0x85, 0x7b, 0x64, 0xf8, 0xdc, 0x7f, 0x1d, 0x64, - 0xae, 0x53, 0x61, 0xd4, 0x95, 0x9d, 0xb3, 0x95, 0xab, 0x1b, 0x37, 0x48, 0x83, 0xae, 0x10, 0xaa, - 0x54, 0x91, 0x90, 0x03, 0xe1, 0x18, 0x0e, 0x50, 0xd1, 0x9b, 0x30, 0xe0, 0x58, 0xa4, 0x21, 0x9c, - 0xf9, 0x7c, 0x97, 0x66, 0x05, 0x9a, 0xd6, 0x2d, 0xd2, 0x08, 0x57, 0x8b, 0xfd, 0xc2, 0x1c, 0x17, - 0x6d, 0xc2, 0x71, 0x87, 0x6f, 0x83, 0x52, 0x9e, 0x4b, 0xb8, 0xd8, 0xb3, 0x04, 0x6f, 0x33, 0x8d, - 0x0a, 0x19, 0xc7, 0xbd, 0xdf, 0x58, 0xa0, 0xcb, 0xbf, 0x91, 0x60, 0x24, 0xa0, 0xe5, 0x2b, 0xf6, - 0x7a, 0x87, 0xef, 0x2a, 0x77, 0xe7, 0x3b, 0xc6, 0xcd, 0x3d, 0x77, 0x52, 0xc8, 0x2a, 0xfa, 0x23, - 0x11, 0xbf, 0xbd, 0xe1, 0xef, 0x87, 0x1c, 0xdf, 0x0f, 0xcf, 0xf4, 0x6a, 0x56, 0xc6, 0x36, 0xf8, - 0x75, 0xd4, 0x1c, 0xe6, 0x4e, 0xf4, 0x06, 0x14, 0x1d, 0xa2, 0x91, 0x06, 0x35, 0x6d, 0x61, 0xce, - 0x53, 0x77, 0x69, 0x8e, 0xb2, 0x41, 0xb4, 0xba, 0x60, 0xad, 0x9e, 0x60, 0xf6, 0xf8, 0xbf, 0x70, - 0x00, 0x89, 0x5e, 0x83, 0x22, 0x25, 0xba, 0xa5, 0x29, 0xd4, 0xff, 0xb0, 0x9e, 0xcc, 0x36, 0x89, - 0xc1, 0xd6, 0xcc, 0xe6, 0x9a, 0x60, 0xe0, 0x8b, 0x1f, 0x38, 0xcb, 0x1f, 0xc5, 0x01, 0xa0, 0xfc, - 0x61, 0x1e, 0xc6, 0x12, 0x0b, 0x89, 0xae, 0xc1, 0x54, 0xc3, 0x0b, 0x13, 0xab, 0xae, 0xbe, 0x41, - 0xec, 0x7a, 0x63, 0x8b, 0x34, 0x5d, 0x8d, 0x34, 0x45, 0xe0, 0x9d, 0x11, 0x78, 0x53, 0xf3, 0xa9, - 0x54, 0x38, 0x83, 0x1b, 0xbd, 0x0c, 0xc8, 0xe0, 0x43, 0x2b, 0xaa, 0xe3, 0x04, 0x98, 0x39, 0x8e, - 0x39, 0x2d, 0x30, 0xd1, 0x6a, 0x07, 0x05, 0x4e, 0xe1, 0x62, 0x3a, 0x36, 0x89, 0xa3, 0xda, 0xa4, - 0x99, 0xd4, 0x31, 0x1f, 0xd7, 0x71, 0x21, 0x95, 0x0a, 0x67, 0x70, 0xa3, 0xf3, 0x30, 0xec, 0x49, - 0xc3, 0x44, 0x69, 0xb6, 0x4b, 0x03, 0x1c, 0x2c, 0x08, 0x4c, 0xab, 0xe1, 0x14, 0x8e, 0xd2, 0x31, - 0xd3, 0xcc, 0x0d, 0x87, 0xd8, 0x3b, 0xa4, 0x79, 0xd9, 0x4b, 0x84, 0xaa, 0x69, 0x94, 0x0a, 0xa7, - 0xa5, 0x33, 0xf9, 0xd0, 0xb4, 0xab, 0x1d, 0x14, 0x38, 0x85, 0x4b, 0xfe, 0x59, 0x0e, 0x60, 0x81, - 0x58, 0x9a, 0xd9, 0xd6, 0x89, 0xd1, 0x8f, 0x40, 0xf3, 0x56, 0x2c, 0xd0, 0xbc, 0xd0, 0xed, 0xf7, - 0x12, 0xa8, 0x9a, 0x19, 0x69, 0x5a, 0x89, 0x48, 0xf3, 0x62, 0xef, 0x22, 0x0e, 0x0e, 0x35, 0xb7, - 0xf2, 0x30, 0x11, 0x12, 0xcf, 0x9b, 0x46, 0x53, 0xe5, 0x45, 0xc4, 0x73, 0x30, 0x40, 0xdb, 0x96, - 0x9f, 0xba, 0x1e, 0xf3, 0x55, 0x5c, 0x6b, 0x5b, 0xe4, 0xf6, 0x5e, 0xf9, 0x54, 0x0a, 0x0b, 0x9b, - 0xc2, 0x9c, 0x09, 0x5d, 0x0b, 0xb4, 0xcf, 0x71, 0xf6, 0x8b, 0x71, 0xe1, 0xb7, 0xf7, 0xca, 0x07, - 0x56, 0x46, 0x95, 0x00, 0x33, 0xae, 0x2c, 0x7a, 0x14, 0x8e, 0xdb, 0x44, 0x71, 0x4c, 0x83, 0xef, - 0xb2, 0xa1, 0xd0, 0x28, 0xcc, 0x47, 0xb1, 0x98, 0x45, 0x8f, 0xc3, 0xa0, 0x4e, 0x1c, 0x87, 0x15, - 0x3e, 0x05, 0x4e, 0x38, 0x26, 0x08, 0x07, 0x57, 0xbc, 0x61, 0xec, 0xcf, 0xa3, 0x1b, 0x30, 0xaa, - 0x29, 0x0e, 0x5d, 0xb7, 0x9a, 0x0a, 0x25, 0x6b, 0xaa, 0x4e, 0x4a, 0xc7, 0xb9, 0xc3, 0xff, 0xf3, - 0xee, 0x76, 0x0c, 0xe3, 0xa8, 0x4e, 0x09, 0xf4, 0xd1, 0xe5, 0x18, 0x12, 0x4e, 0x20, 0xa3, 0x1d, - 0x40, 0x6c, 0x64, 0xcd, 0x56, 0x0c, 0xc7, 0x73, 0x19, 0x93, 0x37, 0xd8, 0xb5, 0xbc, 0xe0, 0xf3, - 0x58, 0xee, 0x40, 0xc3, 0x29, 0x12, 0xe4, 0xdf, 0x4a, 0x30, 0x1a, 0x2e, 0x58, 0x1f, 0xf2, 0xc9, - 0x9b, 0xf1, 0x7c, 0xf2, 0x6c, 0xcf, 0x9b, 0x37, 0x23, 0xa1, 0x7c, 0x94, 0x07, 0x14, 0x12, 0x61, - 0x53, 0xd3, 0x36, 0x94, 0xc6, 0xf6, 0x5d, 0x94, 0x5b, 0x3f, 0x90, 0x00, 0xb9, 0x7c, 0x41, 0x9a, - 0x73, 0x86, 0x61, 0x52, 0x1e, 0x3e, 0x7c, 0x35, 0x5f, 0xed, 0x59, 0x4d, 0x5f, 0x83, 0xca, 0x7a, - 0x07, 0xf6, 0x25, 0x83, 0xda, 0xed, 0x70, 0xc5, 0x3a, 0x09, 0x70, 0x8a, 0x42, 0xe8, 0x6d, 0x00, - 0x5b, 0x60, 0xae, 0x99, 0x22, 0x04, 0x74, 0x1b, 0x65, 0x7c, 0xa5, 0xe6, 0x4d, 0x63, 0x53, 0x6d, - 0x85, 0x01, 0x0d, 0x07, 0xc0, 0x38, 0x22, 0x64, 0xfa, 0x12, 0x9c, 0xca, 0xd0, 0x1e, 0x9d, 0x84, - 0xfc, 0x36, 0x69, 0x7b, 0x6e, 0xc5, 0xec, 0x4f, 0x34, 0x19, 0x2d, 0x5b, 0x87, 0x44, 0xc5, 0x79, - 0x21, 0xf7, 0x8c, 0x24, 0x7f, 0x55, 0x88, 0xee, 0x35, 0x9e, 0xec, 0xcf, 0x40, 0xd1, 0x26, 0x96, - 0xa6, 0x36, 0x14, 0x47, 0xa4, 0x43, 0x9e, 0xb7, 0xb1, 0x18, 0xc3, 0xc1, 0x6c, 0xac, 0x2c, 0xc8, - 0xdd, 0xdb, 0xb2, 0x20, 0x7f, 0xc4, 0x65, 0x01, 0x32, 0xa1, 0xe8, 0x50, 0x76, 0x9c, 0x6b, 0x79, - 0x39, 0xb0, 0xfb, 0xb2, 0x3a, 0x1a, 0xb3, 0x3d, 0xa0, 0x50, 0xa0, 0x3f, 0x82, 0x03, 0x21, 0x68, - 0x0e, 0xc6, 0x74, 0xd5, 0xe0, 0xc9, 0xb4, 0x4e, 0x1a, 0xa6, 0xd1, 0x74, 0x78, 0xb0, 0x2b, 0x54, - 0x4f, 0x09, 0xa6, 0xb1, 0x95, 0xf8, 0x34, 0x4e, 0xd2, 0xa3, 0x65, 0x98, 0xb4, 0xc9, 0x8e, 0xca, - 0xd4, 0xb8, 0xa2, 0x3a, 0xd4, 0xb4, 0xdb, 0xcb, 0xaa, 0xae, 0x52, 0x1e, 0x02, 0x0b, 0xd5, 0xd2, - 0xfe, 0x5e, 0x79, 0x12, 0xa7, 0xcc, 0xe3, 0x54, 0x2e, 0x16, 0x9d, 0x2d, 0xc5, 0x75, 0x48, 0x93, - 0x87, 0xb4, 0x62, 0x18, 0x9d, 0x6b, 0x7c, 0x14, 0x8b, 0x59, 0xa4, 0xc7, 0x36, 0x77, 0xf1, 0x28, - 0x36, 0xf7, 0x68, 0xf6, 0xc6, 0x46, 0xeb, 0x70, 0xca, 0xb2, 0xcd, 0x96, 0x4d, 0x1c, 0x67, 0x81, - 0x28, 0x4d, 0x4d, 0x35, 0x88, 0xef, 0xaf, 0x21, 0x6e, 0xe7, 0x03, 0xfb, 0x7b, 0xe5, 0x53, 0xb5, - 0x74, 0x12, 0x9c, 0xc5, 0x2b, 0x7f, 0x3c, 0x00, 0x27, 0x93, 0x59, 0x36, 0xa3, 0xa8, 0x91, 0x7a, - 0x29, 0x6a, 0xd0, 0x13, 0x91, 0xcf, 0xc6, 0xab, 0xf8, 0x82, 0xdd, 0x90, 0xf2, 0xe9, 0xcc, 0xc1, - 0x98, 0x88, 0x23, 0xfe, 0xa4, 0x28, 0xeb, 0x82, 0xdd, 0xb0, 0x1e, 0x9f, 0xc6, 0x49, 0x7a, 0x74, - 0x19, 0xc6, 0x95, 0x1d, 0x45, 0xd5, 0x94, 0x0d, 0x8d, 0x04, 0x20, 0x5e, 0x39, 0x77, 0xbf, 0x00, - 0x19, 0x9f, 0x4b, 0x12, 0xe0, 0x4e, 0x1e, 0xb4, 0x02, 0x13, 0xae, 0xd1, 0x09, 0xe5, 0xed, 0xce, - 0x07, 0x04, 0xd4, 0xc4, 0x7a, 0x27, 0x09, 0x4e, 0xe3, 0x43, 0x3b, 0x00, 0x0d, 0xbf, 0x20, 0x70, - 0x4a, 0xc7, 0x79, 0xac, 0xae, 0xf6, 0xfc, 0x6d, 0x05, 0xb5, 0x45, 0x18, 0x11, 0x83, 0x21, 0x07, - 0x47, 0x24, 0xa1, 0xe7, 0x60, 0xc4, 0xe6, 0x75, 0xab, 0x6f, 0xc0, 0x20, 0x37, 0xe0, 0x3e, 0xc1, - 0x36, 0x82, 0xa3, 0x93, 0x38, 0x4e, 0x2b, 0xff, 0x4e, 0x8a, 0xa6, 0x28, 0xff, 0xf3, 0x45, 0x17, - 0x62, 0x65, 0xd5, 0xa3, 0x89, 0xb2, 0x6a, 0xaa, 0x93, 0x23, 0x52, 0x55, 0xbd, 0x0f, 0x23, 0x6c, - 0x5b, 0xab, 0x46, 0xcb, 0x5b, 0x4a, 0x11, 0x22, 0x17, 0x7b, 0xf8, 0x74, 0x02, 0x8c, 0x48, 0xaa, - 0x1d, 0xe7, 0x36, 0x45, 0x27, 0x71, 0x5c, 0x9e, 0xfc, 0xa9, 0x04, 0x53, 0x8b, 0xf5, 0xcb, 0xb6, - 0xe9, 0x5a, 0xbe, 0x7a, 0x57, 0x2d, 0xcf, 0x57, 0xff, 0x03, 0x03, 0xb6, 0xab, 0xf9, 0x76, 0x3d, - 0xe2, 0xdb, 0x85, 0x5d, 0x8d, 0xd9, 0x35, 0x91, 0xe0, 0xf2, 0x8c, 0x62, 0x0c, 0xe8, 0x4d, 0x38, - 0x6e, 0x2b, 0x46, 0x8b, 0xf8, 0x49, 0xf8, 0xe9, 0x2e, 0xad, 0x59, 0x5a, 0xc0, 0x8c, 0x3d, 0x52, - 0x0a, 0x72, 0x34, 0x2c, 0x50, 0xe5, 0xef, 0x4b, 0x30, 0x76, 0x65, 0x6d, 0xad, 0xb6, 0x64, 0xf0, - 0xaf, 0xb8, 0xa6, 0xd0, 0x2d, 0x56, 0x27, 0x58, 0x0a, 0xdd, 0x4a, 0xd6, 0x09, 0x6c, 0x0e, 0xf3, - 0x19, 0xb4, 0x05, 0x83, 0x2c, 0x7a, 0x10, 0xa3, 0xd9, 0x63, 0x89, 0x2f, 0xc4, 0x55, 0x3d, 0x90, - 0xb0, 0xfe, 0x14, 0x03, 0xd8, 0x87, 0x97, 0xdf, 0x83, 0xc9, 0x88, 0x7a, 0xcc, 0x5f, 0xfc, 0x12, - 0x07, 0x35, 0xa0, 0xc0, 0x34, 0xf1, 0xaf, 0x68, 0xba, 0xbd, 0x69, 0x48, 0x98, 0x1c, 0xd6, 0x51, - 0xec, 0x97, 0x83, 0x3d, 0x6c, 0xf9, 0xcf, 0x39, 0x38, 0x75, 0xc5, 0xb4, 0xd5, 0x77, 0x4d, 0x83, - 0x2a, 0x5a, 0xcd, 0x6c, 0xce, 0xb9, 0xd4, 0x74, 0x1a, 0x8a, 0x46, 0xec, 0x3e, 0x1c, 0xa2, 0xb4, - 0xd8, 0x21, 0xea, 0xe5, 0x6e, 0x2d, 0x4c, 0xd7, 0x3b, 0xf3, 0x44, 0x45, 0x13, 0x27, 0xaa, 0xe5, - 0x23, 0x92, 0x77, 0xf0, 0xf1, 0xea, 0x6f, 0x12, 0x3c, 0x90, 0xc1, 0xd9, 0x87, 0x3a, 0x7c, 0x3b, - 0x5e, 0x87, 0x2f, 0x1e, 0x8d, 0xc9, 0x19, 0x45, 0xf9, 0x3f, 0x72, 0x99, 0xa6, 0xf2, 0x32, 0xf0, - 0x6d, 0x28, 0xf2, 0x5f, 0x98, 0x6c, 0x0a, 0x53, 0xe7, 0xbb, 0xd4, 0xa7, 0xee, 0x6e, 0xf8, 0x57, - 0xa0, 0x98, 0x6c, 0x12, 0x9b, 0x18, 0x0d, 0x12, 0x29, 0x91, 0x04, 0x38, 0x0e, 0xc4, 0xa0, 0xb3, - 0x30, 0xcc, 0x4b, 0x9e, 0x58, 0x16, 0x1d, 0xdb, 0xdf, 0x2b, 0x0f, 0xaf, 0x84, 0xc3, 0x38, 0x4a, - 0x83, 0xce, 0xc3, 0xb0, 0xae, 0xec, 0x26, 0x72, 0x68, 0x70, 0x9b, 0xb1, 0x12, 0x4e, 0xe1, 0x28, - 0x1d, 0x7a, 0x1f, 0x46, 0x1b, 0x96, 0x1b, 0xb9, 0x85, 0x17, 0x35, 0x60, 0xb7, 0x26, 0xa6, 0x5d, - 0xe8, 0x57, 0x11, 0x3b, 0x5b, 0xce, 0xd7, 0xd6, 0x23, 0x63, 0x38, 0x21, 0x4e, 0xfe, 0x45, 0x1e, - 0x1e, 0x3a, 0x70, 0x8b, 0xa2, 0xc5, 0x03, 0x6a, 0x93, 0xa9, 0x2e, 0xea, 0x92, 0x06, 0x8c, 0xb0, - 0x33, 0x26, 0x77, 0x37, 0x3f, 0xc0, 0xe6, 0xba, 0x3e, 0xc0, 0xf2, 0x54, 0xb3, 0x1c, 0x05, 0xc1, - 0x71, 0x4c, 0x56, 0xce, 0x88, 0x2b, 0xb1, 0xac, 0x72, 0x66, 0x3e, 0x3e, 0x8d, 0x93, 0xf4, 0x0c, - 0x42, 0xdc, 0x58, 0x25, 0x8a, 0x99, 0x00, 0x62, 0x21, 0x3e, 0x8d, 0x93, 0xf4, 0x48, 0x87, 0xb2, - 0x40, 0x8d, 0x7b, 0x3f, 0xf2, 0xb0, 0xe2, 0x15, 0x35, 0x8f, 0xec, 0xef, 0x95, 0xcb, 0xf3, 0x07, - 0x93, 0xe2, 0x3b, 0x61, 0xc9, 0x2b, 0x30, 0x72, 0xc5, 0x74, 0x68, 0xcd, 0xb4, 0x29, 0xcf, 0x62, - 0xe8, 0x21, 0xc8, 0xeb, 0xaa, 0x21, 0x0e, 0x4d, 0xc3, 0x42, 0xed, 0x3c, 0xdb, 0xbb, 0x6c, 0x9c, - 0x4f, 0x2b, 0xbb, 0x62, 0x5b, 0x87, 0xd3, 0xca, 0x2e, 0x66, 0xe3, 0xf2, 0x65, 0x18, 0x14, 0xd9, - 0x31, 0x0a, 0x94, 0x3f, 0x18, 0x28, 0x9f, 0x02, 0xf4, 0xe3, 0x1c, 0x0c, 0x8a, 0x64, 0xd2, 0x87, - 0xb4, 0xf0, 0x7a, 0x2c, 0x2d, 0x5c, 0xe8, 0x2d, 0xf1, 0x66, 0xa6, 0x81, 0x66, 0x22, 0x0d, 0x3c, - 0xdf, 0x23, 0xfe, 0xc1, 0x61, 0xff, 0x13, 0x09, 0x46, 0xe3, 0x25, 0x00, 0x0b, 0x2c, 0xec, 0x53, - 0x52, 0x1b, 0x64, 0x35, 0xbc, 0xa3, 0x08, 0x02, 0x4b, 0x3d, 0x9c, 0xc2, 0x51, 0x3a, 0xd4, 0x0a, - 0xd8, 0xd8, 0xb6, 0x10, 0x4e, 0xc9, 0x76, 0xb9, 0x4b, 0x55, 0xad, 0xe2, 0xbd, 0x46, 0x56, 0x96, - 0x0c, 0x7a, 0xd5, 0xae, 0x53, 0x5b, 0x35, 0x5a, 0x1d, 0x82, 0xf8, 0x1e, 0x8b, 0x22, 0xcb, 0x37, - 0x25, 0x18, 0x16, 0x2a, 0xf7, 0x21, 0x33, 0xbd, 0x16, 0xcf, 0x4c, 0x4f, 0xf7, 0x58, 0x5e, 0xa5, - 0x67, 0xa2, 0xcf, 0x42, 0x53, 0x58, 0x41, 0xc5, 0xea, 0xbd, 0x2d, 0xd3, 0xa1, 0xc9, 0x7a, 0x8f, - 0x7d, 0x6b, 0x98, 0xcf, 0xa0, 0x6f, 0x49, 0x70, 0x52, 0x4d, 0x94, 0x60, 0xc2, 0xd7, 0x2f, 0xf6, - 0xa6, 0x5a, 0x00, 0x13, 0x3e, 0xba, 0x26, 0x67, 0x70, 0x87, 0x48, 0xd9, 0x85, 0x0e, 0x2a, 0xa4, - 0xc0, 0xc0, 0x16, 0xa5, 0x56, 0x8f, 0x39, 0x33, 0xad, 0xb8, 0xac, 0x16, 0xb9, 0xf9, 0x6b, 0x6b, - 0x35, 0xcc, 0xa1, 0xe5, 0x1f, 0xe5, 0x02, 0x87, 0xd5, 0xbd, 0x8f, 0x24, 0x28, 0x7f, 0xa5, 0xa3, - 0x28, 0x7f, 0x87, 0xd3, 0x4a, 0x5f, 0xf4, 0x7f, 0x90, 0xa7, 0x5a, 0xaf, 0x77, 0x84, 0x42, 0xc2, - 0xda, 0x72, 0x3d, 0x0c, 0x58, 0x6b, 0xcb, 0x75, 0xcc, 0x20, 0xd1, 0x5b, 0x50, 0x60, 0x87, 0x0b, - 0xf6, 0x8d, 0xe7, 0x7b, 0x8f, 0x21, 0xcc, 0x5f, 0xe1, 0x0e, 0x63, 0xbf, 0x1c, 0xec, 0xe1, 0xca, - 0xef, 0xc1, 0x48, 0x2c, 0x10, 0xa0, 0x1b, 0x70, 0x42, 0x33, 0x95, 0x66, 0x55, 0xd1, 0x14, 0xa3, - 0x41, 0xec, 0x64, 0x68, 0x4c, 0xbf, 0x5e, 0x5a, 0x8e, 0x70, 0x88, 0x80, 0x12, 0x3c, 0x7b, 0x47, - 0xe7, 0x70, 0x0c, 0x5b, 0x56, 0x00, 0x42, 0xeb, 0x51, 0x19, 0x0a, 0x6c, 0x0b, 0x7b, 0x07, 0x85, - 0xa1, 0xea, 0x10, 0xd3, 0x95, 0xed, 0x6c, 0x07, 0x7b, 0xe3, 0xe8, 0x1c, 0x80, 0x43, 0x1a, 0x36, - 0xa1, 0x3c, 0xee, 0x78, 0x17, 0xf2, 0x41, 0x04, 0xae, 0x07, 0x33, 0x38, 0x42, 0x25, 0xff, 0x41, - 0x82, 0x91, 0x55, 0x42, 0xdf, 0x31, 0xed, 0xed, 0x9a, 0xa9, 0xa9, 0x8d, 0x76, 0x1f, 0xe2, 0xfe, - 0x46, 0x2c, 0xee, 0xbf, 0xd4, 0xe5, 0x9a, 0xc5, 0xb4, 0xcd, 0x8a, 0xfe, 0xf2, 0x5f, 0x25, 0x28, - 0xc5, 0x28, 0xa3, 0x61, 0x82, 0x40, 0xc1, 0x32, 0x6d, 0xea, 0x1f, 0xb9, 0x0e, 0xa5, 0x01, 0x0b, - 0xa9, 0x91, 0x43, 0x17, 0x83, 0xc5, 0x1e, 0x3a, 0xb3, 0x73, 0xd3, 0x36, 0x75, 0xb1, 0xef, 0x0f, - 0x27, 0x85, 0x10, 0x3b, 0xb4, 0x73, 0xd1, 0x36, 0x75, 0xcc, 0xb1, 0xe5, 0xdf, 0x4b, 0x30, 0x1e, - 0xa3, 0xec, 0x43, 0x48, 0x57, 0xe2, 0x21, 0xfd, 0xf9, 0xc3, 0x18, 0x96, 0x11, 0xd8, 0xbf, 0x4e, - 0x9a, 0xc5, 0x1c, 0x80, 0x36, 0x61, 0xd8, 0x32, 0x9b, 0xf5, 0x23, 0x78, 0x4f, 0xe6, 0x47, 0x83, - 0x5a, 0x88, 0x85, 0xa3, 0xc0, 0x68, 0x17, 0xc6, 0x0d, 0x45, 0x27, 0x8e, 0xa5, 0x34, 0x48, 0xfd, - 0x08, 0xae, 0xa9, 0xef, 0xdb, 0xdf, 0x2b, 0x8f, 0xaf, 0x26, 0x11, 0x71, 0xa7, 0x10, 0xf9, 0xa7, - 0x1d, 0x76, 0x9b, 0x36, 0x45, 0xaf, 0x40, 0x91, 0x37, 0x0e, 0x35, 0x4c, 0x4d, 0xa4, 0xb6, 0xf3, - 0x6c, 0x69, 0x6a, 0x62, 0xec, 0xf6, 0x5e, 0xf9, 0x3f, 0x0e, 0x7c, 0x65, 0xf3, 0x09, 0x71, 0x00, - 0x83, 0x56, 0x61, 0xc0, 0x3a, 0x4c, 0x99, 0xc1, 0x13, 0x0b, 0xaf, 0x2d, 0x38, 0x8e, 0xfc, 0xf7, - 0xa4, 0xe2, 0x3c, 0xbd, 0xdc, 0x38, 0xb2, 0x05, 0x0b, 0xca, 0x9a, 0xcc, 0x45, 0xb3, 0x61, 0x50, - 0x64, 0x59, 0xb1, 0x2f, 0x2f, 0x1f, 0x66, 0x5f, 0x46, 0x33, 0x43, 0x70, 0xa7, 0xe3, 0x0f, 0xfa, - 0x82, 0xe4, 0x3f, 0x49, 0x30, 0xce, 0x15, 0x6a, 0xb8, 0xb6, 0x4a, 0xdb, 0x7d, 0x8b, 0xa0, 0x9b, - 0xb1, 0x08, 0xba, 0xd0, 0xa5, 0xa1, 0x1d, 0x1a, 0x67, 0x46, 0xd1, 0x2f, 0x24, 0xb8, 0xaf, 0x83, - 0xba, 0x0f, 0x11, 0x86, 0xc4, 0x23, 0xcc, 0x4b, 0x87, 0x35, 0x30, 0x23, 0xca, 0xdc, 0x84, 0x14, - 0xf3, 0xf8, 0xc6, 0x3d, 0x07, 0x60, 0xd9, 0xea, 0x8e, 0xaa, 0x91, 0x96, 0x68, 0xed, 0x28, 0x86, - 0x4b, 0x52, 0x0b, 0x66, 0x70, 0x84, 0x0a, 0x7d, 0x03, 0xa6, 0x9a, 0x64, 0x53, 0x71, 0x35, 0x3a, - 0xd7, 0x6c, 0xce, 0x2b, 0x96, 0xb2, 0xa1, 0x6a, 0x2a, 0x55, 0xc5, 0x85, 0xe7, 0x50, 0xf5, 0x92, - 0xd7, 0x72, 0x91, 0x46, 0x71, 0x7b, 0xaf, 0xfc, 0xd8, 0xc1, 0xef, 0xe4, 0x3e, 0x71, 0x1b, 0x67, - 0x08, 0x41, 0xdf, 0x94, 0xa0, 0x64, 0x93, 0xb7, 0x5d, 0x76, 0xae, 0x5d, 0xb0, 0x4d, 0x2b, 0xa6, - 0x41, 0x9e, 0x6b, 0x70, 0x79, 0x7f, 0xaf, 0x5c, 0xc2, 0x19, 0x34, 0xdd, 0xe8, 0x90, 0x29, 0x08, - 0x51, 0x98, 0x50, 0x34, 0xcd, 0x7c, 0x87, 0xc4, 0x3d, 0x30, 0xc0, 0xe5, 0x57, 0xf7, 0xf7, 0xca, - 0x13, 0x73, 0x9d, 0xd3, 0xdd, 0x88, 0x4e, 0x83, 0x47, 0xb3, 0x30, 0xb8, 0x63, 0x6a, 0xae, 0x4e, - 0x9c, 0x52, 0x81, 0x4b, 0x62, 0x11, 0x77, 0xf0, 0x9a, 0x37, 0x74, 0x7b, 0xaf, 0x7c, 0x7c, 0xb1, - 0xce, 0x6f, 0xa2, 0x7d, 0x2a, 0x76, 0x46, 0x63, 0x35, 0x93, 0xf8, 0xe4, 0xf9, 0x33, 0x58, 0x31, - 0x8c, 0x31, 0x57, 0xc2, 0x29, 0x1c, 0xa5, 0x43, 0x3a, 0x0c, 0x6d, 0x89, 0x73, 0xbb, 0x53, 0x1a, - 0xec, 0x29, 0xfb, 0xc5, 0xce, 0xfd, 0xd5, 0x71, 0x21, 0x72, 0xc8, 0x1f, 0x76, 0x70, 0x28, 0x01, - 0x3d, 0x0e, 0x83, 0xfc, 0xc7, 0xd2, 0x02, 0x7f, 0x3c, 0x2b, 0x86, 0x91, 0xe8, 0x8a, 0x37, 0x8c, - 0xfd, 0x79, 0x9f, 0x74, 0xa9, 0x36, 0xcf, 0xdf, 0xba, 0x12, 0xa4, 0x4b, 0xb5, 0x79, 0xec, 0xcf, - 0x23, 0x0b, 0x06, 0x1d, 0xb2, 0xac, 0x1a, 0xee, 0x6e, 0x09, 0xf8, 0x97, 0x7b, 0xa9, 0xdb, 0xdb, - 0xb9, 0x4b, 0x9c, 0x3b, 0xf1, 0x32, 0x10, 0x4a, 0x14, 0xf3, 0xd8, 0x17, 0x83, 0x76, 0x61, 0xc8, - 0x76, 0x8d, 0x39, 0x67, 0xdd, 0x21, 0x76, 0x69, 0x98, 0xcb, 0xec, 0x36, 0x38, 0x63, 0x9f, 0x3f, - 0x29, 0x35, 0xf0, 0x60, 0x40, 0x81, 0x43, 0x61, 0xe8, 0x63, 0x09, 0x90, 0xe3, 0x5a, 0x96, 0x46, - 0x74, 0x62, 0x50, 0x45, 0xe3, 0x8f, 0x13, 0x4e, 0xe9, 0x04, 0xd7, 0xa1, 0xd6, 0xf5, 0xad, 0x64, - 0x12, 0x28, 0xa9, 0x4c, 0xf0, 0xf2, 0xd7, 0x49, 0x8a, 0x53, 0xf4, 0x60, 0x4b, 0xb1, 0xe9, 0xf0, - 0xbf, 0x4b, 0x23, 0x3d, 0x2d, 0x45, 0xfa, 0x23, 0x4d, 0xb8, 0x14, 0x62, 0x1e, 0xfb, 0x62, 0xd0, - 0x35, 0x98, 0xb2, 0x89, 0xd2, 0xbc, 0x6a, 0x68, 0x6d, 0x6c, 0x9a, 0x74, 0x51, 0xd5, 0x88, 0xd3, - 0x76, 0x28, 0xd1, 0x4b, 0xa3, 0x7c, 0xdb, 0x04, 0xbd, 0x61, 0x38, 0x95, 0x0a, 0x67, 0x70, 0xf3, - 0xc6, 0x2c, 0x71, 0x9b, 0xd6, 0x9f, 0x0e, 0xd0, 0xc3, 0x35, 0x66, 0x85, 0xaa, 0xde, 0xb3, 0xc6, - 0xac, 0x88, 0x88, 0x83, 0xaf, 0x90, 0xbe, 0xce, 0xc1, 0x44, 0x48, 0x7c, 0xd7, 0x8d, 0x59, 0x29, - 0x2c, 0x7d, 0x68, 0xcc, 0x4a, 0xef, 0x6c, 0xca, 0xdf, 0xeb, 0xce, 0xa6, 0x7b, 0xd0, 0x10, 0xc6, - 0x9b, 0xa5, 0x42, 0x27, 0xfe, 0xeb, 0x37, 0x4b, 0x85, 0xba, 0x66, 0x94, 0x33, 0x3f, 0xcf, 0x45, - 0x0d, 0xfa, 0x37, 0xea, 0xc8, 0x49, 0x69, 0x90, 0x19, 0xe8, 0xae, 0x41, 0x46, 0xfe, 0x22, 0x0f, - 0x27, 0x93, 0x5f, 0x6c, 0xac, 0x31, 0x43, 0xba, 0x63, 0x63, 0x46, 0x0d, 0x26, 0x37, 0x5d, 0x4d, - 0x6b, 0x73, 0x87, 0x44, 0xde, 0x22, 0xbc, 0x5b, 0xfb, 0x07, 0x05, 0xe7, 0xe4, 0x62, 0x0a, 0x0d, - 0x4e, 0xe5, 0xcc, 0x68, 0x32, 0xc9, 0xf7, 0xd4, 0x64, 0xd2, 0xd1, 0xe3, 0x30, 0x70, 0xf7, 0x3d, - 0x0e, 0xe9, 0x0d, 0x23, 0x85, 0x1e, 0x1a, 0x46, 0x8e, 0xa2, 0xc3, 0x23, 0x25, 0xf0, 0xdd, 0xa9, - 0xc3, 0x43, 0x7e, 0x10, 0xa6, 0x05, 0x1b, 0xfb, 0x3d, 0x6f, 0x1a, 0xd4, 0x36, 0x35, 0x8d, 0xd8, - 0x0b, 0xae, 0xae, 0xb7, 0xe5, 0x8b, 0x30, 0x1a, 0x6f, 0x33, 0xf2, 0x56, 0xde, 0xeb, 0x7c, 0x12, - 0x6f, 0x29, 0x91, 0x95, 0xf7, 0xc6, 0x71, 0x40, 0x21, 0x7f, 0x29, 0xc1, 0xa9, 0x8c, 0x66, 0x0b, - 0xa4, 0xc1, 0xa8, 0xae, 0xec, 0x46, 0x5a, 0x60, 0xee, 0x98, 0x0f, 0xb3, 0x8e, 0xdc, 0xfc, 0x71, - 0x70, 0x25, 0x86, 0x85, 0x13, 0xd8, 0xe8, 0x3a, 0x14, 0x75, 0x65, 0xb7, 0xee, 0xda, 0x2d, 0xd2, - 0xf3, 0xd1, 0x9e, 0x7f, 0xc2, 0x2b, 0x02, 0x05, 0x07, 0x78, 0xf2, 0xa7, 0x12, 0x94, 0xb2, 0xca, - 0x30, 0x74, 0x3e, 0xd6, 0x16, 0xf2, 0x70, 0xa2, 0x2d, 0x64, 0xbc, 0x83, 0xaf, 0x4f, 0x4d, 0x21, - 0x9f, 0x49, 0x30, 0x95, 0x5e, 0xae, 0xa2, 0xa7, 0x62, 0x1a, 0x97, 0x13, 0x1a, 0x8f, 0x25, 0xb8, - 0x84, 0xbe, 0x5b, 0x30, 0x2a, 0x8a, 0x5a, 0x01, 0x23, 0xbc, 0xfc, 0xc4, 0xc1, 0xc1, 0x4c, 0x80, - 0xf9, 0xe5, 0x19, 0x5f, 0xc9, 0xf8, 0x18, 0x4e, 0xe0, 0xca, 0x3f, 0xcc, 0x41, 0x81, 0xbf, 0x92, - 0xf6, 0xa1, 0x96, 0xba, 0x1e, 0xab, 0xa5, 0xba, 0xfd, 0xa7, 0x10, 0xae, 0x65, 0x66, 0x19, 0xb5, - 0x91, 0x28, 0xa3, 0x2e, 0xf4, 0x84, 0x7e, 0x70, 0x05, 0xf5, 0x2c, 0x0c, 0x05, 0x4a, 0x74, 0x17, - 0xb4, 0xe5, 0x4f, 0x72, 0x30, 0x1c, 0x11, 0xd1, 0x65, 0xc8, 0xdf, 0x89, 0x25, 0xcd, 0x5e, 0xfe, - 0xff, 0x2c, 0x22, 0xbb, 0xe2, 0xa7, 0x4d, 0xaf, 0x93, 0x38, 0x6c, 0x77, 0xe8, 0xcc, 0xa6, 0x17, - 0x61, 0xd4, 0xfb, 0x37, 0xbe, 0xe0, 0x6a, 0x2d, 0xcf, 0x77, 0x71, 0xd0, 0x9f, 0xbe, 0x16, 0x9b, - 0xc5, 0x09, 0xea, 0xe9, 0xe7, 0x60, 0x24, 0x26, 0xac, 0xab, 0xc6, 0xdf, 0x5f, 0x4a, 0x30, 0x99, - 0xd6, 0xa0, 0x81, 0x4e, 0xc3, 0xc0, 0xb6, 0x2a, 0x5e, 0x92, 0x22, 0xaf, 0x6f, 0xff, 0xab, 0x1a, - 0x4d, 0xcc, 0x67, 0x82, 0xbe, 0xed, 0x5c, 0x66, 0xdf, 0xf6, 0x39, 0x00, 0xc5, 0x52, 0xc5, 0xbf, - 0x46, 0x0a, 0xab, 0x82, 0xcd, 0x1b, 0xfe, 0xd3, 0x24, 0x8e, 0x50, 0xf1, 0x07, 0xd7, 0x50, 0x1f, - 0x51, 0x20, 0x86, 0xef, 0xa0, 0x11, 0x55, 0xa3, 0x74, 0xf2, 0xaf, 0x24, 0x78, 0xf8, 0x8e, 0x47, - 0x3a, 0x54, 0x8d, 0x85, 0x89, 0x4a, 0x22, 0x4c, 0xcc, 0x64, 0x03, 0xf4, 0xb1, 0xf5, 0xed, 0xbb, - 0x39, 0x40, 0x6b, 0x5b, 0xaa, 0xdd, 0xac, 0x29, 0x36, 0x6d, 0x63, 0x61, 0x60, 0x1f, 0x02, 0xc7, - 0x79, 0x18, 0x6e, 0x12, 0xa7, 0x61, 0xab, 0xdc, 0x59, 0x62, 0x59, 0x03, 0xcf, 0x2f, 0x84, 0x53, - 0x38, 0x4a, 0x87, 0x5a, 0x50, 0xdc, 0xf1, 0xd6, 0xce, 0x7f, 0xb8, 0xeb, 0xb6, 0x16, 0x0e, 0x77, - 0x42, 0xf8, 0x9d, 0x88, 0x01, 0x07, 0x07, 0xe0, 0xf2, 0x47, 0x12, 0x4c, 0x75, 0x3a, 0x66, 0x81, - 0xa9, 0x7e, 0xef, 0x9d, 0xf3, 0x20, 0x0c, 0x70, 0x74, 0xe6, 0x95, 0x13, 0xde, 0x85, 0x39, 0x93, - 0x8c, 0xf9, 0xa8, 0xfc, 0x95, 0x04, 0xd3, 0xe9, 0xaa, 0xf5, 0xe1, 0x24, 0x72, 0x23, 0x7e, 0x12, - 0xe9, 0xf6, 0xd6, 0x21, 0x5d, 0xef, 0x8c, 0x53, 0xc9, 0x5e, 0xea, 0x1a, 0xf4, 0xc1, 0xc8, 0xcd, - 0xb8, 0x91, 0x73, 0x87, 0x36, 0x32, 0xdd, 0xc0, 0xea, 0xe3, 0x37, 0x6f, 0xcd, 0x1c, 0xfb, 0xfc, - 0xd6, 0xcc, 0xb1, 0x3f, 0xde, 0x9a, 0x39, 0xf6, 0xc1, 0xfe, 0x8c, 0x74, 0x73, 0x7f, 0x46, 0xfa, - 0x7c, 0x7f, 0x46, 0xfa, 0xcb, 0xfe, 0x8c, 0xf4, 0xe1, 0x97, 0x33, 0xc7, 0xae, 0x0f, 0x0a, 0xcc, - 0x7f, 0x06, 0x00, 0x00, 0xff, 0xff, 0x36, 0x92, 0x08, 0x32, 0xce, 0x3f, 0x00, 0x00, + // 3238 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe4, 0x5b, 0xdd, 0x6f, 0x1b, 0xc7, + 0xb5, 0xf7, 0x92, 0xa2, 0x45, 0x1d, 0x59, 0x92, 0x35, 0x72, 0x64, 0x46, 0x49, 0x24, 0x67, 0x2f, + 0x6e, 0xe2, 0x5c, 0x24, 0xd4, 0x8d, 0x73, 0x9d, 0x9b, 0x38, 0x89, 0x13, 0x51, 0xf2, 0x87, 0x0a, + 0x49, 0x66, 0x86, 0xb4, 0xd1, 0x38, 0x5f, 0x5d, 0x91, 0x23, 0x6a, 0xed, 0xfd, 0xca, 0xec, 0xac, + 0x22, 0x22, 0x28, 0x1a, 0xa0, 0xe8, 0x6b, 0x91, 0xbe, 0x14, 0x29, 0x90, 0x3e, 0xf6, 0xa1, 0x2f, + 0x6d, 0xf2, 0xd0, 0xa6, 0xfd, 0x0b, 0x6a, 0xa0, 0x45, 0x91, 0x02, 0x2d, 0xd0, 0x87, 0x54, 0xa8, + 0x15, 0x34, 0xff, 0x40, 0x91, 0x17, 0x3f, 0x15, 0x33, 0x3b, 0xfb, 0xc9, 0x5d, 0xd9, 0xa4, 0x6c, + 0xa2, 0x40, 0xdf, 0xc4, 0x99, 0x73, 0x7e, 0xe7, 0x63, 0x66, 0xce, 0x39, 0x33, 0x67, 0x05, 0xaf, + 0xdc, 0x7c, 0xc1, 0xad, 0xea, 0xf6, 0xe2, 0x4d, 0x6f, 0x93, 0x50, 0x8b, 0x30, 0xe2, 0x2e, 0x3a, + 0x37, 0x3b, 0x8b, 0x9a, 0xa3, 0xbb, 0x8b, 0x64, 0x97, 0x11, 0xcb, 0xd5, 0x6d, 0xcb, 0x5d, 0xdc, + 0x79, 0x76, 0x93, 0x30, 0xed, 0xd9, 0xc5, 0x0e, 0xb1, 0x08, 0xd5, 0x18, 0x69, 0x57, 0x1d, 0x6a, + 0x33, 0x1b, 0x3d, 0xe3, 0xb3, 0x57, 0x23, 0xf6, 0xaa, 0x73, 0xb3, 0x53, 0xe5, 0xec, 0xd5, 0x88, + 0xbd, 0x2a, 0xd9, 0xe7, 0x9e, 0xe9, 0xe8, 0x6c, 0xdb, 0xdb, 0xac, 0xb6, 0x6c, 0x73, 0xb1, 0x63, + 0x77, 0xec, 0x45, 0x81, 0xb2, 0xe9, 0x6d, 0x89, 0x5f, 0xe2, 0x87, 0xf8, 0xcb, 0x47, 0x9f, 0xfb, + 0x3f, 0xa9, 0x9c, 0xe6, 0xe8, 0xa6, 0xd6, 0xda, 0xd6, 0x2d, 0x42, 0xbb, 0x81, 0x7a, 0x8b, 0x94, + 0xb8, 0xb6, 0x47, 0x5b, 0x24, 0xad, 0xd3, 0x81, 0x5c, 0xee, 0xa2, 0x49, 0x98, 0xb6, 0xb8, 0xd3, + 0x63, 0xc9, 0xdc, 0x62, 0x1e, 0x17, 0xf5, 0x2c, 0xa6, 0x9b, 0xbd, 0x62, 0x9e, 0xbf, 0x1b, 0x83, + 0xdb, 0xda, 0x26, 0xa6, 0xd6, 0xc3, 0xf7, 0x5c, 0x1e, 0x9f, 0xc7, 0x74, 0x63, 0x51, 0xb7, 0x98, + 0xcb, 0xe8, 0x41, 0x36, 0xb9, 0x84, 0xee, 0x10, 0x1a, 0x5f, 0x25, 0xcd, 0x74, 0x0c, 0x92, 0x65, + 0xd3, 0xd3, 0xb9, 0x8b, 0x9b, 0x41, 0xad, 0x56, 0x01, 0x96, 0xea, 0xab, 0xd7, 0x08, 0xe5, 0x6b, + 0x86, 0x4e, 0xc1, 0x88, 0xa5, 0x99, 0xa4, 0xa2, 0x9c, 0x52, 0x4e, 0x8f, 0xd5, 0x8e, 0xdd, 0xda, + 0x5b, 0x38, 0xb2, 0xbf, 0xb7, 0x30, 0xb2, 0xa1, 0x99, 0x04, 0x8b, 0x19, 0xf5, 0x27, 0x0a, 0x3c, + 0xbc, 0xec, 0xb9, 0xcc, 0x36, 0xd7, 0x09, 0xa3, 0x7a, 0x6b, 0xd9, 0xa3, 0x94, 0x58, 0xac, 0xc1, + 0x34, 0xe6, 0xb9, 0x77, 0xe7, 0x47, 0xd7, 0xa1, 0xb4, 0xa3, 0x19, 0x1e, 0xa9, 0x14, 0x4e, 0x29, + 0xa7, 0xc7, 0xcf, 0x54, 0xab, 0x72, 0x2f, 0xc5, 0x1d, 0x13, 0xec, 0xa6, 0x6a, 0xb0, 0xda, 0xd5, + 0xd7, 0x3d, 0xcd, 0x62, 0x3a, 0xeb, 0xd6, 0x4e, 0x48, 0xc8, 0x63, 0x52, 0xee, 0x35, 0x8e, 0x85, + 0x7d, 0x48, 0xf5, 0x87, 0x0a, 0x3c, 0x96, 0xab, 0xdb, 0x9a, 0xee, 0x32, 0x64, 0x42, 0x49, 0x67, + 0xc4, 0x74, 0x2b, 0xca, 0xa9, 0xe2, 0xe9, 0xf1, 0x33, 0x97, 0xab, 0x7d, 0xed, 0xe4, 0x6a, 0x2e, + 0x78, 0x6d, 0x42, 0xea, 0x55, 0x5a, 0xe5, 0xf0, 0xd8, 0x97, 0xa2, 0xfe, 0x48, 0x01, 0x14, 0xe7, + 0x69, 0x6a, 0xb4, 0x43, 0xd8, 0x3d, 0x78, 0xe9, 0x8d, 0xc3, 0x79, 0x69, 0x46, 0x42, 0x8e, 0xfb, + 0x02, 0x13, 0x4e, 0xfa, 0x50, 0x81, 0xd9, 0x5e, 0x9d, 0x84, 0x77, 0xb6, 0x92, 0xde, 0x59, 0x3a, + 0x84, 0x77, 0x7c, 0xd4, 0x1c, 0xb7, 0xfc, 0xaa, 0x00, 0x63, 0x2b, 0x1a, 0x31, 0x6d, 0xab, 0x41, + 0x18, 0xfa, 0x0e, 0x94, 0xf9, 0xf1, 0x6c, 0x6b, 0x4c, 0x13, 0x1e, 0x19, 0x3f, 0xf3, 0xbf, 0x07, + 0x99, 0xeb, 0x56, 0x39, 0x75, 0x75, 0xe7, 0xd9, 0xea, 0x95, 0xcd, 0x1b, 0xa4, 0xc5, 0xd6, 0x09, + 0xd3, 0x6a, 0x48, 0xca, 0x81, 0x68, 0x0c, 0x87, 0xa8, 0xe8, 0x1d, 0x18, 0x71, 0x1d, 0xd2, 0x92, + 0xce, 0x7c, 0xb9, 0x4f, 0xb3, 0x42, 0x4d, 0x1b, 0x0e, 0x69, 0x45, 0xab, 0xc5, 0x7f, 0x61, 0x81, + 0x8b, 0xb6, 0xe0, 0xa8, 0x2b, 0xb6, 0x41, 0xa5, 0x28, 0x24, 0x9c, 0x1f, 0x58, 0x82, 0xbf, 0x99, + 0x26, 0xa5, 0x8c, 0xa3, 0xfe, 0x6f, 0x2c, 0xd1, 0xd5, 0x3f, 0x28, 0x30, 0x11, 0xd2, 0x8a, 0x15, + 0x7b, 0xab, 0xc7, 0x77, 0xd5, 0x7b, 0xf3, 0x1d, 0xe7, 0x16, 0x9e, 0x3b, 0x2e, 0x65, 0x95, 0x83, + 0x91, 0x98, 0xdf, 0xde, 0x0e, 0xf6, 0x43, 0x41, 0xec, 0x87, 0x17, 0x06, 0x35, 0x2b, 0x67, 0x1b, + 0xfc, 0x3e, 0x6e, 0x0e, 0x77, 0x27, 0x7a, 0x1b, 0xca, 0x2e, 0x31, 0x48, 0x8b, 0xd9, 0x54, 0x9a, + 0xf3, 0xdc, 0x3d, 0x9a, 0xa3, 0x6d, 0x12, 0xa3, 0x21, 0x59, 0x6b, 0xc7, 0xb8, 0x3d, 0xc1, 0x2f, + 0x1c, 0x42, 0xa2, 0x37, 0xa1, 0xcc, 0x88, 0xe9, 0x18, 0x1a, 0x0b, 0x0e, 0xd6, 0x33, 0xf9, 0x26, + 0x71, 0xd8, 0xba, 0xdd, 0x6e, 0x4a, 0x06, 0xb1, 0xf8, 0xa1, 0xb3, 0x82, 0x51, 0x1c, 0x02, 0xaa, + 0x1f, 0x15, 0x61, 0x2a, 0xb5, 0x90, 0xe8, 0x1a, 0xcc, 0xb6, 0xfc, 0x30, 0xb1, 0xe1, 0x99, 0x9b, + 0x84, 0x36, 0x5a, 0xdb, 0xa4, 0xed, 0x19, 0xa4, 0x2d, 0xac, 0x2b, 0xd5, 0xe6, 0x25, 0xde, 0xec, + 0x72, 0x26, 0x15, 0xce, 0xe1, 0x46, 0xdf, 0x02, 0x64, 0x89, 0xa1, 0x75, 0xdd, 0x75, 0x43, 0xcc, + 0x82, 0xc0, 0x9c, 0x93, 0x98, 0x68, 0xa3, 0x87, 0x02, 0x67, 0x70, 0x71, 0x1d, 0xdb, 0xc4, 0xd5, + 0x29, 0x69, 0xa7, 0x75, 0x2c, 0x26, 0x75, 0x5c, 0xc9, 0xa4, 0xc2, 0x39, 0xdc, 0xe8, 0x2c, 0x8c, + 0xfb, 0xd2, 0x30, 0xd1, 0xda, 0xdd, 0xca, 0x88, 0x00, 0x0b, 0x03, 0xd3, 0x46, 0x34, 0x85, 0xe3, + 0x74, 0xdc, 0x34, 0x7b, 0x53, 0x64, 0xbb, 0xf6, 0x25, 0x3f, 0x55, 0xe9, 0xb6, 0x55, 0x29, 0x9d, + 0x52, 0x4e, 0x17, 0x23, 0xd3, 0xae, 0xf4, 0x50, 0xe0, 0x0c, 0x2e, 0xf5, 0x37, 0x05, 0x80, 0x15, + 0xe2, 0x18, 0x76, 0xd7, 0x24, 0xd6, 0x30, 0x02, 0xcd, 0xbb, 0x89, 0x40, 0xf3, 0x4a, 0xbf, 0xe7, + 0x25, 0x54, 0x35, 0x37, 0xd2, 0x74, 0x52, 0x91, 0xe6, 0xd5, 0xc1, 0x45, 0x1c, 0x1c, 0x6a, 0x6e, + 0x17, 0x61, 0x26, 0x22, 0x5e, 0xb6, 0xad, 0xb6, 0xce, 0x5d, 0x8a, 0x5e, 0x82, 0x11, 0xd6, 0x75, + 0x82, 0xd4, 0xf5, 0x64, 0xa0, 0x62, 0xb3, 0xeb, 0x90, 0x3b, 0x7b, 0x0b, 0x27, 0x33, 0x58, 0xf8, + 0x14, 0x16, 0x4c, 0xe8, 0x5a, 0xa8, 0x7d, 0x41, 0xb0, 0x9f, 0x4f, 0x0a, 0xbf, 0xb3, 0xb7, 0x70, + 0x60, 0xed, 0x52, 0x0d, 0x31, 0x93, 0xca, 0xa2, 0x27, 0xe0, 0x28, 0x25, 0x9a, 0x6b, 0x5b, 0x62, + 0x97, 0x8d, 0x45, 0x46, 0x61, 0x31, 0x8a, 0xe5, 0x2c, 0x7a, 0x0a, 0x46, 0x4d, 0xe2, 0xba, 0x5a, + 0x87, 0x88, 0x0d, 0x35, 0x56, 0x9b, 0x92, 0x84, 0xa3, 0xeb, 0xfe, 0x30, 0x0e, 0xe6, 0xd1, 0x0d, + 0x98, 0x34, 0x34, 0x97, 0x5d, 0x75, 0xda, 0x1a, 0x23, 0x4d, 0xdd, 0x24, 0x95, 0xa3, 0xc2, 0xe1, + 0xff, 0x73, 0x6f, 0x3b, 0x86, 0x73, 0xd4, 0x66, 0x25, 0xfa, 0xe4, 0x5a, 0x02, 0x09, 0xa7, 0x90, + 0xd1, 0x0e, 0x20, 0x3e, 0xd2, 0xa4, 0x9a, 0xe5, 0xfa, 0x2e, 0xe3, 0xf2, 0x46, 0xfb, 0x96, 0x17, + 0x1e, 0x8f, 0xb5, 0x1e, 0x34, 0x9c, 0x21, 0x41, 0xfd, 0xa3, 0x02, 0x93, 0xd1, 0x82, 0x0d, 0x21, + 0x9f, 0xbc, 0x93, 0xcc, 0x27, 0x2f, 0x0e, 0xbc, 0x79, 0x73, 0x12, 0xca, 0xc7, 0x45, 0x40, 0x11, + 0x11, 0xb6, 0x0d, 0x63, 0x53, 0x6b, 0xdd, 0xbc, 0x87, 0x72, 0xeb, 0x67, 0x0a, 0x20, 0x4f, 0x2c, + 0x48, 0x7b, 0xc9, 0xb2, 0x6c, 0x26, 0xc2, 0x47, 0xa0, 0xe6, 0x1b, 0x03, 0xab, 0x19, 0x68, 0x50, + 0xbd, 0xda, 0x83, 0x7d, 0xc1, 0x62, 0xb4, 0x1b, 0xad, 0x58, 0x2f, 0x01, 0xce, 0x50, 0x08, 0xbd, + 0x07, 0x40, 0x25, 0x66, 0xd3, 0x96, 0x21, 0xa0, 0xdf, 0x28, 0x13, 0x28, 0xb5, 0x6c, 0x5b, 0x5b, + 0x7a, 0x27, 0x0a, 0x68, 0x38, 0x04, 0xc6, 0x31, 0x21, 0x73, 0x17, 0xe0, 0x64, 0x8e, 0xf6, 0xe8, + 0x38, 0x14, 0x6f, 0x92, 0xae, 0xef, 0x56, 0xcc, 0xff, 0x44, 0x27, 0xe2, 0x65, 0xeb, 0x98, 0xac, + 0x38, 0xcf, 0x15, 0x5e, 0x50, 0xd4, 0xaf, 0x4b, 0xf1, 0xbd, 0x26, 0x92, 0xfd, 0x69, 0x28, 0x53, + 0xe2, 0x18, 0x7a, 0x4b, 0x73, 0x65, 0x3a, 0x14, 0x79, 0x1b, 0xcb, 0x31, 0x1c, 0xce, 0x26, 0xca, + 0x82, 0xc2, 0x83, 0x2d, 0x0b, 0x8a, 0xf7, 0xb9, 0x2c, 0x40, 0x36, 0x94, 0x5d, 0xc6, 0x2f, 0x5c, + 0x1d, 0x3f, 0x07, 0xf6, 0x5f, 0x56, 0xc7, 0x63, 0xb6, 0x0f, 0x14, 0x09, 0x0c, 0x46, 0x70, 0x28, + 0x04, 0x2d, 0xc1, 0x94, 0xa9, 0x5b, 0x22, 0x99, 0x36, 0x48, 0xcb, 0xb6, 0xda, 0xae, 0x08, 0x76, + 0xa5, 0xda, 0x49, 0xc9, 0x34, 0xb5, 0x9e, 0x9c, 0xc6, 0x69, 0x7a, 0xb4, 0x06, 0x27, 0x28, 0xd9, + 0xd1, 0xb9, 0x1a, 0x97, 0x75, 0x97, 0xd9, 0xb4, 0xbb, 0xa6, 0x9b, 0x3a, 0x13, 0x21, 0xb0, 0x54, + 0xab, 0xec, 0xef, 0x2d, 0x9c, 0xc0, 0x19, 0xf3, 0x38, 0x93, 0x8b, 0x47, 0x67, 0x47, 0xf3, 0x5c, + 0xd2, 0x16, 0x21, 0xad, 0x1c, 0x45, 0xe7, 0xba, 0x18, 0xc5, 0x72, 0x16, 0x99, 0x89, 0xcd, 0x5d, + 0xbe, 0x1f, 0x9b, 0x7b, 0x32, 0x7f, 0x63, 0xa3, 0xab, 0x70, 0xd2, 0xa1, 0x76, 0x87, 0x12, 0xd7, + 0x5d, 0x21, 0x5a, 0xdb, 0xd0, 0x2d, 0x12, 0xf8, 0x6b, 0x4c, 0xd8, 0xf9, 0xc8, 0xfe, 0xde, 0xc2, + 0xc9, 0x7a, 0x36, 0x09, 0xce, 0xe3, 0x55, 0x3f, 0x19, 0x81, 0xe3, 0xe9, 0x2c, 0x9b, 0x53, 0xd4, + 0x28, 0x83, 0x14, 0x35, 0xe8, 0xe9, 0xd8, 0xb1, 0xf1, 0x2b, 0xbe, 0x70, 0x37, 0x64, 0x1c, 0x9d, + 0x25, 0x98, 0x92, 0x71, 0x24, 0x98, 0x94, 0x65, 0x5d, 0xb8, 0x1b, 0xae, 0x26, 0xa7, 0x71, 0x9a, + 0x1e, 0x5d, 0x82, 0x69, 0x6d, 0x47, 0xd3, 0x0d, 0x6d, 0xd3, 0x20, 0x21, 0x88, 0x5f, 0xce, 0x3d, + 0x2c, 0x41, 0xa6, 0x97, 0xd2, 0x04, 0xb8, 0x97, 0x07, 0xad, 0xc3, 0x8c, 0x67, 0xf5, 0x42, 0xf9, + 0xbb, 0xf3, 0x11, 0x09, 0x35, 0x73, 0xb5, 0x97, 0x04, 0x67, 0xf1, 0xa1, 0x1d, 0x80, 0x56, 0x50, + 0x10, 0xb8, 0x95, 0xa3, 0x22, 0x56, 0xd7, 0x06, 0x3e, 0x5b, 0x61, 0x6d, 0x11, 0x45, 0xc4, 0x70, + 0xc8, 0xc5, 0x31, 0x49, 0xe8, 0x25, 0x98, 0xa0, 0xa2, 0x6e, 0x0d, 0x0c, 0x18, 0x15, 0x06, 0x3c, + 0x24, 0xd9, 0x26, 0x70, 0x7c, 0x12, 0x27, 0x69, 0xd5, 0x3f, 0x29, 0xf1, 0x14, 0x15, 0x1c, 0x5f, + 0x74, 0x2e, 0x51, 0x56, 0x3d, 0x91, 0x2a, 0xab, 0x66, 0x7b, 0x39, 0x62, 0x55, 0xd5, 0xf7, 0x60, + 0x82, 0x6f, 0x6b, 0xdd, 0xea, 0xf8, 0x4b, 0x29, 0x43, 0xe4, 0xc5, 0x01, 0x8e, 0x4e, 0x88, 0x11, + 0x4b, 0xb5, 0xd3, 0xc2, 0xa6, 0xf8, 0x24, 0x4e, 0xca, 0x53, 0x3f, 0x53, 0x60, 0xf6, 0x62, 0xe3, + 0x12, 0xb5, 0x3d, 0x27, 0x50, 0xef, 0x8a, 0xe3, 0xfb, 0xea, 0xff, 0x61, 0x84, 0x7a, 0x46, 0x60, + 0xd7, 0x7f, 0x05, 0x76, 0x61, 0xcf, 0xe0, 0x76, 0xcd, 0xa4, 0xb8, 0x7c, 0xa3, 0x38, 0x03, 0x7a, + 0x07, 0x8e, 0x52, 0xcd, 0xea, 0x90, 0x20, 0x09, 0x3f, 0xdf, 0xa7, 0x35, 0xab, 0x2b, 0x98, 0xb3, + 0xc7, 0x4a, 0x41, 0x81, 0x86, 0x25, 0xaa, 0xfa, 0x53, 0x05, 0xa6, 0x2e, 0x37, 0x9b, 0xf5, 0x55, + 0x4b, 0x9c, 0xe2, 0xba, 0xc6, 0xb6, 0x79, 0x9d, 0xe0, 0x68, 0x6c, 0x3b, 0x5d, 0x27, 0xf0, 0x39, + 0x2c, 0x66, 0xd0, 0x36, 0x8c, 0xf2, 0xe8, 0x41, 0xac, 0xf6, 0x80, 0x25, 0xbe, 0x14, 0x57, 0xf3, + 0x41, 0xa2, 0xfa, 0x53, 0x0e, 0xe0, 0x00, 0x5e, 0xfd, 0x00, 0x4e, 0xc4, 0xd4, 0xe3, 0xfe, 0x12, + 0x8f, 0x38, 0xa8, 0x05, 0x25, 0xae, 0x49, 0xf0, 0x44, 0xd3, 0xef, 0x4b, 0x43, 0xca, 0xe4, 0xa8, + 0x8e, 0xe2, 0xbf, 0x5c, 0xec, 0x63, 0xab, 0xeb, 0x30, 0x71, 0xd9, 0x76, 0x59, 0xdd, 0xa6, 0x4c, + 0xb8, 0x0d, 0x3d, 0x06, 0x45, 0x53, 0xb7, 0x64, 0x96, 0x1e, 0x97, 0x3c, 0x45, 0x9e, 0x47, 0xf8, + 0xb8, 0x98, 0xd6, 0x76, 0x65, 0x34, 0x8a, 0xa6, 0xb5, 0x5d, 0xcc, 0xc7, 0xd5, 0x4b, 0x30, 0x2a, + 0x97, 0x23, 0x0e, 0x54, 0x3c, 0x18, 0xa8, 0x98, 0x01, 0xf4, 0xcb, 0x02, 0x8c, 0x4a, 0xed, 0x87, + 0x70, 0x99, 0x7b, 0x2b, 0x71, 0x99, 0x3b, 0x37, 0xd8, 0x4a, 0xe7, 0xde, 0xe4, 0xda, 0xa9, 0x9b, + 0xdc, 0xcb, 0x03, 0xe2, 0x1f, 0x7c, 0x8d, 0xfb, 0x54, 0x81, 0xc9, 0xe4, 0x9e, 0xe3, 0xf7, 0x72, + 0x9e, 0x53, 0xf4, 0x16, 0xd9, 0x88, 0x8a, 0xe2, 0xf0, 0x5e, 0xde, 0x88, 0xa6, 0x70, 0x9c, 0x0e, + 0x75, 0x42, 0x36, 0xbe, 0x2d, 0xa4, 0x53, 0xf2, 0x5d, 0xee, 0x31, 0xdd, 0xa8, 0xfa, 0xcf, 0xda, + 0xd5, 0x55, 0x8b, 0x5d, 0xa1, 0x0d, 0x46, 0x75, 0xab, 0xd3, 0x23, 0x48, 0xec, 0xb1, 0x38, 0xb2, + 0x7a, 0x4b, 0x81, 0x71, 0xa9, 0xf2, 0x10, 0xae, 0x24, 0x6f, 0x26, 0xaf, 0x24, 0xcf, 0x0f, 0x78, + 0x9e, 0xb3, 0xef, 0x23, 0x9f, 0x47, 0xa6, 0xf0, 0x13, 0xcc, 0x03, 0xcc, 0xb6, 0xed, 0xb2, 0x74, + 0x80, 0xe1, 0x67, 0x0d, 0x8b, 0x19, 0xf4, 0x03, 0x05, 0x8e, 0xeb, 0xa9, 0x33, 0x2f, 0x7d, 0xfd, + 0xea, 0x60, 0xaa, 0x85, 0x30, 0xb5, 0x8a, 0x94, 0x77, 0x3c, 0x3d, 0x83, 0x7b, 0x44, 0xaa, 0x1e, + 0xf4, 0x50, 0x21, 0x0d, 0x46, 0xb6, 0x19, 0x73, 0xe4, 0x22, 0x2c, 0x0f, 0x1e, 0x79, 0x22, 0x95, + 0xca, 0xc2, 0xfc, 0x66, 0xb3, 0x8e, 0x05, 0xb4, 0xfa, 0x8b, 0x42, 0xe8, 0xb0, 0x86, 0x7f, 0x48, + 0xc2, 0x78, 0xab, 0xdc, 0x8f, 0x78, 0x3b, 0x9e, 0x15, 0x6b, 0xd1, 0xb7, 0xa1, 0xc8, 0x8c, 0x41, + 0x2f, 0xa5, 0x52, 0x42, 0x73, 0xad, 0x11, 0x05, 0xac, 0xe6, 0x5a, 0x03, 0x73, 0x48, 0xf4, 0x2e, + 0x94, 0x78, 0x36, 0xe3, 0x67, 0xbc, 0x38, 0x78, 0x0c, 0xe1, 0xfe, 0x8a, 0x76, 0x18, 0xff, 0xe5, + 0x62, 0x1f, 0x57, 0xfd, 0x00, 0x26, 0x12, 0x81, 0x00, 0xdd, 0x80, 0x63, 0x86, 0xad, 0xb5, 0x6b, + 0x9a, 0xa1, 0x59, 0x2d, 0x42, 0xd3, 0xa1, 0x31, 0xfb, 0x3e, 0xb3, 0x16, 0xe3, 0x90, 0x01, 0x25, + 0xec, 0xb3, 0xc4, 0xe7, 0x70, 0x02, 0x5b, 0xd5, 0x00, 0x22, 0xeb, 0xd1, 0x02, 0x94, 0xf8, 0x16, + 0xf6, 0x33, 0xd3, 0x58, 0x6d, 0x8c, 0xeb, 0xca, 0x77, 0xb6, 0x8b, 0xfd, 0x71, 0x74, 0x06, 0xc0, + 0x25, 0x2d, 0x4a, 0x98, 0x88, 0x3b, 0xfe, 0x0b, 0x50, 0x18, 0x81, 0x1b, 0xe1, 0x0c, 0x8e, 0x51, + 0xa9, 0x7f, 0x51, 0x60, 0x62, 0x83, 0xb0, 0xf7, 0x6d, 0x7a, 0xb3, 0x6e, 0x1b, 0x7a, 0xab, 0x3b, + 0x84, 0xb8, 0xbf, 0x99, 0x88, 0xfb, 0xaf, 0xf5, 0xb9, 0x66, 0x09, 0x6d, 0xf3, 0xa2, 0xbf, 0xfa, + 0x0f, 0x05, 0x2a, 0x09, 0xca, 0x78, 0x98, 0x20, 0x50, 0x72, 0x6c, 0xca, 0x82, 0x1c, 0x7f, 0x28, + 0x0d, 0x78, 0x48, 0x8d, 0x65, 0x79, 0x0e, 0x8b, 0x7d, 0x74, 0x6e, 0xe7, 0x16, 0xb5, 0x4d, 0xb9, + 0xef, 0x0f, 0x27, 0x85, 0x10, 0x1a, 0xd9, 0x79, 0x91, 0xda, 0x26, 0x16, 0xd8, 0xea, 0x9f, 0x15, + 0x98, 0x4e, 0x50, 0x0e, 0x21, 0xa4, 0x6b, 0xc9, 0x90, 0xfe, 0xf2, 0x61, 0x0c, 0xcb, 0x09, 0xec, + 0xdf, 0xa4, 0xcd, 0xe2, 0x0e, 0x40, 0x5b, 0x30, 0xee, 0xd8, 0xed, 0xc6, 0x7d, 0x68, 0x60, 0x4c, + 0xf1, 0x0c, 0x59, 0x8f, 0xb0, 0x70, 0x1c, 0x18, 0xed, 0xc2, 0xb4, 0xa5, 0x99, 0xc4, 0x75, 0xb4, + 0x16, 0x69, 0xdc, 0x87, 0x77, 0x91, 0x87, 0xf8, 0x0d, 0x6e, 0x23, 0x8d, 0x88, 0x7b, 0x85, 0xa8, + 0xbf, 0xee, 0xb1, 0xdb, 0xa6, 0x0c, 0xbd, 0x0e, 0x65, 0xd1, 0x4b, 0x6e, 0xd9, 0x86, 0x4c, 0x6d, + 0x67, 0xf9, 0xd2, 0xd4, 0xe5, 0xd8, 0x9d, 0xbd, 0x85, 0xff, 0x3e, 0xf0, 0x59, 0x37, 0x20, 0xc4, + 0x21, 0x0c, 0xda, 0x80, 0x11, 0xe7, 0x30, 0x65, 0x86, 0x48, 0x2c, 0xa2, 0xb6, 0x10, 0x38, 0xea, + 0x3f, 0xd3, 0x8a, 0x8b, 0xf4, 0x72, 0xe3, 0xbe, 0x2d, 0x58, 0x58, 0xd6, 0xe4, 0x2e, 0x1a, 0x85, + 0x51, 0x99, 0x65, 0xe5, 0xbe, 0xbc, 0x74, 0x98, 0x7d, 0x19, 0xcf, 0x0c, 0xe1, 0x25, 0x22, 0x18, + 0x0c, 0x04, 0xa9, 0x7f, 0x53, 0x60, 0x5a, 0x28, 0xd4, 0xf2, 0xa8, 0xce, 0xba, 0x43, 0x8b, 0xa0, + 0x5b, 0x89, 0x08, 0xba, 0xd2, 0xa7, 0xa1, 0x3d, 0x1a, 0xe7, 0x46, 0xd1, 0x2f, 0x15, 0x78, 0xa8, + 0x87, 0x7a, 0x08, 0x11, 0x86, 0x24, 0x23, 0xcc, 0x6b, 0x87, 0x35, 0x30, 0x27, 0xca, 0xdc, 0x82, + 0x0c, 0xf3, 0xc4, 0xc6, 0x3d, 0x03, 0xe0, 0x50, 0x7d, 0x47, 0x37, 0x48, 0x47, 0xf6, 0x12, 0xcb, + 0xd1, 0x92, 0xd4, 0xc3, 0x19, 0x1c, 0xa3, 0x42, 0xdf, 0x85, 0xd9, 0x36, 0xd9, 0xd2, 0x3c, 0x83, + 0x2d, 0xb5, 0xdb, 0xcb, 0x9a, 0xa3, 0x6d, 0xea, 0x86, 0xce, 0x74, 0x79, 0xc3, 0x1e, 0xab, 0x5d, + 0xf0, 0x7b, 0x7c, 0x59, 0x14, 0x77, 0xf6, 0x16, 0x9e, 0x3c, 0xb8, 0x31, 0x13, 0x10, 0x77, 0x71, + 0x8e, 0x10, 0xf4, 0x7d, 0x05, 0x2a, 0x94, 0xbc, 0xe7, 0xe9, 0x94, 0xb4, 0x57, 0xa8, 0xed, 0x24, + 0x34, 0x28, 0x0a, 0x0d, 0x2e, 0xed, 0xef, 0x2d, 0x54, 0x70, 0x0e, 0x4d, 0x3f, 0x3a, 0xe4, 0x0a, + 0x42, 0x0c, 0x66, 0x34, 0xc3, 0xb0, 0xdf, 0x27, 0x49, 0x0f, 0x8c, 0x08, 0xf9, 0xb5, 0xfd, 0xbd, + 0x85, 0x99, 0xa5, 0xde, 0xe9, 0x7e, 0x44, 0x67, 0xc1, 0xa3, 0x45, 0x18, 0xdd, 0xb1, 0x0d, 0xcf, + 0x24, 0x6e, 0xa5, 0x24, 0x24, 0xf1, 0x88, 0x3b, 0x7a, 0xcd, 0x1f, 0xba, 0xb3, 0xb7, 0x70, 0xf4, + 0x62, 0x43, 0x3c, 0x7d, 0x04, 0x54, 0xfc, 0x8e, 0xc6, 0x6b, 0x26, 0x79, 0xe4, 0xc5, 0xbb, 0x6b, + 0x39, 0x8a, 0x31, 0x97, 0xa3, 0x29, 0x1c, 0xa7, 0x43, 0x26, 0x8c, 0x6d, 0xcb, 0x7b, 0xbb, 0x5b, + 0x19, 0x1d, 0x28, 0xfb, 0x25, 0xee, 0xfd, 0xb5, 0x69, 0x29, 0x72, 0x2c, 0x18, 0x76, 0x71, 0x24, + 0x01, 0x3d, 0x05, 0xa3, 0xe2, 0xc7, 0xea, 0x8a, 0x78, 0xad, 0x2d, 0x47, 0x91, 0xe8, 0xb2, 0x3f, + 0x8c, 0x83, 0xf9, 0x80, 0x74, 0xb5, 0xbe, 0x2c, 0x1e, 0x57, 0x53, 0xa4, 0xab, 0xf5, 0x65, 0x1c, + 0xcc, 0x23, 0x07, 0x46, 0x5d, 0xb2, 0xa6, 0x5b, 0xde, 0x6e, 0x05, 0xc4, 0xc9, 0xbd, 0xd0, 0xa7, + 0x09, 0x8d, 0x0b, 0x82, 0x3b, 0xf5, 0x14, 0x15, 0x49, 0x94, 0xf3, 0x38, 0x10, 0x83, 0x76, 0x61, + 0x8c, 0x7a, 0xd6, 0x92, 0x7b, 0xd5, 0x25, 0xb4, 0x32, 0x2e, 0x64, 0xf6, 0x1b, 0x9c, 0x71, 0xc0, + 0x9f, 0x96, 0x1a, 0x7a, 0x30, 0xa4, 0xc0, 0x91, 0x30, 0xf4, 0x89, 0x02, 0xc8, 0xf5, 0x1c, 0xc7, + 0x20, 0x26, 0xb1, 0x98, 0x66, 0x88, 0xd7, 0x30, 0xb7, 0x72, 0x4c, 0xe8, 0x50, 0xef, 0xd7, 0xee, + 0x1e, 0xa0, 0xb4, 0x32, 0xe1, 0x53, 0x73, 0x2f, 0x29, 0xce, 0xd0, 0x83, 0x2f, 0xc5, 0x96, 0x2b, + 0xfe, 0xae, 0x4c, 0x0c, 0xb4, 0x14, 0xd9, 0xaf, 0x82, 0xd1, 0x52, 0xc8, 0x79, 0x1c, 0x88, 0x41, + 0xd7, 0x60, 0x96, 0x12, 0xad, 0x7d, 0xc5, 0x32, 0xba, 0xd8, 0xb6, 0xd9, 0x45, 0xdd, 0x20, 0x6e, + 0xd7, 0x65, 0xc4, 0xac, 0x4c, 0x8a, 0x6d, 0x13, 0x7e, 0x8c, 0x80, 0x33, 0xa9, 0x70, 0x0e, 0xb7, + 0xf8, 0x12, 0x40, 0xbe, 0xc1, 0x0e, 0xe7, 0x93, 0xa3, 0xc3, 0x7d, 0x09, 0x10, 0xa9, 0xfa, 0xc0, + 0xbe, 0x04, 0x88, 0x89, 0x38, 0xf8, 0x09, 0xe9, 0x9b, 0x02, 0xcc, 0x44, 0xc4, 0xf7, 0xfc, 0x25, + 0x40, 0x06, 0xcb, 0x10, 0xbe, 0x04, 0xc8, 0x6e, 0xa5, 0x17, 0x1f, 0x74, 0x2b, 0xfd, 0x01, 0x7c, + 0x81, 0x20, 0xba, 0xf3, 0x91, 0x13, 0xff, 0xfd, 0xbb, 0xf3, 0x91, 0xae, 0x39, 0xe5, 0xcc, 0x6f, + 0x0b, 0x71, 0x83, 0xfe, 0x83, 0x5a, 0xc0, 0x19, 0x1d, 0xd9, 0x91, 0xfe, 0x3a, 0xb2, 0xea, 0x97, + 0x45, 0x38, 0x9e, 0x3e, 0xb1, 0x89, 0x4e, 0xa0, 0x72, 0xd7, 0x4e, 0x60, 0x1d, 0x4e, 0x6c, 0x79, + 0x86, 0xd1, 0x15, 0x0e, 0x89, 0xb5, 0x03, 0xfd, 0x57, 0xfb, 0x47, 0x25, 0xe7, 0x89, 0x8b, 0x19, + 0x34, 0x38, 0x93, 0x33, 0xa7, 0xab, 0x59, 0x1c, 0xa8, 0xab, 0xd9, 0xd3, 0x54, 0x1b, 0xb9, 0xf7, + 0xa6, 0x5a, 0x76, 0x87, 0xb2, 0x34, 0x40, 0x87, 0xf2, 0x7e, 0xb4, 0x14, 0x33, 0x02, 0xdf, 0xdd, + 0x5a, 0x8a, 0xea, 0xa3, 0x30, 0x27, 0xd9, 0xf8, 0xef, 0x65, 0xdb, 0x62, 0xd4, 0x36, 0x0c, 0x42, + 0x57, 0x3c, 0xd3, 0xec, 0xaa, 0xe7, 0x61, 0x32, 0xd9, 0xd7, 0xf6, 0x57, 0xde, 0x6f, 0xb5, 0xcb, + 0x5e, 0x4a, 0x6c, 0xe5, 0xfd, 0x71, 0x1c, 0x52, 0xa8, 0x5f, 0x29, 0x70, 0x32, 0xa7, 0xbb, 0x87, + 0x0c, 0x98, 0x34, 0xb5, 0xdd, 0x58, 0xcf, 0xf5, 0xae, 0xf9, 0x30, 0xef, 0xca, 0x8d, 0xf6, 0xf7, + 0x16, 0x26, 0xd7, 0x13, 0x58, 0x38, 0x85, 0x8d, 0xae, 0x43, 0xd9, 0xd4, 0x76, 0x1b, 0x1e, 0xed, + 0x90, 0x81, 0xaf, 0xf6, 0xe2, 0x08, 0xaf, 0x4b, 0x14, 0x1c, 0xe2, 0xa9, 0x9f, 0x29, 0x50, 0xc9, + 0x2b, 0xc3, 0xd0, 0xd9, 0x44, 0x1f, 0xf2, 0xf1, 0x54, 0x1f, 0x72, 0xba, 0x87, 0x6f, 0x48, 0x5d, + 0xc8, 0xcf, 0x15, 0x98, 0xcd, 0x2e, 0x57, 0xd1, 0x73, 0x09, 0x8d, 0x17, 0x52, 0x1a, 0x4f, 0xa5, + 0xb8, 0xa4, 0xbe, 0xdb, 0x30, 0x29, 0x8b, 0x5a, 0x09, 0x23, 0xbd, 0xfc, 0xf4, 0xc1, 0xc1, 0x4c, + 0x82, 0x05, 0xe5, 0x99, 0x58, 0xc9, 0xe4, 0x18, 0x4e, 0xe1, 0xaa, 0x3f, 0x2f, 0x40, 0xa9, 0xd1, + 0xd2, 0x0c, 0x32, 0x84, 0x5a, 0xea, 0x7a, 0xa2, 0x96, 0xea, 0xf7, 0x2b, 0x64, 0xa1, 0x65, 0x6e, + 0x19, 0xb5, 0x99, 0x2a, 0xa3, 0xce, 0x0d, 0x84, 0x7e, 0x70, 0x05, 0xf5, 0x22, 0x8c, 0x85, 0x4a, + 0xf4, 0x17, 0xb4, 0xd5, 0x4f, 0x0b, 0x30, 0x1e, 0x13, 0xd1, 0x67, 0xc8, 0xdf, 0x49, 0x24, 0xcd, + 0x41, 0xfe, 0xe1, 0x21, 0x26, 0xbb, 0x1a, 0xa4, 0x4d, 0xff, 0xd3, 0xb5, 0xe8, 0x13, 0xa4, 0xde, + 0x6c, 0x7a, 0x1e, 0x26, 0x99, 0xf8, 0xfe, 0x3f, 0x7c, 0x5a, 0x2b, 0x8a, 0x5d, 0x1c, 0x7e, 0x10, + 0xd9, 0x4c, 0xcc, 0xe2, 0x14, 0xf5, 0xdc, 0x4b, 0x30, 0x91, 0x10, 0xd6, 0xd7, 0x97, 0x66, 0xbf, + 0x53, 0xe0, 0xf1, 0xbb, 0x5e, 0x85, 0x50, 0x2d, 0x71, 0xbc, 0xaa, 0xa9, 0xe3, 0x35, 0x9f, 0x0f, + 0x30, 0xc4, 0x6f, 0x14, 0x7e, 0x5c, 0x00, 0xd4, 0xdc, 0xd6, 0x69, 0xbb, 0xae, 0x51, 0xd6, 0xc5, + 0xf2, 0xbf, 0x3c, 0x86, 0x70, 0xe0, 0xce, 0xc2, 0x78, 0x9b, 0xb8, 0x2d, 0xaa, 0x0b, 0x67, 0xc9, + 0x12, 0x3d, 0x7c, 0x7e, 0x58, 0x89, 0xa6, 0x70, 0x9c, 0x0e, 0x75, 0xa0, 0xbc, 0xe3, 0xff, 0x1f, + 0x51, 0xd0, 0xf0, 0xea, 0xb7, 0x86, 0x8c, 0xfe, 0x13, 0x29, 0xda, 0x5f, 0x72, 0xc0, 0xc5, 0x21, + 0xb8, 0xfa, 0xb1, 0x02, 0xb3, 0xbd, 0x8e, 0x59, 0xe1, 0xaa, 0x3f, 0x78, 0xe7, 0x3c, 0x0a, 0x23, + 0x02, 0x9d, 0x7b, 0xe5, 0x98, 0xff, 0xd0, 0xcc, 0x25, 0x63, 0x31, 0xaa, 0x7e, 0xad, 0xc0, 0x5c, + 0xb6, 0x6a, 0x43, 0xa8, 0xe0, 0x6f, 0x24, 0x2b, 0xf8, 0x7e, 0x6f, 0xeb, 0xd9, 0x7a, 0xe7, 0x54, + 0xf3, 0x7b, 0x99, 0x6b, 0x30, 0x04, 0x23, 0xb7, 0x92, 0x46, 0x2e, 0x1d, 0xda, 0xc8, 0x6c, 0x03, + 0x6b, 0x4f, 0xdd, 0xba, 0x3d, 0x7f, 0xe4, 0x8b, 0xdb, 0xf3, 0x47, 0xfe, 0x7a, 0x7b, 0xfe, 0xc8, + 0x87, 0xfb, 0xf3, 0xca, 0xad, 0xfd, 0x79, 0xe5, 0x8b, 0xfd, 0x79, 0xe5, 0xef, 0xfb, 0xf3, 0xca, + 0x47, 0x5f, 0xcd, 0x1f, 0xb9, 0x3e, 0x2a, 0x31, 0xff, 0x15, 0x00, 0x00, 0xff, 0xff, 0x11, 0x54, + 0x28, 0xa2, 0x4f, 0x39, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.proto index 2aeb4929d3c..1e2ea2b55e4 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.proto @@ -26,6 +26,7 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". @@ -38,12 +39,6 @@ message APIVersion { optional string name = 1; } -message CPUTargetUtilization { - // fraction of the requested CPU that should be utilized/used, - // e.g. 70 means that 70% of the requested CPU should be in use. - optional int32 targetPercentage = 1; -} - message CustomMetricCurrentStatus { // Custom Metric name. optional string name = 1; @@ -337,73 +332,6 @@ message HTTPIngressRuleValue { repeated HTTPIngressPath paths = 1; } -// configuration of a horizontal pod autoscaler. -message HorizontalPodAutoscaler { - // Standard object metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata - // +optional - optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; - - // behaviour of autoscaler. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. - // +optional - optional HorizontalPodAutoscalerSpec spec = 2; - - // current information about the autoscaler. - // +optional - optional HorizontalPodAutoscalerStatus status = 3; -} - -// list of horizontal pod autoscaler objects. -message HorizontalPodAutoscalerList { - // Standard list metadata. - // +optional - optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; - - // list of horizontal pod autoscaler objects. - repeated HorizontalPodAutoscaler items = 2; -} - -// specification of a horizontal pod autoscaler. -message HorizontalPodAutoscalerSpec { - // reference to Scale subresource; horizontal pod autoscaler will learn the current resource consumption from its status, - // and will set the desired number of pods by modifying its spec. - optional SubresourceReference scaleRef = 1; - - // lower limit for the number of pods that can be set by the autoscaler, default 1. - // +optional - optional int32 minReplicas = 2; - - // upper limit for the number of pods that can be set by the autoscaler; cannot be smaller than MinReplicas. - optional int32 maxReplicas = 3; - - // target average CPU utilization (represented as a percentage of requested CPU) over all the pods; - // if not specified it defaults to the target CPU utilization at 80% of the requested resources. - // +optional - optional CPUTargetUtilization cpuUtilization = 4; -} - -// current status of a horizontal pod autoscaler -message HorizontalPodAutoscalerStatus { - // most recent generation observed by this autoscaler. - // +optional - optional int64 observedGeneration = 1; - - // last time the HorizontalPodAutoscaler scaled the number of pods; - // used by the autoscaler to control how often the number of pods is changed. - // +optional - optional k8s.io.apimachinery.pkg.apis.meta.v1.Time lastScaleTime = 2; - - // current number of replicas of pods managed by this autoscaler. - optional int32 currentReplicas = 3; - - // desired number of replicas of pods managed by this autoscaler. - optional int32 desiredReplicas = 4; - - // current average CPU utilization over all pods, represented as a percentage of requested CPU, - // e.g. 70 means that an average pod is using now 70% of its requested CPU. - // +optional - optional int32 currentCPUUtilizationPercentage = 5; -} - // Host Port Range defines a range of host ports that will be enabled by a policy // for pods to use. It requires both the start and end to be defined. message HostPortRange { @@ -948,25 +876,6 @@ message ScaleStatus { optional string targetSelector = 3; } -// SubresourceReference contains enough information to let you inspect or modify the referred subresource. -message SubresourceReference { - // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds - // +optional - optional string kind = 1; - - // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names - // +optional - optional string name = 2; - - // API version of the referent - // +optional - optional string apiVersion = 3; - - // Subresource name of the referent - // +optional - optional string subresource = 4; -} - // SupplementalGroupsStrategyOptions defines the strategy type and options used to create the strategy. message SupplementalGroupsStrategyOptions { // Rule is the strategy that will dictate what supplemental groups is used in the SecurityContext. diff --git a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/register.go b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/register.go index 6b03fb02678..fa5b2e1b24d 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/register.go +++ b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/register.go @@ -44,8 +44,6 @@ func addKnownTypes(scheme *runtime.Scheme) error { &Deployment{}, &DeploymentList{}, &DeploymentRollback{}, - &HorizontalPodAutoscaler{}, - &HorizontalPodAutoscalerList{}, &ReplicationControllerDummy{}, &Scale{}, &ThirdPartyResource{}, diff --git a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.generated.go b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.generated.go index 6a0fe6ed92e..3883655aaed 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.generated.go +++ b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.generated.go @@ -1190,541 +1190,6 @@ func (x *ReplicationControllerDummy) codecDecodeSelfFromArray(l int, d *codec197 z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } -func (x *SubresourceReference) CodecEncodeSelf(e *codec1978.Encoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperEncoder(e) - _, _, _ = h, z, r - if x == nil { - r.EncodeNil() - } else { - yym1 := z.EncBinary() - _ = yym1 - if false { - } else if z.HasExtensions() && z.EncExt(x) { - } else { - yysep2 := !z.EncBinary() - yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [4]bool - _, _, _ = yysep2, yyq2, yy2arr2 - const yyr2 bool = false - yyq2[0] = x.Kind != "" - yyq2[1] = x.Name != "" - yyq2[2] = x.APIVersion != "" - yyq2[3] = x.Subresource != "" - var yynn2 int - if yyr2 || yy2arr2 { - r.EncodeArrayStart(4) - } else { - yynn2 = 0 - for _, b := range yyq2 { - if b { - yynn2++ - } - } - r.EncodeMapStart(yynn2) - yynn2 = 0 - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[0] { - yym4 := z.EncBinary() - _ = yym4 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) - } - } else { - r.EncodeString(codecSelferC_UTF81234, "") - } - } else { - if yyq2[0] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("kind")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym5 := z.EncBinary() - _ = yym5 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[1] { - yym7 := z.EncBinary() - _ = yym7 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Name)) - } - } else { - r.EncodeString(codecSelferC_UTF81234, "") - } - } else { - if yyq2[1] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("name")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym8 := z.EncBinary() - _ = yym8 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Name)) - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[2] { - yym10 := z.EncBinary() - _ = yym10 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) - } - } else { - r.EncodeString(codecSelferC_UTF81234, "") - } - } else { - if yyq2[2] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym11 := z.EncBinary() - _ = yym11 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[3] { - yym13 := z.EncBinary() - _ = yym13 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Subresource)) - } - } else { - r.EncodeString(codecSelferC_UTF81234, "") - } - } else { - if yyq2[3] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("subresource")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym14 := z.EncBinary() - _ = yym14 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Subresource)) - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayEnd1234) - } else { - z.EncSendContainerState(codecSelfer_containerMapEnd1234) - } - } - } -} - -func (x *SubresourceReference) CodecDecodeSelf(d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - yym1 := z.DecBinary() - _ = yym1 - if false { - } else if z.HasExtensions() && z.DecExt(x) { - } else { - yyct2 := r.ContainerType() - if yyct2 == codecSelferValueTypeMap1234 { - yyl2 := r.ReadMapStart() - if yyl2 == 0 { - z.DecSendContainerState(codecSelfer_containerMapEnd1234) - } else { - x.codecDecodeSelfFromMap(yyl2, d) - } - } else if yyct2 == codecSelferValueTypeArray1234 { - yyl2 := r.ReadArrayStart() - if yyl2 == 0 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - } else { - x.codecDecodeSelfFromArray(yyl2, d) - } - } else { - panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) - } - } -} - -func (x *SubresourceReference) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - var yys3Slc = z.DecScratchBuffer() // default slice to decode into - _ = yys3Slc - var yyhl3 bool = l >= 0 - for yyj3 := 0; ; yyj3++ { - if yyhl3 { - if yyj3 >= l { - break - } - } else { - if r.CheckBreak() { - break - } - } - z.DecSendContainerState(codecSelfer_containerMapKey1234) - yys3Slc = r.DecodeBytes(yys3Slc, true, true) - yys3 := string(yys3Slc) - z.DecSendContainerState(codecSelfer_containerMapValue1234) - switch yys3 { - case "kind": - if r.TryDecodeAsNil() { - x.Kind = "" - } else { - yyv4 := &x.Kind - yym5 := z.DecBinary() - _ = yym5 - if false { - } else { - *((*string)(yyv4)) = r.DecodeString() - } - } - case "name": - if r.TryDecodeAsNil() { - x.Name = "" - } else { - yyv6 := &x.Name - yym7 := z.DecBinary() - _ = yym7 - if false { - } else { - *((*string)(yyv6)) = r.DecodeString() - } - } - case "apiVersion": - if r.TryDecodeAsNil() { - x.APIVersion = "" - } else { - yyv8 := &x.APIVersion - yym9 := z.DecBinary() - _ = yym9 - if false { - } else { - *((*string)(yyv8)) = r.DecodeString() - } - } - case "subresource": - if r.TryDecodeAsNil() { - x.Subresource = "" - } else { - yyv10 := &x.Subresource - yym11 := z.DecBinary() - _ = yym11 - if false { - } else { - *((*string)(yyv10)) = r.DecodeString() - } - } - default: - z.DecStructFieldNotFound(-1, yys3) - } // end switch yys3 - } // end for yyj3 - z.DecSendContainerState(codecSelfer_containerMapEnd1234) -} - -func (x *SubresourceReference) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - var yyj12 int - var yyb12 bool - var yyhl12 bool = l >= 0 - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.Kind = "" - } else { - yyv13 := &x.Kind - yym14 := z.DecBinary() - _ = yym14 - if false { - } else { - *((*string)(yyv13)) = r.DecodeString() - } - } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.Name = "" - } else { - yyv15 := &x.Name - yym16 := z.DecBinary() - _ = yym16 - if false { - } else { - *((*string)(yyv15)) = r.DecodeString() - } - } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.APIVersion = "" - } else { - yyv17 := &x.APIVersion - yym18 := z.DecBinary() - _ = yym18 - if false { - } else { - *((*string)(yyv17)) = r.DecodeString() - } - } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.Subresource = "" - } else { - yyv19 := &x.Subresource - yym20 := z.DecBinary() - _ = yym20 - if false { - } else { - *((*string)(yyv19)) = r.DecodeString() - } - } - for { - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - break - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj12-1, "") - } - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) -} - -func (x *CPUTargetUtilization) CodecEncodeSelf(e *codec1978.Encoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperEncoder(e) - _, _, _ = h, z, r - if x == nil { - r.EncodeNil() - } else { - yym1 := z.EncBinary() - _ = yym1 - if false { - } else if z.HasExtensions() && z.EncExt(x) { - } else { - yysep2 := !z.EncBinary() - yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [1]bool - _, _, _ = yysep2, yyq2, yy2arr2 - const yyr2 bool = false - var yynn2 int - if yyr2 || yy2arr2 { - r.EncodeArrayStart(1) - } else { - yynn2 = 1 - for _, b := range yyq2 { - if b { - yynn2++ - } - } - r.EncodeMapStart(yynn2) - yynn2 = 0 - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym4 := z.EncBinary() - _ = yym4 - if false { - } else { - r.EncodeInt(int64(x.TargetPercentage)) - } - } else { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("targetPercentage")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym5 := z.EncBinary() - _ = yym5 - if false { - } else { - r.EncodeInt(int64(x.TargetPercentage)) - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayEnd1234) - } else { - z.EncSendContainerState(codecSelfer_containerMapEnd1234) - } - } - } -} - -func (x *CPUTargetUtilization) CodecDecodeSelf(d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - yym1 := z.DecBinary() - _ = yym1 - if false { - } else if z.HasExtensions() && z.DecExt(x) { - } else { - yyct2 := r.ContainerType() - if yyct2 == codecSelferValueTypeMap1234 { - yyl2 := r.ReadMapStart() - if yyl2 == 0 { - z.DecSendContainerState(codecSelfer_containerMapEnd1234) - } else { - x.codecDecodeSelfFromMap(yyl2, d) - } - } else if yyct2 == codecSelferValueTypeArray1234 { - yyl2 := r.ReadArrayStart() - if yyl2 == 0 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - } else { - x.codecDecodeSelfFromArray(yyl2, d) - } - } else { - panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) - } - } -} - -func (x *CPUTargetUtilization) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - var yys3Slc = z.DecScratchBuffer() // default slice to decode into - _ = yys3Slc - var yyhl3 bool = l >= 0 - for yyj3 := 0; ; yyj3++ { - if yyhl3 { - if yyj3 >= l { - break - } - } else { - if r.CheckBreak() { - break - } - } - z.DecSendContainerState(codecSelfer_containerMapKey1234) - yys3Slc = r.DecodeBytes(yys3Slc, true, true) - yys3 := string(yys3Slc) - z.DecSendContainerState(codecSelfer_containerMapValue1234) - switch yys3 { - case "targetPercentage": - if r.TryDecodeAsNil() { - x.TargetPercentage = 0 - } else { - yyv4 := &x.TargetPercentage - yym5 := z.DecBinary() - _ = yym5 - if false { - } else { - *((*int32)(yyv4)) = int32(r.DecodeInt(32)) - } - } - default: - z.DecStructFieldNotFound(-1, yys3) - } // end switch yys3 - } // end for yyj3 - z.DecSendContainerState(codecSelfer_containerMapEnd1234) -} - -func (x *CPUTargetUtilization) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - var yyj6 int - var yyb6 bool - var yyhl6 bool = l >= 0 - yyj6++ - if yyhl6 { - yyb6 = yyj6 > l - } else { - yyb6 = r.CheckBreak() - } - if yyb6 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.TargetPercentage = 0 - } else { - yyv7 := &x.TargetPercentage - yym8 := z.DecBinary() - _ = yym8 - if false { - } else { - *((*int32)(yyv7)) = int32(r.DecodeInt(32)) - } - } - for { - yyj6++ - if yyhl6 { - yyb6 = yyj6 > l - } else { - yyb6 = r.CheckBreak() - } - if yyb6 { - break - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj6-1, "") - } - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) -} - func (x *CustomMetricTarget) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -2571,1587 +2036,6 @@ func (x *CustomMetricCurrentStatusList) codecDecodeSelfFromArray(l int, d *codec z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } -func (x *HorizontalPodAutoscalerSpec) CodecEncodeSelf(e *codec1978.Encoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperEncoder(e) - _, _, _ = h, z, r - if x == nil { - r.EncodeNil() - } else { - yym1 := z.EncBinary() - _ = yym1 - if false { - } else if z.HasExtensions() && z.EncExt(x) { - } else { - yysep2 := !z.EncBinary() - yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [4]bool - _, _, _ = yysep2, yyq2, yy2arr2 - const yyr2 bool = false - yyq2[1] = x.MinReplicas != nil - yyq2[3] = x.CPUUtilization != nil - var yynn2 int - if yyr2 || yy2arr2 { - r.EncodeArrayStart(4) - } else { - yynn2 = 2 - for _, b := range yyq2 { - if b { - yynn2++ - } - } - r.EncodeMapStart(yynn2) - yynn2 = 0 - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yy4 := &x.ScaleRef - yy4.CodecEncodeSelf(e) - } else { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("scaleRef")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yy6 := &x.ScaleRef - yy6.CodecEncodeSelf(e) - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[1] { - if x.MinReplicas == nil { - r.EncodeNil() - } else { - yy9 := *x.MinReplicas - yym10 := z.EncBinary() - _ = yym10 - if false { - } else { - r.EncodeInt(int64(yy9)) - } - } - } else { - r.EncodeNil() - } - } else { - if yyq2[1] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("minReplicas")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - if x.MinReplicas == nil { - r.EncodeNil() - } else { - yy11 := *x.MinReplicas - yym12 := z.EncBinary() - _ = yym12 - if false { - } else { - r.EncodeInt(int64(yy11)) - } - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym14 := z.EncBinary() - _ = yym14 - if false { - } else { - r.EncodeInt(int64(x.MaxReplicas)) - } - } else { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("maxReplicas")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym15 := z.EncBinary() - _ = yym15 - if false { - } else { - r.EncodeInt(int64(x.MaxReplicas)) - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[3] { - if x.CPUUtilization == nil { - r.EncodeNil() - } else { - x.CPUUtilization.CodecEncodeSelf(e) - } - } else { - r.EncodeNil() - } - } else { - if yyq2[3] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("cpuUtilization")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - if x.CPUUtilization == nil { - r.EncodeNil() - } else { - x.CPUUtilization.CodecEncodeSelf(e) - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayEnd1234) - } else { - z.EncSendContainerState(codecSelfer_containerMapEnd1234) - } - } - } -} - -func (x *HorizontalPodAutoscalerSpec) CodecDecodeSelf(d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - yym1 := z.DecBinary() - _ = yym1 - if false { - } else if z.HasExtensions() && z.DecExt(x) { - } else { - yyct2 := r.ContainerType() - if yyct2 == codecSelferValueTypeMap1234 { - yyl2 := r.ReadMapStart() - if yyl2 == 0 { - z.DecSendContainerState(codecSelfer_containerMapEnd1234) - } else { - x.codecDecodeSelfFromMap(yyl2, d) - } - } else if yyct2 == codecSelferValueTypeArray1234 { - yyl2 := r.ReadArrayStart() - if yyl2 == 0 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - } else { - x.codecDecodeSelfFromArray(yyl2, d) - } - } else { - panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) - } - } -} - -func (x *HorizontalPodAutoscalerSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - var yys3Slc = z.DecScratchBuffer() // default slice to decode into - _ = yys3Slc - var yyhl3 bool = l >= 0 - for yyj3 := 0; ; yyj3++ { - if yyhl3 { - if yyj3 >= l { - break - } - } else { - if r.CheckBreak() { - break - } - } - z.DecSendContainerState(codecSelfer_containerMapKey1234) - yys3Slc = r.DecodeBytes(yys3Slc, true, true) - yys3 := string(yys3Slc) - z.DecSendContainerState(codecSelfer_containerMapValue1234) - switch yys3 { - case "scaleRef": - if r.TryDecodeAsNil() { - x.ScaleRef = SubresourceReference{} - } else { - yyv4 := &x.ScaleRef - yyv4.CodecDecodeSelf(d) - } - case "minReplicas": - if r.TryDecodeAsNil() { - if x.MinReplicas != nil { - x.MinReplicas = nil - } - } else { - if x.MinReplicas == nil { - x.MinReplicas = new(int32) - } - yym6 := z.DecBinary() - _ = yym6 - if false { - } else { - *((*int32)(x.MinReplicas)) = int32(r.DecodeInt(32)) - } - } - case "maxReplicas": - if r.TryDecodeAsNil() { - x.MaxReplicas = 0 - } else { - yyv7 := &x.MaxReplicas - yym8 := z.DecBinary() - _ = yym8 - if false { - } else { - *((*int32)(yyv7)) = int32(r.DecodeInt(32)) - } - } - case "cpuUtilization": - if r.TryDecodeAsNil() { - if x.CPUUtilization != nil { - x.CPUUtilization = nil - } - } else { - if x.CPUUtilization == nil { - x.CPUUtilization = new(CPUTargetUtilization) - } - x.CPUUtilization.CodecDecodeSelf(d) - } - default: - z.DecStructFieldNotFound(-1, yys3) - } // end switch yys3 - } // end for yyj3 - z.DecSendContainerState(codecSelfer_containerMapEnd1234) -} - -func (x *HorizontalPodAutoscalerSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - var yyj10 int - var yyb10 bool - var yyhl10 bool = l >= 0 - yyj10++ - if yyhl10 { - yyb10 = yyj10 > l - } else { - yyb10 = r.CheckBreak() - } - if yyb10 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.ScaleRef = SubresourceReference{} - } else { - yyv11 := &x.ScaleRef - yyv11.CodecDecodeSelf(d) - } - yyj10++ - if yyhl10 { - yyb10 = yyj10 > l - } else { - yyb10 = r.CheckBreak() - } - if yyb10 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - if x.MinReplicas != nil { - x.MinReplicas = nil - } - } else { - if x.MinReplicas == nil { - x.MinReplicas = new(int32) - } - yym13 := z.DecBinary() - _ = yym13 - if false { - } else { - *((*int32)(x.MinReplicas)) = int32(r.DecodeInt(32)) - } - } - yyj10++ - if yyhl10 { - yyb10 = yyj10 > l - } else { - yyb10 = r.CheckBreak() - } - if yyb10 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.MaxReplicas = 0 - } else { - yyv14 := &x.MaxReplicas - yym15 := z.DecBinary() - _ = yym15 - if false { - } else { - *((*int32)(yyv14)) = int32(r.DecodeInt(32)) - } - } - yyj10++ - if yyhl10 { - yyb10 = yyj10 > l - } else { - yyb10 = r.CheckBreak() - } - if yyb10 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - if x.CPUUtilization != nil { - x.CPUUtilization = nil - } - } else { - if x.CPUUtilization == nil { - x.CPUUtilization = new(CPUTargetUtilization) - } - x.CPUUtilization.CodecDecodeSelf(d) - } - for { - yyj10++ - if yyhl10 { - yyb10 = yyj10 > l - } else { - yyb10 = r.CheckBreak() - } - if yyb10 { - break - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj10-1, "") - } - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) -} - -func (x *HorizontalPodAutoscalerStatus) CodecEncodeSelf(e *codec1978.Encoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperEncoder(e) - _, _, _ = h, z, r - if x == nil { - r.EncodeNil() - } else { - yym1 := z.EncBinary() - _ = yym1 - if false { - } else if z.HasExtensions() && z.EncExt(x) { - } else { - yysep2 := !z.EncBinary() - yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [5]bool - _, _, _ = yysep2, yyq2, yy2arr2 - const yyr2 bool = false - yyq2[0] = x.ObservedGeneration != nil - yyq2[1] = x.LastScaleTime != nil - yyq2[4] = x.CurrentCPUUtilizationPercentage != nil - var yynn2 int - if yyr2 || yy2arr2 { - r.EncodeArrayStart(5) - } else { - yynn2 = 2 - for _, b := range yyq2 { - if b { - yynn2++ - } - } - r.EncodeMapStart(yynn2) - yynn2 = 0 - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[0] { - if x.ObservedGeneration == nil { - r.EncodeNil() - } else { - yy4 := *x.ObservedGeneration - yym5 := z.EncBinary() - _ = yym5 - if false { - } else { - r.EncodeInt(int64(yy4)) - } - } - } else { - r.EncodeNil() - } - } else { - if yyq2[0] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("observedGeneration")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - if x.ObservedGeneration == nil { - r.EncodeNil() - } else { - yy6 := *x.ObservedGeneration - yym7 := z.EncBinary() - _ = yym7 - if false { - } else { - r.EncodeInt(int64(yy6)) - } - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[1] { - if x.LastScaleTime == nil { - r.EncodeNil() - } else { - yym9 := z.EncBinary() - _ = yym9 - if false { - } else if z.HasExtensions() && z.EncExt(x.LastScaleTime) { - } else if yym9 { - z.EncBinaryMarshal(x.LastScaleTime) - } else if !yym9 && z.IsJSONHandle() { - z.EncJSONMarshal(x.LastScaleTime) - } else { - z.EncFallback(x.LastScaleTime) - } - } - } else { - r.EncodeNil() - } - } else { - if yyq2[1] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("lastScaleTime")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - if x.LastScaleTime == nil { - r.EncodeNil() - } else { - yym10 := z.EncBinary() - _ = yym10 - if false { - } else if z.HasExtensions() && z.EncExt(x.LastScaleTime) { - } else if yym10 { - z.EncBinaryMarshal(x.LastScaleTime) - } else if !yym10 && z.IsJSONHandle() { - z.EncJSONMarshal(x.LastScaleTime) - } else { - z.EncFallback(x.LastScaleTime) - } - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym12 := z.EncBinary() - _ = yym12 - if false { - } else { - r.EncodeInt(int64(x.CurrentReplicas)) - } - } else { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("currentReplicas")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym13 := z.EncBinary() - _ = yym13 - if false { - } else { - r.EncodeInt(int64(x.CurrentReplicas)) - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym15 := z.EncBinary() - _ = yym15 - if false { - } else { - r.EncodeInt(int64(x.DesiredReplicas)) - } - } else { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("desiredReplicas")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym16 := z.EncBinary() - _ = yym16 - if false { - } else { - r.EncodeInt(int64(x.DesiredReplicas)) - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[4] { - if x.CurrentCPUUtilizationPercentage == nil { - r.EncodeNil() - } else { - yy18 := *x.CurrentCPUUtilizationPercentage - yym19 := z.EncBinary() - _ = yym19 - if false { - } else { - r.EncodeInt(int64(yy18)) - } - } - } else { - r.EncodeNil() - } - } else { - if yyq2[4] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("currentCPUUtilizationPercentage")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - if x.CurrentCPUUtilizationPercentage == nil { - r.EncodeNil() - } else { - yy20 := *x.CurrentCPUUtilizationPercentage - yym21 := z.EncBinary() - _ = yym21 - if false { - } else { - r.EncodeInt(int64(yy20)) - } - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayEnd1234) - } else { - z.EncSendContainerState(codecSelfer_containerMapEnd1234) - } - } - } -} - -func (x *HorizontalPodAutoscalerStatus) CodecDecodeSelf(d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - yym1 := z.DecBinary() - _ = yym1 - if false { - } else if z.HasExtensions() && z.DecExt(x) { - } else { - yyct2 := r.ContainerType() - if yyct2 == codecSelferValueTypeMap1234 { - yyl2 := r.ReadMapStart() - if yyl2 == 0 { - z.DecSendContainerState(codecSelfer_containerMapEnd1234) - } else { - x.codecDecodeSelfFromMap(yyl2, d) - } - } else if yyct2 == codecSelferValueTypeArray1234 { - yyl2 := r.ReadArrayStart() - if yyl2 == 0 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - } else { - x.codecDecodeSelfFromArray(yyl2, d) - } - } else { - panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) - } - } -} - -func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - var yys3Slc = z.DecScratchBuffer() // default slice to decode into - _ = yys3Slc - var yyhl3 bool = l >= 0 - for yyj3 := 0; ; yyj3++ { - if yyhl3 { - if yyj3 >= l { - break - } - } else { - if r.CheckBreak() { - break - } - } - z.DecSendContainerState(codecSelfer_containerMapKey1234) - yys3Slc = r.DecodeBytes(yys3Slc, true, true) - yys3 := string(yys3Slc) - z.DecSendContainerState(codecSelfer_containerMapValue1234) - switch yys3 { - case "observedGeneration": - if r.TryDecodeAsNil() { - if x.ObservedGeneration != nil { - x.ObservedGeneration = nil - } - } else { - if x.ObservedGeneration == nil { - x.ObservedGeneration = new(int64) - } - yym5 := z.DecBinary() - _ = yym5 - if false { - } else { - *((*int64)(x.ObservedGeneration)) = int64(r.DecodeInt(64)) - } - } - case "lastScaleTime": - if r.TryDecodeAsNil() { - if x.LastScaleTime != nil { - x.LastScaleTime = nil - } - } else { - if x.LastScaleTime == nil { - x.LastScaleTime = new(pkg1_v1.Time) - } - yym7 := z.DecBinary() - _ = yym7 - if false { - } else if z.HasExtensions() && z.DecExt(x.LastScaleTime) { - } else if yym7 { - z.DecBinaryUnmarshal(x.LastScaleTime) - } else if !yym7 && z.IsJSONHandle() { - z.DecJSONUnmarshal(x.LastScaleTime) - } else { - z.DecFallback(x.LastScaleTime, false) - } - } - case "currentReplicas": - if r.TryDecodeAsNil() { - x.CurrentReplicas = 0 - } else { - yyv8 := &x.CurrentReplicas - yym9 := z.DecBinary() - _ = yym9 - if false { - } else { - *((*int32)(yyv8)) = int32(r.DecodeInt(32)) - } - } - case "desiredReplicas": - if r.TryDecodeAsNil() { - x.DesiredReplicas = 0 - } else { - yyv10 := &x.DesiredReplicas - yym11 := z.DecBinary() - _ = yym11 - if false { - } else { - *((*int32)(yyv10)) = int32(r.DecodeInt(32)) - } - } - case "currentCPUUtilizationPercentage": - if r.TryDecodeAsNil() { - if x.CurrentCPUUtilizationPercentage != nil { - x.CurrentCPUUtilizationPercentage = nil - } - } else { - if x.CurrentCPUUtilizationPercentage == nil { - x.CurrentCPUUtilizationPercentage = new(int32) - } - yym13 := z.DecBinary() - _ = yym13 - if false { - } else { - *((*int32)(x.CurrentCPUUtilizationPercentage)) = int32(r.DecodeInt(32)) - } - } - default: - z.DecStructFieldNotFound(-1, yys3) - } // end switch yys3 - } // end for yyj3 - z.DecSendContainerState(codecSelfer_containerMapEnd1234) -} - -func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - var yyj14 int - var yyb14 bool - var yyhl14 bool = l >= 0 - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l - } else { - yyb14 = r.CheckBreak() - } - if yyb14 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - if x.ObservedGeneration != nil { - x.ObservedGeneration = nil - } - } else { - if x.ObservedGeneration == nil { - x.ObservedGeneration = new(int64) - } - yym16 := z.DecBinary() - _ = yym16 - if false { - } else { - *((*int64)(x.ObservedGeneration)) = int64(r.DecodeInt(64)) - } - } - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l - } else { - yyb14 = r.CheckBreak() - } - if yyb14 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - if x.LastScaleTime != nil { - x.LastScaleTime = nil - } - } else { - if x.LastScaleTime == nil { - x.LastScaleTime = new(pkg1_v1.Time) - } - yym18 := z.DecBinary() - _ = yym18 - if false { - } else if z.HasExtensions() && z.DecExt(x.LastScaleTime) { - } else if yym18 { - z.DecBinaryUnmarshal(x.LastScaleTime) - } else if !yym18 && z.IsJSONHandle() { - z.DecJSONUnmarshal(x.LastScaleTime) - } else { - z.DecFallback(x.LastScaleTime, false) - } - } - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l - } else { - yyb14 = r.CheckBreak() - } - if yyb14 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.CurrentReplicas = 0 - } else { - yyv19 := &x.CurrentReplicas - yym20 := z.DecBinary() - _ = yym20 - if false { - } else { - *((*int32)(yyv19)) = int32(r.DecodeInt(32)) - } - } - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l - } else { - yyb14 = r.CheckBreak() - } - if yyb14 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.DesiredReplicas = 0 - } else { - yyv21 := &x.DesiredReplicas - yym22 := z.DecBinary() - _ = yym22 - if false { - } else { - *((*int32)(yyv21)) = int32(r.DecodeInt(32)) - } - } - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l - } else { - yyb14 = r.CheckBreak() - } - if yyb14 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - if x.CurrentCPUUtilizationPercentage != nil { - x.CurrentCPUUtilizationPercentage = nil - } - } else { - if x.CurrentCPUUtilizationPercentage == nil { - x.CurrentCPUUtilizationPercentage = new(int32) - } - yym24 := z.DecBinary() - _ = yym24 - if false { - } else { - *((*int32)(x.CurrentCPUUtilizationPercentage)) = int32(r.DecodeInt(32)) - } - } - for { - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l - } else { - yyb14 = r.CheckBreak() - } - if yyb14 { - break - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj14-1, "") - } - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) -} - -func (x *HorizontalPodAutoscaler) CodecEncodeSelf(e *codec1978.Encoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperEncoder(e) - _, _, _ = h, z, r - if x == nil { - r.EncodeNil() - } else { - yym1 := z.EncBinary() - _ = yym1 - if false { - } else if z.HasExtensions() && z.EncExt(x) { - } else { - yysep2 := !z.EncBinary() - yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [5]bool - _, _, _ = yysep2, yyq2, yy2arr2 - const yyr2 bool = false - yyq2[0] = x.Kind != "" - yyq2[1] = x.APIVersion != "" - yyq2[2] = true - yyq2[3] = true - yyq2[4] = true - var yynn2 int - if yyr2 || yy2arr2 { - r.EncodeArrayStart(5) - } else { - yynn2 = 0 - for _, b := range yyq2 { - if b { - yynn2++ - } - } - r.EncodeMapStart(yynn2) - yynn2 = 0 - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[0] { - yym4 := z.EncBinary() - _ = yym4 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) - } - } else { - r.EncodeString(codecSelferC_UTF81234, "") - } - } else { - if yyq2[0] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("kind")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym5 := z.EncBinary() - _ = yym5 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[1] { - yym7 := z.EncBinary() - _ = yym7 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) - } - } else { - r.EncodeString(codecSelferC_UTF81234, "") - } - } else { - if yyq2[1] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym8 := z.EncBinary() - _ = yym8 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[2] { - yy10 := &x.ObjectMeta - yym11 := z.EncBinary() - _ = yym11 - if false { - } else if z.HasExtensions() && z.EncExt(yy10) { - } else { - z.EncFallback(yy10) - } - } else { - r.EncodeNil() - } - } else { - if yyq2[2] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("metadata")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yy12 := &x.ObjectMeta - yym13 := z.EncBinary() - _ = yym13 - if false { - } else if z.HasExtensions() && z.EncExt(yy12) { - } else { - z.EncFallback(yy12) - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[3] { - yy15 := &x.Spec - yy15.CodecEncodeSelf(e) - } else { - r.EncodeNil() - } - } else { - if yyq2[3] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("spec")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yy17 := &x.Spec - yy17.CodecEncodeSelf(e) - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[4] { - yy20 := &x.Status - yy20.CodecEncodeSelf(e) - } else { - r.EncodeNil() - } - } else { - if yyq2[4] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("status")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yy22 := &x.Status - yy22.CodecEncodeSelf(e) - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayEnd1234) - } else { - z.EncSendContainerState(codecSelfer_containerMapEnd1234) - } - } - } -} - -func (x *HorizontalPodAutoscaler) CodecDecodeSelf(d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - yym1 := z.DecBinary() - _ = yym1 - if false { - } else if z.HasExtensions() && z.DecExt(x) { - } else { - yyct2 := r.ContainerType() - if yyct2 == codecSelferValueTypeMap1234 { - yyl2 := r.ReadMapStart() - if yyl2 == 0 { - z.DecSendContainerState(codecSelfer_containerMapEnd1234) - } else { - x.codecDecodeSelfFromMap(yyl2, d) - } - } else if yyct2 == codecSelferValueTypeArray1234 { - yyl2 := r.ReadArrayStart() - if yyl2 == 0 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - } else { - x.codecDecodeSelfFromArray(yyl2, d) - } - } else { - panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) - } - } -} - -func (x *HorizontalPodAutoscaler) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - var yys3Slc = z.DecScratchBuffer() // default slice to decode into - _ = yys3Slc - var yyhl3 bool = l >= 0 - for yyj3 := 0; ; yyj3++ { - if yyhl3 { - if yyj3 >= l { - break - } - } else { - if r.CheckBreak() { - break - } - } - z.DecSendContainerState(codecSelfer_containerMapKey1234) - yys3Slc = r.DecodeBytes(yys3Slc, true, true) - yys3 := string(yys3Slc) - z.DecSendContainerState(codecSelfer_containerMapValue1234) - switch yys3 { - case "kind": - if r.TryDecodeAsNil() { - x.Kind = "" - } else { - yyv4 := &x.Kind - yym5 := z.DecBinary() - _ = yym5 - if false { - } else { - *((*string)(yyv4)) = r.DecodeString() - } - } - case "apiVersion": - if r.TryDecodeAsNil() { - x.APIVersion = "" - } else { - yyv6 := &x.APIVersion - yym7 := z.DecBinary() - _ = yym7 - if false { - } else { - *((*string)(yyv6)) = r.DecodeString() - } - } - case "metadata": - if r.TryDecodeAsNil() { - x.ObjectMeta = pkg1_v1.ObjectMeta{} - } else { - yyv8 := &x.ObjectMeta - yym9 := z.DecBinary() - _ = yym9 - if false { - } else if z.HasExtensions() && z.DecExt(yyv8) { - } else { - z.DecFallback(yyv8, false) - } - } - case "spec": - if r.TryDecodeAsNil() { - x.Spec = HorizontalPodAutoscalerSpec{} - } else { - yyv10 := &x.Spec - yyv10.CodecDecodeSelf(d) - } - case "status": - if r.TryDecodeAsNil() { - x.Status = HorizontalPodAutoscalerStatus{} - } else { - yyv11 := &x.Status - yyv11.CodecDecodeSelf(d) - } - default: - z.DecStructFieldNotFound(-1, yys3) - } // end switch yys3 - } // end for yyj3 - z.DecSendContainerState(codecSelfer_containerMapEnd1234) -} - -func (x *HorizontalPodAutoscaler) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - var yyj12 int - var yyb12 bool - var yyhl12 bool = l >= 0 - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.Kind = "" - } else { - yyv13 := &x.Kind - yym14 := z.DecBinary() - _ = yym14 - if false { - } else { - *((*string)(yyv13)) = r.DecodeString() - } - } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.APIVersion = "" - } else { - yyv15 := &x.APIVersion - yym16 := z.DecBinary() - _ = yym16 - if false { - } else { - *((*string)(yyv15)) = r.DecodeString() - } - } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.ObjectMeta = pkg1_v1.ObjectMeta{} - } else { - yyv17 := &x.ObjectMeta - yym18 := z.DecBinary() - _ = yym18 - if false { - } else if z.HasExtensions() && z.DecExt(yyv17) { - } else { - z.DecFallback(yyv17, false) - } - } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.Spec = HorizontalPodAutoscalerSpec{} - } else { - yyv19 := &x.Spec - yyv19.CodecDecodeSelf(d) - } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.Status = HorizontalPodAutoscalerStatus{} - } else { - yyv20 := &x.Status - yyv20.CodecDecodeSelf(d) - } - for { - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - break - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj12-1, "") - } - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) -} - -func (x *HorizontalPodAutoscalerList) CodecEncodeSelf(e *codec1978.Encoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperEncoder(e) - _, _, _ = h, z, r - if x == nil { - r.EncodeNil() - } else { - yym1 := z.EncBinary() - _ = yym1 - if false { - } else if z.HasExtensions() && z.EncExt(x) { - } else { - yysep2 := !z.EncBinary() - yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [4]bool - _, _, _ = yysep2, yyq2, yy2arr2 - const yyr2 bool = false - yyq2[0] = x.Kind != "" - yyq2[1] = x.APIVersion != "" - yyq2[2] = true - var yynn2 int - if yyr2 || yy2arr2 { - r.EncodeArrayStart(4) - } else { - yynn2 = 1 - for _, b := range yyq2 { - if b { - yynn2++ - } - } - r.EncodeMapStart(yynn2) - yynn2 = 0 - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[0] { - yym4 := z.EncBinary() - _ = yym4 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) - } - } else { - r.EncodeString(codecSelferC_UTF81234, "") - } - } else { - if yyq2[0] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("kind")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym5 := z.EncBinary() - _ = yym5 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[1] { - yym7 := z.EncBinary() - _ = yym7 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) - } - } else { - r.EncodeString(codecSelferC_UTF81234, "") - } - } else { - if yyq2[1] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym8 := z.EncBinary() - _ = yym8 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[2] { - yy10 := &x.ListMeta - yym11 := z.EncBinary() - _ = yym11 - if false { - } else if z.HasExtensions() && z.EncExt(yy10) { - } else { - z.EncFallback(yy10) - } - } else { - r.EncodeNil() - } - } else { - if yyq2[2] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("metadata")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yy12 := &x.ListMeta - yym13 := z.EncBinary() - _ = yym13 - if false { - } else if z.HasExtensions() && z.EncExt(yy12) { - } else { - z.EncFallback(yy12) - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if x.Items == nil { - r.EncodeNil() - } else { - yym15 := z.EncBinary() - _ = yym15 - if false { - } else { - h.encSliceHorizontalPodAutoscaler(([]HorizontalPodAutoscaler)(x.Items), e) - } - } - } else { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("items")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - if x.Items == nil { - r.EncodeNil() - } else { - yym16 := z.EncBinary() - _ = yym16 - if false { - } else { - h.encSliceHorizontalPodAutoscaler(([]HorizontalPodAutoscaler)(x.Items), e) - } - } - } - if yyr2 || yy2arr2 { - z.EncSendContainerState(codecSelfer_containerArrayEnd1234) - } else { - z.EncSendContainerState(codecSelfer_containerMapEnd1234) - } - } - } -} - -func (x *HorizontalPodAutoscalerList) CodecDecodeSelf(d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - yym1 := z.DecBinary() - _ = yym1 - if false { - } else if z.HasExtensions() && z.DecExt(x) { - } else { - yyct2 := r.ContainerType() - if yyct2 == codecSelferValueTypeMap1234 { - yyl2 := r.ReadMapStart() - if yyl2 == 0 { - z.DecSendContainerState(codecSelfer_containerMapEnd1234) - } else { - x.codecDecodeSelfFromMap(yyl2, d) - } - } else if yyct2 == codecSelferValueTypeArray1234 { - yyl2 := r.ReadArrayStart() - if yyl2 == 0 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - } else { - x.codecDecodeSelfFromArray(yyl2, d) - } - } else { - panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) - } - } -} - -func (x *HorizontalPodAutoscalerList) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - var yys3Slc = z.DecScratchBuffer() // default slice to decode into - _ = yys3Slc - var yyhl3 bool = l >= 0 - for yyj3 := 0; ; yyj3++ { - if yyhl3 { - if yyj3 >= l { - break - } - } else { - if r.CheckBreak() { - break - } - } - z.DecSendContainerState(codecSelfer_containerMapKey1234) - yys3Slc = r.DecodeBytes(yys3Slc, true, true) - yys3 := string(yys3Slc) - z.DecSendContainerState(codecSelfer_containerMapValue1234) - switch yys3 { - case "kind": - if r.TryDecodeAsNil() { - x.Kind = "" - } else { - yyv4 := &x.Kind - yym5 := z.DecBinary() - _ = yym5 - if false { - } else { - *((*string)(yyv4)) = r.DecodeString() - } - } - case "apiVersion": - if r.TryDecodeAsNil() { - x.APIVersion = "" - } else { - yyv6 := &x.APIVersion - yym7 := z.DecBinary() - _ = yym7 - if false { - } else { - *((*string)(yyv6)) = r.DecodeString() - } - } - case "metadata": - if r.TryDecodeAsNil() { - x.ListMeta = pkg1_v1.ListMeta{} - } else { - yyv8 := &x.ListMeta - yym9 := z.DecBinary() - _ = yym9 - if false { - } else if z.HasExtensions() && z.DecExt(yyv8) { - } else { - z.DecFallback(yyv8, false) - } - } - case "items": - if r.TryDecodeAsNil() { - x.Items = nil - } else { - yyv10 := &x.Items - yym11 := z.DecBinary() - _ = yym11 - if false { - } else { - h.decSliceHorizontalPodAutoscaler((*[]HorizontalPodAutoscaler)(yyv10), d) - } - } - default: - z.DecStructFieldNotFound(-1, yys3) - } // end switch yys3 - } // end for yyj3 - z.DecSendContainerState(codecSelfer_containerMapEnd1234) -} - -func (x *HorizontalPodAutoscalerList) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - var yyj12 int - var yyb12 bool - var yyhl12 bool = l >= 0 - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.Kind = "" - } else { - yyv13 := &x.Kind - yym14 := z.DecBinary() - _ = yym14 - if false { - } else { - *((*string)(yyv13)) = r.DecodeString() - } - } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.APIVersion = "" - } else { - yyv15 := &x.APIVersion - yym16 := z.DecBinary() - _ = yym16 - if false { - } else { - *((*string)(yyv15)) = r.DecodeString() - } - } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.ListMeta = pkg1_v1.ListMeta{} - } else { - yyv17 := &x.ListMeta - yym18 := z.DecBinary() - _ = yym18 - if false { - } else if z.HasExtensions() && z.DecExt(yyv17) { - } else { - z.DecFallback(yyv17, false) - } - } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.Items = nil - } else { - yyv19 := &x.Items - yym20 := z.DecBinary() - _ = yym20 - if false { - } else { - h.decSliceHorizontalPodAutoscaler((*[]HorizontalPodAutoscaler)(yyv19), d) - } - } - for { - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l - } else { - yyb12 = r.CheckBreak() - } - if yyb12 { - break - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj12-1, "") - } - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) -} - func (x *ThirdPartyResource) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -20578,125 +18462,6 @@ func (x codecSelfer1234) decSliceCustomMetricCurrentStatus(v *[]CustomMetricCurr } } -func (x codecSelfer1234) encSliceHorizontalPodAutoscaler(v []HorizontalPodAutoscaler, e *codec1978.Encoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperEncoder(e) - _, _, _ = h, z, r - r.EncodeArrayStart(len(v)) - for _, yyv1 := range v { - z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yy2 := &yyv1 - yy2.CodecEncodeSelf(e) - } - z.EncSendContainerState(codecSelfer_containerArrayEnd1234) -} - -func (x codecSelfer1234) decSliceHorizontalPodAutoscaler(v *[]HorizontalPodAutoscaler, d *codec1978.Decoder) { - var h codecSelfer1234 - z, r := codec1978.GenHelperDecoder(d) - _, _, _ = h, z, r - - yyv1 := *v - yyh1, yyl1 := z.DecSliceHelperStart() - var yyc1 bool - _ = yyc1 - if yyl1 == 0 { - if yyv1 == nil { - yyv1 = []HorizontalPodAutoscaler{} - yyc1 = true - } else if len(yyv1) != 0 { - yyv1 = yyv1[:0] - yyc1 = true - } - } else if yyl1 > 0 { - var yyrr1, yyrl1 int - var yyrt1 bool - _, _ = yyrl1, yyrt1 - yyrr1 = yyl1 // len(yyv1) - if yyl1 > cap(yyv1) { - - yyrg1 := len(yyv1) > 0 - yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 376) - if yyrt1 { - if yyrl1 <= cap(yyv1) { - yyv1 = yyv1[:yyrl1] - } else { - yyv1 = make([]HorizontalPodAutoscaler, yyrl1) - } - } else { - yyv1 = make([]HorizontalPodAutoscaler, yyrl1) - } - yyc1 = true - yyrr1 = len(yyv1) - if yyrg1 { - copy(yyv1, yyv21) - } - } else if yyl1 != len(yyv1) { - yyv1 = yyv1[:yyl1] - yyc1 = true - } - yyj1 := 0 - for ; yyj1 < yyrr1; yyj1++ { - yyh1.ElemContainerState(yyj1) - if r.TryDecodeAsNil() { - yyv1[yyj1] = HorizontalPodAutoscaler{} - } else { - yyv2 := &yyv1[yyj1] - yyv2.CodecDecodeSelf(d) - } - - } - if yyrt1 { - for ; yyj1 < yyl1; yyj1++ { - yyv1 = append(yyv1, HorizontalPodAutoscaler{}) - yyh1.ElemContainerState(yyj1) - if r.TryDecodeAsNil() { - yyv1[yyj1] = HorizontalPodAutoscaler{} - } else { - yyv3 := &yyv1[yyj1] - yyv3.CodecDecodeSelf(d) - } - - } - } - - } else { - yyj1 := 0 - for ; !r.CheckBreak(); yyj1++ { - - if yyj1 >= len(yyv1) { - yyv1 = append(yyv1, HorizontalPodAutoscaler{}) // var yyz1 HorizontalPodAutoscaler - yyc1 = true - } - yyh1.ElemContainerState(yyj1) - if yyj1 < len(yyv1) { - if r.TryDecodeAsNil() { - yyv1[yyj1] = HorizontalPodAutoscaler{} - } else { - yyv4 := &yyv1[yyj1] - yyv4.CodecDecodeSelf(d) - } - - } else { - z.DecSwallow() - } - - } - if yyj1 < len(yyv1) { - yyv1 = yyv1[:yyj1] - yyc1 = true - } else if yyj1 == 0 && yyv1 == nil { - yyv1 = []HorizontalPodAutoscaler{} - yyc1 = true - } - } - yyh1.End() - if yyc1 { - *v = yyv1 - } -} - func (x codecSelfer1234) encSliceAPIVersion(v []APIVersion, e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) diff --git a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.go b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.go index d1ec5de4b3e..eed042de94d 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.go +++ b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.go @@ -73,28 +73,6 @@ type ReplicationControllerDummy struct { metav1.TypeMeta `json:",inline"` } -// SubresourceReference contains enough information to let you inspect or modify the referred subresource. -type SubresourceReference struct { - // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds - // +optional - Kind string `json:"kind,omitempty" protobuf:"bytes,1,opt,name=kind"` - // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names - // +optional - Name string `json:"name,omitempty" protobuf:"bytes,2,opt,name=name"` - // API version of the referent - // +optional - APIVersion string `json:"apiVersion,omitempty" protobuf:"bytes,3,opt,name=apiVersion"` - // Subresource name of the referent - // +optional - Subresource string `json:"subresource,omitempty" protobuf:"bytes,4,opt,name=subresource"` -} - -type CPUTargetUtilization struct { - // fraction of the requested CPU that should be utilized/used, - // e.g. 70 means that 70% of the requested CPU should be in use. - TargetPercentage int32 `json:"targetPercentage" protobuf:"varint,1,opt,name=targetPercentage"` -} - // Alpha-level support for Custom Metrics in HPA (as annotations). type CustomMetricTarget struct { // Custom Metric name. @@ -118,72 +96,6 @@ type CustomMetricCurrentStatusList struct { Items []CustomMetricCurrentStatus `json:"items" protobuf:"bytes,1,rep,name=items"` } -// specification of a horizontal pod autoscaler. -type HorizontalPodAutoscalerSpec struct { - // reference to Scale subresource; horizontal pod autoscaler will learn the current resource consumption from its status, - // and will set the desired number of pods by modifying its spec. - ScaleRef SubresourceReference `json:"scaleRef" protobuf:"bytes,1,opt,name=scaleRef"` - // lower limit for the number of pods that can be set by the autoscaler, default 1. - // +optional - MinReplicas *int32 `json:"minReplicas,omitempty" protobuf:"varint,2,opt,name=minReplicas"` - // upper limit for the number of pods that can be set by the autoscaler; cannot be smaller than MinReplicas. - MaxReplicas int32 `json:"maxReplicas" protobuf:"varint,3,opt,name=maxReplicas"` - // target average CPU utilization (represented as a percentage of requested CPU) over all the pods; - // if not specified it defaults to the target CPU utilization at 80% of the requested resources. - // +optional - CPUUtilization *CPUTargetUtilization `json:"cpuUtilization,omitempty" protobuf:"bytes,4,opt,name=cpuUtilization"` -} - -// current status of a horizontal pod autoscaler -type HorizontalPodAutoscalerStatus struct { - // most recent generation observed by this autoscaler. - // +optional - ObservedGeneration *int64 `json:"observedGeneration,omitempty" protobuf:"varint,1,opt,name=observedGeneration"` - - // last time the HorizontalPodAutoscaler scaled the number of pods; - // used by the autoscaler to control how often the number of pods is changed. - // +optional - LastScaleTime *metav1.Time `json:"lastScaleTime,omitempty" protobuf:"bytes,2,opt,name=lastScaleTime"` - - // current number of replicas of pods managed by this autoscaler. - CurrentReplicas int32 `json:"currentReplicas" protobuf:"varint,3,opt,name=currentReplicas"` - - // desired number of replicas of pods managed by this autoscaler. - DesiredReplicas int32 `json:"desiredReplicas" protobuf:"varint,4,opt,name=desiredReplicas"` - - // current average CPU utilization over all pods, represented as a percentage of requested CPU, - // e.g. 70 means that an average pod is using now 70% of its requested CPU. - // +optional - CurrentCPUUtilizationPercentage *int32 `json:"currentCPUUtilizationPercentage,omitempty" protobuf:"varint,5,opt,name=currentCPUUtilizationPercentage"` -} - -// configuration of a horizontal pod autoscaler. -type HorizontalPodAutoscaler struct { - metav1.TypeMeta `json:",inline"` - // Standard object metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata - // +optional - metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` - - // behaviour of autoscaler. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. - // +optional - Spec HorizontalPodAutoscalerSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` - - // current information about the autoscaler. - // +optional - Status HorizontalPodAutoscalerStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` -} - -// list of horizontal pod autoscaler objects. -type HorizontalPodAutoscalerList struct { - metav1.TypeMeta `json:",inline"` - // Standard list metadata. - // +optional - metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` - - // list of horizontal pod autoscaler objects. - Items []HorizontalPodAutoscaler `json:"items" protobuf:"bytes,2,rep,name=items"` -} - // +genclient=true // +nonNamespaced=true diff --git a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go index 3291c2431b1..6c56702499b 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go +++ b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go @@ -36,14 +36,6 @@ func (APIVersion) SwaggerDoc() map[string]string { return map_APIVersion } -var map_CPUTargetUtilization = map[string]string{ - "targetPercentage": "fraction of the requested CPU that should be utilized/used, e.g. 70 means that 70% of the requested CPU should be in use.", -} - -func (CPUTargetUtilization) SwaggerDoc() map[string]string { - return map_CPUTargetUtilization -} - var map_CustomMetricCurrentStatus = map[string]string{ "name": "Custom Metric name.", "value": "Custom Metric value (average).", @@ -224,52 +216,6 @@ func (HTTPIngressRuleValue) SwaggerDoc() map[string]string { return map_HTTPIngressRuleValue } -var map_HorizontalPodAutoscaler = map[string]string{ - "": "configuration of a horizontal pod autoscaler.", - "metadata": "Standard object metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", - "spec": "behaviour of autoscaler. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status.", - "status": "current information about the autoscaler.", -} - -func (HorizontalPodAutoscaler) SwaggerDoc() map[string]string { - return map_HorizontalPodAutoscaler -} - -var map_HorizontalPodAutoscalerList = map[string]string{ - "": "list of horizontal pod autoscaler objects.", - "metadata": "Standard list metadata.", - "items": "list of horizontal pod autoscaler objects.", -} - -func (HorizontalPodAutoscalerList) SwaggerDoc() map[string]string { - return map_HorizontalPodAutoscalerList -} - -var map_HorizontalPodAutoscalerSpec = map[string]string{ - "": "specification of a horizontal pod autoscaler.", - "scaleRef": "reference to Scale subresource; horizontal pod autoscaler will learn the current resource consumption from its status, and will set the desired number of pods by modifying its spec.", - "minReplicas": "lower limit for the number of pods that can be set by the autoscaler, default 1.", - "maxReplicas": "upper limit for the number of pods that can be set by the autoscaler; cannot be smaller than MinReplicas.", - "cpuUtilization": "target average CPU utilization (represented as a percentage of requested CPU) over all the pods; if not specified it defaults to the target CPU utilization at 80% of the requested resources.", -} - -func (HorizontalPodAutoscalerSpec) SwaggerDoc() map[string]string { - return map_HorizontalPodAutoscalerSpec -} - -var map_HorizontalPodAutoscalerStatus = map[string]string{ - "": "current status of a horizontal pod autoscaler", - "observedGeneration": "most recent generation observed by this autoscaler.", - "lastScaleTime": "last time the HorizontalPodAutoscaler scaled the number of pods; used by the autoscaler to control how often the number of pods is changed.", - "currentReplicas": "current number of replicas of pods managed by this autoscaler.", - "desiredReplicas": "desired number of replicas of pods managed by this autoscaler.", - "currentCPUUtilizationPercentage": "current average CPU utilization over all pods, represented as a percentage of requested CPU, e.g. 70 means that an average pod is using now 70% of its requested CPU.", -} - -func (HorizontalPodAutoscalerStatus) SwaggerDoc() map[string]string { - return map_HorizontalPodAutoscalerStatus -} - var map_HostPortRange = map[string]string{ "": "Host Port Range defines a range of host ports that will be enabled by a policy for pods to use. It requires both the start and end to be defined.", "min": "min is the start of the range, inclusive.", @@ -603,18 +549,6 @@ func (ScaleStatus) SwaggerDoc() map[string]string { return map_ScaleStatus } -var map_SubresourceReference = map[string]string{ - "": "SubresourceReference contains enough information to let you inspect or modify the referred subresource.", - "kind": "Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", - "name": "Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names", - "apiVersion": "API version of the referent", - "subresource": "Subresource name of the referent", -} - -func (SubresourceReference) SwaggerDoc() map[string]string { - return map_SubresourceReference -} - var map_SupplementalGroupsStrategyOptions = map[string]string{ "": "SupplementalGroupsStrategyOptions defines the strategy type and options used to create the strategy.", "rule": "Rule is the strategy that will dictate what supplemental groups is used in the SecurityContext.", diff --git a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.conversion.go b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.conversion.go index b6b69103ca6..3bcf23fe947 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.conversion.go +++ b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.conversion.go @@ -27,7 +27,6 @@ import ( intstr "k8s.io/apimachinery/pkg/util/intstr" api "k8s.io/client-go/pkg/api" api_v1 "k8s.io/client-go/pkg/api/v1" - autoscaling "k8s.io/client-go/pkg/apis/autoscaling" extensions "k8s.io/client-go/pkg/apis/extensions" unsafe "unsafe" ) @@ -78,14 +77,6 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_extensions_HTTPIngressPath_To_v1beta1_HTTPIngressPath, Convert_v1beta1_HTTPIngressRuleValue_To_extensions_HTTPIngressRuleValue, Convert_extensions_HTTPIngressRuleValue_To_v1beta1_HTTPIngressRuleValue, - Convert_v1beta1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler, - Convert_autoscaling_HorizontalPodAutoscaler_To_v1beta1_HorizontalPodAutoscaler, - Convert_v1beta1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList, - Convert_autoscaling_HorizontalPodAutoscalerList_To_v1beta1_HorizontalPodAutoscalerList, - Convert_v1beta1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec, - Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v1beta1_HorizontalPodAutoscalerSpec, - Convert_v1beta1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus, - Convert_autoscaling_HorizontalPodAutoscalerStatus_To_v1beta1_HorizontalPodAutoscalerStatus, Convert_v1beta1_HostPortRange_To_extensions_HostPortRange, Convert_extensions_HostPortRange_To_v1beta1_HostPortRange, Convert_v1beta1_IDRange_To_extensions_IDRange, @@ -659,118 +650,6 @@ func Convert_extensions_HTTPIngressRuleValue_To_v1beta1_HTTPIngressRuleValue(in return autoConvert_extensions_HTTPIngressRuleValue_To_v1beta1_HTTPIngressRuleValue(in, out, s) } -func autoConvert_v1beta1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(in *HorizontalPodAutoscaler, out *autoscaling.HorizontalPodAutoscaler, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_v1beta1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_v1beta1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -func Convert_v1beta1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(in *HorizontalPodAutoscaler, out *autoscaling.HorizontalPodAutoscaler, s conversion.Scope) error { - return autoConvert_v1beta1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(in, out, s) -} - -func autoConvert_autoscaling_HorizontalPodAutoscaler_To_v1beta1_HorizontalPodAutoscaler(in *autoscaling.HorizontalPodAutoscaler, out *HorizontalPodAutoscaler, s conversion.Scope) error { - out.ObjectMeta = in.ObjectMeta - if err := Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v1beta1_HorizontalPodAutoscalerSpec(&in.Spec, &out.Spec, s); err != nil { - return err - } - if err := Convert_autoscaling_HorizontalPodAutoscalerStatus_To_v1beta1_HorizontalPodAutoscalerStatus(&in.Status, &out.Status, s); err != nil { - return err - } - return nil -} - -func Convert_autoscaling_HorizontalPodAutoscaler_To_v1beta1_HorizontalPodAutoscaler(in *autoscaling.HorizontalPodAutoscaler, out *HorizontalPodAutoscaler, s conversion.Scope) error { - return autoConvert_autoscaling_HorizontalPodAutoscaler_To_v1beta1_HorizontalPodAutoscaler(in, out, s) -} - -func autoConvert_v1beta1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList(in *HorizontalPodAutoscalerList, out *autoscaling.HorizontalPodAutoscalerList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]autoscaling.HorizontalPodAutoscaler, len(*in)) - for i := range *in { - if err := Convert_v1beta1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = nil - } - return nil -} - -func Convert_v1beta1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList(in *HorizontalPodAutoscalerList, out *autoscaling.HorizontalPodAutoscalerList, s conversion.Scope) error { - return autoConvert_v1beta1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList(in, out, s) -} - -func autoConvert_autoscaling_HorizontalPodAutoscalerList_To_v1beta1_HorizontalPodAutoscalerList(in *autoscaling.HorizontalPodAutoscalerList, out *HorizontalPodAutoscalerList, s conversion.Scope) error { - out.ListMeta = in.ListMeta - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]HorizontalPodAutoscaler, len(*in)) - for i := range *in { - if err := Convert_autoscaling_HorizontalPodAutoscaler_To_v1beta1_HorizontalPodAutoscaler(&(*in)[i], &(*out)[i], s); err != nil { - return err - } - } - } else { - out.Items = nil - } - return nil -} - -func Convert_autoscaling_HorizontalPodAutoscalerList_To_v1beta1_HorizontalPodAutoscalerList(in *autoscaling.HorizontalPodAutoscalerList, out *HorizontalPodAutoscalerList, s conversion.Scope) error { - return autoConvert_autoscaling_HorizontalPodAutoscalerList_To_v1beta1_HorizontalPodAutoscalerList(in, out, s) -} - -func autoConvert_v1beta1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec(in *HorizontalPodAutoscalerSpec, out *autoscaling.HorizontalPodAutoscalerSpec, s conversion.Scope) error { - // WARNING: in.ScaleRef requires manual conversion: does not exist in peer-type - out.MinReplicas = (*int32)(unsafe.Pointer(in.MinReplicas)) - out.MaxReplicas = in.MaxReplicas - // WARNING: in.CPUUtilization requires manual conversion: does not exist in peer-type - return nil -} - -func autoConvert_autoscaling_HorizontalPodAutoscalerSpec_To_v1beta1_HorizontalPodAutoscalerSpec(in *autoscaling.HorizontalPodAutoscalerSpec, out *HorizontalPodAutoscalerSpec, s conversion.Scope) error { - // WARNING: in.ScaleTargetRef requires manual conversion: does not exist in peer-type - out.MinReplicas = (*int32)(unsafe.Pointer(in.MinReplicas)) - out.MaxReplicas = in.MaxReplicas - // WARNING: in.TargetCPUUtilizationPercentage requires manual conversion: does not exist in peer-type - return nil -} - -func autoConvert_v1beta1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(in *HorizontalPodAutoscalerStatus, out *autoscaling.HorizontalPodAutoscalerStatus, s conversion.Scope) error { - out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) - out.LastScaleTime = (*v1.Time)(unsafe.Pointer(in.LastScaleTime)) - out.CurrentReplicas = in.CurrentReplicas - out.DesiredReplicas = in.DesiredReplicas - out.CurrentCPUUtilizationPercentage = (*int32)(unsafe.Pointer(in.CurrentCPUUtilizationPercentage)) - return nil -} - -func Convert_v1beta1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(in *HorizontalPodAutoscalerStatus, out *autoscaling.HorizontalPodAutoscalerStatus, s conversion.Scope) error { - return autoConvert_v1beta1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(in, out, s) -} - -func autoConvert_autoscaling_HorizontalPodAutoscalerStatus_To_v1beta1_HorizontalPodAutoscalerStatus(in *autoscaling.HorizontalPodAutoscalerStatus, out *HorizontalPodAutoscalerStatus, s conversion.Scope) error { - out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) - out.LastScaleTime = (*v1.Time)(unsafe.Pointer(in.LastScaleTime)) - out.CurrentReplicas = in.CurrentReplicas - out.DesiredReplicas = in.DesiredReplicas - out.CurrentCPUUtilizationPercentage = (*int32)(unsafe.Pointer(in.CurrentCPUUtilizationPercentage)) - return nil -} - -func Convert_autoscaling_HorizontalPodAutoscalerStatus_To_v1beta1_HorizontalPodAutoscalerStatus(in *autoscaling.HorizontalPodAutoscalerStatus, out *HorizontalPodAutoscalerStatus, s conversion.Scope) error { - return autoConvert_autoscaling_HorizontalPodAutoscalerStatus_To_v1beta1_HorizontalPodAutoscalerStatus(in, out, s) -} - func autoConvert_v1beta1_HostPortRange_To_extensions_HostPortRange(in *HostPortRange, out *extensions.HostPortRange, s conversion.Scope) error { out.Min = int(in.Min) out.Max = int(in.Max) diff --git a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go index fd61aefca1f..b768f054d29 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go +++ b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go @@ -38,7 +38,6 @@ func init() { func RegisterDeepCopies(scheme *runtime.Scheme) error { return scheme.AddGeneratedDeepCopyFuncs( conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_APIVersion, InType: reflect.TypeOf(&APIVersion{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_CPUTargetUtilization, InType: reflect.TypeOf(&CPUTargetUtilization{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_CustomMetricCurrentStatus, InType: reflect.TypeOf(&CustomMetricCurrentStatus{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_CustomMetricCurrentStatusList, InType: reflect.TypeOf(&CustomMetricCurrentStatusList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_CustomMetricTarget, InType: reflect.TypeOf(&CustomMetricTarget{})}, @@ -57,10 +56,6 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_FSGroupStrategyOptions, InType: reflect.TypeOf(&FSGroupStrategyOptions{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_HTTPIngressPath, InType: reflect.TypeOf(&HTTPIngressPath{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_HTTPIngressRuleValue, InType: reflect.TypeOf(&HTTPIngressRuleValue{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_HorizontalPodAutoscaler, InType: reflect.TypeOf(&HorizontalPodAutoscaler{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_HorizontalPodAutoscalerList, InType: reflect.TypeOf(&HorizontalPodAutoscalerList{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_HorizontalPodAutoscalerSpec, InType: reflect.TypeOf(&HorizontalPodAutoscalerSpec{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_HorizontalPodAutoscalerStatus, InType: reflect.TypeOf(&HorizontalPodAutoscalerStatus{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_HostPortRange, InType: reflect.TypeOf(&HostPortRange{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_IDRange, InType: reflect.TypeOf(&IDRange{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_Ingress, InType: reflect.TypeOf(&Ingress{})}, @@ -93,7 +88,6 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_Scale, InType: reflect.TypeOf(&Scale{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_ScaleSpec, InType: reflect.TypeOf(&ScaleSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_ScaleStatus, InType: reflect.TypeOf(&ScaleStatus{})}, - conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_SubresourceReference, InType: reflect.TypeOf(&SubresourceReference{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_SupplementalGroupsStrategyOptions, InType: reflect.TypeOf(&SupplementalGroupsStrategyOptions{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_ThirdPartyResource, InType: reflect.TypeOf(&ThirdPartyResource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_ThirdPartyResourceData, InType: reflect.TypeOf(&ThirdPartyResourceData{})}, @@ -111,15 +105,6 @@ func DeepCopy_v1beta1_APIVersion(in interface{}, out interface{}, c *conversion. } } -func DeepCopy_v1beta1_CPUTargetUtilization(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*CPUTargetUtilization) - out := out.(*CPUTargetUtilization) - *out = *in - return nil - } -} - func DeepCopy_v1beta1_CustomMetricCurrentStatus(in interface{}, out interface{}, c *conversion.Cloner) error { { in := in.(*CustomMetricCurrentStatus) @@ -419,87 +404,6 @@ func DeepCopy_v1beta1_HTTPIngressRuleValue(in interface{}, out interface{}, c *c } } -func DeepCopy_v1beta1_HorizontalPodAutoscaler(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HorizontalPodAutoscaler) - out := out.(*HorizontalPodAutoscaler) - *out = *in - if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { - return err - } else { - out.ObjectMeta = *newVal.(*v1.ObjectMeta) - } - if err := DeepCopy_v1beta1_HorizontalPodAutoscalerSpec(&in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_v1beta1_HorizontalPodAutoscalerStatus(&in.Status, &out.Status, c); err != nil { - return err - } - return nil - } -} - -func DeepCopy_v1beta1_HorizontalPodAutoscalerList(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HorizontalPodAutoscalerList) - out := out.(*HorizontalPodAutoscalerList) - *out = *in - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]HorizontalPodAutoscaler, len(*in)) - for i := range *in { - if err := DeepCopy_v1beta1_HorizontalPodAutoscaler(&(*in)[i], &(*out)[i], c); err != nil { - return err - } - } - } - return nil - } -} - -func DeepCopy_v1beta1_HorizontalPodAutoscalerSpec(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HorizontalPodAutoscalerSpec) - out := out.(*HorizontalPodAutoscalerSpec) - *out = *in - if in.MinReplicas != nil { - in, out := &in.MinReplicas, &out.MinReplicas - *out = new(int32) - **out = **in - } - if in.CPUUtilization != nil { - in, out := &in.CPUUtilization, &out.CPUUtilization - *out = new(CPUTargetUtilization) - **out = **in - } - return nil - } -} - -func DeepCopy_v1beta1_HorizontalPodAutoscalerStatus(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*HorizontalPodAutoscalerStatus) - out := out.(*HorizontalPodAutoscalerStatus) - *out = *in - if in.ObservedGeneration != nil { - in, out := &in.ObservedGeneration, &out.ObservedGeneration - *out = new(int64) - **out = **in - } - if in.LastScaleTime != nil { - in, out := &in.LastScaleTime, &out.LastScaleTime - *out = new(v1.Time) - **out = (*in).DeepCopy() - } - if in.CurrentCPUUtilizationPercentage != nil { - in, out := &in.CurrentCPUUtilizationPercentage, &out.CurrentCPUUtilizationPercentage - *out = new(int32) - **out = **in - } - return nil - } -} - func DeepCopy_v1beta1_HostPortRange(in interface{}, out interface{}, c *conversion.Cloner) error { { in := in.(*HostPortRange) @@ -1059,15 +963,6 @@ func DeepCopy_v1beta1_ScaleStatus(in interface{}, out interface{}, c *conversion } } -func DeepCopy_v1beta1_SubresourceReference(in interface{}, out interface{}, c *conversion.Cloner) error { - { - in := in.(*SubresourceReference) - out := out.(*SubresourceReference) - *out = *in - return nil - } -} - func DeepCopy_v1beta1_SupplementalGroupsStrategyOptions(in interface{}, out interface{}, c *conversion.Cloner) error { { in := in.(*SupplementalGroupsStrategyOptions) diff --git a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.defaults.go b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.defaults.go index 511a9340ac1..f7f59e01ab4 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.defaults.go +++ b/staging/src/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.defaults.go @@ -33,10 +33,6 @@ func RegisterDefaults(scheme *runtime.Scheme) error { scheme.AddTypeDefaultingFunc(&DaemonSetList{}, func(obj interface{}) { SetObjectDefaults_DaemonSetList(obj.(*DaemonSetList)) }) scheme.AddTypeDefaultingFunc(&Deployment{}, func(obj interface{}) { SetObjectDefaults_Deployment(obj.(*Deployment)) }) scheme.AddTypeDefaultingFunc(&DeploymentList{}, func(obj interface{}) { SetObjectDefaults_DeploymentList(obj.(*DeploymentList)) }) - scheme.AddTypeDefaultingFunc(&HorizontalPodAutoscaler{}, func(obj interface{}) { SetObjectDefaults_HorizontalPodAutoscaler(obj.(*HorizontalPodAutoscaler)) }) - scheme.AddTypeDefaultingFunc(&HorizontalPodAutoscalerList{}, func(obj interface{}) { - SetObjectDefaults_HorizontalPodAutoscalerList(obj.(*HorizontalPodAutoscalerList)) - }) scheme.AddTypeDefaultingFunc(&NetworkPolicy{}, func(obj interface{}) { SetObjectDefaults_NetworkPolicy(obj.(*NetworkPolicy)) }) scheme.AddTypeDefaultingFunc(&NetworkPolicyList{}, func(obj interface{}) { SetObjectDefaults_NetworkPolicyList(obj.(*NetworkPolicyList)) }) scheme.AddTypeDefaultingFunc(&ReplicaSet{}, func(obj interface{}) { SetObjectDefaults_ReplicaSet(obj.(*ReplicaSet)) }) @@ -292,17 +288,6 @@ func SetObjectDefaults_DeploymentList(in *DeploymentList) { } } -func SetObjectDefaults_HorizontalPodAutoscaler(in *HorizontalPodAutoscaler) { - SetDefaults_HorizontalPodAutoscaler(in) -} - -func SetObjectDefaults_HorizontalPodAutoscalerList(in *HorizontalPodAutoscalerList) { - for i := range in.Items { - a := &in.Items[i] - SetObjectDefaults_HorizontalPodAutoscaler(a) - } -} - func SetObjectDefaults_NetworkPolicy(in *NetworkPolicy) { SetDefaults_NetworkPolicy(in) } diff --git a/staging/src/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.pb.go index 488a4fee75e..3b68f56facf 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.pb.go @@ -1322,53 +1322,54 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 762 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xbc, 0x94, 0xcf, 0x6f, 0xd3, 0x48, - 0x14, 0xc7, 0xe3, 0x26, 0xe9, 0x66, 0xa7, 0x49, 0xd5, 0x9d, 0xdd, 0xee, 0x66, 0x23, 0xad, 0xbb, - 0xca, 0xa9, 0x45, 0x30, 0xa6, 0x2d, 0x42, 0x85, 0x43, 0x45, 0x4d, 0x2a, 0x28, 0x6a, 0x95, 0xca, - 0x45, 0x42, 0x42, 0x20, 0x31, 0xb6, 0x1f, 0xce, 0x34, 0xfe, 0x25, 0x7b, 0x1c, 0xc8, 0x8d, 0x3f, - 0x81, 0x03, 0x7f, 0x54, 0x25, 0x2e, 0x3d, 0x22, 0x84, 0x2a, 0x1a, 0xf8, 0x17, 0xb8, 0x23, 0xdb, - 0x93, 0x1f, 0x6e, 0x12, 0x35, 0xa8, 0x88, 0x9b, 0x67, 0xe6, 0x7d, 0xbe, 0xdf, 0xf7, 0xde, 0xbc, - 0x31, 0xba, 0xd3, 0xde, 0x0a, 0x09, 0xf3, 0x94, 0x76, 0xa4, 0x43, 0xe0, 0x02, 0x87, 0x50, 0xf1, - 0xdb, 0x96, 0x42, 0x7d, 0x16, 0x2a, 0xbe, 0x67, 0x33, 0xa3, 0xab, 0x74, 0xd6, 0x75, 0xe0, 0x74, - 0x5d, 0xb1, 0xc0, 0x85, 0x80, 0x72, 0x30, 0x89, 0x1f, 0x78, 0xdc, 0xc3, 0x6b, 0x29, 0x4a, 0x86, - 0x28, 0xf1, 0xdb, 0x16, 0x89, 0x51, 0x92, 0xa2, 0x44, 0xa0, 0xb5, 0x1b, 0x16, 0xe3, 0xad, 0x48, - 0x27, 0x86, 0xe7, 0x28, 0x96, 0x67, 0x79, 0x4a, 0xa2, 0xa0, 0x47, 0x2f, 0x93, 0x55, 0xb2, 0x48, - 0xbe, 0x52, 0xe5, 0xda, 0x2d, 0x91, 0x14, 0xf5, 0x99, 0x43, 0x8d, 0x16, 0x73, 0x21, 0xe8, 0x0e, - 0xd3, 0x72, 0x80, 0x53, 0xa5, 0x33, 0x96, 0x4f, 0x4d, 0x99, 0x46, 0x05, 0x91, 0xcb, 0x99, 0x03, - 0x63, 0xc0, 0xed, 0xcb, 0x80, 0xd0, 0x68, 0x81, 0x43, 0xc7, 0xb8, 0xcd, 0x69, 0x5c, 0xc4, 0x99, - 0xad, 0x30, 0x97, 0x87, 0x3c, 0x18, 0x83, 0xae, 0x4f, 0x6d, 0xf4, 0x84, 0x5a, 0xea, 0x1f, 0x25, - 0x54, 0xda, 0xed, 0x30, 0x83, 0x33, 0xcf, 0xc5, 0x2f, 0x50, 0x29, 0xae, 0xd9, 0xa4, 0x9c, 0x56, - 0xa5, 0xff, 0xa5, 0xd5, 0x85, 0x8d, 0x9b, 0x44, 0xf4, 0x7e, 0x34, 0x85, 0x61, 0xf7, 0xe3, 0x68, - 0xd2, 0x59, 0x27, 0x4d, 0xfd, 0x18, 0x0c, 0x7e, 0x00, 0x9c, 0xaa, 0xf8, 0xe4, 0x6c, 0x25, 0xd7, - 0x3b, 0x5b, 0x41, 0xc3, 0x3d, 0x6d, 0xa0, 0x8a, 0x6d, 0x54, 0x31, 0xc1, 0x06, 0x0e, 0x4d, 0x3f, - 0x76, 0x0c, 0xab, 0x73, 0x89, 0xcd, 0xe6, 0x6c, 0x36, 0x8d, 0x51, 0x54, 0xfd, 0xa3, 0x77, 0xb6, - 0x52, 0xc9, 0x6c, 0x69, 0x59, 0xf1, 0xfa, 0xfb, 0x39, 0xf4, 0xe7, 0xa1, 0x67, 0x36, 0x58, 0x18, - 0x44, 0xc9, 0x96, 0x1a, 0x99, 0x16, 0xf0, 0x5f, 0x50, 0xa7, 0x89, 0x0a, 0xa1, 0x0f, 0x86, 0x28, - 0x4f, 0x25, 0x33, 0x4f, 0x30, 0x99, 0x90, 0xef, 0x91, 0x0f, 0x86, 0x5a, 0x16, 0x7e, 0x85, 0x78, - 0xa5, 0x25, 0xea, 0xd8, 0x46, 0xf3, 0x21, 0xa7, 0x3c, 0x0a, 0xab, 0xf9, 0xc4, 0xa7, 0x71, 0x45, - 0x9f, 0x44, 0x4b, 0x5d, 0x14, 0x4e, 0xf3, 0xe9, 0x5a, 0x13, 0x1e, 0xf5, 0x4f, 0x12, 0xfa, 0x67, - 0x02, 0xb5, 0xcf, 0x42, 0x8e, 0x9f, 0x8d, 0x75, 0x94, 0xcc, 0xd6, 0xd1, 0x98, 0x4e, 0xfa, 0xb9, - 0x24, 0x5c, 0x4b, 0xfd, 0x9d, 0x91, 0x6e, 0x1a, 0xa8, 0xc8, 0x38, 0x38, 0xf1, 0xb4, 0xe4, 0x57, - 0x17, 0x36, 0xb6, 0xaf, 0x56, 0xa6, 0x5a, 0x11, 0x56, 0xc5, 0xbd, 0x58, 0x54, 0x4b, 0xb5, 0xeb, - 0x5f, 0x27, 0x97, 0x17, 0xb7, 0x1b, 0x1f, 0xa3, 0xb2, 0xc3, 0xdc, 0x9d, 0x0e, 0x65, 0x36, 0xd5, - 0x6d, 0xb8, 0x74, 0x68, 0xe2, 0xf7, 0x49, 0xd2, 0xf7, 0x49, 0xf6, 0x5c, 0xde, 0x0c, 0x8e, 0x78, - 0xc0, 0x5c, 0x4b, 0xfd, 0x4b, 0x38, 0x97, 0x0f, 0x46, 0xd4, 0xb4, 0x8c, 0x36, 0x7e, 0x8e, 0x4a, - 0x21, 0xd8, 0x60, 0x70, 0x2f, 0xf8, 0xb1, 0xd7, 0xb1, 0x4f, 0x75, 0xb0, 0x8f, 0x04, 0xaa, 0x96, - 0xe3, 0x5e, 0xf6, 0x57, 0xda, 0x40, 0xb2, 0xfe, 0xad, 0x80, 0xfe, 0x9d, 0x7a, 0xf7, 0xf8, 0x11, - 0xc2, 0x9e, 0x1e, 0x42, 0xd0, 0x01, 0xf3, 0x41, 0xfa, 0xa7, 0x60, 0x9e, 0x9b, 0x94, 0x9b, 0x57, - 0x6b, 0x22, 0x79, 0xdc, 0x1c, 0x8b, 0xd0, 0x26, 0x50, 0xf8, 0x9d, 0x84, 0x2a, 0x66, 0x6a, 0x03, - 0xe6, 0xa1, 0x67, 0xf6, 0xaf, 0xef, 0xc9, 0xcf, 0x98, 0x52, 0xd2, 0x18, 0x55, 0xde, 0x75, 0x79, - 0xd0, 0x55, 0x97, 0x45, 0x82, 0x95, 0xcc, 0x99, 0x96, 0x4d, 0x02, 0x1f, 0x20, 0x6c, 0x0e, 0x24, - 0xc3, 0x1d, 0xdb, 0xf6, 0x5e, 0x81, 0x99, 0x3c, 0xa0, 0xa2, 0xfa, 0x9f, 0x50, 0x58, 0xce, 0xf8, - 0xf6, 0x83, 0xb4, 0x09, 0x20, 0xde, 0x46, 0x8b, 0x46, 0x14, 0x04, 0xe0, 0xf2, 0x87, 0x40, 0x6d, - 0xde, 0xea, 0x56, 0x0b, 0x89, 0xd4, 0xdf, 0x42, 0x6a, 0xf1, 0x7e, 0xe6, 0x54, 0xbb, 0x10, 0x1d, - 0xf3, 0x26, 0x84, 0x2c, 0x00, 0xb3, 0xcf, 0x17, 0xb3, 0x7c, 0x23, 0x73, 0xaa, 0x5d, 0x88, 0xc6, - 0x5b, 0xa8, 0x0c, 0xaf, 0x7d, 0x30, 0xfa, 0x3d, 0x9e, 0x4f, 0xe8, 0xc1, 0xa0, 0xed, 0x8e, 0x9c, - 0x69, 0x99, 0xc8, 0x9a, 0x8d, 0xf0, 0x78, 0x13, 0xf1, 0x12, 0xca, 0xb7, 0xa1, 0x9b, 0x5c, 0xf9, - 0xef, 0x5a, 0xfc, 0x89, 0xef, 0xa1, 0x62, 0x87, 0xda, 0x11, 0x88, 0x69, 0xbc, 0x36, 0xdb, 0x34, - 0x3e, 0x66, 0x0e, 0x68, 0x29, 0x78, 0x77, 0x6e, 0x4b, 0x52, 0xd7, 0x4e, 0xce, 0xe5, 0xdc, 0xe9, - 0xb9, 0x9c, 0xfb, 0x70, 0x2e, 0xe7, 0xde, 0xf4, 0x64, 0xe9, 0xa4, 0x27, 0x4b, 0xa7, 0x3d, 0x59, - 0xfa, 0xdc, 0x93, 0xa5, 0xb7, 0x5f, 0xe4, 0xdc, 0xd3, 0xdf, 0xc4, 0xa5, 0x7f, 0x0f, 0x00, 0x00, - 0xff, 0xff, 0x3d, 0x4a, 0x99, 0x08, 0x2b, 0x08, 0x00, 0x00, + // 773 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xbc, 0x94, 0xcb, 0x6e, 0xf3, 0x44, + 0x18, 0x86, 0xe3, 0x26, 0x29, 0x61, 0x9a, 0x54, 0x65, 0xa0, 0x10, 0x22, 0xe1, 0xa2, 0xac, 0x5a, + 0x04, 0x63, 0xda, 0x22, 0x54, 0x58, 0x54, 0xd4, 0xa4, 0x82, 0xa2, 0x56, 0xa9, 0x5c, 0x24, 0x24, + 0x04, 0x12, 0x63, 0xfb, 0xc3, 0x99, 0xc6, 0x27, 0x8d, 0xc7, 0xa1, 0xd9, 0x71, 0x09, 0x2c, 0xb8, + 0xa8, 0x4a, 0x6c, 0xba, 0x44, 0x08, 0x55, 0x34, 0x70, 0x0b, 0xec, 0x91, 0xc7, 0x93, 0x83, 0x9b, + 0x44, 0x0d, 0xea, 0xaf, 0x7f, 0xe7, 0x39, 0x3c, 0xef, 0xfb, 0x9d, 0xc6, 0xe8, 0x93, 0xfe, 0x51, + 0x42, 0x58, 0x64, 0xf4, 0x53, 0x1b, 0x78, 0x08, 0x02, 0x12, 0x23, 0xee, 0x7b, 0x06, 0x8d, 0x59, + 0x62, 0xc4, 0x91, 0xcf, 0x9c, 0xa1, 0x31, 0xd8, 0xb7, 0x41, 0xd0, 0x7d, 0xc3, 0x83, 0x10, 0x38, + 0x15, 0xe0, 0x92, 0x98, 0x47, 0x22, 0xc2, 0x7b, 0x39, 0x4a, 0xa6, 0x28, 0x89, 0xfb, 0x1e, 0xc9, + 0x50, 0x92, 0xa3, 0x44, 0xa1, 0xad, 0x0f, 0x3c, 0x26, 0x7a, 0xa9, 0x4d, 0x9c, 0x28, 0x30, 0xbc, + 0xc8, 0x8b, 0x0c, 0xa9, 0x60, 0xa7, 0x3f, 0xca, 0x95, 0x5c, 0xc8, 0xaf, 0x5c, 0xb9, 0xf5, 0x91, + 0x0a, 0x8a, 0xc6, 0x2c, 0xa0, 0x4e, 0x8f, 0x85, 0xc0, 0x87, 0xd3, 0xb0, 0x02, 0x10, 0xd4, 0x18, + 0xcc, 0xc5, 0xd3, 0x32, 0x96, 0x51, 0x3c, 0x0d, 0x05, 0x0b, 0x60, 0x0e, 0xf8, 0xf8, 0x29, 0x20, + 0x71, 0x7a, 0x10, 0xd0, 0x39, 0xee, 0x70, 0x19, 0x97, 0x0a, 0xe6, 0x1b, 0x2c, 0x14, 0x89, 0xe0, + 0x73, 0xd0, 0x4c, 0x4e, 0x09, 0xf0, 0x01, 0xf0, 0x69, 0x42, 0x70, 0x43, 0x83, 0xd8, 0x87, 0x45, + 0x39, 0xbd, 0xbf, 0xb4, 0x3d, 0x0b, 0x6e, 0xb7, 0xff, 0xd0, 0x50, 0xed, 0x74, 0xc0, 0x1c, 0xc1, + 0xa2, 0x10, 0xff, 0x80, 0x6a, 0x59, 0xa5, 0x5c, 0x2a, 0x68, 0x53, 0x7b, 0x57, 0xdb, 0xdd, 0x38, + 0xf8, 0x90, 0xa8, 0x8e, 0xcd, 0x06, 0x3e, 0xed, 0x59, 0x76, 0x9b, 0x0c, 0xf6, 0x49, 0xd7, 0xbe, + 0x06, 0x47, 0x5c, 0x80, 0xa0, 0x26, 0xbe, 0xbd, 0xdf, 0x29, 0x8d, 0xee, 0x77, 0xd0, 0x74, 0xcf, + 0x9a, 0xa8, 0x62, 0x1f, 0x35, 0x5c, 0xf0, 0x41, 0x40, 0x37, 0xce, 0x1c, 0x93, 0xe6, 0x9a, 0xb4, + 0x39, 0x5c, 0xcd, 0xa6, 0x33, 0x8b, 0x9a, 0xaf, 0x8d, 0xee, 0x77, 0x1a, 0x85, 0x2d, 0xab, 0x28, + 0xde, 0xfe, 0x6d, 0x0d, 0xbd, 0x7e, 0x19, 0xb9, 0x1d, 0x96, 0xf0, 0x54, 0x6e, 0x99, 0xa9, 0xeb, + 0x81, 0x78, 0x09, 0x79, 0xba, 0xa8, 0x92, 0xc4, 0xe0, 0xa8, 0xf4, 0x4c, 0xb2, 0xf2, 0xdc, 0x93, + 0x05, 0xf1, 0x5e, 0xc5, 0xe0, 0x98, 0x75, 0xe5, 0x57, 0xc9, 0x56, 0x96, 0x54, 0xc7, 0x3e, 0x5a, + 0x4f, 0x04, 0x15, 0x69, 0xd2, 0x2c, 0x4b, 0x9f, 0xce, 0x33, 0x7d, 0xa4, 0x96, 0xb9, 0xa9, 0x9c, + 0xd6, 0xf3, 0xb5, 0xa5, 0x3c, 0xda, 0x7f, 0x6a, 0xe8, 0xad, 0x05, 0xd4, 0x39, 0x4b, 0x04, 0xfe, + 0x6e, 0xae, 0xa2, 0x64, 0xb5, 0x8a, 0x66, 0xb4, 0xac, 0xe7, 0x96, 0x72, 0xad, 0x8d, 0x77, 0x66, + 0xaa, 0xe9, 0xa0, 0x2a, 0x13, 0x10, 0x64, 0xd3, 0x52, 0xde, 0xdd, 0x38, 0x38, 0x7e, 0x5e, 0x9a, + 0x66, 0x43, 0x59, 0x55, 0xcf, 0x32, 0x51, 0x2b, 0xd7, 0x6e, 0xff, 0xb3, 0x38, 0xbd, 0xac, 0xdc, + 0xf8, 0x1a, 0xd5, 0x03, 0x16, 0x9e, 0x0c, 0x28, 0xf3, 0xa9, 0xed, 0xc3, 0x93, 0x43, 0x93, 0xbd, + 0x6a, 0x92, 0xbf, 0x6a, 0x72, 0x16, 0x8a, 0x2e, 0xbf, 0x12, 0x9c, 0x85, 0x9e, 0xf9, 0x86, 0x72, + 0xae, 0x5f, 0xcc, 0xa8, 0x59, 0x05, 0x6d, 0xfc, 0x3d, 0xaa, 0x25, 0xe0, 0x83, 0x23, 0x22, 0xfe, + 0xff, 0x5e, 0xc7, 0x39, 0xb5, 0xc1, 0xbf, 0x52, 0xa8, 0x59, 0xcf, 0x6a, 0x39, 0x5e, 0x59, 0x13, + 0xc9, 0xf6, 0xbf, 0x15, 0xf4, 0xf6, 0xd2, 0xde, 0xe3, 0xaf, 0x10, 0x8e, 0x6c, 0xf9, 0xb3, 0x71, + 0xbf, 0xc8, 0xff, 0x14, 0x2c, 0x0a, 0x65, 0xba, 0x65, 0xb3, 0xa5, 0x82, 0xc7, 0xdd, 0xb9, 0x1b, + 0xd6, 0x02, 0x0a, 0xff, 0xaa, 0xa1, 0x86, 0x9b, 0xdb, 0x80, 0x7b, 0x19, 0xb9, 0xe3, 0xf6, 0x7d, + 0xf3, 0x22, 0xa6, 0x94, 0x74, 0x66, 0x95, 0x4f, 0x43, 0xc1, 0x87, 0xe6, 0xb6, 0x0a, 0xb0, 0x51, + 0x38, 0xb3, 0x8a, 0x41, 0xe0, 0x0b, 0x84, 0xdd, 0x89, 0x64, 0x72, 0xe2, 0xfb, 0xd1, 0x4f, 0xe0, + 0xca, 0x07, 0x54, 0x35, 0xdf, 0x51, 0x0a, 0xdb, 0x05, 0xdf, 0xf1, 0x25, 0x6b, 0x01, 0x88, 0x8f, + 0xd1, 0xa6, 0x93, 0x72, 0x0e, 0xa1, 0xf8, 0x12, 0xa8, 0x2f, 0x7a, 0xc3, 0x66, 0x45, 0x4a, 0xbd, + 0xa9, 0xa4, 0x36, 0x3f, 0x2f, 0x9c, 0x5a, 0x8f, 0x6e, 0x67, 0xbc, 0x0b, 0x09, 0xe3, 0xe0, 0x8e, + 0xf9, 0x6a, 0x91, 0xef, 0x14, 0x4e, 0xad, 0x47, 0xb7, 0xf1, 0x11, 0xaa, 0xc3, 0x4d, 0x0c, 0xce, + 0xb8, 0xc6, 0xeb, 0x92, 0x9e, 0x0c, 0xda, 0xe9, 0xcc, 0x99, 0x55, 0xb8, 0xd9, 0xf2, 0x11, 0x9e, + 0x2f, 0x22, 0xde, 0x42, 0xe5, 0x3e, 0x0c, 0x65, 0xcb, 0x5f, 0xb5, 0xb2, 0x4f, 0xfc, 0x19, 0xaa, + 0x0e, 0xa8, 0x9f, 0x82, 0x9a, 0xc6, 0xf7, 0x56, 0x9b, 0xc6, 0xaf, 0x59, 0x00, 0x56, 0x0e, 0x7e, + 0xba, 0x76, 0xa4, 0x99, 0x7b, 0xb7, 0x0f, 0x7a, 0xe9, 0xee, 0x41, 0x2f, 0xfd, 0xfe, 0xa0, 0x97, + 0x7e, 0x1e, 0xe9, 0xda, 0xed, 0x48, 0xd7, 0xee, 0x46, 0xba, 0xf6, 0xd7, 0x48, 0xd7, 0x7e, 0xf9, + 0x5b, 0x2f, 0x7d, 0xfb, 0x8a, 0x6a, 0xfa, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x1b, 0xe9, 0x2f, + 0xf1, 0x61, 0x08, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.proto index 1e8f9b1bb71..d14d5de30e8 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.proto @@ -25,6 +25,7 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". diff --git a/staging/src/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.pb.go index f2bf8c98ad6..406c12c175f 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.pb.go @@ -2760,57 +2760,58 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 832 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xec, 0x54, 0xcf, 0x6b, 0x24, 0x45, - 0x14, 0x9e, 0x4a, 0x66, 0xcc, 0xcc, 0x8b, 0x21, 0xa6, 0x04, 0x69, 0x73, 0xe8, 0x09, 0x7d, 0x0a, - 0xba, 0x76, 0x9b, 0xb8, 0xea, 0x1e, 0xf4, 0xb0, 0xed, 0x41, 0x82, 0x6b, 0x0c, 0xb5, 0xb8, 0xe0, - 0xb2, 0xa0, 0x35, 0x3d, 0xb5, 0x33, 0xe5, 0xf4, 0x2f, 0xaa, 0xba, 0x03, 0x8b, 0x08, 0x1e, 0x3d, - 0xfa, 0x57, 0x78, 0xf4, 0x20, 0x78, 0xf4, 0xe4, 0x25, 0xe8, 0x25, 0x47, 0xbd, 0x0c, 0xa6, 0xfd, - 0x43, 0x94, 0xae, 0xae, 0xfe, 0x11, 0x7b, 0x42, 0x26, 0x11, 0x06, 0x84, 0x3d, 0xcd, 0xd4, 0x7b, - 0xdf, 0xf7, 0xea, 0x7d, 0xef, 0x75, 0x7d, 0x70, 0x6f, 0x76, 0x4f, 0xda, 0x3c, 0x72, 0x66, 0xe9, - 0x88, 0x89, 0x90, 0x25, 0x4c, 0x3a, 0xf1, 0x6c, 0xe2, 0xd0, 0x98, 0x4b, 0x47, 0x8c, 0xa8, 0xe7, - 0x9c, 0x1e, 0x50, 0x3f, 0x9e, 0xd2, 0x03, 0x67, 0xc2, 0x42, 0x26, 0x68, 0xc2, 0xc6, 0x76, 0x2c, - 0xa2, 0x24, 0xc2, 0xfb, 0x05, 0xd3, 0xae, 0x99, 0x76, 0x3c, 0x9b, 0xd8, 0x39, 0xd3, 0xce, 0x99, - 0x76, 0xc9, 0xdc, 0x7d, 0x63, 0xc2, 0x93, 0x69, 0x3a, 0xb2, 0xbd, 0x28, 0x70, 0x26, 0xd1, 0x24, - 0x72, 0x54, 0x81, 0x51, 0xfa, 0x54, 0x9d, 0xd4, 0x41, 0xfd, 0x2b, 0x0a, 0xef, 0xde, 0xd5, 0x2d, - 0xd1, 0x98, 0x07, 0xd4, 0x9b, 0xf2, 0x90, 0x89, 0x67, 0x75, 0x53, 0x01, 0x4b, 0xa8, 0x73, 0xda, - 0x6a, 0x67, 0xd7, 0xb9, 0x8a, 0x25, 0xd2, 0x30, 0xe1, 0x01, 0x6b, 0x11, 0xde, 0xb9, 0x8e, 0x20, - 0xbd, 0x29, 0x0b, 0x68, 0x8b, 0xf7, 0xd6, 0x55, 0xbc, 0x34, 0xe1, 0xbe, 0xc3, 0xc3, 0x44, 0x26, - 0xa2, 0x45, 0xba, 0x73, 0xe5, 0x98, 0x17, 0x68, 0xb1, 0x7e, 0x45, 0xb0, 0xf9, 0x81, 0x9f, 0xca, - 0x84, 0x09, 0x12, 0xf9, 0x0c, 0x7f, 0x01, 0xfd, 0x5c, 0xf6, 0x98, 0x26, 0xd4, 0x40, 0x7b, 0x68, - 0x7f, 0xf3, 0xf0, 0x4d, 0x5b, 0x4f, 0xbf, 0xd9, 0x45, 0x3d, 0xff, 0x1c, 0x6d, 0x9f, 0x1e, 0xd8, - 0x9f, 0x8c, 0xbe, 0x64, 0x5e, 0xf2, 0x31, 0x4b, 0xa8, 0x8b, 0xcf, 0xe6, 0xc3, 0x4e, 0x36, 0x1f, - 0x42, 0x1d, 0x23, 0x55, 0x55, 0xfc, 0x19, 0xf4, 0x44, 0xea, 0x33, 0x69, 0xac, 0xed, 0xad, 0xef, - 0x6f, 0x1e, 0xde, 0xb5, 0x97, 0x5d, 0xae, 0x7d, 0x12, 0xf9, 0xdc, 0x7b, 0x46, 0x52, 0x9f, 0xb9, - 0x5b, 0xfa, 0x8a, 0x5e, 0x7e, 0x92, 0xa4, 0xa8, 0x68, 0xfd, 0xb4, 0x06, 0xb8, 0x21, 0xc6, 0xe5, - 0xe1, 0x98, 0x87, 0x93, 0x15, 0x68, 0xfa, 0x1c, 0xfa, 0x32, 0x55, 0x89, 0x52, 0xd6, 0xc1, 0xf2, - 0xb2, 0x1e, 0x16, 0x4c, 0xf7, 0x25, 0x7d, 0x45, 0x5f, 0x07, 0x24, 0xa9, 0x8a, 0xe2, 0x27, 0xb0, - 0x21, 0x22, 0x9f, 0x11, 0xf6, 0xd4, 0x58, 0x57, 0x0a, 0x6e, 0x50, 0x9f, 0x14, 0x44, 0x77, 0x5b, - 0xd7, 0xdf, 0xd0, 0x01, 0x52, 0x96, 0xb4, 0xbe, 0x47, 0xf0, 0x6a, 0x7b, 0x6e, 0x6e, 0xca, 0xfd, - 0x31, 0x13, 0xf8, 0x5b, 0x04, 0xd8, 0x6b, 0x65, 0xf5, 0x24, 0xdf, 0x5b, 0xbe, 0x8f, 0x05, 0x37, - 0xec, 0xea, 0x96, 0x16, 0x6c, 0x8d, 0x2c, 0xb8, 0xd3, 0xfa, 0x03, 0xc1, 0x2b, 0x6d, 0xe8, 0x03, - 0x2e, 0x13, 0xfc, 0xa4, 0xb5, 0x64, 0x7b, 0xb9, 0x25, 0xe7, 0x6c, 0xb5, 0xe2, 0x6a, 0xfe, 0x65, - 0xa4, 0xb1, 0x60, 0x0a, 0x3d, 0x9e, 0xb0, 0xa0, 0xdc, 0xee, 0x7f, 0x53, 0x5d, 0x7d, 0xbc, 0x47, - 0x79, 0x49, 0x52, 0x54, 0xb6, 0x7e, 0x43, 0xb0, 0xdd, 0x00, 0xaf, 0x40, 0xd4, 0xe3, 0xcb, 0xa2, - 0xde, 0xbe, 0x9d, 0xa8, 0xc5, 0x6a, 0xfe, 0x46, 0x00, 0xf5, 0x7b, 0xc5, 0x43, 0xe8, 0x9d, 0x32, - 0x31, 0x92, 0x06, 0xda, 0x5b, 0xdf, 0x1f, 0xb8, 0x83, 0x1c, 0xff, 0x28, 0x0f, 0x90, 0x22, 0x8e, - 0x5f, 0x87, 0x01, 0x8d, 0xf9, 0x87, 0x22, 0x4a, 0x63, 0x69, 0xac, 0x2b, 0xd0, 0x56, 0x36, 0x1f, - 0x0e, 0xee, 0x9f, 0x1c, 0x15, 0x41, 0x52, 0xe7, 0x73, 0xb0, 0x60, 0x32, 0x4a, 0x85, 0xc7, 0xa4, - 0xd1, 0xad, 0xc1, 0xa4, 0x0c, 0x92, 0x3a, 0x8f, 0xdf, 0x85, 0xad, 0xf2, 0x70, 0x4c, 0x03, 0x26, - 0x8d, 0x9e, 0x22, 0xec, 0x64, 0xf3, 0xe1, 0x16, 0x69, 0x26, 0xc8, 0x65, 0x1c, 0x7e, 0x1f, 0xb6, - 0xc3, 0x28, 0x2c, 0x21, 0x9f, 0x92, 0x07, 0xd2, 0x78, 0x41, 0x51, 0x5f, 0xce, 0xe6, 0xc3, 0xed, - 0xe3, 0xcb, 0x29, 0xf2, 0x6f, 0xac, 0xf5, 0x35, 0xec, 0x34, 0x0c, 0x4b, 0xbf, 0xa5, 0x29, 0x40, - 0x5c, 0x05, 0xf5, 0x4a, 0x6f, 0xe7, 0x80, 0x95, 0x21, 0xd5, 0x31, 0xd2, 0xa8, 0x6d, 0xfd, 0x82, - 0xa0, 0xfb, 0xff, 0x77, 0xf4, 0x1f, 0xd6, 0x60, 0xf3, 0xb9, 0x95, 0xdf, 0xc0, 0xca, 0x73, 0x17, - 0x59, 0xad, 0x35, 0xde, 0xde, 0x45, 0xae, 0xf7, 0xc4, 0x9f, 0x11, 0xf4, 0x57, 0x64, 0x86, 0x0f, - 0x2f, 0xcb, 0xb0, 0x6f, 0x28, 0x63, 0x71, 0xff, 0x5f, 0x41, 0xb9, 0x21, 0x7c, 0x07, 0xfa, 0xa5, - 0x81, 0xa9, 0xee, 0x07, 0x75, 0x37, 0xa5, 0xc7, 0x91, 0x0a, 0x81, 0xf7, 0xa0, 0x3b, 0xe3, 0xe1, - 0xd8, 0x58, 0x53, 0xc8, 0x17, 0x35, 0xb2, 0xfb, 0x11, 0x0f, 0xc7, 0x44, 0x65, 0x72, 0x44, 0x48, - 0x03, 0xa6, 0xbe, 0xa1, 0x06, 0x22, 0xb7, 0x2e, 0xa2, 0x32, 0xd6, 0x8f, 0x08, 0x36, 0xf4, 0xf7, - 0x57, 0xd5, 0x43, 0x57, 0xd6, 0x3b, 0x04, 0xa0, 0x31, 0x7f, 0xc4, 0x84, 0xe4, 0x51, 0xa8, 0xef, - 0xad, 0x5e, 0xca, 0xfd, 0x93, 0x23, 0x9d, 0x21, 0x0d, 0xd4, 0xf5, 0x3d, 0x60, 0x07, 0x06, 0xf9, - 0xaf, 0x8c, 0xa9, 0xc7, 0x8c, 0xae, 0x82, 0xed, 0x68, 0xd8, 0xe0, 0xb8, 0x4c, 0x90, 0x1a, 0xe3, - 0xbe, 0x76, 0x76, 0x61, 0x76, 0xce, 0x2f, 0xcc, 0xce, 0xef, 0x17, 0x66, 0xe7, 0x9b, 0xcc, 0x44, - 0x67, 0x99, 0x89, 0xce, 0x33, 0x13, 0xfd, 0x99, 0x99, 0xe8, 0xbb, 0xbf, 0xcc, 0xce, 0xe3, 0x7e, - 0x39, 0xf8, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x86, 0x70, 0x91, 0xa2, 0x51, 0x0c, 0x00, 0x00, + // 847 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xec, 0x54, 0xcf, 0x6f, 0xe3, 0x44, + 0x14, 0xce, 0xb4, 0x09, 0x4d, 0x5e, 0xa9, 0x4a, 0x07, 0x09, 0x99, 0x1e, 0x9c, 0xca, 0xa7, 0x0a, + 0x16, 0x9b, 0x96, 0x05, 0xf6, 0x00, 0x87, 0x35, 0x07, 0x54, 0xb1, 0x94, 0x6a, 0x56, 0xac, 0xc4, + 0x6a, 0x25, 0x98, 0x38, 0xb3, 0xc9, 0x10, 0xff, 0xd2, 0x8c, 0x1d, 0xb1, 0x42, 0x48, 0x1c, 0x39, + 0xf2, 0x57, 0x70, 0xe4, 0x80, 0xc4, 0x91, 0x13, 0x97, 0x0a, 0x2e, 0x3d, 0xc2, 0x25, 0xa2, 0xe6, + 0x0f, 0x01, 0x79, 0x3c, 0xfe, 0x51, 0x9c, 0xaa, 0x3f, 0x90, 0x22, 0x21, 0x71, 0x4a, 0xfc, 0xde, + 0xf7, 0x7d, 0xf3, 0xbe, 0x79, 0xf6, 0x07, 0xf7, 0x66, 0xf7, 0xa4, 0xcd, 0x23, 0x67, 0x96, 0x8e, + 0x98, 0x08, 0x59, 0xc2, 0xa4, 0x13, 0xcf, 0x26, 0x0e, 0x8d, 0xb9, 0x74, 0xc4, 0x88, 0x7a, 0xce, + 0xfc, 0x80, 0xfa, 0xf1, 0x94, 0x1e, 0x38, 0x13, 0x16, 0x32, 0x41, 0x13, 0x36, 0xb6, 0x63, 0x11, + 0x25, 0x11, 0xde, 0x2f, 0x98, 0x76, 0xcd, 0xb4, 0xe3, 0xd9, 0xc4, 0xce, 0x99, 0x76, 0xce, 0xb4, + 0x4b, 0xe6, 0xee, 0x6b, 0x13, 0x9e, 0x4c, 0xd3, 0x91, 0xed, 0x45, 0x81, 0x33, 0x89, 0x26, 0x91, + 0xa3, 0x04, 0x46, 0xe9, 0x53, 0xf5, 0xa4, 0x1e, 0xd4, 0xbf, 0x42, 0x78, 0xf7, 0xae, 0x1e, 0x89, + 0xc6, 0x3c, 0xa0, 0xde, 0x94, 0x87, 0x4c, 0x3c, 0xab, 0x87, 0x0a, 0x58, 0x42, 0x9d, 0x79, 0x6b, + 0x9c, 0x5d, 0xe7, 0x32, 0x96, 0x48, 0xc3, 0x84, 0x07, 0xac, 0x45, 0x78, 0xeb, 0x2a, 0x82, 0xf4, + 0xa6, 0x2c, 0xa0, 0x2d, 0xde, 0x1b, 0x97, 0xf1, 0xd2, 0x84, 0xfb, 0x0e, 0x0f, 0x13, 0x99, 0x88, + 0x16, 0xa9, 0xe1, 0x49, 0x32, 0x31, 0x67, 0xa2, 0x36, 0xc4, 0xbe, 0xa0, 0x41, 0xec, 0xb3, 0x65, + 0x9e, 0xee, 0x5c, 0xba, 0x9c, 0x25, 0x68, 0xeb, 0x17, 0x04, 0x9b, 0xef, 0xf9, 0xa9, 0x4c, 0x98, + 0x20, 0x91, 0xcf, 0xf0, 0x67, 0xd0, 0xcf, 0x2f, 0x6b, 0x4c, 0x13, 0x6a, 0xa0, 0x3d, 0xb4, 0xbf, + 0x79, 0xf8, 0xba, 0xad, 0x77, 0xd6, 0x9c, 0xbd, 0xde, 0x5a, 0x8e, 0xb6, 0xe7, 0x07, 0xf6, 0x47, + 0xa3, 0xcf, 0x99, 0x97, 0x7c, 0xc8, 0x12, 0xea, 0xe2, 0xd3, 0xc5, 0xb0, 0x93, 0x2d, 0x86, 0x50, + 0xd7, 0x48, 0xa5, 0x8a, 0x3f, 0x81, 0x9e, 0x48, 0x7d, 0x26, 0x8d, 0xb5, 0xbd, 0xf5, 0xfd, 0xcd, + 0xc3, 0xbb, 0xf6, 0x75, 0x5f, 0x09, 0xfb, 0x24, 0xf2, 0xb9, 0xf7, 0x8c, 0xa4, 0x3e, 0x73, 0xb7, + 0xf4, 0x11, 0xbd, 0xfc, 0x49, 0x92, 0x42, 0xd1, 0xfa, 0x71, 0x0d, 0x70, 0xc3, 0x8c, 0xcb, 0xc3, + 0x31, 0x0f, 0x27, 0x2b, 0xf0, 0xf4, 0x29, 0xf4, 0x65, 0xaa, 0x1a, 0xa5, 0xad, 0x83, 0xeb, 0xdb, + 0x7a, 0x58, 0x30, 0xdd, 0x17, 0xf4, 0x11, 0x7d, 0x5d, 0x90, 0xa4, 0x12, 0xc5, 0x4f, 0x60, 0x43, + 0x44, 0x3e, 0x23, 0xec, 0xa9, 0xb1, 0xae, 0x1c, 0xdc, 0x40, 0x9f, 0x14, 0x44, 0x77, 0x5b, 0xeb, + 0x6f, 0xe8, 0x02, 0x29, 0x25, 0xad, 0xef, 0x10, 0xbc, 0xdc, 0xbe, 0x37, 0x37, 0xe5, 0xfe, 0x98, + 0x09, 0xfc, 0x0d, 0x02, 0xec, 0xb5, 0xba, 0xfa, 0x26, 0xdf, 0xb9, 0xfe, 0x1c, 0x4b, 0x4e, 0xd8, + 0xd5, 0x23, 0x2d, 0xd9, 0x1a, 0x59, 0x72, 0xa6, 0xf5, 0x3b, 0x82, 0x97, 0xda, 0xd0, 0x07, 0x5c, + 0x26, 0xf8, 0x49, 0x6b, 0xc9, 0xf6, 0xf5, 0x96, 0x9c, 0xb3, 0xd5, 0x8a, 0xab, 0xfb, 0x2f, 0x2b, + 0x8d, 0x05, 0x53, 0xe8, 0xf1, 0x84, 0x05, 0xe5, 0x76, 0xff, 0x9d, 0xeb, 0xea, 0xe5, 0x3d, 0xca, + 0x25, 0x49, 0xa1, 0x6c, 0xfd, 0x8a, 0x60, 0xbb, 0x01, 0x5e, 0x81, 0xa9, 0xc7, 0x17, 0x4d, 0xbd, + 0x79, 0x3b, 0x53, 0xcb, 0xdd, 0xfc, 0x85, 0x00, 0xea, 0xef, 0x15, 0x0f, 0xa1, 0x37, 0x67, 0x62, + 0x24, 0x0d, 0xb4, 0xb7, 0xbe, 0x3f, 0x70, 0x07, 0x39, 0xfe, 0x51, 0x5e, 0x20, 0x45, 0x1d, 0xbf, + 0x0a, 0x03, 0x1a, 0xf3, 0xf7, 0x45, 0x94, 0xc6, 0xd2, 0x58, 0x57, 0xa0, 0xad, 0x6c, 0x31, 0x1c, + 0xdc, 0x3f, 0x39, 0x2a, 0x8a, 0xa4, 0xee, 0xe7, 0x60, 0xc1, 0x64, 0x94, 0x0a, 0x8f, 0x49, 0xa3, + 0x5b, 0x83, 0x49, 0x59, 0x24, 0x75, 0x1f, 0xbf, 0x0d, 0x5b, 0xe5, 0xc3, 0x31, 0x0d, 0x98, 0x34, + 0x7a, 0x8a, 0xb0, 0x93, 0x2d, 0x86, 0x5b, 0xa4, 0xd9, 0x20, 0x17, 0x71, 0xf8, 0x5d, 0xd8, 0x0e, + 0xa3, 0xb0, 0x84, 0x7c, 0x4c, 0x1e, 0x48, 0xe3, 0x39, 0x45, 0x7d, 0x31, 0x5b, 0x0c, 0xb7, 0x8f, + 0x2f, 0xb6, 0xc8, 0x3f, 0xb1, 0xd6, 0x57, 0xb0, 0xd3, 0x08, 0x2c, 0xfd, 0x2d, 0x4d, 0x01, 0xe2, + 0xaa, 0xa8, 0x57, 0x7a, 0xbb, 0x04, 0xac, 0x02, 0xa9, 0xae, 0x91, 0x86, 0xb6, 0xf5, 0x33, 0x82, + 0xee, 0x7f, 0x3f, 0xd1, 0xbf, 0x5f, 0x83, 0xcd, 0xff, 0xa3, 0xfc, 0x06, 0x51, 0x9e, 0xa7, 0xc8, + 0x6a, 0xa3, 0xf1, 0xf6, 0x29, 0x72, 0x75, 0x26, 0xfe, 0x84, 0xa0, 0xbf, 0xa2, 0x30, 0x7c, 0x78, + 0xd1, 0x86, 0x7d, 0x43, 0x1b, 0xcb, 0xe7, 0xff, 0x12, 0xca, 0x0d, 0xe1, 0x3b, 0xd0, 0x2f, 0x03, + 0x4c, 0x4d, 0x3f, 0xa8, 0xa7, 0x29, 0x33, 0x8e, 0x54, 0x08, 0xbc, 0x07, 0xdd, 0x19, 0x0f, 0xc7, + 0xc6, 0x9a, 0x42, 0x3e, 0xaf, 0x91, 0xdd, 0x0f, 0x78, 0x38, 0x26, 0xaa, 0x93, 0x23, 0x42, 0x1a, + 0x30, 0xf5, 0x0e, 0x35, 0x10, 0x79, 0x74, 0x11, 0xd5, 0xb1, 0x7e, 0x40, 0xb0, 0xa1, 0xdf, 0xbf, + 0x4a, 0x0f, 0x5d, 0xaa, 0x77, 0x08, 0x40, 0x63, 0xfe, 0x88, 0x09, 0xc9, 0xa3, 0x50, 0x9f, 0x5b, + 0x7d, 0x29, 0xf7, 0x4f, 0x8e, 0x74, 0x87, 0x34, 0x50, 0x57, 0xcf, 0x80, 0x1d, 0x18, 0xe4, 0xbf, + 0x32, 0xa6, 0x1e, 0x33, 0xba, 0x0a, 0xb6, 0xa3, 0x61, 0x83, 0xe3, 0xb2, 0x41, 0x6a, 0x8c, 0xfb, + 0xca, 0xe9, 0xb9, 0xd9, 0x39, 0x3b, 0x37, 0x3b, 0xbf, 0x9d, 0x9b, 0x9d, 0xaf, 0x33, 0x13, 0x9d, + 0x66, 0x26, 0x3a, 0xcb, 0x4c, 0xf4, 0x47, 0x66, 0xa2, 0x6f, 0xff, 0x34, 0x3b, 0x8f, 0xfb, 0xe5, + 0xc5, 0xff, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x53, 0x64, 0x1d, 0x0e, 0x87, 0x0c, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.proto index 0075e36c693..e2303bb0f8a 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.proto @@ -25,6 +25,7 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". diff --git a/staging/src/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.pb.go index 57b52a7c0e4..5b660c9a979 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.pb.go @@ -2760,57 +2760,58 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 830 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xec, 0x54, 0xbf, 0x6f, 0xe4, 0x44, - 0x14, 0xde, 0x49, 0x76, 0x95, 0xdd, 0x17, 0xa2, 0x90, 0x41, 0x42, 0x26, 0x85, 0x37, 0x72, 0x43, - 0x10, 0x77, 0xf6, 0x25, 0x77, 0xe2, 0x90, 0x10, 0xc5, 0x99, 0x02, 0x45, 0x1c, 0x21, 0x1a, 0xc4, - 0x89, 0x5f, 0x42, 0x37, 0xeb, 0x9d, 0x73, 0x86, 0xf5, 0x2f, 0xcd, 0x8c, 0x23, 0x9d, 0xa0, 0xa0, - 0xa3, 0xe5, 0x9f, 0xa0, 0xa3, 0x82, 0x96, 0x8a, 0x2a, 0x50, 0x5d, 0x79, 0xd5, 0x8a, 0x98, 0x3f, - 0x04, 0x64, 0x7b, 0xfc, 0x63, 0xf1, 0x46, 0x59, 0x82, 0x14, 0x09, 0x89, 0x6a, 0x77, 0xde, 0xfb, - 0xbe, 0x37, 0xef, 0x7b, 0xcf, 0xf3, 0xc1, 0xfd, 0xd9, 0x9b, 0xd2, 0xe6, 0xb1, 0x33, 0x4b, 0x27, - 0x4c, 0x44, 0x4c, 0x31, 0xe9, 0x24, 0x33, 0xdf, 0xa1, 0x09, 0x97, 0x8e, 0x98, 0x50, 0xcf, 0x39, - 0x3b, 0x98, 0x30, 0x45, 0x0f, 0x1c, 0x9f, 0x45, 0x4c, 0x50, 0xc5, 0xa6, 0x76, 0x22, 0x62, 0x15, - 0xe3, 0x57, 0x4b, 0xa2, 0xdd, 0x10, 0xed, 0x64, 0xe6, 0xdb, 0x39, 0xd1, 0xce, 0x89, 0xb6, 0x26, - 0xee, 0xde, 0xf6, 0xb9, 0x3a, 0x4d, 0x27, 0xb6, 0x17, 0x87, 0x8e, 0x1f, 0xfb, 0xb1, 0x53, 0xf0, - 0x27, 0xe9, 0x93, 0xe2, 0x54, 0x1c, 0x8a, 0x7f, 0x65, 0xdd, 0xdd, 0x7b, 0xba, 0x21, 0x9a, 0xf0, - 0x90, 0x7a, 0xa7, 0x3c, 0x62, 0xe2, 0x69, 0xd3, 0x52, 0xc8, 0x14, 0x75, 0xce, 0x3a, 0xdd, 0xec, - 0x3a, 0x97, 0xb1, 0x44, 0x1a, 0x29, 0x1e, 0xb2, 0x0e, 0xe1, 0x8d, 0xab, 0x08, 0xd2, 0x3b, 0x65, - 0x21, 0xed, 0xf0, 0xee, 0x5e, 0xc6, 0x4b, 0x15, 0x0f, 0x1c, 0x1e, 0x29, 0xa9, 0x44, 0x87, 0x74, - 0xeb, 0xd2, 0x21, 0x2f, 0xd1, 0x62, 0xfd, 0x8a, 0x60, 0xf3, 0x9d, 0x20, 0x95, 0x8a, 0x09, 0x12, - 0x07, 0x0c, 0x3f, 0x86, 0x61, 0x2e, 0x7b, 0x4a, 0x15, 0x35, 0xd0, 0x1e, 0xda, 0xdf, 0x3c, 0xbc, - 0x63, 0xeb, 0xe1, 0xb7, 0xbb, 0x68, 0xc6, 0x9f, 0xa3, 0xed, 0xb3, 0x03, 0xfb, 0x83, 0xc9, 0x97, - 0xcc, 0x53, 0xef, 0x33, 0x45, 0x5d, 0x7c, 0x3e, 0x1f, 0xf7, 0xb2, 0xf9, 0x18, 0x9a, 0x18, 0xa9, - 0xab, 0xe2, 0x8f, 0x61, 0x20, 0xd2, 0x80, 0x49, 0x63, 0x6d, 0x6f, 0x7d, 0x7f, 0xf3, 0xf0, 0xae, - 0xbd, 0xe2, 0x6e, 0xed, 0x93, 0x38, 0xe0, 0xde, 0x53, 0x92, 0x06, 0xcc, 0xdd, 0xd2, 0x37, 0x0c, - 0xf2, 0x93, 0x24, 0x65, 0x41, 0xeb, 0xa7, 0x35, 0xc0, 0x2d, 0x2d, 0x2e, 0x8f, 0xa6, 0x3c, 0xf2, - 0x6f, 0x40, 0xd2, 0x17, 0x30, 0x94, 0x69, 0x91, 0xa8, 0x54, 0xdd, 0x59, 0x59, 0xd5, 0x87, 0x25, - 0xd1, 0x7d, 0x51, 0xdf, 0x30, 0xd4, 0x01, 0x49, 0xea, 0x9a, 0xf8, 0x33, 0xd8, 0x10, 0x71, 0xc0, - 0x08, 0x7b, 0x62, 0xac, 0x2f, 0x0a, 0xb8, 0xb2, 0x3c, 0x29, 0x79, 0xee, 0xb6, 0x2e, 0xbf, 0xa1, - 0x03, 0xa4, 0xaa, 0x68, 0x7d, 0x8f, 0xe0, 0x95, 0xee, 0xd4, 0xdc, 0x94, 0x07, 0x53, 0x26, 0xf0, - 0xb7, 0x08, 0xb0, 0xd7, 0xc9, 0xea, 0x39, 0xbe, 0xb5, 0x72, 0x1b, 0x4b, 0x2e, 0xd8, 0xd5, 0x1d, - 0x2d, 0x59, 0x19, 0x59, 0x72, 0xa5, 0xf5, 0x1c, 0xc1, 0xcb, 0x5d, 0xe8, 0x43, 0x2e, 0x15, 0xfe, - 0xbc, 0xb3, 0x61, 0x7b, 0xb5, 0x0d, 0xe7, 0xec, 0x62, 0xbf, 0xf5, 0xf4, 0xab, 0x48, 0x6b, 0xbb, - 0x8f, 0x61, 0xc0, 0x15, 0x0b, 0xab, 0xd5, 0xfe, 0x2b, 0xd1, 0xf5, 0x87, 0x7b, 0x94, 0x57, 0x24, - 0x65, 0x61, 0xeb, 0x37, 0x04, 0xdb, 0x2d, 0xf0, 0x0d, 0x68, 0xfa, 0x64, 0x51, 0xd3, 0xbd, 0x6b, - 0x69, 0x5a, 0x2e, 0xe6, 0x4f, 0x04, 0xd0, 0x3c, 0x55, 0x3c, 0x86, 0xc1, 0x19, 0x13, 0x13, 0x69, - 0xa0, 0xbd, 0xf5, 0xfd, 0x91, 0x3b, 0xca, 0xf1, 0x8f, 0xf2, 0x00, 0x29, 0xe3, 0xf8, 0x75, 0x18, - 0xd1, 0x84, 0xbf, 0x2b, 0xe2, 0x34, 0x29, 0xdb, 0x19, 0xb9, 0x5b, 0xd9, 0x7c, 0x3c, 0x7a, 0x70, - 0x72, 0x54, 0x06, 0x49, 0x93, 0xcf, 0xc1, 0x82, 0xc9, 0x38, 0x15, 0x1e, 0x93, 0xc6, 0x7a, 0x03, - 0x26, 0x55, 0x90, 0x34, 0x79, 0x7c, 0x1f, 0xb6, 0xaa, 0xc3, 0x31, 0x0d, 0x99, 0x34, 0xfa, 0x05, - 0x61, 0x27, 0x9b, 0x8f, 0xb7, 0x48, 0x3b, 0x41, 0x16, 0x71, 0xf8, 0x6d, 0xd8, 0x8e, 0xe2, 0xa8, - 0x82, 0x7c, 0x44, 0x1e, 0x4a, 0x63, 0x50, 0x50, 0x5f, 0xca, 0xe6, 0xe3, 0xed, 0xe3, 0xc5, 0x14, - 0xf9, 0x3b, 0xd6, 0xfa, 0x1a, 0x76, 0x5a, 0x5e, 0xa5, 0x1f, 0x92, 0x0f, 0x90, 0xd4, 0x41, 0xbd, - 0xd1, 0x6b, 0x79, 0x5f, 0x6d, 0x45, 0x4d, 0x8c, 0xb4, 0x4a, 0x5b, 0xbf, 0x20, 0xe8, 0xff, 0xe7, - 0xad, 0xfc, 0x87, 0x35, 0xd8, 0xfc, 0xdf, 0xc3, 0x57, 0xf6, 0xf0, 0xdc, 0x40, 0x6e, 0xd6, 0x14, - 0xaf, 0x6d, 0x20, 0x57, 0xbb, 0xe1, 0xcf, 0x08, 0x86, 0x37, 0x64, 0x83, 0x64, 0x51, 0xc5, 0xed, - 0x7f, 0xa6, 0x62, 0x79, 0xfb, 0x5f, 0x41, 0xb5, 0x1f, 0x7c, 0x0b, 0x86, 0x95, 0x75, 0x15, 0xcd, - 0x8f, 0x9a, 0x66, 0x2a, 0x77, 0x23, 0x35, 0x02, 0xef, 0x41, 0x7f, 0xc6, 0xa3, 0xa9, 0xb1, 0x56, - 0x20, 0x5f, 0xd0, 0xc8, 0xfe, 0x7b, 0x3c, 0x9a, 0x92, 0x22, 0x93, 0x23, 0x22, 0x1a, 0xb2, 0xe2, - 0x03, 0x6a, 0x21, 0x72, 0xd3, 0x22, 0x45, 0xc6, 0xfa, 0x11, 0xc1, 0x86, 0xfe, 0xf8, 0xea, 0x7a, - 0xe8, 0xd2, 0x7a, 0x87, 0x00, 0x34, 0xe1, 0x8f, 0x98, 0x90, 0x3c, 0x8e, 0xf4, 0xbd, 0xf5, 0x2b, - 0x79, 0x70, 0x72, 0xa4, 0x33, 0xa4, 0x85, 0xba, 0xba, 0x07, 0xec, 0xc0, 0x28, 0xff, 0x95, 0x09, - 0xf5, 0x98, 0xd1, 0x2f, 0x60, 0x3b, 0x1a, 0x36, 0x3a, 0xae, 0x12, 0xa4, 0xc1, 0xb8, 0xaf, 0x9d, - 0x5f, 0x98, 0xbd, 0x67, 0x17, 0x66, 0xef, 0xf9, 0x85, 0xd9, 0xfb, 0x26, 0x33, 0xd1, 0x79, 0x66, - 0xa2, 0x67, 0x99, 0x89, 0x7e, 0xcf, 0x4c, 0xf4, 0xdd, 0x1f, 0x66, 0xef, 0xd3, 0x0d, 0x3d, 0xf7, - 0xbf, 0x02, 0x00, 0x00, 0xff, 0xff, 0xf9, 0x8e, 0x36, 0x37, 0x42, 0x0c, 0x00, 0x00, + // 845 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xec, 0x54, 0x4d, 0x6f, 0x23, 0x45, + 0x10, 0x75, 0x27, 0xb6, 0x62, 0x57, 0x88, 0x42, 0x1a, 0x09, 0x0d, 0x39, 0xd8, 0x91, 0x2f, 0x04, + 0xb1, 0x3b, 0xb3, 0xc9, 0xae, 0x58, 0x24, 0xc4, 0x61, 0x87, 0x03, 0x8a, 0x58, 0x42, 0xd4, 0x88, + 0x15, 0x5f, 0x42, 0xdb, 0x1e, 0xd7, 0x3a, 0x8d, 0xe7, 0x4b, 0xdd, 0x3d, 0x16, 0x2b, 0x38, 0x70, + 0xe3, 0xca, 0x9f, 0xe0, 0xc6, 0x09, 0xae, 0x9c, 0x38, 0x05, 0x4e, 0x7b, 0xcc, 0xc9, 0x22, 0xe6, + 0x87, 0x80, 0x66, 0xa6, 0xe7, 0xc3, 0xd8, 0x51, 0x4c, 0x90, 0x22, 0x21, 0xed, 0xc9, 0xee, 0xaa, + 0xf7, 0xaa, 0xeb, 0x55, 0xf5, 0x3c, 0xb8, 0x3f, 0x7e, 0x53, 0xd9, 0x22, 0x72, 0xc6, 0xc9, 0x00, + 0x65, 0x88, 0x1a, 0x95, 0x13, 0x8f, 0x47, 0x0e, 0x8f, 0x85, 0x72, 0xe4, 0x80, 0x7b, 0xce, 0xe4, + 0x60, 0x80, 0x9a, 0x1f, 0x38, 0x23, 0x0c, 0x51, 0x72, 0x8d, 0x43, 0x3b, 0x96, 0x91, 0x8e, 0xe8, + 0xab, 0x39, 0xd1, 0xae, 0x88, 0x76, 0x3c, 0x1e, 0xd9, 0x29, 0xd1, 0x4e, 0x89, 0xb6, 0x21, 0xee, + 0xde, 0x1e, 0x09, 0x7d, 0x9a, 0x0c, 0x6c, 0x2f, 0x0a, 0x9c, 0x51, 0x34, 0x8a, 0x9c, 0x8c, 0x3f, + 0x48, 0x9e, 0x64, 0xa7, 0xec, 0x90, 0xfd, 0xcb, 0xeb, 0xee, 0xde, 0x33, 0x0d, 0xf1, 0x58, 0x04, + 0xdc, 0x3b, 0x15, 0x21, 0xca, 0xa7, 0x55, 0x4b, 0x01, 0x6a, 0xee, 0x4c, 0x16, 0xba, 0xd9, 0x75, + 0x2e, 0x63, 0xc9, 0x24, 0xd4, 0x22, 0xc0, 0x05, 0xc2, 0x1b, 0x57, 0x11, 0x94, 0x77, 0x8a, 0x01, + 0x5f, 0xe0, 0xdd, 0xbd, 0x8c, 0x97, 0x68, 0xe1, 0x3b, 0x22, 0xd4, 0x4a, 0xcb, 0x05, 0x52, 0x4d, + 0x93, 0x42, 0x39, 0x41, 0x59, 0x09, 0xc2, 0xaf, 0x78, 0x10, 0xfb, 0xb8, 0x4c, 0xd3, 0xad, 0x4b, + 0x57, 0xb3, 0x04, 0xdd, 0xff, 0x8d, 0xc0, 0xe6, 0x3b, 0x7e, 0xa2, 0x34, 0x4a, 0x16, 0xf9, 0x48, + 0x1f, 0x43, 0x3b, 0x1d, 0xd6, 0x90, 0x6b, 0x6e, 0x91, 0x3d, 0xb2, 0xbf, 0x79, 0x78, 0xc7, 0x36, + 0x2b, 0xab, 0xf7, 0x5e, 0x2d, 0x2d, 0x45, 0xdb, 0x93, 0x03, 0xfb, 0x83, 0xc1, 0x97, 0xe8, 0xe9, + 0xf7, 0x51, 0x73, 0x97, 0x9e, 0x4d, 0x7b, 0x8d, 0xd9, 0xb4, 0x07, 0x55, 0x8c, 0x95, 0x55, 0xe9, + 0xc7, 0xd0, 0x92, 0x89, 0x8f, 0xca, 0x5a, 0xdb, 0x5b, 0xdf, 0xdf, 0x3c, 0xbc, 0x6b, 0xaf, 0xf8, + 0x22, 0xec, 0x93, 0xc8, 0x17, 0xde, 0x53, 0x96, 0xf8, 0xe8, 0x6e, 0x99, 0x1b, 0x5a, 0xe9, 0x49, + 0xb1, 0xbc, 0x60, 0xff, 0xe7, 0x35, 0xa0, 0x35, 0x2d, 0xae, 0x08, 0x87, 0x22, 0x1c, 0xdd, 0x80, + 0xa4, 0x2f, 0xa0, 0xad, 0x92, 0x2c, 0x51, 0xa8, 0xba, 0xb3, 0xb2, 0xaa, 0x0f, 0x73, 0xa2, 0xfb, + 0xa2, 0xb9, 0xa1, 0x6d, 0x02, 0x8a, 0x95, 0x35, 0xe9, 0x67, 0xb0, 0x21, 0x23, 0x1f, 0x19, 0x3e, + 0xb1, 0xd6, 0xe7, 0x05, 0x5c, 0x59, 0x9e, 0xe5, 0x3c, 0x77, 0xdb, 0x94, 0xdf, 0x30, 0x01, 0x56, + 0x54, 0xec, 0xff, 0x40, 0xe0, 0x95, 0xc5, 0xa9, 0xb9, 0x89, 0xf0, 0x87, 0x28, 0xe9, 0x77, 0x04, + 0xa8, 0xb7, 0x90, 0x35, 0x73, 0x7c, 0x6b, 0xe5, 0x36, 0x96, 0x5c, 0xb0, 0x6b, 0x3a, 0x5a, 0xb2, + 0x32, 0xb6, 0xe4, 0xca, 0xfe, 0x39, 0x81, 0x97, 0x17, 0xa1, 0x0f, 0x85, 0xd2, 0xf4, 0xf3, 0x85, + 0x0d, 0xdb, 0xab, 0x6d, 0x38, 0x65, 0x67, 0xfb, 0x2d, 0xa7, 0x5f, 0x44, 0x6a, 0xdb, 0x7d, 0x0c, + 0x2d, 0xa1, 0x31, 0x28, 0x56, 0xfb, 0x9f, 0x44, 0x97, 0x0f, 0xf7, 0x28, 0xad, 0xc8, 0xf2, 0xc2, + 0xfd, 0xdf, 0x09, 0x6c, 0xd7, 0xc0, 0x37, 0xa0, 0xe9, 0x93, 0x79, 0x4d, 0xf7, 0xae, 0xa5, 0x69, + 0xb9, 0x98, 0xbf, 0x08, 0x40, 0xf5, 0xa9, 0xd2, 0x1e, 0xb4, 0x26, 0x28, 0x07, 0xca, 0x22, 0x7b, + 0xeb, 0xfb, 0x1d, 0xb7, 0x93, 0xe2, 0x1f, 0xa5, 0x01, 0x96, 0xc7, 0xe9, 0xeb, 0xd0, 0xe1, 0xb1, + 0x78, 0x57, 0x46, 0x49, 0x9c, 0xb7, 0xd3, 0x71, 0xb7, 0x66, 0xd3, 0x5e, 0xe7, 0xc1, 0xc9, 0x51, + 0x1e, 0x64, 0x55, 0x3e, 0x05, 0x4b, 0x54, 0x51, 0x22, 0x3d, 0x54, 0xd6, 0x7a, 0x05, 0x66, 0x45, + 0x90, 0x55, 0x79, 0x7a, 0x1f, 0xb6, 0x8a, 0xc3, 0x31, 0x0f, 0x50, 0x59, 0xcd, 0x8c, 0xb0, 0x33, + 0x9b, 0xf6, 0xb6, 0x58, 0x3d, 0xc1, 0xe6, 0x71, 0xf4, 0x6d, 0xd8, 0x0e, 0xa3, 0xb0, 0x80, 0x7c, + 0xc4, 0x1e, 0x2a, 0xab, 0x95, 0x51, 0x5f, 0x9a, 0x4d, 0x7b, 0xdb, 0xc7, 0xf3, 0x29, 0xf6, 0x4f, + 0x6c, 0xff, 0x1b, 0xd8, 0xa9, 0x79, 0x95, 0xf9, 0x90, 0x46, 0x00, 0x71, 0x19, 0x34, 0x1b, 0xbd, + 0x96, 0xf7, 0x95, 0x56, 0x54, 0xc5, 0x58, 0xad, 0x74, 0xff, 0x57, 0x02, 0xcd, 0xff, 0xbd, 0x95, + 0xff, 0xb8, 0x06, 0x9b, 0xcf, 0x3d, 0x7c, 0x65, 0x0f, 0x4f, 0x0d, 0xe4, 0x66, 0x4d, 0xf1, 0xda, + 0x06, 0x72, 0xb5, 0x1b, 0xfe, 0x42, 0xa0, 0x7d, 0x43, 0x36, 0xc8, 0xe6, 0x55, 0xdc, 0xfe, 0x77, + 0x2a, 0x96, 0xb7, 0xff, 0x35, 0x14, 0xfb, 0xa1, 0xb7, 0xa0, 0x5d, 0x58, 0x57, 0xd6, 0x7c, 0xa7, + 0x6a, 0xa6, 0x70, 0x37, 0x56, 0x22, 0xe8, 0x1e, 0x34, 0xc7, 0x22, 0x1c, 0x5a, 0x6b, 0x19, 0xf2, + 0x05, 0x83, 0x6c, 0xbe, 0x27, 0xc2, 0x21, 0xcb, 0x32, 0x29, 0x22, 0xe4, 0x01, 0x66, 0x0f, 0xa8, + 0x86, 0x48, 0x4d, 0x8b, 0x65, 0x99, 0xfe, 0x4f, 0x04, 0x36, 0xcc, 0xe3, 0x2b, 0xeb, 0x91, 0x4b, + 0xeb, 0x1d, 0x02, 0xf0, 0x58, 0x3c, 0x42, 0xa9, 0x44, 0x14, 0x9a, 0x7b, 0xcb, 0xaf, 0xe4, 0xc1, + 0xc9, 0x91, 0xc9, 0xb0, 0x1a, 0xea, 0xea, 0x1e, 0xa8, 0x03, 0x9d, 0xf4, 0x57, 0xc5, 0xdc, 0x43, + 0xab, 0x99, 0xc1, 0x76, 0x0c, 0xac, 0x73, 0x5c, 0x24, 0x58, 0x85, 0x71, 0x5f, 0x3b, 0xbb, 0xe8, + 0x36, 0x9e, 0x5d, 0x74, 0x1b, 0xe7, 0x17, 0xdd, 0xc6, 0xb7, 0xb3, 0x2e, 0x39, 0x9b, 0x75, 0xc9, + 0xb3, 0x59, 0x97, 0xfc, 0x31, 0xeb, 0x92, 0xef, 0xff, 0xec, 0x36, 0x3e, 0xdd, 0x30, 0x73, 0xff, + 0x3b, 0x00, 0x00, 0xff, 0xff, 0x7b, 0x49, 0x60, 0xfe, 0x78, 0x0c, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.proto index 9ef26d71b44..9f74d3b165c 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.proto @@ -25,6 +25,7 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". diff --git a/staging/src/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.pb.go b/staging/src/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.pb.go index e809eb33d41..f1130cf37a1 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.pb.go +++ b/staging/src/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.pb.go @@ -696,35 +696,36 @@ var ( ) var fileDescriptorGenerated = []byte{ - // 470 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x9c, 0x92, 0x4f, 0x8b, 0xd3, 0x40, - 0x18, 0xc6, 0x33, 0x2d, 0xc5, 0xdd, 0xa9, 0x62, 0x89, 0x1e, 0x4a, 0x0f, 0xd9, 0xb2, 0xa7, 0x2a, - 0x3a, 0x63, 0xd7, 0x3f, 0x94, 0x05, 0x2f, 0x15, 0x41, 0x41, 0x71, 0x89, 0x37, 0x51, 0x70, 0xd2, - 0x7d, 0x4d, 0xc7, 0x34, 0x99, 0x30, 0xf3, 0x26, 0x50, 0xf0, 0xe0, 0x47, 0xf0, 0x63, 0xf5, 0xe6, - 0x1e, 0x3d, 0x2d, 0x36, 0xfa, 0x41, 0x24, 0x7f, 0xdc, 0x04, 0x63, 0x71, 0xf1, 0x36, 0xef, 0xcc, - 0xfc, 0x9e, 0xf7, 0x79, 0x9f, 0x19, 0x7a, 0x1c, 0xcc, 0x0c, 0x93, 0x8a, 0x07, 0x89, 0x07, 0x3a, - 0x02, 0x04, 0xc3, 0xe3, 0xc0, 0xe7, 0x22, 0x96, 0x86, 0x1b, 0x54, 0x5a, 0xf8, 0xc0, 0xd3, 0xa9, - 0x07, 0x28, 0xa6, 0xdc, 0x87, 0x08, 0xb4, 0x40, 0x38, 0x65, 0xb1, 0x56, 0xa8, 0xec, 0xdb, 0x25, - 0xcb, 0x6a, 0x96, 0xc5, 0x81, 0xcf, 0x72, 0x96, 0x55, 0x2c, 0xab, 0xd8, 0xd1, 0x5d, 0x5f, 0xe2, - 0x32, 0xf1, 0xd8, 0x42, 0x85, 0xdc, 0x57, 0xbe, 0xe2, 0x85, 0x84, 0x97, 0x7c, 0x28, 0xaa, 0xa2, - 0x28, 0x56, 0xa5, 0xf4, 0xe8, 0x41, 0x65, 0x4b, 0xc4, 0x32, 0x14, 0x8b, 0xa5, 0x8c, 0x40, 0xaf, - 0x6b, 0x63, 0x21, 0xa0, 0xe0, 0x69, 0xcb, 0xd0, 0x88, 0xef, 0xa2, 0x74, 0x12, 0xa1, 0x0c, 0xa1, - 0x05, 0x3c, 0xfa, 0x17, 0x60, 0x16, 0x4b, 0x08, 0x45, 0x8b, 0xbb, 0xbf, 0x8b, 0x4b, 0x50, 0xae, - 0xb8, 0x8c, 0xd0, 0xa0, 0x6e, 0x41, 0x77, 0x76, 0x46, 0xfd, 0x97, 0x59, 0x0e, 0x7f, 0x76, 0xe8, - 0xd5, 0xd7, 0x65, 0x88, 0x4f, 0x56, 0xc2, 0x18, 0xfb, 0x3d, 0xdd, 0xcb, 0xe7, 0x3e, 0x15, 0x28, - 0x86, 0x64, 0x4c, 0x26, 0xfd, 0xa3, 0x7b, 0xac, 0x7a, 0x80, 0xa6, 0x8d, 0xfa, 0x09, 0xf2, 0xdb, - 0x2c, 0x9d, 0xb2, 0x57, 0xde, 0x47, 0x58, 0xe0, 0x4b, 0x40, 0x31, 0xb7, 0x37, 0xe7, 0x07, 0x56, - 0x76, 0x7e, 0x40, 0xeb, 0x3d, 0xf7, 0x42, 0xd5, 0x7e, 0x48, 0xfb, 0xb1, 0x56, 0xa9, 0x34, 0x52, - 0x45, 0xa0, 0x87, 0x9d, 0x31, 0x99, 0xec, 0xcf, 0x6f, 0x54, 0x48, 0xff, 0xa4, 0x3e, 0x72, 0x9b, - 0xf7, 0xec, 0x4f, 0x94, 0xc6, 0x42, 0x8b, 0x10, 0x10, 0xb4, 0x19, 0x76, 0xc7, 0xdd, 0x49, 0xff, - 0xe8, 0x19, 0xbb, 0xfc, 0xdf, 0x60, 0xcd, 0x31, 0xd9, 0xc9, 0x85, 0xd4, 0xd3, 0x08, 0xf5, 0xba, - 0xb6, 0x5c, 0x1f, 0xb8, 0x8d, 0x7e, 0xa3, 0xc7, 0xf4, 0xfa, 0x1f, 0x88, 0x3d, 0xa0, 0xdd, 0x00, - 0xd6, 0x45, 0x48, 0xfb, 0x6e, 0xbe, 0xb4, 0x6f, 0xd2, 0x5e, 0x2a, 0x56, 0x09, 0x94, 0x33, 0xb9, - 0x65, 0x71, 0xdc, 0x99, 0x91, 0xc3, 0xaf, 0x84, 0x0e, 0x9a, 0xfd, 0x5f, 0x48, 0x83, 0xf6, 0xdb, - 0x56, 0xd4, 0xec, 0x72, 0x51, 0xe7, 0x74, 0x11, 0xf4, 0xa0, 0x72, 0xbd, 0xf7, 0x7b, 0xa7, 0x11, - 0xf3, 0x3b, 0xda, 0x93, 0x08, 0xa1, 0x19, 0x76, 0x8a, 0xa8, 0x66, 0xff, 0x1b, 0xd5, 0xfc, 0x5a, - 0xd5, 0xa4, 0xf7, 0x3c, 0x97, 0x73, 0x4b, 0xd5, 0xf9, 0xad, 0xcd, 0xd6, 0xb1, 0xce, 0xb6, 0x8e, - 0xf5, 0x6d, 0xeb, 0x58, 0x9f, 0x33, 0x87, 0x6c, 0x32, 0x87, 0x9c, 0x65, 0x0e, 0xf9, 0x9e, 0x39, - 0xe4, 0xcb, 0x0f, 0xc7, 0x7a, 0x73, 0xa5, 0x52, 0xfb, 0x15, 0x00, 0x00, 0xff, 0xff, 0xa1, 0xbc, - 0x1f, 0x4d, 0xfd, 0x03, 0x00, 0x00, + // 486 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x9c, 0x92, 0xcf, 0x8b, 0xd3, 0x40, + 0x14, 0xc7, 0x33, 0x5d, 0x8a, 0xbb, 0x53, 0xc5, 0x12, 0x3d, 0x94, 0x1e, 0xb2, 0x65, 0x4f, 0x55, + 0x74, 0xc6, 0xae, 0x3f, 0x28, 0x0b, 0x5e, 0x2a, 0x82, 0x82, 0xe2, 0x12, 0x6f, 0xa2, 0xe0, 0xa4, + 0xfb, 0x4c, 0xc7, 0x34, 0x99, 0x30, 0xf3, 0x12, 0x2c, 0x78, 0xf0, 0x4f, 0xf0, 0xcf, 0xea, 0xcd, + 0x3d, 0x7a, 0x5a, 0x6c, 0xf4, 0x0f, 0x91, 0xfc, 0x70, 0x13, 0xcc, 0x16, 0x17, 0x6f, 0x99, 0x99, + 0xf7, 0xf9, 0xbe, 0xef, 0xfb, 0xbe, 0xd0, 0xa3, 0x60, 0x6a, 0x98, 0x54, 0x3c, 0x48, 0x3c, 0xd0, + 0x11, 0x20, 0x18, 0x1e, 0x07, 0x3e, 0x17, 0xb1, 0x34, 0xdc, 0xa0, 0xd2, 0xc2, 0x07, 0x9e, 0x4e, + 0x3c, 0x40, 0x31, 0xe1, 0x3e, 0x44, 0xa0, 0x05, 0xc2, 0x09, 0x8b, 0xb5, 0x42, 0x65, 0xdf, 0x2e, + 0x59, 0x56, 0xb3, 0x2c, 0x0e, 0x7c, 0x96, 0xb3, 0xac, 0x62, 0x59, 0xc5, 0x0e, 0xef, 0xfa, 0x12, + 0x17, 0x89, 0xc7, 0xe6, 0x2a, 0xe4, 0xbe, 0xf2, 0x15, 0x2f, 0x24, 0xbc, 0xe4, 0x43, 0x71, 0x2a, + 0x0e, 0xc5, 0x57, 0x29, 0x3d, 0x7c, 0x50, 0xd9, 0x12, 0xb1, 0x0c, 0xc5, 0x7c, 0x21, 0x23, 0xd0, + 0xab, 0xda, 0x58, 0x08, 0x28, 0x78, 0xda, 0x32, 0x34, 0xe4, 0xdb, 0x28, 0x9d, 0x44, 0x28, 0x43, + 0x68, 0x01, 0x8f, 0xfe, 0x05, 0x98, 0xf9, 0x02, 0x42, 0xd1, 0xe2, 0xee, 0x6f, 0xe3, 0x12, 0x94, + 0x4b, 0x2e, 0x23, 0x34, 0xa8, 0x5b, 0x50, 0x63, 0x26, 0x03, 0x3a, 0x05, 0x5d, 0x0f, 0x04, 0x9f, + 0x44, 0x18, 0x2f, 0xe1, 0xa2, 0x99, 0xee, 0x6c, 0x5d, 0xd0, 0x05, 0xd5, 0x07, 0xbf, 0x3a, 0xf4, + 0xea, 0xeb, 0x32, 0xfa, 0x27, 0x4b, 0x61, 0x8c, 0xfd, 0x9e, 0xee, 0xe6, 0x69, 0x9d, 0x08, 0x14, + 0x03, 0x32, 0x22, 0xe3, 0xde, 0xe1, 0x3d, 0x56, 0xad, 0xad, 0x69, 0xbe, 0x5e, 0x5c, 0x5e, 0xcd, + 0xd2, 0x09, 0x7b, 0xe5, 0x7d, 0x84, 0x39, 0xbe, 0x04, 0x14, 0x33, 0x7b, 0x7d, 0xb6, 0x6f, 0x65, + 0x67, 0xfb, 0xb4, 0xbe, 0x73, 0xcf, 0x55, 0xed, 0x87, 0xb4, 0x17, 0x6b, 0x95, 0x4a, 0x23, 0x55, + 0x04, 0x7a, 0xd0, 0x19, 0x91, 0xf1, 0xde, 0xec, 0x46, 0x85, 0xf4, 0x8e, 0xeb, 0x27, 0xb7, 0x59, + 0x67, 0x7f, 0xa6, 0x34, 0x16, 0x5a, 0x84, 0x80, 0xa0, 0xcd, 0x60, 0x67, 0xb4, 0x33, 0xee, 0x1d, + 0x3e, 0x63, 0x97, 0xff, 0xa3, 0x58, 0x73, 0x4c, 0x76, 0x7c, 0x2e, 0xf5, 0x34, 0x42, 0xbd, 0xaa, + 0x2d, 0xd7, 0x0f, 0x6e, 0xa3, 0xdf, 0xf0, 0x31, 0xbd, 0xfe, 0x17, 0x62, 0xf7, 0xe9, 0x4e, 0x00, + 0xab, 0x22, 0xa4, 0x3d, 0x37, 0xff, 0xb4, 0x6f, 0xd2, 0x6e, 0x2a, 0x96, 0x09, 0x94, 0x33, 0xb9, + 0xe5, 0xe1, 0xa8, 0x33, 0x25, 0x07, 0xdf, 0x08, 0xed, 0x37, 0xfb, 0xbf, 0x90, 0x06, 0xed, 0xb7, + 0xad, 0xa8, 0xd9, 0xe5, 0xa2, 0xce, 0xe9, 0x22, 0xe8, 0x7e, 0xe5, 0x7a, 0xf7, 0xcf, 0x4d, 0x23, + 0xe6, 0x77, 0xb4, 0x2b, 0x11, 0x42, 0x33, 0xe8, 0x14, 0x51, 0x4d, 0xff, 0x37, 0xaa, 0xd9, 0xb5, + 0xaa, 0x49, 0xf7, 0x79, 0x2e, 0xe7, 0x96, 0xaa, 0xb3, 0x5b, 0xeb, 0x8d, 0x63, 0x9d, 0x6e, 0x1c, + 0xeb, 0xfb, 0xc6, 0xb1, 0xbe, 0x64, 0x0e, 0x59, 0x67, 0x0e, 0x39, 0xcd, 0x1c, 0xf2, 0x23, 0x73, + 0xc8, 0xd7, 0x9f, 0x8e, 0xf5, 0xe6, 0x4a, 0xa5, 0xf6, 0x3b, 0x00, 0x00, 0xff, 0xff, 0x99, 0xdf, + 0x66, 0x94, 0x33, 0x04, 0x00, 0x00, } diff --git a/staging/src/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.proto b/staging/src/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.proto index d8b387f61c0..0b9dbaeada0 100644 --- a/staging/src/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.proto +++ b/staging/src/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.proto @@ -25,6 +25,7 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". diff --git a/vendor/BUILD b/vendor/BUILD index f7786212295..20bd6a998d7 100644 --- a/vendor/BUILD +++ b/vendor/BUILD @@ -10785,9 +10785,12 @@ go_library( "//vendor:github.com/golang/glog", "//vendor:k8s.io/client-go/discovery", "//vendor:k8s.io/client-go/kubernetes/typed/apps/v1beta1", + "//vendor:k8s.io/client-go/kubernetes/typed/authentication/v1", "//vendor:k8s.io/client-go/kubernetes/typed/authentication/v1beta1", + "//vendor:k8s.io/client-go/kubernetes/typed/authorization/v1", "//vendor:k8s.io/client-go/kubernetes/typed/authorization/v1beta1", "//vendor:k8s.io/client-go/kubernetes/typed/autoscaling/v1", + "//vendor:k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1", "//vendor:k8s.io/client-go/kubernetes/typed/batch/v1", "//vendor:k8s.io/client-go/kubernetes/typed/batch/v2alpha1", "//vendor:k8s.io/client-go/kubernetes/typed/certificates/v1beta1", @@ -10830,12 +10833,18 @@ go_library( "//vendor:k8s.io/client-go/kubernetes", "//vendor:k8s.io/client-go/kubernetes/typed/apps/v1beta1", "//vendor:k8s.io/client-go/kubernetes/typed/apps/v1beta1/fake", + "//vendor:k8s.io/client-go/kubernetes/typed/authentication/v1", + "//vendor:k8s.io/client-go/kubernetes/typed/authentication/v1/fake", "//vendor:k8s.io/client-go/kubernetes/typed/authentication/v1beta1", "//vendor:k8s.io/client-go/kubernetes/typed/authentication/v1beta1/fake", + "//vendor:k8s.io/client-go/kubernetes/typed/authorization/v1", + "//vendor:k8s.io/client-go/kubernetes/typed/authorization/v1/fake", "//vendor:k8s.io/client-go/kubernetes/typed/authorization/v1beta1", "//vendor:k8s.io/client-go/kubernetes/typed/authorization/v1beta1/fake", "//vendor:k8s.io/client-go/kubernetes/typed/autoscaling/v1", "//vendor:k8s.io/client-go/kubernetes/typed/autoscaling/v1/fake", + "//vendor:k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1", + "//vendor:k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake", "//vendor:k8s.io/client-go/kubernetes/typed/batch/v1", "//vendor:k8s.io/client-go/kubernetes/typed/batch/v1/fake", "//vendor:k8s.io/client-go/kubernetes/typed/batch/v2alpha1", @@ -11404,7 +11413,6 @@ go_library( "k8s.io/client-go/pkg/api/field_constants.go", "k8s.io/client-go/pkg/api/helpers.go", "k8s.io/client-go/pkg/api/json.go", - "k8s.io/client-go/pkg/api/meta.go", "k8s.io/client-go/pkg/api/ref.go", "k8s.io/client-go/pkg/api/register.go", "k8s.io/client-go/pkg/api/resource_helpers.go", @@ -11586,6 +11594,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/sets", "//vendor:k8s.io/client-go/pkg/api", "//vendor:k8s.io/client-go/pkg/apis/authentication", + "//vendor:k8s.io/client-go/pkg/apis/authentication/v1", "//vendor:k8s.io/client-go/pkg/apis/authentication/v1beta1", ], ) @@ -11647,6 +11656,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/sets", "//vendor:k8s.io/client-go/pkg/api", "//vendor:k8s.io/client-go/pkg/apis/authorization", + "//vendor:k8s.io/client-go/pkg/apis/authorization/v1", "//vendor:k8s.io/client-go/pkg/apis/authorization/v1beta1", ], ) @@ -11683,6 +11693,7 @@ go_library( go_library( name = "k8s.io/client-go/pkg/apis/autoscaling", srcs = [ + "k8s.io/client-go/pkg/apis/autoscaling/annotations.go", "k8s.io/client-go/pkg/apis/autoscaling/doc.go", "k8s.io/client-go/pkg/apis/autoscaling/register.go", "k8s.io/client-go/pkg/apis/autoscaling/types.go", @@ -11690,10 +11701,12 @@ go_library( ], tags = ["automanaged"], deps = [ + "//vendor:k8s.io/apimachinery/pkg/api/resource", "//vendor:k8s.io/apimachinery/pkg/apis/meta/v1", "//vendor:k8s.io/apimachinery/pkg/conversion", "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/runtime/schema", + "//vendor:k8s.io/client-go/pkg/api", ], ) @@ -11708,12 +11721,14 @@ go_library( "//vendor:k8s.io/client-go/pkg/api", "//vendor:k8s.io/client-go/pkg/apis/autoscaling", "//vendor:k8s.io/client-go/pkg/apis/autoscaling/v1", + "//vendor:k8s.io/client-go/pkg/apis/autoscaling/v2alpha1", ], ) go_library( name = "k8s.io/client-go/pkg/apis/autoscaling/v1", srcs = [ + "k8s.io/client-go/pkg/apis/autoscaling/v1/conversion.go", "k8s.io/client-go/pkg/apis/autoscaling/v1/defaults.go", "k8s.io/client-go/pkg/apis/autoscaling/v1/doc.go", "k8s.io/client-go/pkg/apis/autoscaling/v1/generated.pb.go", @@ -11729,11 +11744,14 @@ go_library( deps = [ "//vendor:github.com/gogo/protobuf/proto", "//vendor:github.com/ugorji/go/codec", + "//vendor:k8s.io/apimachinery/pkg/api/resource", "//vendor:k8s.io/apimachinery/pkg/apis/meta/v1", "//vendor:k8s.io/apimachinery/pkg/conversion", "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/runtime/schema", "//vendor:k8s.io/apimachinery/pkg/types", + "//vendor:k8s.io/client-go/pkg/api", + "//vendor:k8s.io/client-go/pkg/api/v1", "//vendor:k8s.io/client-go/pkg/apis/autoscaling", ], ) @@ -11886,7 +11904,6 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime/schema", "//vendor:k8s.io/apimachinery/pkg/util/intstr", "//vendor:k8s.io/client-go/pkg/api", - "//vendor:k8s.io/client-go/pkg/apis/autoscaling", ], ) @@ -11934,7 +11951,6 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/intstr", "//vendor:k8s.io/client-go/pkg/api", "//vendor:k8s.io/client-go/pkg/api/v1", - "//vendor:k8s.io/client-go/pkg/apis/autoscaling", "//vendor:k8s.io/client-go/pkg/apis/extensions", ], ) @@ -13091,7 +13107,6 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/runtime/schema", "//vendor:k8s.io/apimachinery/pkg/types", - "//vendor:k8s.io/client-go/pkg/api", "//vendor:k8s.io/client-go/pkg/apis/certificates", ], ) @@ -13872,9 +13887,8 @@ go_library( srcs = ["k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/strategicpatch/patch.go"], tags = ["automanaged"], deps = [ - "//vendor:github.com/davecgh/go-spew/spew", - "//vendor:github.com/ghodss/yaml", "//vendor:k8s.io/apimachinery/pkg/util/json", + "//vendor:k8s.io/apimachinery/pkg/util/mergepatch", "//vendor:k8s.io/apimachinery/third_party/forked/golang/json", ], ) @@ -15440,3 +15454,222 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/json", ], ) + +go_library( + name = "k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/mergepatch", + srcs = [ + "k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/mergepatch/errors.go", + "k8s.io/client-go/_vendor/k8s.io/apimachinery/pkg/util/mergepatch/util.go", + ], + tags = ["automanaged"], + deps = [ + "//vendor:github.com/davecgh/go-spew/spew", + "//vendor:github.com/ghodss/yaml", + ], +) + +go_library( + name = "k8s.io/client-go/kubernetes/typed/authentication/v1", + srcs = [ + "k8s.io/client-go/kubernetes/typed/authentication/v1/authentication_client.go", + "k8s.io/client-go/kubernetes/typed/authentication/v1/doc.go", + "k8s.io/client-go/kubernetes/typed/authentication/v1/generated_expansion.go", + "k8s.io/client-go/kubernetes/typed/authentication/v1/tokenreview.go", + "k8s.io/client-go/kubernetes/typed/authentication/v1/tokenreview_expansion.go", + ], + tags = ["automanaged"], + deps = [ + "//vendor:k8s.io/apimachinery/pkg/runtime/schema", + "//vendor:k8s.io/apimachinery/pkg/runtime/serializer", + "//vendor:k8s.io/client-go/pkg/api", + "//vendor:k8s.io/client-go/pkg/apis/authentication/v1", + "//vendor:k8s.io/client-go/rest", + ], +) + +go_library( + name = "k8s.io/client-go/kubernetes/typed/authentication/v1/fake", + srcs = [ + "k8s.io/client-go/kubernetes/typed/authentication/v1/fake/doc.go", + "k8s.io/client-go/kubernetes/typed/authentication/v1/fake/fake_authentication_client.go", + "k8s.io/client-go/kubernetes/typed/authentication/v1/fake/fake_tokenreview.go", + "k8s.io/client-go/kubernetes/typed/authentication/v1/fake/fake_tokenreview_expansion.go", + ], + tags = ["automanaged"], + deps = [ + "//vendor:k8s.io/client-go/kubernetes/typed/authentication/v1", + "//vendor:k8s.io/client-go/pkg/apis/authentication/v1", + "//vendor:k8s.io/client-go/rest", + "//vendor:k8s.io/client-go/testing", + ], +) + +go_library( + name = "k8s.io/client-go/kubernetes/typed/authorization/v1", + srcs = [ + "k8s.io/client-go/kubernetes/typed/authorization/v1/authorization_client.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/doc.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/generated_expansion.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/localsubjectaccessreview.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/localsubjectaccessreview_expansion.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectaccessreview.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectaccessreview_expansion.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/subjectaccessreview.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/subjectaccessreview_expansion.go", + ], + tags = ["automanaged"], + deps = [ + "//vendor:k8s.io/apimachinery/pkg/runtime/schema", + "//vendor:k8s.io/apimachinery/pkg/runtime/serializer", + "//vendor:k8s.io/client-go/pkg/api", + "//vendor:k8s.io/client-go/pkg/apis/authorization/v1", + "//vendor:k8s.io/client-go/rest", + ], +) + +go_library( + name = "k8s.io/client-go/kubernetes/typed/authorization/v1/fake", + srcs = [ + "k8s.io/client-go/kubernetes/typed/authorization/v1/fake/doc.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_authorization_client.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_localsubjectaccessreview.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_localsubjectaccessreview_expansion.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_selfsubjectaccessreview.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_selfsubjectaccessreview_expansion.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_subjectaccessreview.go", + "k8s.io/client-go/kubernetes/typed/authorization/v1/fake/fake_subjectaccessreview_expansion.go", + ], + tags = ["automanaged"], + deps = [ + "//vendor:k8s.io/client-go/kubernetes/typed/authorization/v1", + "//vendor:k8s.io/client-go/pkg/apis/authorization/v1", + "//vendor:k8s.io/client-go/rest", + "//vendor:k8s.io/client-go/testing", + ], +) + +go_library( + name = "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1", + srcs = [ + "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/autoscaling_client.go", + "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/doc.go", + "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/generated_expansion.go", + "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/horizontalpodautoscaler.go", + ], + tags = ["automanaged"], + deps = [ + "//vendor:k8s.io/apimachinery/pkg/apis/meta/v1", + "//vendor:k8s.io/apimachinery/pkg/runtime/schema", + "//vendor:k8s.io/apimachinery/pkg/runtime/serializer", + "//vendor:k8s.io/apimachinery/pkg/types", + "//vendor:k8s.io/apimachinery/pkg/watch", + "//vendor:k8s.io/client-go/pkg/api", + "//vendor:k8s.io/client-go/pkg/apis/autoscaling/v2alpha1", + "//vendor:k8s.io/client-go/rest", + ], +) + +go_library( + name = "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake", + srcs = [ + "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake/doc.go", + "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake/fake_autoscaling_client.go", + "k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1/fake/fake_horizontalpodautoscaler.go", + ], + tags = ["automanaged"], + deps = [ + "//vendor:k8s.io/apimachinery/pkg/apis/meta/v1", + "//vendor:k8s.io/apimachinery/pkg/labels", + "//vendor:k8s.io/apimachinery/pkg/runtime/schema", + "//vendor:k8s.io/apimachinery/pkg/types", + "//vendor:k8s.io/apimachinery/pkg/watch", + "//vendor:k8s.io/client-go/kubernetes/typed/autoscaling/v2alpha1", + "//vendor:k8s.io/client-go/pkg/apis/autoscaling/v2alpha1", + "//vendor:k8s.io/client-go/rest", + "//vendor:k8s.io/client-go/testing", + ], +) + +go_library( + name = "k8s.io/client-go/pkg/apis/authentication/v1", + srcs = [ + "k8s.io/client-go/pkg/apis/authentication/v1/conversion.go", + "k8s.io/client-go/pkg/apis/authentication/v1/defaults.go", + "k8s.io/client-go/pkg/apis/authentication/v1/doc.go", + "k8s.io/client-go/pkg/apis/authentication/v1/generated.pb.go", + "k8s.io/client-go/pkg/apis/authentication/v1/register.go", + "k8s.io/client-go/pkg/apis/authentication/v1/types.go", + "k8s.io/client-go/pkg/apis/authentication/v1/types_swagger_doc_generated.go", + "k8s.io/client-go/pkg/apis/authentication/v1/zz_generated.conversion.go", + "k8s.io/client-go/pkg/apis/authentication/v1/zz_generated.deepcopy.go", + "k8s.io/client-go/pkg/apis/authentication/v1/zz_generated.defaults.go", + ], + tags = ["automanaged"], + deps = [ + "//vendor:github.com/gogo/protobuf/proto", + "//vendor:github.com/gogo/protobuf/sortkeys", + "//vendor:k8s.io/apimachinery/pkg/apis/meta/v1", + "//vendor:k8s.io/apimachinery/pkg/conversion", + "//vendor:k8s.io/apimachinery/pkg/runtime", + "//vendor:k8s.io/apimachinery/pkg/runtime/schema", + "//vendor:k8s.io/client-go/pkg/apis/authentication", + ], +) + +go_library( + name = "k8s.io/client-go/pkg/apis/authorization/v1", + srcs = [ + "k8s.io/client-go/pkg/apis/authorization/v1/conversion.go", + "k8s.io/client-go/pkg/apis/authorization/v1/defaults.go", + "k8s.io/client-go/pkg/apis/authorization/v1/doc.go", + "k8s.io/client-go/pkg/apis/authorization/v1/generated.pb.go", + "k8s.io/client-go/pkg/apis/authorization/v1/register.go", + "k8s.io/client-go/pkg/apis/authorization/v1/types.generated.go", + "k8s.io/client-go/pkg/apis/authorization/v1/types.go", + "k8s.io/client-go/pkg/apis/authorization/v1/types_swagger_doc_generated.go", + "k8s.io/client-go/pkg/apis/authorization/v1/zz_generated.conversion.go", + "k8s.io/client-go/pkg/apis/authorization/v1/zz_generated.deepcopy.go", + "k8s.io/client-go/pkg/apis/authorization/v1/zz_generated.defaults.go", + ], + tags = ["automanaged"], + deps = [ + "//vendor:github.com/gogo/protobuf/proto", + "//vendor:github.com/gogo/protobuf/sortkeys", + "//vendor:github.com/ugorji/go/codec", + "//vendor:k8s.io/apimachinery/pkg/apis/meta/v1", + "//vendor:k8s.io/apimachinery/pkg/conversion", + "//vendor:k8s.io/apimachinery/pkg/runtime", + "//vendor:k8s.io/apimachinery/pkg/runtime/schema", + "//vendor:k8s.io/apimachinery/pkg/types", + "//vendor:k8s.io/client-go/pkg/apis/authorization", + ], +) + +go_library( + name = "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1", + srcs = [ + "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/defaults.go", + "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/doc.go", + "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.pb.go", + "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/register.go", + "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.generated.go", + "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.go", + "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types_swagger_doc_generated.go", + "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.conversion.go", + "k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.deepcopy.go", + ], + tags = ["automanaged"], + deps = [ + "//vendor:github.com/gogo/protobuf/proto", + "//vendor:github.com/ugorji/go/codec", + "//vendor:k8s.io/apimachinery/pkg/api/resource", + "//vendor:k8s.io/apimachinery/pkg/apis/meta/v1", + "//vendor:k8s.io/apimachinery/pkg/conversion", + "//vendor:k8s.io/apimachinery/pkg/runtime", + "//vendor:k8s.io/apimachinery/pkg/runtime/schema", + "//vendor:k8s.io/apimachinery/pkg/types", + "//vendor:k8s.io/client-go/pkg/api", + "//vendor:k8s.io/client-go/pkg/api/v1", + "//vendor:k8s.io/client-go/pkg/apis/autoscaling", + ], +)