Generate code

This commit is contained in:
Joe Betz 2024-02-28 14:05:21 -05:00
parent 291703482d
commit 7ef3eea8a7
25 changed files with 1506 additions and 411 deletions

View File

@ -15848,6 +15848,14 @@
"$ref": "#/definitions/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation",
"description": "schema describes the schema used for validation, pruning, and defaulting of this version of the custom resource."
},
"selectableFields": {
"description": "selectableFields specifies paths to fields that may be used as field selectors. A maximum of 8 selectable fields are allowed. See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors",
"items": {
"$ref": "#/definitions/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.SelectableField"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"served": {
"description": "served is a flag enabling/disabling this version from being served via REST APIs",
"type": "boolean"
@ -16143,6 +16151,19 @@
"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray": {
"description": "JSONSchemaPropsOrStringArray represents a JSONSchemaProps or a string array."
},
"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.SelectableField": {
"description": "SelectableField specifies the JSON path of a field that may be used with field selectors.",
"properties": {
"jsonPath": {
"description": "jsonPath is a simple JSON path which is evaluated against each custom resource to produce a field selector value. Only JSON paths without the array notation are allowed. Must point to a field of type string, boolean or integer. Types with enum values and strings with formats are allowed. If jsonPath refers to absent field in a resource, the jsonPath evaluates to an empty string. Must not point to metdata fields. Required.",
"type": "string"
}
},
"required": [
"jsonPath"
],
"type": "object"
},
"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ServiceReference": {
"description": "ServiceReference holds a reference to Service.legacy.k8s.io",
"properties": {

View File

@ -373,6 +373,19 @@
],
"description": "schema describes the schema used for validation, pruning, and defaulting of this version of the custom resource."
},
"selectableFields": {
"description": "selectableFields specifies paths to fields that may be used as field selectors. A maximum of 8 selectable fields are allowed. See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors",
"items": {
"allOf": [
{
"$ref": "#/components/schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.SelectableField"
}
],
"default": {}
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"served": {
"default": false,
"description": "served is a flag enabling/disabling this version from being served via REST APIs",
@ -729,6 +742,20 @@
"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray": {
"description": "JSONSchemaPropsOrStringArray represents a JSONSchemaProps or a string array."
},
"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.SelectableField": {
"description": "SelectableField specifies the JSON path of a field that may be used with field selectors.",
"properties": {
"jsonPath": {
"default": "",
"description": "jsonPath is a simple JSON path which is evaluated against each custom resource to produce a field selector value. Only JSON paths without the array notation are allowed. Must point to a field of type string, boolean or integer. Types with enum values and strings with formats are allowed. If jsonPath refers to absent field in a resource, the jsonPath evaluates to an empty string. Must not point to metdata fields. Required.",
"type": "string"
}
},
"required": [
"jsonPath"
],
"type": "object"
},
"io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ServiceReference": {
"description": "ServiceReference holds a reference to Service.legacy.k8s.io",
"properties": {

View File

@ -948,6 +948,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSONSchemaPropsOrArray": schema_pkg_apis_apiextensions_v1_JSONSchemaPropsOrArray(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSONSchemaPropsOrBool": schema_pkg_apis_apiextensions_v1_JSONSchemaPropsOrBool(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSONSchemaPropsOrStringArray": schema_pkg_apis_apiextensions_v1_JSONSchemaPropsOrStringArray(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.SelectableField": schema_pkg_apis_apiextensions_v1_SelectableField(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.ServiceReference": schema_pkg_apis_apiextensions_v1_ServiceReference(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.ValidationRule": schema_pkg_apis_apiextensions_v1_ValidationRule(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.WebhookClientConfig": schema_pkg_apis_apiextensions_v1_WebhookClientConfig(ref),
@ -974,6 +975,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.JSONSchemaPropsOrArray": schema_pkg_apis_apiextensions_v1beta1_JSONSchemaPropsOrArray(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.JSONSchemaPropsOrBool": schema_pkg_apis_apiextensions_v1beta1_JSONSchemaPropsOrBool(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.JSONSchemaPropsOrStringArray": schema_pkg_apis_apiextensions_v1beta1_JSONSchemaPropsOrStringArray(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.SelectableField": schema_pkg_apis_apiextensions_v1beta1_SelectableField(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.ServiceReference": schema_pkg_apis_apiextensions_v1beta1_ServiceReference(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.ValidationRule": schema_pkg_apis_apiextensions_v1beta1_ValidationRule(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.WebhookClientConfig": schema_pkg_apis_apiextensions_v1beta1_WebhookClientConfig(ref),
@ -48017,12 +48019,31 @@ func schema_pkg_apis_apiextensions_v1_CustomResourceDefinitionVersion(ref common
},
},
},
"selectableFields": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{
Description: "selectableFields specifies paths to fields that may be used as field selectors. A maximum of 8 selectable fields are allowed. See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.SelectableField"),
},
},
},
},
},
},
Required: []string{"name", "served", "storage"},
},
},
Dependencies: []string{
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.CustomResourceColumnDefinition", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.CustomResourceSubresources", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.CustomResourceValidation"},
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.CustomResourceColumnDefinition", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.CustomResourceSubresources", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.CustomResourceValidation", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.SelectableField"},
}
}
@ -48597,6 +48618,28 @@ func schema_pkg_apis_apiextensions_v1_JSONSchemaPropsOrStringArray(ref common.Re
}
}
func schema_pkg_apis_apiextensions_v1_SelectableField(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "SelectableField specifies the JSON path of a field that may be used with field selectors.",
Type: []string{"object"},
Properties: map[string]spec.Schema{
"jsonPath": {
SchemaProps: spec.SchemaProps{
Description: "jsonPath is a simple JSON path which is evaluated against each custom resource to produce a field selector value. Only JSON paths without the array notation are allowed. Must point to a field of type string, boolean or integer. Types with enum values and strings with formats are allowed. If jsonPath refers to absent field in a resource, the jsonPath evaluates to an empty string. Must not point to metdata fields. Required.",
Default: "",
Type: []string{"string"},
Format: "",
},
},
},
Required: []string{"jsonPath"},
},
},
}
}
func schema_pkg_apis_apiextensions_v1_ServiceReference(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
@ -49350,6 +49393,25 @@ func schema_pkg_apis_apiextensions_v1beta1_CustomResourceDefinitionSpec(ref comm
},
},
},
"selectableFields": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{
Description: "selectableFields specifies paths to fields that may be used as field selectors. See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.SelectableField"),
},
},
},
},
},
"conversion": {
SchemaProps: spec.SchemaProps{
Description: "conversion defines conversion settings for the CRD.",
@ -49368,7 +49430,7 @@ func schema_pkg_apis_apiextensions_v1beta1_CustomResourceDefinitionSpec(ref comm
},
},
Dependencies: []string{
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceColumnDefinition", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceConversion", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceDefinitionNames", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceDefinitionVersion", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceSubresources", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceValidation"},
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceColumnDefinition", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceConversion", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceDefinitionNames", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceDefinitionVersion", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceSubresources", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceValidation", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.SelectableField"},
}
}
@ -49512,12 +49574,31 @@ func schema_pkg_apis_apiextensions_v1beta1_CustomResourceDefinitionVersion(ref c
},
},
},
"selectableFields": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{
Description: "selectableFields specifies paths to fields that may be used as field selectors. See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.SelectableField"),
},
},
},
},
},
},
Required: []string{"name", "served", "storage"},
},
},
Dependencies: []string{
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceColumnDefinition", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceSubresources", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceValidation"},
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceColumnDefinition", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceSubresources", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceValidation", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.SelectableField"},
}
}
@ -50092,6 +50173,28 @@ func schema_pkg_apis_apiextensions_v1beta1_JSONSchemaPropsOrStringArray(ref comm
}
}
func schema_pkg_apis_apiextensions_v1beta1_SelectableField(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "SelectableField specifies the JSON path of a field that may be used with field selectors.",
Type: []string{"object"},
Properties: map[string]spec.Schema{
"jsonPath": {
SchemaProps: spec.SchemaProps{
Description: "jsonPath is a simple JSON path which is evaluated against each custom resource to produce a field selector value. Only JSON paths without the array notation are allowed. Must point to a field of type string, boolean or integer. Types with enum values and strings with formats are allowed. If jsonPath refers to absent field in a resource, the jsonPath evaluates to an empty string. Must not point to metdata fields. Required.",
Default: "",
Type: []string{"string"},
Format: "",
},
},
},
Required: []string{"jsonPath"},
},
},
}
}
func schema_pkg_apis_apiextensions_v1beta1_ServiceReference(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{

View File

@ -664,10 +664,38 @@ func (m *JSONSchemaPropsOrStringArray) XXX_DiscardUnknown() {
var xxx_messageInfo_JSONSchemaPropsOrStringArray proto.InternalMessageInfo
func (m *SelectableField) Reset() { *m = SelectableField{} }
func (*SelectableField) ProtoMessage() {}
func (*SelectableField) Descriptor() ([]byte, []int) {
return fileDescriptor_f5a35c9667703937, []int{22}
}
func (m *SelectableField) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
}
func (m *SelectableField) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
b = b[:cap(b)]
n, err := m.MarshalToSizedBuffer(b)
if err != nil {
return nil, err
}
return b[:n], nil
}
func (m *SelectableField) XXX_Merge(src proto.Message) {
xxx_messageInfo_SelectableField.Merge(m, src)
}
func (m *SelectableField) XXX_Size() int {
return m.Size()
}
func (m *SelectableField) XXX_DiscardUnknown() {
xxx_messageInfo_SelectableField.DiscardUnknown(m)
}
var xxx_messageInfo_SelectableField proto.InternalMessageInfo
func (m *ServiceReference) Reset() { *m = ServiceReference{} }
func (*ServiceReference) ProtoMessage() {}
func (*ServiceReference) Descriptor() ([]byte, []int) {
return fileDescriptor_f5a35c9667703937, []int{22}
return fileDescriptor_f5a35c9667703937, []int{23}
}
func (m *ServiceReference) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@ -695,7 +723,7 @@ var xxx_messageInfo_ServiceReference proto.InternalMessageInfo
func (m *ValidationRule) Reset() { *m = ValidationRule{} }
func (*ValidationRule) ProtoMessage() {}
func (*ValidationRule) Descriptor() ([]byte, []int) {
return fileDescriptor_f5a35c9667703937, []int{23}
return fileDescriptor_f5a35c9667703937, []int{24}
}
func (m *ValidationRule) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@ -723,7 +751,7 @@ var xxx_messageInfo_ValidationRule proto.InternalMessageInfo
func (m *WebhookClientConfig) Reset() { *m = WebhookClientConfig{} }
func (*WebhookClientConfig) ProtoMessage() {}
func (*WebhookClientConfig) Descriptor() ([]byte, []int) {
return fileDescriptor_f5a35c9667703937, []int{24}
return fileDescriptor_f5a35c9667703937, []int{25}
}
func (m *WebhookClientConfig) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@ -751,7 +779,7 @@ var xxx_messageInfo_WebhookClientConfig proto.InternalMessageInfo
func (m *WebhookConversion) Reset() { *m = WebhookConversion{} }
func (*WebhookConversion) ProtoMessage() {}
func (*WebhookConversion) Descriptor() ([]byte, []int) {
return fileDescriptor_f5a35c9667703937, []int{25}
return fileDescriptor_f5a35c9667703937, []int{26}
}
func (m *WebhookConversion) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@ -803,6 +831,7 @@ func init() {
proto.RegisterType((*JSONSchemaPropsOrArray)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray")
proto.RegisterType((*JSONSchemaPropsOrBool)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool")
proto.RegisterType((*JSONSchemaPropsOrStringArray)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrStringArray")
proto.RegisterType((*SelectableField)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.SelectableField")
proto.RegisterType((*ServiceReference)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.ServiceReference")
proto.RegisterType((*ValidationRule)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.ValidationRule")
proto.RegisterType((*WebhookClientConfig)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.WebhookClientConfig")
@ -814,204 +843,206 @@ func init() {
}
var fileDescriptor_f5a35c9667703937 = []byte{
// 3137 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0xdf, 0x6f, 0x5c, 0x47,
0xf5, 0xcf, 0x5d, 0x7b, 0xed, 0xf5, 0xd8, 0x89, 0xed, 0x49, 0xec, 0xef, 0x8d, 0x9b, 0x78, 0x9d,
0xcd, 0xb7, 0xc1, 0x6d, 0xd3, 0x75, 0x1b, 0x5a, 0x1a, 0xca, 0x2f, 0x79, 0x6d, 0xa7, 0x75, 0x13,
0xc7, 0xd6, 0x6c, 0x92, 0xba, 0x2d, 0xa2, 0xbd, 0xde, 0x3b, 0xbb, 0xbe, 0xf5, 0xfd, 0x95, 0x99,
0x7b, 0xfd, 0x43, 0x02, 0xa9, 0x02, 0x55, 0x40, 0x25, 0x28, 0x0f, 0xa8, 0x3c, 0x21, 0x84, 0x50,
0x1f, 0xe0, 0x01, 0xde, 0xe0, 0x5f, 0xe8, 0x0b, 0x52, 0x25, 0x24, 0x54, 0x09, 0x69, 0x45, 0x97,
0x7f, 0x00, 0x09, 0x10, 0xc2, 0x0f, 0x08, 0xcd, 0x8f, 0x3b, 0x77, 0xf6, 0xee, 0x6e, 0x12, 0xd9,
0xeb, 0xf6, 0x6d, 0xf7, 0x9c, 0x33, 0xe7, 0x73, 0xe6, 0xcc, 0x99, 0x33, 0x67, 0xce, 0x1d, 0x60,
0xed, 0x5c, 0xa7, 0x65, 0x27, 0x58, 0xd8, 0x89, 0xb7, 0x30, 0xf1, 0x71, 0x84, 0xe9, 0xc2, 0x2e,
0xf6, 0xed, 0x80, 0x2c, 0x48, 0x86, 0x15, 0x3a, 0x78, 0x3f, 0xc2, 0x3e, 0x75, 0x02, 0x9f, 0x3e,
0x6d, 0x85, 0x0e, 0xc5, 0x64, 0x17, 0x93, 0x85, 0x70, 0xa7, 0xc1, 0x78, 0xb4, 0x5d, 0x60, 0x61,
0xf7, 0xd9, 0x85, 0x06, 0xf6, 0x31, 0xb1, 0x22, 0x6c, 0x97, 0x43, 0x12, 0x44, 0x01, 0xbc, 0x2e,
0x34, 0x95, 0xdb, 0x04, 0xdf, 0x54, 0x9a, 0xca, 0xe1, 0x4e, 0x83, 0xf1, 0x68, 0xbb, 0x40, 0x79,
0xf7, 0xd9, 0x99, 0xa7, 0x1b, 0x4e, 0xb4, 0x1d, 0x6f, 0x95, 0x6b, 0x81, 0xb7, 0xd0, 0x08, 0x1a,
0xc1, 0x02, 0x57, 0xb8, 0x15, 0xd7, 0xf9, 0x3f, 0xfe, 0x87, 0xff, 0x12, 0x40, 0x33, 0xcf, 0xa5,
0x26, 0x7b, 0x56, 0x6d, 0xdb, 0xf1, 0x31, 0x39, 0x48, 0xed, 0xf4, 0x70, 0x64, 0x75, 0x31, 0x6f,
0x66, 0xa1, 0xd7, 0x28, 0x12, 0xfb, 0x91, 0xe3, 0xe1, 0x8e, 0x01, 0x5f, 0x7a, 0xd8, 0x00, 0x5a,
0xdb, 0xc6, 0x9e, 0x95, 0x1d, 0x57, 0x3a, 0x34, 0xc0, 0xe4, 0x52, 0xe0, 0xef, 0x62, 0xc2, 0x26,
0x88, 0xf0, 0xfd, 0x18, 0xd3, 0x08, 0x56, 0xc0, 0x40, 0xec, 0xd8, 0xa6, 0x31, 0x67, 0xcc, 0x8f,
0x54, 0x9e, 0xf9, 0xa8, 0x59, 0x3c, 0xd5, 0x6a, 0x16, 0x07, 0xee, 0xae, 0x2e, 0x1f, 0x36, 0x8b,
0x97, 0x7a, 0x21, 0x45, 0x07, 0x21, 0xa6, 0xe5, 0xbb, 0xab, 0xcb, 0x88, 0x0d, 0x86, 0x2f, 0x81,
0x49, 0x1b, 0x53, 0x87, 0x60, 0x7b, 0x71, 0x63, 0xf5, 0x9e, 0xd0, 0x6f, 0xe6, 0xb8, 0xc6, 0xf3,
0x52, 0xe3, 0xe4, 0x72, 0x56, 0x00, 0x75, 0x8e, 0x81, 0x9b, 0x60, 0x38, 0xd8, 0x7a, 0x1b, 0xd7,
0x22, 0x6a, 0x0e, 0xcc, 0x0d, 0xcc, 0x8f, 0x5e, 0x7b, 0xba, 0x9c, 0x2e, 0x9e, 0x32, 0x81, 0xaf,
0x98, 0x9c, 0x6c, 0x19, 0x59, 0x7b, 0x2b, 0xc9, 0xa2, 0x55, 0xc6, 0x25, 0xda, 0xf0, 0xba, 0xd0,
0x82, 0x12, 0x75, 0xa5, 0x5f, 0xe5, 0x00, 0xd4, 0x27, 0x4f, 0xc3, 0xc0, 0xa7, 0xb8, 0x2f, 0xb3,
0xa7, 0x60, 0xa2, 0xc6, 0x35, 0x47, 0xd8, 0x96, 0xb8, 0x66, 0xee, 0x28, 0xd6, 0x9b, 0x12, 0x7f,
0x62, 0x29, 0xa3, 0x0e, 0x75, 0x00, 0xc0, 0x3b, 0x60, 0x88, 0x60, 0x1a, 0xbb, 0x91, 0x39, 0x30,
0x67, 0xcc, 0x8f, 0x5e, 0xbb, 0xda, 0x13, 0x8a, 0x87, 0x36, 0x0b, 0xbe, 0xf2, 0xee, 0xb3, 0xe5,
0x6a, 0x64, 0x45, 0x31, 0xad, 0x9c, 0x91, 0x48, 0x43, 0x88, 0xeb, 0x40, 0x52, 0x57, 0xe9, 0xbf,
0x06, 0x98, 0xd0, 0xbd, 0xb4, 0xeb, 0xe0, 0x3d, 0x48, 0xc0, 0x30, 0x11, 0xc1, 0xc2, 0xfd, 0x34,
0x7a, 0xed, 0x66, 0xf9, 0xa8, 0x3b, 0xaa, 0xdc, 0x11, 0x7f, 0x95, 0x51, 0xb6, 0x5c, 0xf2, 0x0f,
0x4a, 0x80, 0xe0, 0x2e, 0x28, 0x10, 0xb9, 0x46, 0x3c, 0x90, 0x46, 0xaf, 0xdd, 0xea, 0x0f, 0xa8,
0xd0, 0x59, 0x19, 0x6b, 0x35, 0x8b, 0x85, 0xe4, 0x1f, 0x52, 0x58, 0xa5, 0x5f, 0xe4, 0xc0, 0xec,
0x52, 0x4c, 0xa3, 0xc0, 0x43, 0x98, 0x06, 0x31, 0xa9, 0xe1, 0xa5, 0xc0, 0x8d, 0x3d, 0x7f, 0x19,
0xd7, 0x1d, 0xdf, 0x89, 0x58, 0x8c, 0xce, 0x81, 0x41, 0xdf, 0xf2, 0xb0, 0x8c, 0x99, 0x31, 0xe9,
0xc9, 0xc1, 0xdb, 0x96, 0x87, 0x11, 0xe7, 0x30, 0x09, 0x16, 0x22, 0x72, 0x07, 0x28, 0x89, 0x3b,
0x07, 0x21, 0x46, 0x9c, 0x03, 0xaf, 0x80, 0xa1, 0x7a, 0x40, 0x3c, 0x4b, 0xac, 0xde, 0x48, 0xba,
0x1e, 0x37, 0x38, 0x15, 0x49, 0x2e, 0x7c, 0x1e, 0x8c, 0xda, 0x98, 0xd6, 0x88, 0x13, 0x32, 0x68,
0x73, 0x90, 0x0b, 0x9f, 0x95, 0xc2, 0xa3, 0xcb, 0x29, 0x0b, 0xe9, 0x72, 0xf0, 0x2a, 0x28, 0x84,
0xc4, 0x09, 0x88, 0x13, 0x1d, 0x98, 0xf9, 0x39, 0x63, 0x3e, 0x5f, 0x99, 0x90, 0x63, 0x0a, 0x1b,
0x92, 0x8e, 0x94, 0x04, 0x93, 0x7e, 0x9b, 0x06, 0xfe, 0x86, 0x15, 0x6d, 0x9b, 0x43, 0x1c, 0x41,
0x49, 0xbf, 0x52, 0x5d, 0xbf, 0xcd, 0xe8, 0x48, 0x49, 0x94, 0xfe, 0x6c, 0x00, 0x33, 0xeb, 0xa1,
0xc4, 0xbd, 0xf0, 0x06, 0x28, 0xd0, 0x88, 0xe5, 0x9c, 0xc6, 0x81, 0xf4, 0xcf, 0x93, 0x89, 0xaa,
0xaa, 0xa4, 0x1f, 0x36, 0x8b, 0xd3, 0xe9, 0x88, 0x84, 0xca, 0x7d, 0xa3, 0xc6, 0xb2, 0x90, 0xdb,
0xc3, 0x5b, 0xdb, 0x41, 0xb0, 0x23, 0x57, 0xff, 0x18, 0x21, 0xf7, 0xaa, 0x50, 0x94, 0x62, 0x8a,
0x90, 0x93, 0x64, 0x94, 0x00, 0x95, 0xfe, 0x93, 0xcb, 0x4e, 0x4c, 0x5b, 0xf4, 0xb7, 0x40, 0x81,
0x6d, 0x21, 0xdb, 0x8a, 0x2c, 0xb9, 0x09, 0x9e, 0x79, 0xb4, 0x0d, 0x27, 0xf6, 0xeb, 0x1a, 0x8e,
0xac, 0x0a, 0x94, 0xae, 0x00, 0x29, 0x0d, 0x29, 0xad, 0x70, 0x1f, 0x0c, 0xd2, 0x10, 0xd7, 0xe4,
0x7c, 0xef, 0x1d, 0x23, 0xda, 0x7b, 0xcc, 0xa1, 0x1a, 0xe2, 0x5a, 0x1a, 0x8c, 0xec, 0x1f, 0xe2,
0x88, 0xf0, 0x1d, 0x03, 0x0c, 0x51, 0x9e, 0x17, 0x64, 0x2e, 0xd9, 0x3c, 0x01, 0xf0, 0x4c, 0xde,
0x11, 0xff, 0x91, 0xc4, 0x2d, 0xfd, 0x33, 0x07, 0x2e, 0xf5, 0x1a, 0xba, 0x14, 0xf8, 0xb6, 0x58,
0x84, 0x55, 0xb9, 0xaf, 0x44, 0x64, 0x3d, 0xaf, 0xef, 0xab, 0xc3, 0x66, 0xf1, 0xf1, 0x87, 0x2a,
0xd0, 0x36, 0xe0, 0x97, 0xd5, 0x94, 0xc5, 0x26, 0xbd, 0xd4, 0x6e, 0xd8, 0x61, 0xb3, 0x38, 0xae,
0x86, 0xb5, 0xdb, 0x0a, 0x77, 0x01, 0x74, 0x2d, 0x1a, 0xdd, 0x21, 0x96, 0x4f, 0x85, 0x5a, 0xc7,
0xc3, 0xd2, 0x73, 0x4f, 0x3e, 0x5a, 0x50, 0xb0, 0x11, 0x95, 0x19, 0x09, 0x09, 0x6f, 0x75, 0x68,
0x43, 0x5d, 0x10, 0x58, 0xce, 0x20, 0xd8, 0xa2, 0x2a, 0x0d, 0x68, 0x39, 0x9c, 0x51, 0x91, 0xe4,
0xc2, 0x27, 0xc0, 0xb0, 0x87, 0x29, 0xb5, 0x1a, 0x98, 0xef, 0xfd, 0x91, 0xf4, 0x50, 0x5c, 0x13,
0x64, 0x94, 0xf0, 0x4b, 0xff, 0x32, 0xc0, 0x85, 0x5e, 0x5e, 0xbb, 0xe5, 0xd0, 0x08, 0x7e, 0xb3,
0x23, 0xec, 0xcb, 0x8f, 0x36, 0x43, 0x36, 0x9a, 0x07, 0xbd, 0x4a, 0x25, 0x09, 0x45, 0x0b, 0xf9,
0x3d, 0x90, 0x77, 0x22, 0xec, 0x25, 0xa7, 0x25, 0xea, 0x7f, 0xd8, 0x55, 0x4e, 0x4b, 0xf8, 0xfc,
0x2a, 0x03, 0x42, 0x02, 0xaf, 0xf4, 0x61, 0x0e, 0x5c, 0xec, 0x35, 0x84, 0xe5, 0x71, 0xca, 0x9c,
0x1d, 0xba, 0x31, 0xb1, 0x5c, 0x19, 0x6c, 0xca, 0xd9, 0x1b, 0x9c, 0x8a, 0x24, 0x97, 0xe5, 0x4e,
0xea, 0xf8, 0x8d, 0xd8, 0xb5, 0x88, 0x8c, 0x24, 0x35, 0xe1, 0xaa, 0xa4, 0x23, 0x25, 0x01, 0xcb,
0x00, 0xd0, 0xed, 0x80, 0x44, 0x1c, 0x83, 0x57, 0x38, 0x23, 0x95, 0x33, 0x2c, 0x23, 0x54, 0x15,
0x15, 0x69, 0x12, 0xec, 0x20, 0xd9, 0x71, 0x7c, 0x5b, 0x2e, 0xb8, 0xda, 0xbb, 0x37, 0x1d, 0xdf,
0x46, 0x9c, 0xc3, 0xf0, 0x5d, 0x87, 0x46, 0x8c, 0x22, 0x57, 0xbb, 0xcd, 0xe1, 0x5c, 0x52, 0x49,
0x30, 0xfc, 0x1a, 0x4b, 0xb0, 0x01, 0x71, 0x30, 0x35, 0x87, 0x52, 0xfc, 0x25, 0x45, 0x45, 0x9a,
0x44, 0xe9, 0x2f, 0x83, 0xbd, 0xe3, 0x83, 0x25, 0x10, 0x78, 0x19, 0xe4, 0x1b, 0x24, 0x88, 0x43,
0xe9, 0x25, 0xe5, 0xed, 0x97, 0x18, 0x11, 0x09, 0x1e, 0xfc, 0x36, 0xc8, 0xfb, 0x72, 0xc2, 0x2c,
0x82, 0x5e, 0xed, 0xff, 0x32, 0x73, 0x6f, 0xa5, 0xe8, 0xc2, 0x91, 0x02, 0x14, 0x3e, 0x07, 0xf2,
0xb4, 0x16, 0x84, 0x58, 0x3a, 0x71, 0x36, 0x11, 0xaa, 0x32, 0xe2, 0x61, 0xb3, 0x78, 0x3a, 0x51,
0xc7, 0x09, 0x48, 0x08, 0xc3, 0xef, 0x1b, 0xa0, 0x20, 0x8f, 0x0b, 0x6a, 0x0e, 0xf3, 0xf0, 0x7c,
0xad, 0xff, 0x76, 0xcb, 0xb2, 0x37, 0x5d, 0x33, 0x49, 0xa0, 0x48, 0x81, 0xc3, 0xef, 0x1a, 0x00,
0xd4, 0xd4, 0xd9, 0x65, 0x8e, 0x70, 0x1f, 0xf6, 0x6d, 0xab, 0x68, 0xa7, 0xa2, 0x08, 0x84, 0xb4,
0x54, 0xd2, 0x50, 0x61, 0x15, 0x4c, 0x85, 0x04, 0x73, 0xdd, 0x77, 0xfd, 0x1d, 0x3f, 0xd8, 0xf3,
0x6f, 0x38, 0xd8, 0xb5, 0xa9, 0x09, 0xe6, 0x8c, 0xf9, 0x42, 0xe5, 0xa2, 0xb4, 0x7f, 0x6a, 0xa3,
0x9b, 0x10, 0xea, 0x3e, 0xb6, 0xf4, 0xee, 0x40, 0xb6, 0xd6, 0xca, 0x9e, 0x17, 0xf0, 0x7d, 0x31,
0x79, 0x91, 0x87, 0xa9, 0x69, 0xf0, 0x85, 0x78, 0xa3, 0xff, 0x0b, 0xa1, 0x72, 0x7d, 0x7a, 0x48,
0x2b, 0x12, 0x45, 0x9a, 0x09, 0xf0, 0xa7, 0x06, 0x38, 0x6d, 0xd5, 0x6a, 0x38, 0x8c, 0xb0, 0x2d,
0xb6, 0x71, 0xee, 0x64, 0xa3, 0x7a, 0x4a, 0x1a, 0x74, 0x7a, 0x51, 0x47, 0x45, 0xed, 0x46, 0xc0,
0x17, 0xc1, 0x19, 0x1a, 0x05, 0x04, 0xdb, 0x49, 0x04, 0xc9, 0xec, 0x02, 0x5b, 0xcd, 0xe2, 0x99,
0x6a, 0x1b, 0x07, 0x65, 0x24, 0x4b, 0x1f, 0xe7, 0x41, 0xf1, 0x21, 0x11, 0xfa, 0x08, 0x45, 0xef,
0x15, 0x30, 0xc4, 0x67, 0x6a, 0x73, 0x87, 0x14, 0xb4, 0xa3, 0x9e, 0x53, 0x91, 0xe4, 0xb2, 0xe3,
0x89, 0xe1, 0xb3, 0xe3, 0x69, 0x80, 0x0b, 0xaa, 0xe3, 0xa9, 0x2a, 0xc8, 0x28, 0xe1, 0xc3, 0x6b,
0x00, 0xd8, 0x38, 0x24, 0x98, 0x65, 0x24, 0xdb, 0x1c, 0xe6, 0xd2, 0x6a, 0x7d, 0x96, 0x15, 0x07,
0x69, 0x52, 0xf0, 0x06, 0x80, 0xc9, 0x3f, 0x27, 0xf0, 0x5f, 0xb5, 0x88, 0xef, 0xf8, 0x0d, 0xb3,
0xc0, 0xcd, 0x9e, 0x66, 0xa7, 0xed, 0x72, 0x07, 0x17, 0x75, 0x19, 0x01, 0x77, 0xc1, 0x90, 0xb8,
0x46, 0xf3, 0xbc, 0xd1, 0xc7, 0x1d, 0x77, 0xcf, 0x72, 0x1d, 0x9b, 0x43, 0x55, 0x00, 0x77, 0x0f,
0x47, 0x41, 0x12, 0x0d, 0xbe, 0x67, 0x80, 0x31, 0x1a, 0x6f, 0x11, 0x29, 0x4d, 0x79, 0x56, 0x1f,
0xbd, 0x76, 0xa7, 0x5f, 0xf0, 0x55, 0x4d, 0x77, 0x65, 0xa2, 0xd5, 0x2c, 0x8e, 0xe9, 0x14, 0xd4,
0x86, 0x0d, 0x7f, 0x6f, 0x00, 0xd3, 0xb2, 0x45, 0xe8, 0x5b, 0xee, 0x06, 0x71, 0xfc, 0x08, 0x13,
0x71, 0x21, 0x12, 0xc7, 0x47, 0x1f, 0x6b, 0xc5, 0xec, 0x3d, 0xab, 0x32, 0x27, 0x57, 0xda, 0x5c,
0xec, 0x61, 0x01, 0xea, 0x69, 0x5b, 0xe9, 0xdf, 0x46, 0x36, 0xb5, 0x68, 0xb3, 0xac, 0xd6, 0x2c,
0x17, 0xc3, 0x65, 0x30, 0xc1, 0xaa, 0x5f, 0x84, 0x43, 0xd7, 0xa9, 0x59, 0x94, 0xdf, 0x7e, 0x44,
0x74, 0xab, 0x6b, 0x78, 0x35, 0xc3, 0x47, 0x1d, 0x23, 0xe0, 0x2b, 0x00, 0x8a, 0xb2, 0xb0, 0x4d,
0x8f, 0xa8, 0x04, 0x54, 0x81, 0x57, 0xed, 0x90, 0x40, 0x5d, 0x46, 0xc1, 0x25, 0x30, 0xe9, 0x5a,
0x5b, 0xd8, 0xad, 0x62, 0x17, 0xd7, 0xa2, 0x80, 0x70, 0x55, 0xe2, 0x7e, 0x38, 0xd5, 0x6a, 0x16,
0x27, 0x6f, 0x65, 0x99, 0xa8, 0x53, 0xbe, 0x74, 0x29, 0xbb, 0x97, 0xf5, 0x89, 0x8b, 0x62, 0xfb,
0x83, 0x1c, 0x98, 0xe9, 0x1d, 0x14, 0xf0, 0x3b, 0xaa, 0x34, 0x16, 0x15, 0xdf, 0x6b, 0x27, 0x10,
0x7a, 0xf2, 0x3a, 0x00, 0x3a, 0xaf, 0x02, 0xf0, 0x80, 0x9d, 0xd7, 0x96, 0x9b, 0x5c, 0xfb, 0x37,
0x4f, 0x02, 0x9d, 0xe9, 0xaf, 0x8c, 0x88, 0x2a, 0xc0, 0x72, 0xf9, 0xa1, 0x6f, 0xb9, 0xb8, 0xf4,
0x61, 0xc7, 0xd5, 0x36, 0xdd, 0xac, 0xf0, 0x07, 0x06, 0x18, 0x0f, 0x42, 0xec, 0x2f, 0x6e, 0xac,
0xde, 0xfb, 0xa2, 0xd8, 0xb4, 0xd2, 0x41, 0xab, 0x47, 0x37, 0x91, 0xdd, 0xaf, 0x85, 0xae, 0x0d,
0x12, 0x84, 0xb4, 0x72, 0xb6, 0xd5, 0x2c, 0x8e, 0xaf, 0xb7, 0xa3, 0xa0, 0x2c, 0x6c, 0xc9, 0x03,
0x53, 0x2b, 0xfb, 0x11, 0x26, 0xbe, 0xe5, 0x2e, 0x07, 0xb5, 0xd8, 0xc3, 0x7e, 0x24, 0x6c, 0xcc,
0xb4, 0x0b, 0x8c, 0x47, 0x6c, 0x17, 0x5c, 0x04, 0x03, 0x31, 0x71, 0x65, 0xd4, 0x8e, 0xaa, 0x26,
0x18, 0xba, 0x85, 0x18, 0xbd, 0x74, 0x09, 0x0c, 0x32, 0x3b, 0xe1, 0x79, 0x30, 0x40, 0xac, 0x3d,
0xae, 0x75, 0xac, 0x32, 0xcc, 0x44, 0x90, 0xb5, 0x87, 0x18, 0xad, 0xf4, 0xf7, 0x39, 0x30, 0x9e,
0x99, 0x0b, 0x9c, 0x01, 0x39, 0xd5, 0x59, 0x03, 0x52, 0x69, 0x6e, 0x75, 0x19, 0xe5, 0x1c, 0x1b,
0xbe, 0xa0, 0xb2, 0xab, 0x00, 0x2d, 0xaa, 0xc3, 0x82, 0x53, 0x59, 0x59, 0x96, 0xaa, 0x63, 0x86,
0x24, 0xe9, 0x91, 0xd9, 0x80, 0xeb, 0x72, 0x57, 0x08, 0x1b, 0x70, 0x1d, 0x31, 0xda, 0x51, 0x7b,
0x25, 0x49, 0xb3, 0x26, 0xff, 0x08, 0xcd, 0x9a, 0xa1, 0x07, 0x36, 0x6b, 0x2e, 0x83, 0x7c, 0xe4,
0x44, 0x2e, 0xe6, 0x27, 0x95, 0x56, 0x0c, 0xdf, 0x61, 0x44, 0x24, 0x78, 0x10, 0x83, 0x61, 0x1b,
0xd7, 0xad, 0xd8, 0x8d, 0xf8, 0xa1, 0x34, 0x7a, 0xed, 0xeb, 0xc7, 0x8b, 0x1e, 0xd1, 0xcc, 0x58,
0x16, 0x2a, 0x51, 0xa2, 0x1b, 0x3e, 0x0e, 0x86, 0x3d, 0x6b, 0xdf, 0xf1, 0x62, 0x8f, 0x57, 0x8c,
0x86, 0x10, 0x5b, 0x13, 0x24, 0x94, 0xf0, 0x58, 0x12, 0xc4, 0xfb, 0x35, 0x37, 0xa6, 0xce, 0x2e,
0x96, 0x4c, 0x59, 0xd2, 0xa9, 0x24, 0xb8, 0x92, 0xe1, 0xa3, 0x8e, 0x11, 0x1c, 0xcc, 0xf1, 0xf9,
0xe0, 0x51, 0x0d, 0x4c, 0x90, 0x50, 0xc2, 0x6b, 0x07, 0x93, 0xf2, 0x63, 0xbd, 0xc0, 0xe4, 0xe0,
0x8e, 0x11, 0xf0, 0x29, 0x30, 0xe2, 0x59, 0xfb, 0xb7, 0xb0, 0xdf, 0x88, 0xb6, 0xcd, 0xd3, 0x73,
0xc6, 0xfc, 0x40, 0xe5, 0x74, 0xab, 0x59, 0x1c, 0x59, 0x4b, 0x88, 0x28, 0xe5, 0x73, 0x61, 0xc7,
0x97, 0xc2, 0x67, 0x34, 0xe1, 0x84, 0x88, 0x52, 0x3e, 0xab, 0x4c, 0x42, 0x2b, 0x62, 0xfb, 0xca,
0x1c, 0x6f, 0xbf, 0x38, 0x6f, 0x08, 0x32, 0x4a, 0xf8, 0x70, 0x1e, 0x14, 0x3c, 0x6b, 0x9f, 0xdf,
0x29, 0xcd, 0x09, 0xae, 0x96, 0x37, 0x14, 0xd7, 0x24, 0x0d, 0x29, 0x2e, 0x97, 0x74, 0x7c, 0x21,
0x39, 0xa9, 0x49, 0x4a, 0x1a, 0x52, 0x5c, 0x16, 0xbf, 0xb1, 0xef, 0xdc, 0x8f, 0xb1, 0x10, 0x86,
0xdc, 0x33, 0x2a, 0x7e, 0xef, 0xa6, 0x2c, 0xa4, 0xcb, 0xb1, 0x3b, 0x9d, 0x17, 0xbb, 0x91, 0x13,
0xba, 0x78, 0xbd, 0x6e, 0x9e, 0xe5, 0xfe, 0xe7, 0xa5, 0xfc, 0x9a, 0xa2, 0x22, 0x4d, 0x02, 0xbe,
0x05, 0x06, 0xb1, 0x1f, 0x7b, 0xe6, 0x39, 0x7e, 0x7c, 0x1f, 0x37, 0xfa, 0xd4, 0x7e, 0x59, 0xf1,
0x63, 0x0f, 0x71, 0xcd, 0xf0, 0x05, 0x70, 0xda, 0xb3, 0xf6, 0x59, 0x12, 0xc0, 0x24, 0x62, 0x17,
0xcd, 0x29, 0x3e, 0xef, 0x49, 0x56, 0xc4, 0xae, 0xe9, 0x0c, 0xd4, 0x2e, 0xc7, 0x07, 0x3a, 0xbe,
0x36, 0x70, 0x5a, 0x1b, 0xa8, 0x33, 0x50, 0xbb, 0x1c, 0x73, 0x32, 0xc1, 0xf7, 0x63, 0x87, 0x60,
0xdb, 0xfc, 0x3f, 0x5e, 0xf7, 0xca, 0xfe, 0xae, 0xa0, 0x21, 0xc5, 0x85, 0xf7, 0x93, 0x96, 0x83,
0xc9, 0x37, 0xdf, 0x46, 0xdf, 0x52, 0xf7, 0x3a, 0x59, 0x24, 0xc4, 0x3a, 0x10, 0xa7, 0x8a, 0xde,
0x6c, 0x80, 0x3e, 0xc8, 0x5b, 0xae, 0xbb, 0x5e, 0x37, 0xcf, 0x73, 0x8f, 0xf7, 0xf1, 0xb4, 0x50,
0x19, 0x66, 0x91, 0xe9, 0x47, 0x02, 0x86, 0xe1, 0x05, 0x3e, 0x8b, 0x85, 0x99, 0x13, 0xc3, 0x5b,
0x67, 0xfa, 0x91, 0x80, 0xe1, 0xf3, 0xf3, 0x0f, 0xd6, 0xeb, 0xe6, 0x63, 0x27, 0x37, 0x3f, 0xa6,
0x1f, 0x09, 0x18, 0x68, 0x83, 0x01, 0x3f, 0x88, 0xcc, 0x0b, 0xfd, 0x3e, 0x7b, 0xf9, 0x69, 0x72,
0x3b, 0x88, 0x10, 0x53, 0x0f, 0x7f, 0x64, 0x00, 0x10, 0xa6, 0x91, 0x78, 0xf1, 0xb8, 0x2d, 0x80,
0x0c, 0x5a, 0x39, 0x8d, 0xde, 0x15, 0x3f, 0x22, 0x07, 0xe9, 0xbd, 0x46, 0x8b, 0x72, 0xcd, 0x00,
0xf8, 0x73, 0x03, 0x9c, 0xd3, 0xcb, 0x5d, 0x65, 0xd9, 0x2c, 0xf7, 0xc3, 0x7a, 0x1f, 0x03, 0xb9,
0x12, 0x04, 0x6e, 0xc5, 0x6c, 0x35, 0x8b, 0xe7, 0x16, 0xbb, 0x00, 0xa2, 0xae, 0x66, 0xc0, 0x5f,
0x1b, 0x60, 0x52, 0x66, 0x47, 0xcd, 0xb8, 0x22, 0x77, 0xdb, 0x5b, 0x7d, 0x74, 0x5b, 0x16, 0x42,
0x78, 0x4f, 0x7d, 0x65, 0xec, 0xe0, 0xa3, 0x4e, 0xab, 0xe0, 0xef, 0x0c, 0x30, 0x66, 0xe3, 0x10,
0xfb, 0x36, 0xf6, 0x6b, 0xcc, 0xcc, 0xb9, 0xe3, 0xf6, 0x15, 0xb2, 0x66, 0x2e, 0x6b, 0xda, 0x85,
0x85, 0x65, 0x69, 0xe1, 0x98, 0xce, 0x3a, 0x6c, 0x16, 0xa7, 0xd3, 0xa1, 0x3a, 0x07, 0xb5, 0x19,
0x08, 0x7f, 0x6c, 0x80, 0xf1, 0xd4, 0xed, 0xe2, 0x80, 0xb8, 0x74, 0x32, 0x0b, 0xcf, 0x4b, 0xd0,
0xc5, 0x76, 0x2c, 0x94, 0x05, 0x87, 0xbf, 0x31, 0x58, 0xb5, 0x95, 0xdc, 0xd5, 0xa8, 0x59, 0xe2,
0x1e, 0x7c, 0xbd, 0x9f, 0x1e, 0x54, 0xca, 0x85, 0x03, 0xaf, 0xa6, 0x95, 0x9c, 0xe2, 0x1c, 0x36,
0x8b, 0x53, 0xba, 0xff, 0x14, 0x03, 0xe9, 0xc6, 0xc1, 0x77, 0x0d, 0x30, 0x86, 0xd3, 0x82, 0x99,
0x9a, 0x97, 0x8f, 0xeb, 0xba, 0xae, 0xe5, 0xb7, 0xb8, 0x4e, 0x6b, 0x2c, 0x8a, 0xda, 0x60, 0x59,
0xed, 0x87, 0xf7, 0x2d, 0x2f, 0x74, 0xb1, 0xf9, 0xff, 0xfd, 0xab, 0xfd, 0x56, 0x84, 0x4a, 0x94,
0xe8, 0x86, 0x57, 0x41, 0xc1, 0x8f, 0x5d, 0xd7, 0xda, 0x72, 0xb1, 0xf9, 0x38, 0xaf, 0x22, 0x54,
0x7f, 0xf1, 0xb6, 0xa4, 0x23, 0x25, 0x01, 0xeb, 0x60, 0x6e, 0xff, 0xa6, 0x7a, 0x7c, 0xd1, 0xb5,
0x81, 0x67, 0x5e, 0xe1, 0x5a, 0x66, 0x5a, 0xcd, 0xe2, 0xf4, 0x66, 0xf7, 0x16, 0xdf, 0x43, 0x75,
0xc0, 0x37, 0xc0, 0x63, 0x9a, 0xcc, 0x8a, 0xb7, 0x85, 0x6d, 0x1b, 0xdb, 0xc9, 0x45, 0xcb, 0xfc,
0x02, 0x87, 0x50, 0xfb, 0x78, 0x33, 0x2b, 0x80, 0x1e, 0x34, 0x1a, 0xde, 0x02, 0xd3, 0x1a, 0x7b,
0xd5, 0x8f, 0xd6, 0x49, 0x35, 0x22, 0x8e, 0xdf, 0x30, 0xe7, 0xb9, 0xde, 0x73, 0xc9, 0xee, 0xdb,
0xd4, 0x78, 0xa8, 0xc7, 0x18, 0xf8, 0x72, 0x9b, 0x36, 0xfe, 0xe1, 0xc2, 0x0a, 0x6f, 0xe2, 0x03,
0x6a, 0x3e, 0xc1, 0x8b, 0x0b, 0xbe, 0xce, 0x9b, 0x1a, 0x1d, 0xf5, 0x90, 0x87, 0xdf, 0x00, 0x67,
0x33, 0x1c, 0x76, 0xaf, 0x30, 0x9f, 0x14, 0x17, 0x04, 0x56, 0x89, 0x6e, 0x26, 0x44, 0xd4, 0x4d,
0x12, 0x7e, 0x15, 0x40, 0x8d, 0xbc, 0x66, 0x85, 0x7c, 0xfc, 0x53, 0xe2, 0xae, 0xc2, 0x56, 0x74,
0x53, 0xd2, 0x50, 0x17, 0x39, 0xf8, 0x81, 0xd1, 0x36, 0x93, 0xf4, 0x36, 0x4b, 0xcd, 0xab, 0x7c,
0xc3, 0xbe, 0x7c, 0xf4, 0x00, 0x4c, 0x95, 0xa1, 0xd8, 0xc5, 0x9a, 0x87, 0x35, 0x14, 0xd4, 0x03,
0x7d, 0x86, 0x5d, 0xa6, 0x33, 0x39, 0x1c, 0x4e, 0x80, 0x81, 0x1d, 0x2c, 0x3f, 0x1b, 0x23, 0xf6,
0x13, 0xbe, 0x09, 0xf2, 0xbb, 0x96, 0x1b, 0x27, 0xad, 0x80, 0xfe, 0x9d, 0xf5, 0x48, 0xe8, 0x7d,
0x31, 0x77, 0xdd, 0x98, 0x79, 0xdf, 0x00, 0xd3, 0xdd, 0x4f, 0x95, 0xcf, 0xcb, 0xa2, 0x9f, 0x19,
0x60, 0xb2, 0xe3, 0x00, 0xe9, 0x62, 0x8c, 0xdb, 0x6e, 0xcc, 0xbd, 0x3e, 0x9e, 0x04, 0x62, 0x23,
0xf0, 0x8a, 0x56, 0xb7, 0xec, 0x87, 0x06, 0x98, 0xc8, 0x26, 0xe6, 0xcf, 0xc9, 0x4b, 0xa5, 0xf7,
0x72, 0x60, 0xba, 0x7b, 0x0d, 0x0e, 0x3d, 0xd5, 0x5d, 0xe8, 0x7b, 0x83, 0xa6, 0x5b, 0xcb, 0xf6,
0x1d, 0x03, 0x8c, 0xbe, 0xad, 0xe4, 0x92, 0xaf, 0x99, 0xfd, 0xec, 0x0a, 0x25, 0x47, 0x5f, 0xca,
0xa0, 0x48, 0x87, 0x2c, 0xfd, 0xd6, 0x00, 0x53, 0x5d, 0x8f, 0x73, 0x78, 0x05, 0x0c, 0x59, 0xae,
0x1b, 0xec, 0x89, 0x6e, 0x9e, 0xd6, 0x96, 0x5f, 0xe4, 0x54, 0x24, 0xb9, 0x9a, 0xcf, 0x72, 0x9f,
0x81, 0xcf, 0x4a, 0x7f, 0x30, 0xc0, 0x85, 0x07, 0x45, 0xdd, 0x67, 0xbd, 0x86, 0xf3, 0xa0, 0x20,
0x8b, 0xed, 0x03, 0xbe, 0x7e, 0x32, 0xbb, 0xca, 0x8c, 0xc0, 0x5f, 0xcb, 0x88, 0x5f, 0xa5, 0x5f,
0x1a, 0x60, 0xa2, 0x8a, 0xc9, 0xae, 0x53, 0xc3, 0x08, 0xd7, 0x31, 0xc1, 0x7e, 0x0d, 0xc3, 0x05,
0x30, 0xc2, 0xbf, 0x36, 0x86, 0x56, 0x2d, 0xf9, 0x46, 0x32, 0x29, 0x1d, 0x3d, 0x72, 0x3b, 0x61,
0xa0, 0x54, 0x46, 0x7d, 0x4f, 0xc9, 0xf5, 0xfc, 0x9e, 0x72, 0x01, 0x0c, 0x86, 0x69, 0x03, 0xb8,
0xc0, 0xb8, 0xbc, 0xe7, 0xcb, 0xa9, 0x9c, 0x1b, 0x90, 0x88, 0x77, 0xb9, 0xf2, 0x92, 0x1b, 0x90,
0x08, 0x71, 0x6a, 0xe9, 0x4f, 0x39, 0x70, 0xa6, 0x3d, 0x3f, 0x33, 0x40, 0x12, 0xbb, 0x1d, 0x1f,
0x70, 0x18, 0x0f, 0x71, 0x8e, 0xfe, 0x6e, 0x20, 0xf7, 0xe0, 0x77, 0x03, 0xf0, 0x25, 0x30, 0x29,
0x7f, 0xae, 0xec, 0x87, 0x04, 0x53, 0xfe, 0x65, 0x72, 0xa0, 0xfd, 0xbd, 0xdf, 0x5a, 0x56, 0x00,
0x75, 0x8e, 0x81, 0x5f, 0xc9, 0xbc, 0x69, 0xb8, 0x9c, 0xbe, 0x67, 0x60, 0xb5, 0x1d, 0x2f, 0x1d,
0xee, 0xb1, 0x2d, 0xbf, 0x42, 0x48, 0x40, 0x32, 0x0f, 0x1d, 0x16, 0xc0, 0x48, 0x9d, 0x09, 0xf0,
0x3e, 0x79, 0xbe, 0xdd, 0xe9, 0x37, 0x12, 0x06, 0x4a, 0x65, 0xe0, 0xd7, 0xc0, 0x78, 0x10, 0x8a,
0x2a, 0x76, 0xdd, 0xb5, 0xab, 0xd8, 0xad, 0xf3, 0x8e, 0x5e, 0x21, 0x69, 0xbb, 0xb6, 0xb1, 0x50,
0x56, 0xb6, 0xf4, 0x47, 0x03, 0x9c, 0x4d, 0x1e, 0x13, 0xb9, 0x0e, 0xf6, 0xa3, 0xa5, 0xc0, 0xaf,
0x3b, 0x0d, 0x78, 0x5e, 0xb4, 0x4f, 0xb5, 0x9e, 0x64, 0xd2, 0x3a, 0x85, 0xf7, 0xc1, 0x30, 0x15,
0xb1, 0x22, 0xc3, 0xf8, 0x95, 0xa3, 0x87, 0x71, 0x36, 0xe8, 0x44, 0xf5, 0x97, 0x50, 0x13, 0x1c,
0x16, 0xc9, 0x35, 0xab, 0x12, 0xfb, 0xb6, 0x6c, 0xa1, 0x8f, 0x89, 0x48, 0x5e, 0x5a, 0x14, 0x34,
0xa4, 0xb8, 0xa5, 0x7f, 0x18, 0x60, 0xb2, 0xe3, 0x71, 0x14, 0xfc, 0x9e, 0x01, 0xc6, 0x6a, 0xda,
0xf4, 0x64, 0x3e, 0x58, 0x3b, 0xfe, 0x03, 0x2c, 0x4d, 0xa9, 0x28, 0xa1, 0x74, 0x0a, 0x6a, 0x03,
0x85, 0x9b, 0xc0, 0xac, 0x65, 0xde, 0x21, 0x66, 0xbe, 0x6c, 0x5e, 0x68, 0x35, 0x8b, 0xe6, 0x52,
0x0f, 0x19, 0xd4, 0x73, 0x74, 0xe5, 0x5b, 0x1f, 0x7d, 0x3a, 0x7b, 0xea, 0xe3, 0x4f, 0x67, 0x4f,
0x7d, 0xf2, 0xe9, 0xec, 0xa9, 0x77, 0x5a, 0xb3, 0xc6, 0x47, 0xad, 0x59, 0xe3, 0xe3, 0xd6, 0xac,
0xf1, 0x49, 0x6b, 0xd6, 0xf8, 0x6b, 0x6b, 0xd6, 0xf8, 0xc9, 0xdf, 0x66, 0x4f, 0xbd, 0x7e, 0xfd,
0xa8, 0xaf, 0x8f, 0xff, 0x17, 0x00, 0x00, 0xff, 0xff, 0x28, 0x77, 0xf5, 0x22, 0xd1, 0x2c, 0x00,
0x00,
// 3177 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0xdb, 0x6f, 0x1b, 0xc7,
0xd5, 0xf7, 0x52, 0x37, 0x6a, 0x24, 0x59, 0xd2, 0xd8, 0xd2, 0xb7, 0x56, 0x6c, 0x51, 0xa6, 0xbf,
0xf8, 0x53, 0x12, 0x87, 0x4a, 0xf4, 0x25, 0x8d, 0x9b, 0x5e, 0x02, 0x51, 0x92, 0x13, 0xc5, 0x92,
0x25, 0x0c, 0x6d, 0x47, 0x49, 0x8a, 0x26, 0x2b, 0xee, 0x90, 0xda, 0x68, 0xb9, 0xbb, 0x9e, 0xd9,
0xd5, 0x05, 0x68, 0x81, 0xa0, 0x45, 0xd0, 0x36, 0x40, 0x9b, 0x3e, 0x14, 0xe9, 0x53, 0x51, 0x14,
0x45, 0x1e, 0xda, 0x87, 0xf6, 0xad, 0xfd, 0x17, 0xf2, 0x52, 0x20, 0x40, 0x81, 0x22, 0x40, 0x01,
0xa2, 0x61, 0xff, 0x81, 0x02, 0x6d, 0x51, 0x54, 0x0f, 0x45, 0x31, 0x97, 0x9d, 0x9d, 0x5d, 0x92,
0xb6, 0x61, 0x51, 0xc9, 0x1b, 0x79, 0xce, 0x99, 0xf3, 0x3b, 0x73, 0xe6, 0xcc, 0x99, 0x33, 0x67,
0x07, 0x58, 0x7b, 0xd7, 0x69, 0xc9, 0xf1, 0x17, 0xf6, 0xa2, 0x1d, 0x4c, 0x3c, 0x1c, 0x62, 0xba,
0xb0, 0x8f, 0x3d, 0xdb, 0x27, 0x0b, 0x92, 0x61, 0x05, 0x0e, 0x3e, 0x0c, 0xb1, 0x47, 0x1d, 0xdf,
0xa3, 0x4f, 0x5b, 0x81, 0x43, 0x31, 0xd9, 0xc7, 0x64, 0x21, 0xd8, 0xab, 0x33, 0x1e, 0x4d, 0x0b,
0x2c, 0xec, 0x3f, 0xbb, 0x50, 0xc7, 0x1e, 0x26, 0x56, 0x88, 0xed, 0x52, 0x40, 0xfc, 0xd0, 0x87,
0xd7, 0x85, 0xa6, 0x52, 0x4a, 0xf0, 0x2d, 0xa5, 0xa9, 0x14, 0xec, 0xd5, 0x19, 0x8f, 0xa6, 0x05,
0x4a, 0xfb, 0xcf, 0xce, 0x3c, 0x5d, 0x77, 0xc2, 0xdd, 0x68, 0xa7, 0x54, 0xf5, 0x1b, 0x0b, 0x75,
0xbf, 0xee, 0x2f, 0x70, 0x85, 0x3b, 0x51, 0x8d, 0xff, 0xe3, 0x7f, 0xf8, 0x2f, 0x01, 0x34, 0xf3,
0x5c, 0x62, 0x72, 0xc3, 0xaa, 0xee, 0x3a, 0x1e, 0x26, 0x47, 0x89, 0x9d, 0x0d, 0x1c, 0x5a, 0x1d,
0xcc, 0x9b, 0x59, 0xe8, 0x36, 0x8a, 0x44, 0x5e, 0xe8, 0x34, 0x70, 0xdb, 0x80, 0x2f, 0x3d, 0x68,
0x00, 0xad, 0xee, 0xe2, 0x86, 0x95, 0x1d, 0x57, 0x3c, 0x36, 0xc0, 0xe4, 0xb2, 0xef, 0xed, 0x63,
0xc2, 0x26, 0x88, 0xf0, 0xbd, 0x08, 0xd3, 0x10, 0x96, 0x41, 0x5f, 0xe4, 0xd8, 0xa6, 0x31, 0x67,
0xcc, 0x0f, 0x97, 0x9f, 0xf9, 0xb8, 0x59, 0x38, 0xd3, 0x6a, 0x16, 0xfa, 0xee, 0xac, 0xad, 0x1c,
0x37, 0x0b, 0x97, 0xbb, 0x21, 0x85, 0x47, 0x01, 0xa6, 0xa5, 0x3b, 0x6b, 0x2b, 0x88, 0x0d, 0x86,
0x2f, 0x83, 0x49, 0x1b, 0x53, 0x87, 0x60, 0x7b, 0x69, 0x6b, 0xed, 0xae, 0xd0, 0x6f, 0xe6, 0xb8,
0xc6, 0x0b, 0x52, 0xe3, 0xe4, 0x4a, 0x56, 0x00, 0xb5, 0x8f, 0x81, 0xdb, 0x60, 0xc8, 0xdf, 0x79,
0x07, 0x57, 0x43, 0x6a, 0xf6, 0xcd, 0xf5, 0xcd, 0x8f, 0x2c, 0x3e, 0x5d, 0x4a, 0x16, 0x4f, 0x99,
0xc0, 0x57, 0x4c, 0x4e, 0xb6, 0x84, 0xac, 0x83, 0xd5, 0x78, 0xd1, 0xca, 0xe3, 0x12, 0x6d, 0x68,
0x53, 0x68, 0x41, 0xb1, 0xba, 0xe2, 0x2f, 0x73, 0x00, 0xea, 0x93, 0xa7, 0x81, 0xef, 0x51, 0xdc,
0x93, 0xd9, 0x53, 0x30, 0x51, 0xe5, 0x9a, 0x43, 0x6c, 0x4b, 0x5c, 0x33, 0xf7, 0x28, 0xd6, 0x9b,
0x12, 0x7f, 0x62, 0x39, 0xa3, 0x0e, 0xb5, 0x01, 0xc0, 0xdb, 0x60, 0x90, 0x60, 0x1a, 0xb9, 0xa1,
0xd9, 0x37, 0x67, 0xcc, 0x8f, 0x2c, 0x5e, 0xeb, 0x0a, 0xc5, 0x43, 0x9b, 0x05, 0x5f, 0x69, 0xff,
0xd9, 0x52, 0x25, 0xb4, 0xc2, 0x88, 0x96, 0xcf, 0x4a, 0xa4, 0x41, 0xc4, 0x75, 0x20, 0xa9, 0xab,
0xf8, 0x1f, 0x03, 0x4c, 0xe8, 0x5e, 0xda, 0x77, 0xf0, 0x01, 0x24, 0x60, 0x88, 0x88, 0x60, 0xe1,
0x7e, 0x1a, 0x59, 0xbc, 0x59, 0x7a, 0xd4, 0x1d, 0x55, 0x6a, 0x8b, 0xbf, 0xf2, 0x08, 0x5b, 0x2e,
0xf9, 0x07, 0xc5, 0x40, 0x70, 0x1f, 0xe4, 0x89, 0x5c, 0x23, 0x1e, 0x48, 0x23, 0x8b, 0xeb, 0xbd,
0x01, 0x15, 0x3a, 0xcb, 0xa3, 0xad, 0x66, 0x21, 0x1f, 0xff, 0x43, 0x0a, 0xab, 0xf8, 0xf3, 0x1c,
0x98, 0x5d, 0x8e, 0x68, 0xe8, 0x37, 0x10, 0xa6, 0x7e, 0x44, 0xaa, 0x78, 0xd9, 0x77, 0xa3, 0x86,
0xb7, 0x82, 0x6b, 0x8e, 0xe7, 0x84, 0x2c, 0x46, 0xe7, 0x40, 0xbf, 0x67, 0x35, 0xb0, 0x8c, 0x99,
0x51, 0xe9, 0xc9, 0xfe, 0x5b, 0x56, 0x03, 0x23, 0xce, 0x61, 0x12, 0x2c, 0x44, 0xe4, 0x0e, 0x50,
0x12, 0xb7, 0x8f, 0x02, 0x8c, 0x38, 0x07, 0x5e, 0x05, 0x83, 0x35, 0x9f, 0x34, 0x2c, 0xb1, 0x7a,
0xc3, 0xc9, 0x7a, 0xdc, 0xe0, 0x54, 0x24, 0xb9, 0xf0, 0x79, 0x30, 0x62, 0x63, 0x5a, 0x25, 0x4e,
0xc0, 0xa0, 0xcd, 0x7e, 0x2e, 0x7c, 0x4e, 0x0a, 0x8f, 0xac, 0x24, 0x2c, 0xa4, 0xcb, 0xc1, 0x6b,
0x20, 0x1f, 0x10, 0xc7, 0x27, 0x4e, 0x78, 0x64, 0x0e, 0xcc, 0x19, 0xf3, 0x03, 0xe5, 0x09, 0x39,
0x26, 0xbf, 0x25, 0xe9, 0x48, 0x49, 0x30, 0xe9, 0x77, 0xa8, 0xef, 0x6d, 0x59, 0xe1, 0xae, 0x39,
0xc8, 0x11, 0x94, 0xf4, 0xab, 0x95, 0xcd, 0x5b, 0x8c, 0x8e, 0x94, 0x44, 0xf1, 0x4f, 0x06, 0x30,
0xb3, 0x1e, 0x8a, 0xdd, 0x0b, 0x6f, 0x80, 0x3c, 0x0d, 0x59, 0xce, 0xa9, 0x1f, 0x49, 0xff, 0x3c,
0x19, 0xab, 0xaa, 0x48, 0xfa, 0x71, 0xb3, 0x30, 0x9d, 0x8c, 0x88, 0xa9, 0xdc, 0x37, 0x6a, 0x2c,
0x0b, 0xb9, 0x03, 0xbc, 0xb3, 0xeb, 0xfb, 0x7b, 0x72, 0xf5, 0x4f, 0x10, 0x72, 0xaf, 0x09, 0x45,
0x09, 0xa6, 0x08, 0x39, 0x49, 0x46, 0x31, 0x50, 0xf1, 0xdf, 0xb9, 0xec, 0xc4, 0xb4, 0x45, 0x7f,
0x1b, 0xe4, 0xd9, 0x16, 0xb2, 0xad, 0xd0, 0x92, 0x9b, 0xe0, 0x99, 0x87, 0xdb, 0x70, 0x62, 0xbf,
0x6e, 0xe0, 0xd0, 0x2a, 0x43, 0xe9, 0x0a, 0x90, 0xd0, 0x90, 0xd2, 0x0a, 0x0f, 0x41, 0x3f, 0x0d,
0x70, 0x55, 0xce, 0xf7, 0xee, 0x09, 0xa2, 0xbd, 0xcb, 0x1c, 0x2a, 0x01, 0xae, 0x26, 0xc1, 0xc8,
0xfe, 0x21, 0x8e, 0x08, 0xdf, 0x35, 0xc0, 0x20, 0xe5, 0x79, 0x41, 0xe6, 0x92, 0xed, 0x53, 0x00,
0xcf, 0xe4, 0x1d, 0xf1, 0x1f, 0x49, 0xdc, 0xe2, 0x3f, 0x72, 0xe0, 0x72, 0xb7, 0xa1, 0xcb, 0xbe,
0x67, 0x8b, 0x45, 0x58, 0x93, 0xfb, 0x4a, 0x44, 0xd6, 0xf3, 0xfa, 0xbe, 0x3a, 0x6e, 0x16, 0x1e,
0x7f, 0xa0, 0x02, 0x6d, 0x03, 0x7e, 0x59, 0x4d, 0x59, 0x6c, 0xd2, 0xcb, 0x69, 0xc3, 0x8e, 0x9b,
0x85, 0x71, 0x35, 0x2c, 0x6d, 0x2b, 0xdc, 0x07, 0xd0, 0xb5, 0x68, 0x78, 0x9b, 0x58, 0x1e, 0x15,
0x6a, 0x9d, 0x06, 0x96, 0x9e, 0x7b, 0xf2, 0xe1, 0x82, 0x82, 0x8d, 0x28, 0xcf, 0x48, 0x48, 0xb8,
0xde, 0xa6, 0x0d, 0x75, 0x40, 0x60, 0x39, 0x83, 0x60, 0x8b, 0xaa, 0x34, 0xa0, 0xe5, 0x70, 0x46,
0x45, 0x92, 0x0b, 0x9f, 0x00, 0x43, 0x0d, 0x4c, 0xa9, 0x55, 0xc7, 0x7c, 0xef, 0x0f, 0x27, 0x87,
0xe2, 0x86, 0x20, 0xa3, 0x98, 0x5f, 0xfc, 0xa7, 0x01, 0x2e, 0x76, 0xf3, 0xda, 0xba, 0x43, 0x43,
0xf8, 0x8d, 0xb6, 0xb0, 0x2f, 0x3d, 0xdc, 0x0c, 0xd9, 0x68, 0x1e, 0xf4, 0x2a, 0x95, 0xc4, 0x14,
0x2d, 0xe4, 0x0f, 0xc0, 0x80, 0x13, 0xe2, 0x46, 0x7c, 0x5a, 0xa2, 0xde, 0x87, 0x5d, 0x79, 0x4c,
0xc2, 0x0f, 0xac, 0x31, 0x20, 0x24, 0xf0, 0x8a, 0x1f, 0xe5, 0xc0, 0xa5, 0x6e, 0x43, 0x58, 0x1e,
0xa7, 0xcc, 0xd9, 0x81, 0x1b, 0x11, 0xcb, 0x95, 0xc1, 0xa6, 0x9c, 0xbd, 0xc5, 0xa9, 0x48, 0x72,
0x59, 0xee, 0xa4, 0x8e, 0x57, 0x8f, 0x5c, 0x8b, 0xc8, 0x48, 0x52, 0x13, 0xae, 0x48, 0x3a, 0x52,
0x12, 0xb0, 0x04, 0x00, 0xdd, 0xf5, 0x49, 0xc8, 0x31, 0x78, 0x85, 0x33, 0x5c, 0x3e, 0xcb, 0x32,
0x42, 0x45, 0x51, 0x91, 0x26, 0xc1, 0x0e, 0x92, 0x3d, 0xc7, 0xb3, 0xe5, 0x82, 0xab, 0xbd, 0x7b,
0xd3, 0xf1, 0x6c, 0xc4, 0x39, 0x0c, 0xdf, 0x75, 0x68, 0xc8, 0x28, 0x72, 0xb5, 0x53, 0x0e, 0xe7,
0x92, 0x4a, 0x82, 0xe1, 0x57, 0x59, 0x82, 0xf5, 0x89, 0x83, 0xa9, 0x39, 0x98, 0xe0, 0x2f, 0x2b,
0x2a, 0xd2, 0x24, 0x8a, 0x7f, 0xee, 0xef, 0x1e, 0x1f, 0x2c, 0x81, 0xc0, 0x2b, 0x60, 0xa0, 0x4e,
0xfc, 0x28, 0x90, 0x5e, 0x52, 0xde, 0x7e, 0x99, 0x11, 0x91, 0xe0, 0xc1, 0x6f, 0x81, 0x01, 0x4f,
0x4e, 0x98, 0x45, 0xd0, 0x6b, 0xbd, 0x5f, 0x66, 0xee, 0xad, 0x04, 0x5d, 0x38, 0x52, 0x80, 0xc2,
0xe7, 0xc0, 0x00, 0xad, 0xfa, 0x01, 0x96, 0x4e, 0x9c, 0x8d, 0x85, 0x2a, 0x8c, 0x78, 0xdc, 0x2c,
0x8c, 0xc5, 0xea, 0x38, 0x01, 0x09, 0x61, 0xf8, 0x3d, 0x03, 0xe4, 0xe5, 0x71, 0x41, 0xcd, 0x21,
0x1e, 0x9e, 0xaf, 0xf7, 0xde, 0x6e, 0x59, 0xf6, 0x26, 0x6b, 0x26, 0x09, 0x14, 0x29, 0x70, 0xf8,
0x1d, 0x03, 0x80, 0xaa, 0x3a, 0xbb, 0xcc, 0x61, 0xee, 0xc3, 0x9e, 0x6d, 0x15, 0xed, 0x54, 0x14,
0x81, 0x90, 0x94, 0x4a, 0x1a, 0x2a, 0xac, 0x80, 0xa9, 0x80, 0x60, 0xae, 0xfb, 0x8e, 0xb7, 0xe7,
0xf9, 0x07, 0xde, 0x0d, 0x07, 0xbb, 0x36, 0x35, 0xc1, 0x9c, 0x31, 0x9f, 0x2f, 0x5f, 0x92, 0xf6,
0x4f, 0x6d, 0x75, 0x12, 0x42, 0x9d, 0xc7, 0x16, 0xdf, 0xeb, 0xcb, 0xd6, 0x5a, 0xd9, 0xf3, 0x02,
0x7e, 0x20, 0x26, 0x2f, 0xf2, 0x30, 0x35, 0x0d, 0xbe, 0x10, 0x6f, 0xf6, 0x7e, 0x21, 0x54, 0xae,
0x4f, 0x0e, 0x69, 0x45, 0xa2, 0x48, 0x33, 0x01, 0xfe, 0xc4, 0x00, 0x63, 0x56, 0xb5, 0x8a, 0x83,
0x10, 0xdb, 0x62, 0x1b, 0xe7, 0x4e, 0x37, 0xaa, 0xa7, 0xa4, 0x41, 0x63, 0x4b, 0x3a, 0x2a, 0x4a,
0x1b, 0x01, 0x5f, 0x04, 0x67, 0x69, 0xe8, 0x13, 0x6c, 0xc7, 0x11, 0x24, 0xb3, 0x0b, 0x6c, 0x35,
0x0b, 0x67, 0x2b, 0x29, 0x0e, 0xca, 0x48, 0x16, 0x5b, 0x83, 0xa0, 0xf0, 0x80, 0x08, 0x7d, 0x88,
0xa2, 0xf7, 0x2a, 0x18, 0xe4, 0x33, 0xb5, 0xb9, 0x43, 0xf2, 0xda, 0x51, 0xcf, 0xa9, 0x48, 0x72,
0xd9, 0xf1, 0xc4, 0xf0, 0xd9, 0xf1, 0xd4, 0xc7, 0x05, 0xd5, 0xf1, 0x54, 0x11, 0x64, 0x14, 0xf3,
0xe1, 0x22, 0x00, 0x36, 0x0e, 0x08, 0x66, 0x19, 0xc9, 0x36, 0x87, 0xb8, 0xb4, 0x5a, 0x9f, 0x15,
0xc5, 0x41, 0x9a, 0x14, 0xbc, 0x01, 0x60, 0xfc, 0xcf, 0xf1, 0xbd, 0xd7, 0x2c, 0xe2, 0x39, 0x5e,
0xdd, 0xcc, 0x73, 0xb3, 0xa7, 0xd9, 0x69, 0xbb, 0xd2, 0xc6, 0x45, 0x1d, 0x46, 0xc0, 0x7d, 0x30,
0x28, 0xae, 0xd1, 0x3c, 0x6f, 0xf4, 0x70, 0xc7, 0xdd, 0xb5, 0x5c, 0xc7, 0xe6, 0x50, 0x65, 0xc0,
0xdd, 0xc3, 0x51, 0x90, 0x44, 0x83, 0xef, 0x1b, 0x60, 0x94, 0x46, 0x3b, 0x44, 0x4a, 0x53, 0x9e,
0xd5, 0x47, 0x16, 0x6f, 0xf7, 0x0a, 0xbe, 0xa2, 0xe9, 0x2e, 0x4f, 0xb4, 0x9a, 0x85, 0x51, 0x9d,
0x82, 0x52, 0xd8, 0xf0, 0x77, 0x06, 0x30, 0x2d, 0x5b, 0x84, 0xbe, 0xe5, 0x6e, 0x11, 0xc7, 0x0b,
0x31, 0x11, 0x17, 0x22, 0x71, 0x7c, 0xf4, 0xb0, 0x56, 0xcc, 0xde, 0xb3, 0xca, 0x73, 0x72, 0xa5,
0xcd, 0xa5, 0x2e, 0x16, 0xa0, 0xae, 0xb6, 0xb1, 0xbc, 0x31, 0x41, 0xb1, 0x8b, 0xab, 0xa1, 0xb5,
0xe3, 0x62, 0x99, 0xab, 0x86, 0xb9, 0xc1, 0x6b, 0x8f, 0x6e, 0x70, 0x25, 0xad, 0x31, 0xb9, 0xaf,
0x67, 0x18, 0x14, 0xb5, 0x81, 0x17, 0xff, 0x65, 0x64, 0x93, 0x9d, 0xe6, 0xf7, 0x4a, 0xd5, 0x72,
0x31, 0x5c, 0x01, 0x13, 0xac, 0x1e, 0x47, 0x38, 0x70, 0x9d, 0xaa, 0x45, 0xf9, 0x7d, 0x4c, 0xec,
0xb7, 0x04, 0x28, 0xc3, 0x47, 0x6d, 0x23, 0xe0, 0xab, 0x00, 0x8a, 0x42, 0x35, 0xa5, 0x47, 0xd4,
0x26, 0xaa, 0xe4, 0xac, 0xb4, 0x49, 0xa0, 0x0e, 0xa3, 0xe0, 0x32, 0x98, 0x74, 0xad, 0x1d, 0xec,
0x8a, 0xf9, 0xf9, 0x84, 0xab, 0x12, 0x37, 0xd6, 0xa9, 0x56, 0xb3, 0x30, 0xb9, 0x9e, 0x65, 0xa2,
0x76, 0xf9, 0xe2, 0xe5, 0x6c, 0x76, 0xd1, 0x27, 0x2e, 0xca, 0xff, 0x0f, 0x73, 0x60, 0xa6, 0x7b,
0x98, 0xc2, 0x6f, 0xab, 0x62, 0x5d, 0xd4, 0xa0, 0xaf, 0x9f, 0xc2, 0x66, 0x90, 0x17, 0x14, 0xd0,
0x7e, 0x39, 0x81, 0x47, 0xac, 0x82, 0xb0, 0xdc, 0xb8, 0x11, 0xb1, 0x7d, 0x1a, 0xe8, 0x4c, 0x7f,
0x79, 0x58, 0xd4, 0x25, 0x96, 0xcb, 0xcb, 0x10, 0xcb, 0xc5, 0xc5, 0x8f, 0xda, 0x2e, 0xdb, 0x49,
0xfa, 0x80, 0xdf, 0x37, 0xc0, 0xb8, 0x1f, 0x60, 0x6f, 0x69, 0x6b, 0xed, 0xee, 0xff, 0x8b, 0x34,
0x22, 0x1d, 0x74, 0x82, 0x18, 0x67, 0x37, 0x7e, 0xa1, 0x6b, 0x8b, 0xf8, 0x01, 0x2d, 0x9f, 0x6b,
0x35, 0x0b, 0xe3, 0x9b, 0x69, 0x14, 0x94, 0x85, 0x2d, 0x36, 0xc0, 0xd4, 0xea, 0x61, 0x88, 0x89,
0x67, 0xb9, 0x2b, 0x7e, 0x35, 0x6a, 0x60, 0x2f, 0x14, 0x36, 0x66, 0x1a, 0x18, 0xc6, 0x43, 0x36,
0x30, 0x2e, 0x81, 0xbe, 0x88, 0xb8, 0x32, 0x6a, 0x47, 0x54, 0x5b, 0x0e, 0xad, 0x23, 0x46, 0x2f,
0x5e, 0x06, 0xfd, 0xcc, 0x4e, 0x78, 0x01, 0xf4, 0x11, 0xeb, 0x80, 0x6b, 0x1d, 0x2d, 0x0f, 0x31,
0x11, 0x64, 0x1d, 0x20, 0x46, 0x2b, 0xfe, 0x6d, 0x0e, 0x8c, 0x67, 0xe6, 0x02, 0x67, 0x40, 0x4e,
0xf5, 0xfa, 0x80, 0x54, 0x9a, 0x5b, 0x5b, 0x41, 0x39, 0xc7, 0x86, 0x2f, 0xa8, 0x7c, 0x2f, 0x40,
0x0b, 0xea, 0xf8, 0xe2, 0x54, 0x56, 0x28, 0x26, 0xea, 0x98, 0x21, 0x71, 0xc2, 0x66, 0x36, 0xe0,
0x9a, 0xdc, 0x15, 0xc2, 0x06, 0x5c, 0x43, 0x8c, 0xf6, 0xa8, 0xdd, 0x9b, 0xb8, 0x7d, 0x34, 0xf0,
0x10, 0xed, 0xa3, 0xc1, 0xfb, 0xb6, 0x8f, 0xae, 0x80, 0x81, 0xd0, 0x09, 0x5d, 0xcc, 0xcf, 0x4e,
0xad, 0x3c, 0xbf, 0xcd, 0x88, 0x48, 0xf0, 0x20, 0x06, 0x43, 0x36, 0xae, 0x59, 0x91, 0x1b, 0xf2,
0x63, 0x72, 0x64, 0xf1, 0xeb, 0x27, 0x8b, 0x1e, 0xd1, 0x5e, 0x59, 0x11, 0x2a, 0x51, 0xac, 0x1b,
0x3e, 0x0e, 0x86, 0x1a, 0xd6, 0xa1, 0xd3, 0x88, 0x1a, 0xbc, 0x86, 0x35, 0x84, 0xd8, 0x86, 0x20,
0xa1, 0x98, 0xc7, 0x92, 0x20, 0x3e, 0xac, 0xba, 0x11, 0x75, 0xf6, 0xb1, 0x64, 0xca, 0x22, 0x53,
0x25, 0xc1, 0xd5, 0x0c, 0x1f, 0xb5, 0x8d, 0xe0, 0x60, 0x8e, 0xc7, 0x07, 0x8f, 0x68, 0x60, 0x82,
0x84, 0x62, 0x5e, 0x1a, 0x4c, 0xca, 0x8f, 0x76, 0x03, 0x93, 0x83, 0xdb, 0x46, 0xc0, 0xa7, 0xc0,
0x70, 0xc3, 0x3a, 0x5c, 0xc7, 0x5e, 0x3d, 0xdc, 0x35, 0xc7, 0xe6, 0x8c, 0xf9, 0xbe, 0xf2, 0x58,
0xab, 0x59, 0x18, 0xde, 0x88, 0x89, 0x28, 0xe1, 0x73, 0x61, 0xc7, 0x93, 0xc2, 0x67, 0x35, 0xe1,
0x98, 0x88, 0x12, 0x3e, 0xab, 0x95, 0x02, 0x2b, 0x64, 0xfb, 0xca, 0x1c, 0x4f, 0x5f, 0xe5, 0xb7,
0x04, 0x19, 0xc5, 0x7c, 0x38, 0x0f, 0xf2, 0x0d, 0xeb, 0x90, 0xdf, 0x72, 0xcd, 0x09, 0xae, 0x96,
0xb7, 0x38, 0x37, 0x24, 0x0d, 0x29, 0x2e, 0x97, 0x74, 0x3c, 0x21, 0x39, 0xa9, 0x49, 0x4a, 0x1a,
0x52, 0x5c, 0x16, 0xbf, 0x91, 0xe7, 0xdc, 0x8b, 0xb0, 0x10, 0x86, 0xdc, 0x33, 0x2a, 0x7e, 0xef,
0x24, 0x2c, 0xa4, 0xcb, 0xb1, 0x5b, 0x66, 0x23, 0x72, 0x43, 0x27, 0x70, 0xf1, 0x66, 0xcd, 0x3c,
0xc7, 0xfd, 0xcf, 0x2f, 0x17, 0x1b, 0x8a, 0x8a, 0x34, 0x09, 0xf8, 0x36, 0xe8, 0xc7, 0x5e, 0xd4,
0x30, 0xcf, 0xf3, 0xf3, 0xf9, 0xa4, 0xd1, 0xa7, 0xf6, 0xcb, 0xaa, 0x17, 0x35, 0x10, 0xd7, 0x0c,
0x5f, 0x00, 0x63, 0x0d, 0xeb, 0x90, 0x25, 0x01, 0x4c, 0x42, 0x76, 0xf5, 0x9d, 0xe2, 0xf3, 0x9e,
0x64, 0x65, 0xf5, 0x86, 0xce, 0x40, 0x69, 0x39, 0x3e, 0xd0, 0xf1, 0xb4, 0x81, 0xd3, 0xda, 0x40,
0x9d, 0x81, 0xd2, 0x72, 0xcc, 0xc9, 0x04, 0xdf, 0x8b, 0x1c, 0x82, 0x6d, 0xf3, 0x7f, 0x78, 0x25,
0x2e, 0x3b, 0xce, 0x82, 0x86, 0x14, 0x17, 0xde, 0x8b, 0x9b, 0x20, 0x26, 0xdf, 0x7c, 0x5b, 0x3d,
0x4b, 0xdd, 0x9b, 0x64, 0x89, 0x10, 0xeb, 0x48, 0x9c, 0x2a, 0x7a, 0xfb, 0x03, 0x7a, 0x60, 0xc0,
0x72, 0xdd, 0xcd, 0x9a, 0x79, 0xe1, 0xa4, 0x15, 0x51, 0xf6, 0xb4, 0x50, 0x19, 0x66, 0x89, 0xe9,
0x47, 0x02, 0x86, 0xe1, 0xf9, 0x1e, 0x8b, 0x85, 0x99, 0x53, 0xc3, 0xdb, 0x64, 0xfa, 0x91, 0x80,
0xe1, 0xf3, 0xf3, 0x8e, 0x36, 0x6b, 0xe6, 0x63, 0xa7, 0x37, 0x3f, 0xa6, 0x1f, 0x09, 0x18, 0x68,
0x83, 0x3e, 0xcf, 0x0f, 0xcd, 0x8b, 0xbd, 0x3e, 0x7b, 0xf9, 0x69, 0x72, 0xcb, 0x0f, 0x11, 0x53,
0x0f, 0x7f, 0x68, 0x00, 0x10, 0x24, 0x91, 0x78, 0xe9, 0xa4, 0x4d, 0x89, 0x0c, 0x5a, 0x29, 0x89,
0xde, 0x55, 0x2f, 0x24, 0x47, 0xc9, 0x4d, 0x4b, 0x8b, 0x72, 0xcd, 0x00, 0xf8, 0x33, 0x03, 0x9c,
0xd7, 0x0b, 0x70, 0x65, 0xd9, 0x2c, 0xf7, 0xc3, 0x66, 0x0f, 0x03, 0xb9, 0xec, 0xfb, 0x6e, 0xd9,
0x6c, 0x35, 0x0b, 0xe7, 0x97, 0x3a, 0x00, 0xa2, 0x8e, 0x66, 0xc0, 0x5f, 0x19, 0x60, 0x52, 0x66,
0x47, 0xcd, 0xb8, 0x02, 0x77, 0xdb, 0xdb, 0x3d, 0x74, 0x5b, 0x16, 0x42, 0x78, 0x4f, 0x7d, 0xf7,
0x6c, 0xe3, 0xa3, 0x76, 0xab, 0xe0, 0x6f, 0x0d, 0x30, 0x6a, 0xe3, 0x00, 0x7b, 0x36, 0xf6, 0xaa,
0xcc, 0xcc, 0xb9, 0x93, 0x76, 0x3a, 0xb2, 0x66, 0xae, 0x68, 0xda, 0x85, 0x85, 0x25, 0x69, 0xe1,
0xa8, 0xce, 0x3a, 0x6e, 0x16, 0xa6, 0x93, 0xa1, 0x3a, 0x07, 0xa5, 0x0c, 0x84, 0x3f, 0x32, 0xc0,
0x78, 0xe2, 0x76, 0x71, 0x40, 0x5c, 0x3e, 0x9d, 0x85, 0xe7, 0x25, 0xe8, 0x52, 0x1a, 0x0b, 0x65,
0xc1, 0xe1, 0xaf, 0x0d, 0x56, 0x6d, 0xc5, 0xb7, 0x47, 0x6a, 0x16, 0xb9, 0x07, 0xdf, 0xe8, 0xa5,
0x07, 0x95, 0x72, 0xe1, 0xc0, 0x6b, 0x49, 0x25, 0xa7, 0x38, 0xc7, 0xcd, 0xc2, 0x94, 0xee, 0x3f,
0xc5, 0x40, 0xba, 0x71, 0xf0, 0x3d, 0x03, 0x8c, 0xe2, 0xa4, 0x60, 0xa6, 0xe6, 0x95, 0x93, 0xba,
0xae, 0x63, 0xf9, 0x2d, 0x2e, 0xf8, 0x1a, 0x8b, 0xa2, 0x14, 0x2c, 0xab, 0xfd, 0xf0, 0xa1, 0xd5,
0x08, 0x5c, 0x6c, 0xfe, 0x6f, 0xef, 0x6a, 0xbf, 0x55, 0xa1, 0x12, 0xc5, 0xba, 0xe1, 0x35, 0x90,
0xf7, 0x22, 0xd7, 0x65, 0xd7, 0x61, 0xf3, 0x71, 0x5e, 0x45, 0xa8, 0x8e, 0xe7, 0x2d, 0x49, 0x47,
0x4a, 0x02, 0xd6, 0xc0, 0xdc, 0xe1, 0x4d, 0xf5, 0x1c, 0xa4, 0x63, 0x4b, 0xd1, 0xbc, 0xca, 0xb5,
0xcc, 0xb4, 0x9a, 0x85, 0xe9, 0xed, 0xce, 0x4d, 0xc7, 0x07, 0xea, 0x80, 0x6f, 0x82, 0xc7, 0x34,
0x99, 0xd5, 0xc6, 0x0e, 0xb6, 0x6d, 0x6c, 0xc7, 0x17, 0x2d, 0xf3, 0xff, 0x38, 0x84, 0xda, 0xc7,
0xdb, 0x59, 0x01, 0x74, 0xbf, 0xd1, 0x70, 0x1d, 0x4c, 0x6b, 0xec, 0x35, 0x2f, 0xdc, 0x24, 0x95,
0x90, 0x38, 0x5e, 0xdd, 0x9c, 0xe7, 0x7a, 0xcf, 0xc7, 0xbb, 0x6f, 0x5b, 0xe3, 0xa1, 0x2e, 0x63,
0xe0, 0x2b, 0x29, 0x6d, 0xfc, 0x53, 0x8a, 0x15, 0xdc, 0xc4, 0x47, 0xd4, 0x7c, 0x82, 0x17, 0x17,
0x7c, 0x9d, 0xb7, 0x35, 0x3a, 0xea, 0x22, 0x0f, 0x5f, 0x02, 0xe7, 0x32, 0x1c, 0x76, 0xaf, 0x30,
0x9f, 0x14, 0x17, 0x04, 0x56, 0x89, 0x6e, 0xc7, 0x44, 0xd4, 0x49, 0x12, 0x7e, 0x15, 0x40, 0x8d,
0xbc, 0x61, 0x05, 0x7c, 0xfc, 0x53, 0xe2, 0xae, 0xc2, 0x56, 0x74, 0x5b, 0xd2, 0x50, 0x07, 0x39,
0xf8, 0xa1, 0x91, 0x9a, 0x49, 0x72, 0x9b, 0xa5, 0xe6, 0x35, 0xbe, 0x61, 0x5f, 0x79, 0xf4, 0x00,
0x4c, 0x94, 0xa1, 0xc8, 0xc5, 0x9a, 0x87, 0x35, 0x14, 0xd4, 0x05, 0x7d, 0x86, 0x5d, 0xa6, 0x33,
0x39, 0x1c, 0x4e, 0x80, 0xbe, 0x3d, 0x2c, 0x3f, 0x64, 0x23, 0xf6, 0x13, 0xbe, 0x05, 0x06, 0xf6,
0x2d, 0x37, 0x8a, 0x5b, 0x01, 0xbd, 0x3b, 0xeb, 0x91, 0xd0, 0xfb, 0x62, 0xee, 0xba, 0x31, 0xf3,
0x81, 0x01, 0xa6, 0x3b, 0x9f, 0x2a, 0x5f, 0x94, 0x45, 0x3f, 0x35, 0xc0, 0x64, 0xdb, 0x01, 0xd2,
0xc1, 0x18, 0x37, 0x6d, 0xcc, 0xdd, 0x1e, 0x9e, 0x04, 0x62, 0x23, 0xf0, 0x8a, 0x56, 0xb7, 0xec,
0x07, 0x06, 0x98, 0xc8, 0x26, 0xe6, 0x2f, 0xc8, 0x4b, 0xc5, 0xf7, 0x73, 0x60, 0xba, 0x73, 0x0d,
0x0e, 0x1b, 0xaa, 0xbb, 0xd0, 0xf3, 0x06, 0x4d, 0xa7, 0x26, 0xf2, 0xbb, 0x06, 0x18, 0x79, 0x47,
0xc9, 0xc5, 0xdf, 0x57, 0x7b, 0xd9, 0x15, 0x8a, 0x8f, 0xbe, 0x84, 0x41, 0x91, 0x0e, 0x59, 0xfc,
0x8d, 0x01, 0xa6, 0x3a, 0x1e, 0xe7, 0xf0, 0x2a, 0x18, 0xb4, 0x5c, 0xd7, 0x3f, 0x10, 0xdd, 0x3c,
0xed, 0x43, 0xc1, 0x12, 0xa7, 0x22, 0xc9, 0xd5, 0x7c, 0x96, 0xfb, 0x1c, 0x7c, 0x56, 0xfc, 0xbd,
0x01, 0x2e, 0xde, 0x2f, 0xea, 0x3e, 0xef, 0x35, 0x9c, 0x07, 0x79, 0x59, 0x6c, 0x1f, 0xf1, 0xf5,
0x93, 0xd9, 0x55, 0x66, 0x04, 0xfe, 0x7e, 0x47, 0xfc, 0x2a, 0xbe, 0x04, 0xc6, 0x33, 0x0d, 0xe8,
0xd4, 0x93, 0x1e, 0xe3, 0x81, 0x4f, 0x7a, 0x7e, 0x61, 0x80, 0x89, 0x0a, 0x26, 0xfb, 0x4e, 0x15,
0x23, 0x5c, 0xc3, 0x04, 0x7b, 0x55, 0x0c, 0x17, 0xc0, 0x30, 0xff, 0x80, 0x1a, 0x58, 0xd5, 0xf8,
0xb3, 0xcf, 0xa4, 0xd4, 0x31, 0x7c, 0x2b, 0x66, 0xa0, 0x44, 0x46, 0x7d, 0x22, 0xca, 0x75, 0xfd,
0x44, 0x74, 0x11, 0xf4, 0x07, 0x49, 0x07, 0x39, 0xcf, 0xb8, 0xdc, 0x12, 0x4e, 0xe5, 0x5c, 0x9f,
0x84, 0xbc, 0x4d, 0x36, 0x20, 0xb9, 0x3e, 0x09, 0x11, 0xa7, 0x16, 0xff, 0x98, 0x03, 0x67, 0xd3,
0x09, 0x9e, 0x01, 0x92, 0xc8, 0x6d, 0xfb, 0x26, 0xc5, 0x78, 0x88, 0x73, 0xf4, 0xa7, 0x10, 0xb9,
0xfb, 0x3f, 0x85, 0x80, 0x2f, 0x83, 0x49, 0xf9, 0x73, 0xf5, 0x30, 0x20, 0x98, 0xf2, 0x8f, 0xad,
0x7d, 0xe9, 0x27, 0x8c, 0x1b, 0x59, 0x01, 0xd4, 0x3e, 0x06, 0x7e, 0x25, 0xf3, 0x4c, 0xe3, 0x4a,
0xf2, 0x44, 0x83, 0x15, 0x87, 0x7c, 0x7d, 0xee, 0xb2, 0x9c, 0xb1, 0x4a, 0x88, 0x4f, 0x32, 0x6f,
0x37, 0x16, 0xc0, 0x70, 0x8d, 0x09, 0xf0, 0x85, 0x1b, 0x48, 0x3b, 0xfd, 0x46, 0xcc, 0x40, 0x89,
0x0c, 0xfc, 0x1a, 0x18, 0xf7, 0x03, 0x51, 0x06, 0x6f, 0xba, 0x76, 0x05, 0xbb, 0x35, 0xde, 0x12,
0xcc, 0xc7, 0x7d, 0xdb, 0x14, 0x0b, 0x65, 0x65, 0x8b, 0x7f, 0x30, 0xc0, 0xb9, 0xf8, 0x7d, 0x94,
0xeb, 0x60, 0x2f, 0x5c, 0xf6, 0xbd, 0x9a, 0x53, 0x87, 0x17, 0x44, 0xff, 0x55, 0x6b, 0x6a, 0xc6,
0xbd, 0x57, 0x78, 0x0f, 0x0c, 0x51, 0x11, 0x2b, 0x72, 0x1f, 0xbc, 0x7a, 0x92, 0x0f, 0x2a, 0xe9,
0xa0, 0x13, 0xe5, 0x63, 0x4c, 0x8d, 0x71, 0xd8, 0x56, 0xa8, 0x5a, 0xe5, 0xc8, 0xb3, 0x65, 0x0f,
0x7e, 0x54, 0x6c, 0x85, 0xe5, 0x25, 0x41, 0x43, 0x8a, 0x5b, 0xfc, 0xbb, 0x01, 0x26, 0xdb, 0xde,
0x7b, 0xc1, 0xef, 0x1a, 0x60, 0xb4, 0xaa, 0x4d, 0x4f, 0x26, 0x94, 0x8d, 0x93, 0xbf, 0x29, 0xd3,
0x94, 0x8a, 0x1a, 0x4c, 0xa7, 0xa0, 0x14, 0x28, 0xdc, 0x06, 0x66, 0x35, 0xf3, 0xb4, 0x32, 0xf3,
0xb1, 0xf6, 0x62, 0xab, 0x59, 0x30, 0x97, 0xbb, 0xc8, 0xa0, 0xae, 0xa3, 0xcb, 0xdf, 0xfc, 0xf8,
0xb3, 0xd9, 0x33, 0x9f, 0x7c, 0x36, 0x7b, 0xe6, 0xd3, 0xcf, 0x66, 0xcf, 0xbc, 0xdb, 0x9a, 0x35,
0x3e, 0x6e, 0xcd, 0x1a, 0x9f, 0xb4, 0x66, 0x8d, 0x4f, 0x5b, 0xb3, 0xc6, 0x5f, 0x5a, 0xb3, 0xc6,
0x8f, 0xff, 0x3a, 0x7b, 0xe6, 0x8d, 0xeb, 0x8f, 0xfa, 0xa0, 0xfa, 0xbf, 0x01, 0x00, 0x00, 0xff,
0xff, 0xd6, 0xc7, 0xa9, 0x10, 0xa4, 0x2d, 0x00, 0x00,
}
func (m *ConversionRequest) Marshal() (dAtA []byte, err error) {
@ -1618,6 +1649,20 @@ func (m *CustomResourceDefinitionVersion) MarshalToSizedBuffer(dAtA []byte) (int
_ = i
var l int
_ = l
if len(m.SelectableFields) > 0 {
for iNdEx := len(m.SelectableFields) - 1; iNdEx >= 0; iNdEx-- {
{
size, err := m.SelectableFields[iNdEx].MarshalToSizedBuffer(dAtA[:i])
if err != nil {
return 0, err
}
i -= size
i = encodeVarintGenerated(dAtA, i, uint64(size))
}
i--
dAtA[i] = 0x4a
}
}
if m.DeprecationWarning != nil {
i -= len(*m.DeprecationWarning)
copy(dAtA[i:], *m.DeprecationWarning)
@ -2570,6 +2615,34 @@ func (m *JSONSchemaPropsOrStringArray) MarshalToSizedBuffer(dAtA []byte) (int, e
return len(dAtA) - i, nil
}
func (m *SelectableField) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalToSizedBuffer(dAtA[:size])
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *SelectableField) MarshalTo(dAtA []byte) (int, error) {
size := m.Size()
return m.MarshalToSizedBuffer(dAtA[:size])
}
func (m *SelectableField) MarshalToSizedBuffer(dAtA []byte) (int, error) {
i := len(dAtA)
_ = i
var l int
_ = l
i -= len(m.JSONPath)
copy(dAtA[i:], m.JSONPath)
i = encodeVarintGenerated(dAtA, i, uint64(len(m.JSONPath)))
i--
dAtA[i] = 0xa
return len(dAtA) - i, nil
}
func (m *ServiceReference) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
@ -3027,6 +3100,12 @@ func (m *CustomResourceDefinitionVersion) Size() (n int) {
l = len(*m.DeprecationWarning)
n += 1 + l + sovGenerated(uint64(l))
}
if len(m.SelectableFields) > 0 {
for _, e := range m.SelectableFields {
l = e.Size()
n += 1 + l + sovGenerated(uint64(l))
}
}
return n
}
@ -3341,6 +3420,17 @@ func (m *JSONSchemaPropsOrStringArray) Size() (n int) {
return n
}
func (m *SelectableField) Size() (n int) {
if m == nil {
return 0
}
var l int
_ = l
l = len(m.JSONPath)
n += 1 + l + sovGenerated(uint64(l))
return n
}
func (m *ServiceReference) Size() (n int) {
if m == nil {
return 0
@ -3605,6 +3695,11 @@ func (this *CustomResourceDefinitionVersion) String() string {
repeatedStringForAdditionalPrinterColumns += strings.Replace(strings.Replace(f.String(), "CustomResourceColumnDefinition", "CustomResourceColumnDefinition", 1), `&`, ``, 1) + ","
}
repeatedStringForAdditionalPrinterColumns += "}"
repeatedStringForSelectableFields := "[]SelectableField{"
for _, f := range this.SelectableFields {
repeatedStringForSelectableFields += strings.Replace(strings.Replace(f.String(), "SelectableField", "SelectableField", 1), `&`, ``, 1) + ","
}
repeatedStringForSelectableFields += "}"
s := strings.Join([]string{`&CustomResourceDefinitionVersion{`,
`Name:` + fmt.Sprintf("%v", this.Name) + `,`,
`Served:` + fmt.Sprintf("%v", this.Served) + `,`,
@ -3614,6 +3709,7 @@ func (this *CustomResourceDefinitionVersion) String() string {
`AdditionalPrinterColumns:` + repeatedStringForAdditionalPrinterColumns + `,`,
`Deprecated:` + fmt.Sprintf("%v", this.Deprecated) + `,`,
`DeprecationWarning:` + valueToStringGenerated(this.DeprecationWarning) + `,`,
`SelectableFields:` + repeatedStringForSelectableFields + `,`,
`}`,
}, "")
return s
@ -3837,6 +3933,16 @@ func (this *JSONSchemaPropsOrStringArray) String() string {
}, "")
return s
}
func (this *SelectableField) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&SelectableField{`,
`JSONPath:` + fmt.Sprintf("%v", this.JSONPath) + `,`,
`}`,
}, "")
return s
}
func (this *ServiceReference) String() string {
if this == nil {
return "nil"
@ -6027,6 +6133,40 @@ func (m *CustomResourceDefinitionVersion) Unmarshal(dAtA []byte) error {
s := string(dAtA[iNdEx:postIndex])
m.DeprecationWarning = &s
iNdEx = postIndex
case 9:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field SelectableFields", 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 < 0 {
return ErrInvalidLengthGenerated
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.SelectableFields = append(m.SelectableFields, SelectableField{})
if err := m.SelectableFields[len(m.SelectableFields)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(dAtA[iNdEx:])
@ -8667,6 +8807,88 @@ func (m *JSONSchemaPropsOrStringArray) Unmarshal(dAtA []byte) error {
}
return nil
}
func (m *SelectableField) 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: SelectableField: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: SelectableField: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field JSONPath", 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 < 0 {
return ErrInvalidLengthGenerated
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.JSONPath = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(dAtA[iNdEx:])
if err != nil {
return err
}
if (skippy < 0) || (iNdEx+skippy) < 0 {
return ErrInvalidLengthGenerated
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func (m *ServiceReference) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0

View File

@ -305,6 +305,15 @@ message CustomResourceDefinitionVersion {
// +optional
// +listType=atomic
repeated CustomResourceColumnDefinition additionalPrinterColumns = 6;
// selectableFields specifies paths to fields that may be used as field selectors.
// A maximum of 8 selectable fields are allowed.
// See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors
//
// +featureGate=CustomResourceFieldSelectors
// +optional
// +listType=atomic
repeated SelectableField selectableFields = 9;
}
// CustomResourceSubresourceScale defines how to serve the scale subresource for CustomResources.
@ -597,6 +606,19 @@ message JSONSchemaPropsOrStringArray {
repeated string property = 2;
}
// SelectableField specifies the JSON path of a field that may be used with field selectors.
message SelectableField {
// jsonPath is a simple JSON path which is evaluated against each custom resource to produce a
// field selector value.
// Only JSON paths without the array notation are allowed.
// Must point to a field of type string, boolean or integer. Types with enum values
// and strings with formats are allowed.
// If jsonPath refers to absent field in a resource, the jsonPath evaluates to an empty string.
// Must not point to metdata fields.
// Required.
optional string jsonPath = 1;
}
// ServiceReference holds a reference to Service.legacy.k8s.io
message ServiceReference {
// namespace is the namespace of the service.

View File

@ -192,6 +192,16 @@ func RegisterConversions(s *runtime.Scheme) error {
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*SelectableField)(nil), (*apiextensions.SelectableField)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_v1_SelectableField_To_apiextensions_SelectableField(a.(*SelectableField), b.(*apiextensions.SelectableField), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*apiextensions.SelectableField)(nil), (*SelectableField)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_apiextensions_SelectableField_To_v1_SelectableField(a.(*apiextensions.SelectableField), b.(*SelectableField), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*ServiceReference)(nil), (*apiextensions.ServiceReference)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_v1_ServiceReference_To_apiextensions_ServiceReference(a.(*ServiceReference), b.(*apiextensions.ServiceReference), scope)
}); err != nil {
@ -493,6 +503,7 @@ func autoConvert_apiextensions_CustomResourceDefinitionSpec_To_v1_CustomResource
out.Versions = nil
}
// WARNING: in.AdditionalPrinterColumns requires manual conversion: does not exist in peer-type
// WARNING: in.SelectableFields requires manual conversion: does not exist in peer-type
if in.Conversion != nil {
in, out := &in.Conversion, &out.Conversion
*out = new(CustomResourceConversion)
@ -553,6 +564,7 @@ func autoConvert_v1_CustomResourceDefinitionVersion_To_apiextensions_CustomResou
}
out.Subresources = (*apiextensions.CustomResourceSubresources)(unsafe.Pointer(in.Subresources))
out.AdditionalPrinterColumns = *(*[]apiextensions.CustomResourceColumnDefinition)(unsafe.Pointer(&in.AdditionalPrinterColumns))
out.SelectableFields = *(*[]apiextensions.SelectableField)(unsafe.Pointer(&in.SelectableFields))
return nil
}
@ -578,6 +590,7 @@ func autoConvert_apiextensions_CustomResourceDefinitionVersion_To_v1_CustomResou
}
out.Subresources = (*CustomResourceSubresources)(unsafe.Pointer(in.Subresources))
out.AdditionalPrinterColumns = *(*[]CustomResourceColumnDefinition)(unsafe.Pointer(&in.AdditionalPrinterColumns))
out.SelectableFields = *(*[]SelectableField)(unsafe.Pointer(&in.SelectableFields))
return nil
}
@ -1225,6 +1238,26 @@ func Convert_apiextensions_JSONSchemaPropsOrStringArray_To_v1_JSONSchemaPropsOrS
return autoConvert_apiextensions_JSONSchemaPropsOrStringArray_To_v1_JSONSchemaPropsOrStringArray(in, out, s)
}
func autoConvert_v1_SelectableField_To_apiextensions_SelectableField(in *SelectableField, out *apiextensions.SelectableField, s conversion.Scope) error {
out.JSONPath = in.JSONPath
return nil
}
// Convert_v1_SelectableField_To_apiextensions_SelectableField is an autogenerated conversion function.
func Convert_v1_SelectableField_To_apiextensions_SelectableField(in *SelectableField, out *apiextensions.SelectableField, s conversion.Scope) error {
return autoConvert_v1_SelectableField_To_apiextensions_SelectableField(in, out, s)
}
func autoConvert_apiextensions_SelectableField_To_v1_SelectableField(in *apiextensions.SelectableField, out *SelectableField, s conversion.Scope) error {
out.JSONPath = in.JSONPath
return nil
}
// Convert_apiextensions_SelectableField_To_v1_SelectableField is an autogenerated conversion function.
func Convert_apiextensions_SelectableField_To_v1_SelectableField(in *apiextensions.SelectableField, out *SelectableField, s conversion.Scope) error {
return autoConvert_apiextensions_SelectableField_To_v1_SelectableField(in, out, s)
}
func autoConvert_v1_ServiceReference_To_apiextensions_ServiceReference(in *ServiceReference, out *apiextensions.ServiceReference, s conversion.Scope) error {
out.Namespace = in.Namespace
out.Name = in.Name

View File

@ -329,6 +329,11 @@ func (in *CustomResourceDefinitionVersion) DeepCopyInto(out *CustomResourceDefin
*out = make([]CustomResourceColumnDefinition, len(*in))
copy(*out, *in)
}
if in.SelectableFields != nil {
in, out := &in.SelectableFields, &out.SelectableFields
*out = make([]SelectableField, len(*in))
copy(*out, *in)
}
return
}
@ -585,6 +590,22 @@ func (in *JSONSchemaPropsOrStringArray) DeepCopy() *JSONSchemaPropsOrStringArray
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SelectableField) DeepCopyInto(out *SelectableField) {
*out = *in
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelectableField.
func (in *SelectableField) DeepCopy() *SelectableField {
if in == nil {
return nil
}
out := new(SelectableField)
in.DeepCopyInto(out)
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ServiceReference) DeepCopyInto(out *ServiceReference) {
*out = *in

View File

@ -664,10 +664,38 @@ func (m *JSONSchemaPropsOrStringArray) XXX_DiscardUnknown() {
var xxx_messageInfo_JSONSchemaPropsOrStringArray proto.InternalMessageInfo
func (m *SelectableField) Reset() { *m = SelectableField{} }
func (*SelectableField) ProtoMessage() {}
func (*SelectableField) Descriptor() ([]byte, []int) {
return fileDescriptor_98a4cc6918394e53, []int{22}
}
func (m *SelectableField) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
}
func (m *SelectableField) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
b = b[:cap(b)]
n, err := m.MarshalToSizedBuffer(b)
if err != nil {
return nil, err
}
return b[:n], nil
}
func (m *SelectableField) XXX_Merge(src proto.Message) {
xxx_messageInfo_SelectableField.Merge(m, src)
}
func (m *SelectableField) XXX_Size() int {
return m.Size()
}
func (m *SelectableField) XXX_DiscardUnknown() {
xxx_messageInfo_SelectableField.DiscardUnknown(m)
}
var xxx_messageInfo_SelectableField proto.InternalMessageInfo
func (m *ServiceReference) Reset() { *m = ServiceReference{} }
func (*ServiceReference) ProtoMessage() {}
func (*ServiceReference) Descriptor() ([]byte, []int) {
return fileDescriptor_98a4cc6918394e53, []int{22}
return fileDescriptor_98a4cc6918394e53, []int{23}
}
func (m *ServiceReference) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@ -695,7 +723,7 @@ var xxx_messageInfo_ServiceReference proto.InternalMessageInfo
func (m *ValidationRule) Reset() { *m = ValidationRule{} }
func (*ValidationRule) ProtoMessage() {}
func (*ValidationRule) Descriptor() ([]byte, []int) {
return fileDescriptor_98a4cc6918394e53, []int{23}
return fileDescriptor_98a4cc6918394e53, []int{24}
}
func (m *ValidationRule) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@ -723,7 +751,7 @@ var xxx_messageInfo_ValidationRule proto.InternalMessageInfo
func (m *WebhookClientConfig) Reset() { *m = WebhookClientConfig{} }
func (*WebhookClientConfig) ProtoMessage() {}
func (*WebhookClientConfig) Descriptor() ([]byte, []int) {
return fileDescriptor_98a4cc6918394e53, []int{24}
return fileDescriptor_98a4cc6918394e53, []int{25}
}
func (m *WebhookClientConfig) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
@ -775,6 +803,7 @@ func init() {
proto.RegisterType((*JSONSchemaPropsOrArray)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrArray")
proto.RegisterType((*JSONSchemaPropsOrBool)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool")
proto.RegisterType((*JSONSchemaPropsOrStringArray)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrStringArray")
proto.RegisterType((*SelectableField)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1beta1.SelectableField")
proto.RegisterType((*ServiceReference)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1beta1.ServiceReference")
proto.RegisterType((*ValidationRule)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1beta1.ValidationRule")
proto.RegisterType((*WebhookClientConfig)(nil), "k8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1beta1.WebhookClientConfig")
@ -785,206 +814,209 @@ func init() {
}
var fileDescriptor_98a4cc6918394e53 = []byte{
// 3170 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0xcd, 0x73, 0x1c, 0x47,
0xd9, 0xf7, 0xec, 0x6a, 0xa5, 0x55, 0x4b, 0xb6, 0xa4, 0xb6, 0xa5, 0x8c, 0x15, 0x47, 0x2b, 0xaf,
0xdf, 0xf8, 0x55, 0x12, 0x67, 0x95, 0xf8, 0x4d, 0xde, 0xe4, 0xcd, 0x4b, 0x8a, 0xd2, 0x4a, 0x72,
0x50, 0x62, 0x59, 0xa2, 0xd7, 0x76, 0x04, 0xf9, 0x1c, 0xed, 0xf4, 0xae, 0x27, 0x9a, 0x9d, 0x19,
0x77, 0xcf, 0xac, 0xa4, 0x0a, 0x50, 0x7c, 0x54, 0x0a, 0x8a, 0x02, 0x42, 0x91, 0x5c, 0x28, 0xe0,
0x10, 0x28, 0x2e, 0x1c, 0xe0, 0x00, 0x37, 0xf8, 0x03, 0x72, 0x4c, 0x01, 0x87, 0x1c, 0xa8, 0x85,
0x2c, 0x57, 0x8e, 0x54, 0x51, 0xa5, 0x13, 0xd5, 0x1f, 0xd3, 0xd3, 0x3b, 0xbb, 0x6b, 0xbb, 0xa2,
0xdd, 0x98, 0xdb, 0xee, 0xf3, 0xf5, 0x7b, 0xe6, 0xe9, 0xa7, 0x9f, 0x7e, 0xfa, 0x99, 0x01, 0xb5,
0xbd, 0x67, 0x69, 0xc9, 0xf1, 0x97, 0xf7, 0xa2, 0x5d, 0x4c, 0x3c, 0x1c, 0x62, 0xba, 0xdc, 0xc4,
0x9e, 0xed, 0x93, 0x65, 0xc9, 0xb0, 0x02, 0x07, 0x1f, 0x84, 0xd8, 0xa3, 0x8e, 0xef, 0xd1, 0xc7,
0xad, 0xc0, 0xa1, 0x98, 0x34, 0x31, 0x59, 0x0e, 0xf6, 0xea, 0x8c, 0x47, 0x3b, 0x05, 0x96, 0x9b,
0x4f, 0xee, 0xe2, 0xd0, 0x7a, 0x72, 0xb9, 0x8e, 0x3d, 0x4c, 0xac, 0x10, 0xdb, 0xa5, 0x80, 0xf8,
0xa1, 0x0f, 0x9f, 0x17, 0xe6, 0x4a, 0x1d, 0xd2, 0x6f, 0x28, 0x73, 0xa5, 0x60, 0xaf, 0xce, 0x78,
0xb4, 0x53, 0xa0, 0x24, 0xcd, 0xcd, 0x3f, 0x5e, 0x77, 0xc2, 0x5b, 0xd1, 0x6e, 0xa9, 0xea, 0x37,
0x96, 0xeb, 0x7e, 0xdd, 0x5f, 0xe6, 0x56, 0x77, 0xa3, 0x1a, 0xff, 0xc7, 0xff, 0xf0, 0x5f, 0x02,
0x6d, 0xfe, 0xa9, 0xc4, 0xf9, 0x86, 0x55, 0xbd, 0xe5, 0x78, 0x98, 0x1c, 0x26, 0x1e, 0x37, 0x70,
0x68, 0x2d, 0x37, 0xbb, 0x7c, 0x9c, 0x5f, 0xee, 0xa7, 0x45, 0x22, 0x2f, 0x74, 0x1a, 0xb8, 0x4b,
0xe1, 0x7f, 0xef, 0xa6, 0x40, 0xab, 0xb7, 0x70, 0xc3, 0x4a, 0xeb, 0x15, 0x8f, 0x0c, 0x30, 0xb3,
0xea, 0x7b, 0x4d, 0x4c, 0xd8, 0x53, 0x22, 0x7c, 0x3b, 0xc2, 0x34, 0x84, 0x65, 0x90, 0x8d, 0x1c,
0xdb, 0x34, 0x16, 0x8d, 0xa5, 0xf1, 0xf2, 0x13, 0x1f, 0xb6, 0x0a, 0x27, 0xda, 0xad, 0x42, 0xf6,
0xc6, 0xc6, 0xda, 0x51, 0xab, 0x70, 0xbe, 0x1f, 0x52, 0x78, 0x18, 0x60, 0x5a, 0xba, 0xb1, 0xb1,
0x86, 0x98, 0x32, 0x7c, 0x01, 0xcc, 0xd8, 0x98, 0x3a, 0x04, 0xdb, 0x2b, 0xdb, 0x1b, 0x37, 0x85,
0x7d, 0x33, 0xc3, 0x2d, 0x9e, 0x95, 0x16, 0x67, 0xd6, 0xd2, 0x02, 0xa8, 0x5b, 0x07, 0xee, 0x80,
0x31, 0x7f, 0xf7, 0x2d, 0x5c, 0x0d, 0xa9, 0x99, 0x5d, 0xcc, 0x2e, 0x4d, 0x5c, 0x7e, 0xbc, 0x94,
0xac, 0xa0, 0x72, 0x81, 0x2f, 0x9b, 0x7c, 0xd8, 0x12, 0xb2, 0xf6, 0xd7, 0xe3, 0x95, 0x2b, 0x4f,
0x49, 0xb4, 0xb1, 0x2d, 0x61, 0x05, 0xc5, 0xe6, 0x8a, 0xbf, 0xc8, 0x00, 0xa8, 0x3f, 0x3c, 0x0d,
0x7c, 0x8f, 0xe2, 0x81, 0x3c, 0x3d, 0x05, 0xd3, 0x55, 0x6e, 0x39, 0xc4, 0xb6, 0xc4, 0x35, 0x33,
0x9f, 0xc6, 0x7b, 0x53, 0xe2, 0x4f, 0xaf, 0xa6, 0xcc, 0xa1, 0x2e, 0x00, 0x78, 0x1d, 0x8c, 0x12,
0x4c, 0x23, 0x37, 0x34, 0xb3, 0x8b, 0xc6, 0xd2, 0xc4, 0xe5, 0x4b, 0x7d, 0xa1, 0x78, 0x7e, 0xb3,
0xe4, 0x2b, 0x35, 0x9f, 0x2c, 0x55, 0x42, 0x2b, 0x8c, 0x68, 0xf9, 0x94, 0x44, 0x1a, 0x45, 0xdc,
0x06, 0x92, 0xb6, 0x8a, 0xdf, 0xc9, 0x80, 0x69, 0x3d, 0x4a, 0x4d, 0x07, 0xef, 0xc3, 0x7d, 0x30,
0x46, 0x44, 0xb2, 0xf0, 0x38, 0x4d, 0x5c, 0xde, 0x2e, 0x1d, 0x6b, 0x5b, 0x95, 0xba, 0x92, 0xb0,
0x3c, 0xc1, 0xd6, 0x4c, 0xfe, 0x41, 0x31, 0x1a, 0x7c, 0x1b, 0xe4, 0x89, 0x5c, 0x28, 0x9e, 0x4d,
0x13, 0x97, 0xbf, 0x38, 0x40, 0x64, 0x61, 0xb8, 0x3c, 0xd9, 0x6e, 0x15, 0xf2, 0xf1, 0x3f, 0xa4,
0x00, 0x8b, 0xef, 0x65, 0xc0, 0xc2, 0x6a, 0x44, 0x43, 0xbf, 0x81, 0x30, 0xf5, 0x23, 0x52, 0xc5,
0xab, 0xbe, 0x1b, 0x35, 0xbc, 0x35, 0x5c, 0x73, 0x3c, 0x27, 0x64, 0xd9, 0xba, 0x08, 0x46, 0x3c,
0xab, 0x81, 0x65, 0xf6, 0x4c, 0xca, 0x98, 0x8e, 0x5c, 0xb3, 0x1a, 0x18, 0x71, 0x0e, 0x93, 0x60,
0xc9, 0x22, 0xf7, 0x82, 0x92, 0xb8, 0x7e, 0x18, 0x60, 0xc4, 0x39, 0xf0, 0x22, 0x18, 0xad, 0xf9,
0xa4, 0x61, 0x89, 0x75, 0x1c, 0x4f, 0x56, 0xe6, 0x0a, 0xa7, 0x22, 0xc9, 0x85, 0x4f, 0x83, 0x09,
0x1b, 0xd3, 0x2a, 0x71, 0x02, 0x06, 0x6d, 0x8e, 0x70, 0xe1, 0xd3, 0x52, 0x78, 0x62, 0x2d, 0x61,
0x21, 0x5d, 0x0e, 0x5e, 0x02, 0xf9, 0x80, 0x38, 0x3e, 0x71, 0xc2, 0x43, 0x33, 0xb7, 0x68, 0x2c,
0xe5, 0xca, 0xd3, 0x52, 0x27, 0xbf, 0x2d, 0xe9, 0x48, 0x49, 0xc0, 0x45, 0x90, 0x7f, 0xb1, 0xb2,
0x75, 0x6d, 0xdb, 0x0a, 0x6f, 0x99, 0xa3, 0x1c, 0x61, 0x84, 0x49, 0x23, 0x45, 0x2d, 0xfe, 0x25,
0x03, 0xcc, 0x74, 0x54, 0xe2, 0x90, 0xc2, 0x2b, 0x20, 0x4f, 0x43, 0x56, 0x71, 0xea, 0x87, 0x32,
0x26, 0x8f, 0xc6, 0x60, 0x15, 0x49, 0x3f, 0x6a, 0x15, 0xe6, 0x12, 0x8d, 0x98, 0xca, 0xe3, 0xa1,
0x74, 0xe1, 0xcf, 0x0c, 0x70, 0x7a, 0x1f, 0xef, 0xde, 0xf2, 0xfd, 0xbd, 0x55, 0xd7, 0xc1, 0x5e,
0xb8, 0xea, 0x7b, 0x35, 0xa7, 0x2e, 0x73, 0x00, 0x1d, 0x33, 0x07, 0x5e, 0xee, 0xb6, 0x5c, 0x7e,
0xa0, 0xdd, 0x2a, 0x9c, 0xee, 0xc1, 0x40, 0xbd, 0xfc, 0x80, 0x3b, 0xc0, 0xac, 0xa6, 0x36, 0x89,
0x2c, 0x60, 0xa2, 0x6c, 0x8d, 0x97, 0xcf, 0xb5, 0x5b, 0x05, 0x73, 0xb5, 0x8f, 0x0c, 0xea, 0xab,
0x5d, 0xfc, 0x56, 0x36, 0x1d, 0x5e, 0x2d, 0xdd, 0xde, 0x04, 0x79, 0xb6, 0x8d, 0x6d, 0x2b, 0xb4,
0xe4, 0x46, 0x7c, 0xe2, 0xde, 0x36, 0xbd, 0xa8, 0x19, 0x9b, 0x38, 0xb4, 0xca, 0x50, 0x2e, 0x08,
0x48, 0x68, 0x48, 0x59, 0x85, 0x5f, 0x05, 0x23, 0x34, 0xc0, 0x55, 0x19, 0xe8, 0x57, 0x8e, 0xbb,
0xd9, 0xfa, 0x3c, 0x48, 0x25, 0xc0, 0xd5, 0x64, 0x2f, 0xb0, 0x7f, 0x88, 0xc3, 0xc2, 0x77, 0x0c,
0x30, 0x4a, 0x79, 0x81, 0x92, 0x45, 0xed, 0xb5, 0x61, 0x79, 0x90, 0xaa, 0x82, 0xe2, 0x3f, 0x92,
0xe0, 0xc5, 0x7f, 0x66, 0xc0, 0xf9, 0x7e, 0xaa, 0xab, 0xbe, 0x67, 0x8b, 0xe5, 0xd8, 0x90, 0x7b,
0x5b, 0x64, 0xfa, 0xd3, 0xfa, 0xde, 0x3e, 0x6a, 0x15, 0x1e, 0xbe, 0xab, 0x01, 0xad, 0x08, 0xfc,
0x9f, 0x7a, 0x6e, 0x51, 0x28, 0xce, 0x77, 0x3a, 0x76, 0xd4, 0x2a, 0x4c, 0x29, 0xb5, 0x4e, 0x5f,
0x61, 0x13, 0x40, 0xd7, 0xa2, 0xe1, 0x75, 0x62, 0x79, 0x54, 0x98, 0x75, 0x1a, 0x58, 0x86, 0xef,
0xd1, 0x7b, 0x4b, 0x0f, 0xa6, 0x51, 0x9e, 0x97, 0x90, 0xf0, 0x6a, 0x97, 0x35, 0xd4, 0x03, 0x81,
0xd5, 0x2d, 0x82, 0x2d, 0xaa, 0x4a, 0x91, 0x76, 0xa2, 0x30, 0x2a, 0x92, 0x5c, 0xf8, 0x08, 0x18,
0x6b, 0x60, 0x4a, 0xad, 0x3a, 0xe6, 0xf5, 0x67, 0x3c, 0x39, 0xa2, 0x37, 0x05, 0x19, 0xc5, 0x7c,
0xd6, 0x9f, 0x9c, 0xeb, 0x17, 0xb5, 0xab, 0x0e, 0x0d, 0xe1, 0xab, 0x5d, 0x1b, 0xa0, 0x74, 0x6f,
0x4f, 0xc8, 0xb4, 0x79, 0xfa, 0xab, 0xe2, 0x17, 0x53, 0xb4, 0xe4, 0xff, 0x0a, 0xc8, 0x39, 0x21,
0x6e, 0xc4, 0x67, 0xf7, 0xcb, 0x43, 0xca, 0xbd, 0xf2, 0x49, 0xe9, 0x43, 0x6e, 0x83, 0xa1, 0x21,
0x01, 0x5a, 0xfc, 0x65, 0x06, 0x3c, 0xd4, 0x4f, 0x85, 0x1d, 0x28, 0x94, 0x45, 0x3c, 0x70, 0x23,
0x62, 0xb9, 0x32, 0xe3, 0x54, 0xc4, 0xb7, 0x39, 0x15, 0x49, 0x2e, 0x2b, 0xf9, 0xd4, 0xf1, 0xea,
0x91, 0x6b, 0x11, 0x99, 0x4e, 0xea, 0xa9, 0x2b, 0x92, 0x8e, 0x94, 0x04, 0x2c, 0x01, 0x40, 0x6f,
0xf9, 0x24, 0xe4, 0x18, 0xb2, 0x7a, 0x9d, 0x62, 0x05, 0xa2, 0xa2, 0xa8, 0x48, 0x93, 0x60, 0x27,
0xda, 0x9e, 0xe3, 0xd9, 0x72, 0xd5, 0xd5, 0x2e, 0x7e, 0xc9, 0xf1, 0x6c, 0xc4, 0x39, 0x0c, 0xdf,
0x75, 0x68, 0xc8, 0x28, 0x72, 0xc9, 0x3b, 0xa2, 0xce, 0x25, 0x95, 0x04, 0xc3, 0xaf, 0xb2, 0xaa,
0xef, 0x13, 0x07, 0x53, 0x73, 0x34, 0xc1, 0x5f, 0x55, 0x54, 0xa4, 0x49, 0x14, 0xff, 0x91, 0xef,
0x9f, 0x24, 0xac, 0x94, 0xc0, 0x0b, 0x20, 0x57, 0x27, 0x7e, 0x14, 0xc8, 0x28, 0xa9, 0x68, 0xbf,
0xc0, 0x88, 0x48, 0xf0, 0x58, 0x56, 0x36, 0x3b, 0xda, 0x54, 0x95, 0x95, 0x71, 0x73, 0x1a, 0xf3,
0xe1, 0x37, 0x0c, 0x90, 0xf3, 0x64, 0x70, 0x58, 0xca, 0xbd, 0x3a, 0xa4, 0xbc, 0xe0, 0xe1, 0x4d,
0xdc, 0x15, 0x91, 0x17, 0xc8, 0xf0, 0x29, 0x90, 0xa3, 0x55, 0x3f, 0xc0, 0x32, 0xea, 0x0b, 0xb1,
0x50, 0x85, 0x11, 0x8f, 0x5a, 0x85, 0x93, 0xb1, 0x39, 0x4e, 0x40, 0x42, 0x18, 0x7e, 0xdb, 0x00,
0xa0, 0x69, 0xb9, 0x8e, 0x6d, 0xf1, 0x96, 0x21, 0xc7, 0xdd, 0x1f, 0x6c, 0x5a, 0xdf, 0x54, 0xe6,
0xc5, 0xa2, 0x25, 0xff, 0x91, 0x06, 0x0d, 0xdf, 0x35, 0xc0, 0x24, 0x8d, 0x76, 0x89, 0xd4, 0xa2,
0xbc, 0xb9, 0x98, 0xb8, 0xfc, 0xa5, 0x81, 0xfa, 0x52, 0xd1, 0x00, 0xca, 0xd3, 0xed, 0x56, 0x61,
0x52, 0xa7, 0xa0, 0x0e, 0x07, 0xe0, 0xf7, 0x0c, 0x90, 0x6f, 0xc6, 0x67, 0xf6, 0x18, 0xdf, 0xf0,
0xaf, 0x0f, 0x69, 0x61, 0x65, 0x46, 0x25, 0xbb, 0x40, 0xf5, 0x01, 0xca, 0x03, 0xf8, 0x7b, 0x03,
0x98, 0x96, 0x2d, 0x0a, 0xbc, 0xe5, 0x6e, 0x13, 0xc7, 0x0b, 0x31, 0x11, 0xfd, 0x26, 0x35, 0xf3,
0xdc, 0xbd, 0xc1, 0x9e, 0x85, 0xe9, 0x5e, 0xb6, 0xbc, 0x28, 0xbd, 0x33, 0x57, 0xfa, 0xb8, 0x81,
0xfa, 0x3a, 0xc8, 0x13, 0x2d, 0x69, 0x69, 0xcc, 0xf1, 0x21, 0x24, 0x5a, 0xd2, 0x4b, 0xc9, 0xea,
0x90, 0x74, 0x50, 0x1a, 0x34, 0xdc, 0x02, 0xb3, 0x01, 0xc1, 0x1c, 0xe0, 0x86, 0xb7, 0xe7, 0xf9,
0xfb, 0xde, 0x15, 0x07, 0xbb, 0x36, 0x35, 0xc1, 0xa2, 0xb1, 0x94, 0x2f, 0x9f, 0x6d, 0xb7, 0x0a,
0xb3, 0xdb, 0xbd, 0x04, 0x50, 0x6f, 0xbd, 0xe2, 0xbb, 0xd9, 0xf4, 0x2d, 0x20, 0xdd, 0x45, 0xc0,
0xf7, 0xc5, 0xd3, 0x8b, 0xd8, 0x50, 0xd3, 0xe0, 0xab, 0xf5, 0xe6, 0x90, 0x92, 0x49, 0xb5, 0x01,
0x49, 0x27, 0xa7, 0x48, 0x14, 0x69, 0x7e, 0xc0, 0x1f, 0x1b, 0xe0, 0xa4, 0x55, 0xad, 0xe2, 0x20,
0xc4, 0xb6, 0x28, 0xee, 0x99, 0xcf, 0xa0, 0x7e, 0xcd, 0x4a, 0xaf, 0x4e, 0xae, 0xe8, 0xd0, 0xa8,
0xd3, 0x13, 0xf8, 0x1c, 0x38, 0x45, 0x43, 0x9f, 0x60, 0x3b, 0xd5, 0x36, 0xc3, 0x76, 0xab, 0x70,
0xaa, 0xd2, 0xc1, 0x41, 0x29, 0xc9, 0xe2, 0x5f, 0x73, 0xa0, 0x70, 0x97, 0xad, 0x76, 0x0f, 0x17,
0xb3, 0x8b, 0x60, 0x94, 0x3f, 0xae, 0xcd, 0xa3, 0x92, 0xd7, 0x5a, 0x41, 0x4e, 0x45, 0x92, 0xcb,
0x0e, 0x0a, 0x86, 0xcf, 0xda, 0x97, 0x2c, 0x17, 0x54, 0x07, 0x45, 0x45, 0x90, 0x51, 0xcc, 0x87,
0x97, 0x01, 0xb0, 0x71, 0x40, 0x30, 0x3b, 0xac, 0x6c, 0x73, 0x8c, 0x4b, 0xab, 0x45, 0x5a, 0x53,
0x1c, 0xa4, 0x49, 0xc1, 0x2b, 0x00, 0xc6, 0xff, 0x1c, 0xdf, 0x7b, 0xd9, 0x22, 0x9e, 0xe3, 0xd5,
0xcd, 0x3c, 0x77, 0x7b, 0x8e, 0x75, 0x63, 0x6b, 0x5d, 0x5c, 0xd4, 0x43, 0x03, 0xbe, 0x0d, 0x46,
0xc5, 0xd0, 0x87, 0x9f, 0x10, 0x43, 0xac, 0xf2, 0x80, 0xc7, 0x88, 0x43, 0x21, 0x09, 0xd9, 0x5d,
0xdd, 0x73, 0xf7, 0xbb, 0xba, 0xdf, 0xb1, 0x9c, 0x8e, 0xfe, 0x87, 0x97, 0xd3, 0xe2, 0xbf, 0x8c,
0x74, 0xcd, 0xd1, 0x1e, 0xb5, 0x52, 0xb5, 0x5c, 0x0c, 0xd7, 0xc0, 0x34, 0xbb, 0x31, 0x21, 0x1c,
0xb8, 0x4e, 0xd5, 0xa2, 0xfc, 0xc2, 0x2e, 0x92, 0x5d, 0xcd, 0x90, 0x2a, 0x29, 0x3e, 0xea, 0xd2,
0x80, 0x2f, 0x02, 0x28, 0x6e, 0x11, 0x1d, 0x76, 0x44, 0x43, 0xa4, 0xee, 0x03, 0x95, 0x2e, 0x09,
0xd4, 0x43, 0x0b, 0xae, 0x82, 0x19, 0xd7, 0xda, 0xc5, 0x6e, 0x05, 0xbb, 0xb8, 0x1a, 0xfa, 0x84,
0x9b, 0x12, 0x23, 0x8d, 0xd9, 0x76, 0xab, 0x30, 0x73, 0x35, 0xcd, 0x44, 0xdd, 0xf2, 0xc5, 0xf3,
0xe9, 0xad, 0xad, 0x3f, 0xb8, 0xb8, 0x9b, 0x7d, 0x90, 0x01, 0xf3, 0xfd, 0x33, 0x03, 0x7e, 0x33,
0xb9, 0x42, 0x8a, 0x1b, 0xc2, 0xeb, 0xc3, 0xca, 0x42, 0x79, 0x87, 0x04, 0xdd, 0xf7, 0x47, 0xf8,
0x35, 0xd6, 0xae, 0x59, 0x6e, 0x3c, 0xb4, 0x7a, 0x6d, 0x68, 0x2e, 0x30, 0x90, 0xf2, 0xb8, 0xe8,
0x04, 0x2d, 0x97, 0x37, 0x7e, 0x96, 0x8b, 0x8b, 0xbf, 0x32, 0xd2, 0x53, 0x84, 0x64, 0x07, 0xc3,
0xef, 0x1b, 0x60, 0xca, 0x0f, 0xb0, 0xb7, 0xb2, 0xbd, 0x71, 0xf3, 0x7f, 0xc4, 0x4e, 0x96, 0xa1,
0xba, 0x76, 0x4c, 0x3f, 0x5f, 0xac, 0x6c, 0x5d, 0x13, 0x06, 0xb7, 0x89, 0x1f, 0xd0, 0xf2, 0xe9,
0x76, 0xab, 0x30, 0xb5, 0xd5, 0x09, 0x85, 0xd2, 0xd8, 0xc5, 0x06, 0x98, 0x5d, 0x3f, 0x08, 0x31,
0xf1, 0x2c, 0x77, 0xcd, 0xaf, 0x46, 0x0d, 0xec, 0x85, 0xc2, 0xd1, 0xd4, 0xc4, 0xcb, 0xb8, 0xc7,
0x89, 0xd7, 0x43, 0x20, 0x1b, 0x11, 0x57, 0x66, 0xf1, 0x84, 0x9a, 0xe8, 0xa2, 0xab, 0x88, 0xd1,
0x8b, 0xe7, 0xc1, 0x08, 0xf3, 0x13, 0x9e, 0x05, 0x59, 0x62, 0xed, 0x73, 0xab, 0x93, 0xe5, 0x31,
0x26, 0x82, 0xac, 0x7d, 0xc4, 0x68, 0xc5, 0x3f, 0x9f, 0x07, 0x53, 0xa9, 0x67, 0x81, 0xf3, 0x20,
0xa3, 0xc6, 0xc4, 0x40, 0x1a, 0xcd, 0x6c, 0xac, 0xa1, 0x8c, 0x63, 0xc3, 0x67, 0x54, 0xf1, 0x15,
0xa0, 0x05, 0x75, 0x96, 0x70, 0x2a, 0xeb, 0xcf, 0x13, 0x73, 0xcc, 0x91, 0xb8, 0x70, 0x32, 0x1f,
0x70, 0x4d, 0xee, 0x12, 0xe1, 0x03, 0xae, 0x21, 0x46, 0xfb, 0xb4, 0xe3, 0xbe, 0x78, 0xde, 0x98,
0xbb, 0x87, 0x79, 0xe3, 0xe8, 0x1d, 0xe7, 0x8d, 0x17, 0x40, 0x2e, 0x74, 0x42, 0x17, 0xf3, 0x83,
0x4c, 0xbb, 0x46, 0x5d, 0x67, 0x44, 0x24, 0x78, 0xf0, 0x2d, 0x30, 0x66, 0xe3, 0x9a, 0x15, 0xb9,
0x21, 0x3f, 0xb3, 0x26, 0x2e, 0xaf, 0x0e, 0x20, 0x85, 0xc4, 0x30, 0x78, 0x4d, 0xd8, 0x45, 0x31,
0x00, 0x7c, 0x18, 0x8c, 0x35, 0xac, 0x03, 0xa7, 0x11, 0x35, 0x78, 0x83, 0x69, 0x08, 0xb1, 0x4d,
0x41, 0x42, 0x31, 0x8f, 0x55, 0x46, 0x7c, 0x50, 0x75, 0x23, 0xea, 0x34, 0xb1, 0x64, 0xca, 0xe6,
0x4f, 0x55, 0xc6, 0xf5, 0x14, 0x1f, 0x75, 0x69, 0x70, 0x30, 0xc7, 0xe3, 0xca, 0x13, 0x1a, 0x98,
0x20, 0xa1, 0x98, 0xd7, 0x09, 0x26, 0xe5, 0x27, 0xfb, 0x81, 0x49, 0xe5, 0x2e, 0x0d, 0xf8, 0x18,
0x18, 0x6f, 0x58, 0x07, 0x57, 0xb1, 0x57, 0x0f, 0x6f, 0x99, 0x27, 0x17, 0x8d, 0xa5, 0x6c, 0xf9,
0x64, 0xbb, 0x55, 0x18, 0xdf, 0x8c, 0x89, 0x28, 0xe1, 0x73, 0x61, 0xc7, 0x93, 0xc2, 0xa7, 0x34,
0xe1, 0x98, 0x88, 0x12, 0x3e, 0xeb, 0x5e, 0x02, 0x2b, 0x64, 0x9b, 0xcb, 0x9c, 0xea, 0xbc, 0xe6,
0x6e, 0x0b, 0x32, 0x8a, 0xf9, 0x70, 0x09, 0xe4, 0x1b, 0xd6, 0x01, 0x1f, 0x49, 0x98, 0xd3, 0xdc,
0x2c, 0x1f, 0x8c, 0x6f, 0x4a, 0x1a, 0x52, 0x5c, 0x2e, 0xe9, 0x78, 0x42, 0x72, 0x46, 0x93, 0x94,
0x34, 0xa4, 0xb8, 0x2c, 0x89, 0x23, 0xcf, 0xb9, 0x1d, 0x61, 0x21, 0x0c, 0x79, 0x64, 0x54, 0x12,
0xdf, 0x48, 0x58, 0x48, 0x97, 0x83, 0x25, 0x00, 0x1a, 0x91, 0x1b, 0x3a, 0x81, 0x8b, 0xb7, 0x6a,
0xe6, 0x69, 0x1e, 0x7f, 0xde, 0xf4, 0x6f, 0x2a, 0x2a, 0xd2, 0x24, 0x20, 0x06, 0x23, 0xd8, 0x8b,
0x1a, 0xe6, 0x19, 0x7e, 0xb0, 0x0f, 0x24, 0x05, 0xd5, 0xce, 0x59, 0xf7, 0xa2, 0x06, 0xe2, 0xe6,
0xe1, 0x33, 0xe0, 0x64, 0xc3, 0x3a, 0x60, 0xe5, 0x00, 0x93, 0xd0, 0xc1, 0xd4, 0x9c, 0xe5, 0x0f,
0x3f, 0xc3, 0xba, 0xdd, 0x4d, 0x9d, 0x81, 0x3a, 0xe5, 0xb8, 0xa2, 0xe3, 0x69, 0x8a, 0x73, 0x9a,
0xa2, 0xce, 0x40, 0x9d, 0x72, 0x2c, 0xd2, 0x04, 0xdf, 0x8e, 0x1c, 0x82, 0x6d, 0xf3, 0x01, 0xde,
0x20, 0xcb, 0x97, 0x15, 0x82, 0x86, 0x14, 0x17, 0x36, 0xe3, 0xd9, 0x95, 0xc9, 0xb7, 0xe1, 0x8d,
0xc1, 0x56, 0xf2, 0x2d, 0xb2, 0x42, 0x88, 0x75, 0x28, 0x4e, 0x1a, 0x7d, 0x6a, 0x05, 0x29, 0xc8,
0x59, 0xae, 0xbb, 0x55, 0x33, 0xcf, 0xf2, 0xd8, 0x0f, 0xfa, 0x04, 0x51, 0x55, 0x67, 0x85, 0x81,
0x20, 0x81, 0xc5, 0x40, 0x7d, 0x8f, 0xa5, 0xc6, 0xfc, 0x70, 0x41, 0xb7, 0x18, 0x08, 0x12, 0x58,
0xfc, 0x49, 0xbd, 0xc3, 0xad, 0x9a, 0xf9, 0xe0, 0x90, 0x9f, 0x94, 0x81, 0x20, 0x81, 0x05, 0x1d,
0x90, 0xf5, 0xfc, 0xd0, 0x3c, 0x37, 0x94, 0xe3, 0x99, 0x1f, 0x38, 0xd7, 0xfc, 0x10, 0x31, 0x0c,
0xf8, 0x23, 0x03, 0x80, 0x20, 0x49, 0xd1, 0x87, 0x06, 0x32, 0x12, 0x49, 0x41, 0x96, 0x92, 0xdc,
0x5e, 0xf7, 0x42, 0x72, 0x98, 0x5c, 0x8f, 0xb4, 0x3d, 0xa0, 0x79, 0x01, 0x7f, 0x6e, 0x80, 0x33,
0x7a, 0x9b, 0xac, 0xdc, 0x5b, 0xe0, 0x11, 0xb9, 0x3e, 0xe8, 0x34, 0x2f, 0xfb, 0xbe, 0x5b, 0x36,
0xdb, 0xad, 0xc2, 0x99, 0x95, 0x1e, 0xa8, 0xa8, 0xa7, 0x2f, 0xf0, 0xd7, 0x06, 0x98, 0x91, 0x55,
0x54, 0xf3, 0xb0, 0xc0, 0x03, 0x88, 0x07, 0x1d, 0xc0, 0x34, 0x8e, 0x88, 0xa3, 0x7a, 0xc9, 0xde,
0xc5, 0x47, 0xdd, 0xae, 0xc1, 0xdf, 0x19, 0x60, 0xd2, 0xc6, 0x01, 0xf6, 0x6c, 0xec, 0x55, 0x99,
0xaf, 0x8b, 0x03, 0x19, 0x59, 0xa4, 0x7d, 0x5d, 0xd3, 0x20, 0x84, 0x9b, 0x25, 0xe9, 0xe6, 0xa4,
0xce, 0x3a, 0x6a, 0x15, 0xe6, 0x12, 0x55, 0x9d, 0x83, 0x3a, 0xbc, 0x84, 0xef, 0x19, 0x60, 0x2a,
0x59, 0x00, 0x71, 0xa4, 0x9c, 0x1f, 0x62, 0x1e, 0xf0, 0xf6, 0x75, 0xa5, 0x13, 0x10, 0xa5, 0x3d,
0x80, 0xbf, 0x31, 0x58, 0xa7, 0x16, 0xdf, 0xfb, 0xa8, 0x59, 0xe4, 0xb1, 0x7c, 0x63, 0xe0, 0xb1,
0x54, 0x08, 0x22, 0x94, 0x97, 0x92, 0x56, 0x50, 0x71, 0x8e, 0x5a, 0x85, 0x59, 0x3d, 0x92, 0x8a,
0x81, 0x74, 0x0f, 0xe1, 0x77, 0x0d, 0x30, 0x89, 0x93, 0x8e, 0x9b, 0x9a, 0x17, 0x06, 0x12, 0xc4,
0x9e, 0x4d, 0xbc, 0xb8, 0xa9, 0x6b, 0x2c, 0x8a, 0x3a, 0xb0, 0x59, 0x07, 0x89, 0x0f, 0xac, 0x46,
0xe0, 0x62, 0xf3, 0xbf, 0x06, 0xdc, 0x41, 0xae, 0x0b, 0xbb, 0x28, 0x06, 0x80, 0x97, 0x40, 0xde,
0x8b, 0x5c, 0xd7, 0xda, 0x75, 0xb1, 0xf9, 0x30, 0xef, 0x45, 0xd4, 0x48, 0xf6, 0x9a, 0xa4, 0x23,
0x25, 0x01, 0x6b, 0x60, 0xf1, 0xe0, 0x25, 0xf5, 0x79, 0x52, 0xcf, 0xa1, 0xa1, 0x79, 0x91, 0x5b,
0x99, 0x6f, 0xb7, 0x0a, 0x73, 0x3b, 0xbd, 0xc7, 0x8a, 0x77, 0xb5, 0x01, 0x5f, 0x01, 0x0f, 0x6a,
0x32, 0xeb, 0x8d, 0x5d, 0x6c, 0xdb, 0xd8, 0x8e, 0x2f, 0x6e, 0xe6, 0x7f, 0x8b, 0xc1, 0x65, 0xbc,
0xc1, 0x77, 0xd2, 0x02, 0xe8, 0x4e, 0xda, 0xf0, 0x2a, 0x98, 0xd3, 0xd8, 0x1b, 0x5e, 0xb8, 0x45,
0x2a, 0x21, 0x71, 0xbc, 0xba, 0xb9, 0xc4, 0xed, 0x9e, 0x89, 0x77, 0xe4, 0x8e, 0xc6, 0x43, 0x7d,
0x74, 0xe0, 0x17, 0x3a, 0xac, 0xf1, 0x57, 0x68, 0x56, 0xf0, 0x12, 0x3e, 0xa4, 0xe6, 0x23, 0xbc,
0x3b, 0xe1, 0x8b, 0xbd, 0xa3, 0xd1, 0x51, 0x1f, 0x79, 0xf8, 0x79, 0x70, 0x3a, 0xc5, 0x61, 0x57,
0x14, 0xf3, 0x51, 0x71, 0xd7, 0x60, 0xfd, 0xec, 0x4e, 0x4c, 0x44, 0xbd, 0x24, 0xe1, 0xe7, 0x00,
0xd4, 0xc8, 0x9b, 0x56, 0xc0, 0xf5, 0x1f, 0x13, 0xd7, 0x1e, 0xb6, 0xa2, 0x3b, 0x92, 0x86, 0x7a,
0xc8, 0xc1, 0x9f, 0x18, 0x1d, 0x4f, 0x92, 0xdc, 0x8e, 0xa9, 0x79, 0x89, 0xef, 0xdf, 0xcd, 0x63,
0x66, 0xa1, 0xf6, 0x1e, 0x24, 0x72, 0xb1, 0x16, 0x66, 0x0d, 0x0a, 0xf5, 0x71, 0x61, 0x9e, 0xdd,
0xd0, 0x53, 0x15, 0x1e, 0x4e, 0x83, 0xec, 0x1e, 0x96, 0x5f, 0x55, 0x20, 0xf6, 0x13, 0xda, 0x20,
0xd7, 0xb4, 0xdc, 0x28, 0x1e, 0x32, 0x0c, 0xb8, 0x3b, 0x40, 0xc2, 0xf8, 0x73, 0x99, 0x67, 0x8d,
0xf9, 0xf7, 0x0d, 0x30, 0xd7, 0xfb, 0xe0, 0xb9, 0xaf, 0x6e, 0xfd, 0xd4, 0x00, 0x33, 0x5d, 0x67,
0x4c, 0x0f, 0x8f, 0x6e, 0x77, 0x7a, 0xf4, 0xca, 0xa0, 0x0f, 0x0b, 0xb1, 0x39, 0x78, 0x87, 0xac,
0xbb, 0xf7, 0x03, 0x03, 0x4c, 0xa7, 0xcb, 0xf6, 0xfd, 0x8c, 0x57, 0xf1, 0xfd, 0x0c, 0x98, 0xeb,
0xdd, 0xd8, 0x43, 0xa2, 0x26, 0x18, 0xc3, 0x99, 0x04, 0xf5, 0x9a, 0x1a, 0xbf, 0x63, 0x80, 0x89,
0xb7, 0x94, 0x5c, 0xfc, 0xd6, 0x7d, 0xe0, 0x33, 0xa8, 0xf8, 0x9c, 0x4c, 0x18, 0x14, 0xe9, 0xb8,
0xc5, 0xdf, 0x1a, 0x60, 0xb6, 0x67, 0x03, 0x00, 0x2f, 0x82, 0x51, 0xcb, 0x75, 0xfd, 0x7d, 0x31,
0x4a, 0xd4, 0xde, 0x11, 0xac, 0x70, 0x2a, 0x92, 0x5c, 0x2d, 0x7a, 0x99, 0xcf, 0x2a, 0x7a, 0xc5,
0x3f, 0x18, 0xe0, 0xdc, 0x9d, 0x32, 0xf1, 0xbe, 0x2c, 0xe9, 0x12, 0xc8, 0xcb, 0xe6, 0xfd, 0x90,
0x2f, 0xa7, 0x2c, 0xc5, 0xb2, 0x68, 0xf0, 0x0f, 0xcd, 0xc4, 0xaf, 0xe2, 0x07, 0x06, 0x98, 0xae,
0x60, 0xd2, 0x74, 0xaa, 0x18, 0xe1, 0x1a, 0x26, 0xd8, 0xab, 0x62, 0xb8, 0x0c, 0xc6, 0xf9, 0xeb,
0xee, 0xc0, 0xaa, 0xc6, 0xaf, 0x6e, 0x66, 0x64, 0xc8, 0xc7, 0xaf, 0xc5, 0x0c, 0x94, 0xc8, 0xa8,
0xd7, 0x3c, 0x99, 0xbe, 0xaf, 0x79, 0xce, 0x81, 0x91, 0x20, 0x19, 0x44, 0xe7, 0x19, 0x97, 0xcf,
0x9e, 0x39, 0x95, 0x73, 0x7d, 0x12, 0xf2, 0xe9, 0x5a, 0x4e, 0x72, 0x7d, 0x12, 0x22, 0x4e, 0x2d,
0xfe, 0x29, 0x03, 0x4e, 0x75, 0xd6, 0x71, 0x06, 0x48, 0x22, 0xb7, 0xeb, 0xbd, 0x12, 0xe3, 0x21,
0xce, 0xd1, 0x3f, 0x77, 0xc9, 0xdc, 0xf9, 0x73, 0x17, 0xf8, 0x02, 0x98, 0x91, 0x3f, 0xd7, 0x0f,
0x02, 0x82, 0x29, 0x7f, 0x77, 0x9a, 0xed, 0xfc, 0x68, 0x76, 0x33, 0x2d, 0x80, 0xba, 0x75, 0xe0,
0xff, 0xa7, 0x3e, 0xc5, 0xb9, 0x90, 0x7c, 0x86, 0xc3, 0x5a, 0x42, 0xde, 0x67, 0xdc, 0x64, 0x65,
0x60, 0x9d, 0x10, 0x9f, 0xa4, 0xbe, 0xcf, 0x59, 0x06, 0xe3, 0x35, 0x26, 0xc0, 0xe7, 0xf5, 0xb9,
0xce, 0xa0, 0x5f, 0x89, 0x19, 0x28, 0x91, 0x81, 0xcf, 0x83, 0x29, 0x3f, 0x10, 0x1d, 0xf0, 0x96,
0x6b, 0x57, 0xb0, 0x5b, 0xe3, 0x93, 0xc4, 0x7c, 0x3c, 0xee, 0xed, 0x60, 0xa1, 0xb4, 0x6c, 0xf1,
0x8f, 0x06, 0xe8, 0xf5, 0xa1, 0x1d, 0x3c, 0x2b, 0xc6, 0xb6, 0xda, 0x2c, 0x34, 0x1e, 0xd9, 0xc2,
0x26, 0x18, 0xa3, 0x22, 0x57, 0x64, 0x2e, 0x6f, 0x1d, 0x33, 0x97, 0xd3, 0x99, 0x27, 0xfa, 0xc5,
0x98, 0x1a, 0x83, 0xb1, 0x74, 0xae, 0x5a, 0xe5, 0xc8, 0xb3, 0xe5, 0x24, 0x7f, 0x52, 0xa4, 0xf3,
0xea, 0x8a, 0xa0, 0x21, 0xc5, 0x2d, 0x57, 0x3f, 0xfc, 0x64, 0xe1, 0xc4, 0x47, 0x9f, 0x2c, 0x9c,
0xf8, 0xf8, 0x93, 0x85, 0x13, 0x5f, 0x6f, 0x2f, 0x18, 0x1f, 0xb6, 0x17, 0x8c, 0x8f, 0xda, 0x0b,
0xc6, 0xc7, 0xed, 0x05, 0xe3, 0x6f, 0xed, 0x05, 0xe3, 0x87, 0x7f, 0x5f, 0x38, 0xf1, 0xe5, 0xe7,
0x8f, 0xf5, 0x6d, 0xfb, 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x16, 0x56, 0x59, 0x35, 0x34, 0x2f,
0x00, 0x00,
// 3226 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x5b, 0xcf, 0x73, 0x1c, 0x47,
0xf5, 0xf7, 0xac, 0xb4, 0xd2, 0xaa, 0x25, 0x5b, 0x52, 0xdb, 0x52, 0xc6, 0x8a, 0xa3, 0x95, 0xd7,
0xdf, 0xf8, 0xab, 0x24, 0xce, 0x2a, 0xf1, 0x37, 0xf9, 0x26, 0x04, 0x52, 0x29, 0xad, 0x24, 0x07,
0x25, 0x96, 0x25, 0x7a, 0x6d, 0x47, 0x90, 0x9f, 0xa3, 0x9d, 0x5e, 0x69, 0xac, 0xd9, 0x99, 0x71,
0xf7, 0xcc, 0x4a, 0xaa, 0x00, 0x05, 0xa4, 0x52, 0x50, 0x14, 0x10, 0x8a, 0xe4, 0x42, 0x01, 0x87,
0x40, 0x71, 0xe1, 0x00, 0x07, 0xb8, 0xc1, 0x1f, 0x90, 0x63, 0x0a, 0x38, 0xe4, 0x40, 0x6d, 0x91,
0xe5, 0x5f, 0xa0, 0xa0, 0x4a, 0x27, 0xaa, 0x7f, 0x4c, 0x4f, 0xcf, 0xec, 0xae, 0xed, 0x8a, 0x56,
0x71, 0x71, 0xd3, 0xbe, 0xf7, 0xfa, 0x7d, 0xde, 0xbc, 0x7e, 0xfd, 0xde, 0xeb, 0x37, 0x23, 0x50,
0xdf, 0x7d, 0x96, 0x96, 0x1d, 0x7f, 0x61, 0x37, 0xda, 0xc2, 0xc4, 0xc3, 0x21, 0xa6, 0x0b, 0x4d,
0xec, 0xd9, 0x3e, 0x59, 0x90, 0x0c, 0x2b, 0x70, 0xf0, 0x7e, 0x88, 0x3d, 0xea, 0xf8, 0x1e, 0x7d,
0xdc, 0x0a, 0x1c, 0x8a, 0x49, 0x13, 0x93, 0x85, 0x60, 0x77, 0x9b, 0xf1, 0x68, 0x5a, 0x60, 0xa1,
0xf9, 0xe4, 0x16, 0x0e, 0xad, 0x27, 0x17, 0xb6, 0xb1, 0x87, 0x89, 0x15, 0x62, 0xbb, 0x1c, 0x10,
0x3f, 0xf4, 0xe1, 0xf3, 0x42, 0x5d, 0x39, 0x25, 0xfd, 0xa6, 0x52, 0x57, 0x0e, 0x76, 0xb7, 0x19,
0x8f, 0xa6, 0x05, 0xca, 0x52, 0xdd, 0xcc, 0xe3, 0xdb, 0x4e, 0xb8, 0x13, 0x6d, 0x95, 0x6b, 0x7e,
0x63, 0x61, 0xdb, 0xdf, 0xf6, 0x17, 0xb8, 0xd6, 0xad, 0xa8, 0xce, 0x7f, 0xf1, 0x1f, 0xfc, 0x2f,
0x81, 0x36, 0xf3, 0x54, 0x62, 0x7c, 0xc3, 0xaa, 0xed, 0x38, 0x1e, 0x26, 0x07, 0x89, 0xc5, 0x0d,
0x1c, 0x5a, 0x0b, 0xcd, 0x0e, 0x1b, 0x67, 0x16, 0x7a, 0xad, 0x22, 0x91, 0x17, 0x3a, 0x0d, 0xdc,
0xb1, 0xe0, 0xff, 0xef, 0xb6, 0x80, 0xd6, 0x76, 0x70, 0xc3, 0xca, 0xae, 0x2b, 0x1d, 0x1a, 0x60,
0x72, 0xc9, 0xf7, 0x9a, 0x98, 0xb0, 0xa7, 0x44, 0xf8, 0x76, 0x84, 0x69, 0x08, 0x2b, 0x60, 0x20,
0x72, 0x6c, 0xd3, 0x98, 0x33, 0xe6, 0x47, 0x2a, 0x4f, 0x7c, 0xd4, 0x2a, 0x9e, 0x68, 0xb7, 0x8a,
0x03, 0x37, 0x56, 0x97, 0x0f, 0x5b, 0xc5, 0xf3, 0xbd, 0x90, 0xc2, 0x83, 0x00, 0xd3, 0xf2, 0x8d,
0xd5, 0x65, 0xc4, 0x16, 0xc3, 0x17, 0xc1, 0xa4, 0x8d, 0xa9, 0x43, 0xb0, 0xbd, 0xb8, 0xb1, 0x7a,
0x53, 0xe8, 0x37, 0x73, 0x5c, 0xe3, 0x59, 0xa9, 0x71, 0x72, 0x39, 0x2b, 0x80, 0x3a, 0xd7, 0xc0,
0x4d, 0x30, 0xec, 0x6f, 0xdd, 0xc2, 0xb5, 0x90, 0x9a, 0x03, 0x73, 0x03, 0xf3, 0xa3, 0x97, 0x1f,
0x2f, 0x27, 0x3b, 0xa8, 0x4c, 0xe0, 0xdb, 0x26, 0x1f, 0xb6, 0x8c, 0xac, 0xbd, 0x95, 0x78, 0xe7,
0x2a, 0xe3, 0x12, 0x6d, 0x78, 0x5d, 0x68, 0x41, 0xb1, 0xba, 0xd2, 0xaf, 0x72, 0x00, 0xea, 0x0f,
0x4f, 0x03, 0xdf, 0xa3, 0xb8, 0x2f, 0x4f, 0x4f, 0xc1, 0x44, 0x8d, 0x6b, 0x0e, 0xb1, 0x2d, 0x71,
0xcd, 0xdc, 0x67, 0xb1, 0xde, 0x94, 0xf8, 0x13, 0x4b, 0x19, 0x75, 0xa8, 0x03, 0x00, 0x5e, 0x07,
0x43, 0x04, 0xd3, 0xc8, 0x0d, 0xcd, 0x81, 0x39, 0x63, 0x7e, 0xf4, 0xf2, 0xa5, 0x9e, 0x50, 0x3c,
0xbe, 0x59, 0xf0, 0x95, 0x9b, 0x4f, 0x96, 0xab, 0xa1, 0x15, 0x46, 0xb4, 0x72, 0x4a, 0x22, 0x0d,
0x21, 0xae, 0x03, 0x49, 0x5d, 0xa5, 0xef, 0xe5, 0xc0, 0x84, 0xee, 0xa5, 0xa6, 0x83, 0xf7, 0xe0,
0x1e, 0x18, 0x26, 0x22, 0x58, 0xb8, 0x9f, 0x46, 0x2f, 0x6f, 0x94, 0x8f, 0x74, 0xac, 0xca, 0x1d,
0x41, 0x58, 0x19, 0x65, 0x7b, 0x26, 0x7f, 0xa0, 0x18, 0x0d, 0xbe, 0x0d, 0x0a, 0x44, 0x6e, 0x14,
0x8f, 0xa6, 0xd1, 0xcb, 0x5f, 0xe9, 0x23, 0xb2, 0x50, 0x5c, 0x19, 0x6b, 0xb7, 0x8a, 0x85, 0xf8,
0x17, 0x52, 0x80, 0xa5, 0xf7, 0x73, 0x60, 0x76, 0x29, 0xa2, 0xa1, 0xdf, 0x40, 0x98, 0xfa, 0x11,
0xa9, 0xe1, 0x25, 0xdf, 0x8d, 0x1a, 0xde, 0x32, 0xae, 0x3b, 0x9e, 0x13, 0xb2, 0x68, 0x9d, 0x03,
0x83, 0x9e, 0xd5, 0xc0, 0x32, 0x7a, 0xc6, 0xa4, 0x4f, 0x07, 0xaf, 0x59, 0x0d, 0x8c, 0x38, 0x87,
0x49, 0xb0, 0x60, 0x91, 0x67, 0x41, 0x49, 0x5c, 0x3f, 0x08, 0x30, 0xe2, 0x1c, 0x78, 0x11, 0x0c,
0xd5, 0x7d, 0xd2, 0xb0, 0xc4, 0x3e, 0x8e, 0x24, 0x3b, 0x73, 0x85, 0x53, 0x91, 0xe4, 0xc2, 0xa7,
0xc1, 0xa8, 0x8d, 0x69, 0x8d, 0x38, 0x01, 0x83, 0x36, 0x07, 0xb9, 0xf0, 0x69, 0x29, 0x3c, 0xba,
0x9c, 0xb0, 0x90, 0x2e, 0x07, 0x2f, 0x81, 0x42, 0x40, 0x1c, 0x9f, 0x38, 0xe1, 0x81, 0x99, 0x9f,
0x33, 0xe6, 0xf3, 0x95, 0x09, 0xb9, 0xa6, 0xb0, 0x21, 0xe9, 0x48, 0x49, 0xc0, 0x39, 0x50, 0x78,
0xa9, 0xba, 0x7e, 0x6d, 0xc3, 0x0a, 0x77, 0xcc, 0x21, 0x8e, 0x30, 0xc8, 0xa4, 0x91, 0xa2, 0x96,
0xfe, 0x96, 0x03, 0x66, 0xd6, 0x2b, 0xb1, 0x4b, 0xe1, 0x15, 0x50, 0xa0, 0x21, 0xcb, 0x38, 0xdb,
0x07, 0xd2, 0x27, 0x8f, 0xc6, 0x60, 0x55, 0x49, 0x3f, 0x6c, 0x15, 0xa7, 0x93, 0x15, 0x31, 0x95,
0xfb, 0x43, 0xad, 0x85, 0xbf, 0x30, 0xc0, 0xe9, 0x3d, 0xbc, 0xb5, 0xe3, 0xfb, 0xbb, 0x4b, 0xae,
0x83, 0xbd, 0x70, 0xc9, 0xf7, 0xea, 0xce, 0xb6, 0x8c, 0x01, 0x74, 0xc4, 0x18, 0x78, 0xa5, 0x53,
0x73, 0xe5, 0x81, 0x76, 0xab, 0x78, 0xba, 0x0b, 0x03, 0x75, 0xb3, 0x03, 0x6e, 0x02, 0xb3, 0x96,
0x39, 0x24, 0x32, 0x81, 0x89, 0xb4, 0x35, 0x52, 0x39, 0xd7, 0x6e, 0x15, 0xcd, 0xa5, 0x1e, 0x32,
0xa8, 0xe7, 0xea, 0xd2, 0x3b, 0x03, 0x59, 0xf7, 0x6a, 0xe1, 0xf6, 0x16, 0x28, 0xb0, 0x63, 0x6c,
0x5b, 0xa1, 0x25, 0x0f, 0xe2, 0x13, 0xf7, 0x76, 0xe8, 0x45, 0xce, 0x58, 0xc3, 0xa1, 0x55, 0x81,
0x72, 0x43, 0x40, 0x42, 0x43, 0x4a, 0x2b, 0xfc, 0x06, 0x18, 0xa4, 0x01, 0xae, 0x49, 0x47, 0xbf,
0x7a, 0xd4, 0xc3, 0xd6, 0xe3, 0x41, 0xaa, 0x01, 0xae, 0x25, 0x67, 0x81, 0xfd, 0x42, 0x1c, 0x16,
0xbe, 0x6b, 0x80, 0x21, 0xca, 0x13, 0x94, 0x4c, 0x6a, 0xaf, 0x1f, 0x97, 0x05, 0x99, 0x2c, 0x28,
0x7e, 0x23, 0x09, 0x5e, 0xfa, 0x67, 0x0e, 0x9c, 0xef, 0xb5, 0x74, 0xc9, 0xf7, 0x6c, 0xb1, 0x1d,
0xab, 0xf2, 0x6c, 0x8b, 0x48, 0x7f, 0x5a, 0x3f, 0xdb, 0x87, 0xad, 0xe2, 0xc3, 0x77, 0x55, 0xa0,
0x25, 0x81, 0x2f, 0xa8, 0xe7, 0x16, 0x89, 0xe2, 0x7c, 0xda, 0xb0, 0xc3, 0x56, 0x71, 0x5c, 0x2d,
0x4b, 0xdb, 0x0a, 0x9b, 0x00, 0xba, 0x16, 0x0d, 0xaf, 0x13, 0xcb, 0xa3, 0x42, 0xad, 0xd3, 0xc0,
0xd2, 0x7d, 0x8f, 0xde, 0x5b, 0x78, 0xb0, 0x15, 0x95, 0x19, 0x09, 0x09, 0xaf, 0x76, 0x68, 0x43,
0x5d, 0x10, 0x58, 0xde, 0x22, 0xd8, 0xa2, 0x2a, 0x15, 0x69, 0x15, 0x85, 0x51, 0x91, 0xe4, 0xc2,
0x47, 0xc0, 0x70, 0x03, 0x53, 0x6a, 0x6d, 0x63, 0x9e, 0x7f, 0x46, 0x92, 0x12, 0xbd, 0x26, 0xc8,
0x28, 0xe6, 0xb3, 0xfe, 0xe4, 0x5c, 0x2f, 0xaf, 0x5d, 0x75, 0x68, 0x08, 0x5f, 0xeb, 0x38, 0x00,
0xe5, 0x7b, 0x7b, 0x42, 0xb6, 0x9a, 0x87, 0xbf, 0x4a, 0x7e, 0x31, 0x45, 0x0b, 0xfe, 0xaf, 0x83,
0xbc, 0x13, 0xe2, 0x46, 0x5c, 0xbb, 0x5f, 0x39, 0xa6, 0xd8, 0xab, 0x9c, 0x94, 0x36, 0xe4, 0x57,
0x19, 0x1a, 0x12, 0xa0, 0xa5, 0x5f, 0xe7, 0xc0, 0x43, 0xbd, 0x96, 0xb0, 0x82, 0x42, 0x99, 0xc7,
0x03, 0x37, 0x22, 0x96, 0x2b, 0x23, 0x4e, 0x79, 0x7c, 0x83, 0x53, 0x91, 0xe4, 0xb2, 0x94, 0x4f,
0x1d, 0x6f, 0x3b, 0x72, 0x2d, 0x22, 0xc3, 0x49, 0x3d, 0x75, 0x55, 0xd2, 0x91, 0x92, 0x80, 0x65,
0x00, 0xe8, 0x8e, 0x4f, 0x42, 0x8e, 0x21, 0xb3, 0xd7, 0x29, 0x96, 0x20, 0xaa, 0x8a, 0x8a, 0x34,
0x09, 0x56, 0xd1, 0x76, 0x1d, 0xcf, 0x96, 0xbb, 0xae, 0x4e, 0xf1, 0xcb, 0x8e, 0x67, 0x23, 0xce,
0x61, 0xf8, 0xae, 0x43, 0x43, 0x46, 0x91, 0x5b, 0x9e, 0xf2, 0x3a, 0x97, 0x54, 0x12, 0x0c, 0xbf,
0xc6, 0xb2, 0xbe, 0x4f, 0x1c, 0x4c, 0xcd, 0xa1, 0x04, 0x7f, 0x49, 0x51, 0x91, 0x26, 0x51, 0x7a,
0x07, 0xf4, 0x0e, 0x12, 0x96, 0x4a, 0xe0, 0x05, 0x90, 0xdf, 0x26, 0x7e, 0x14, 0x48, 0x2f, 0x29,
0x6f, 0xbf, 0xc8, 0x88, 0x48, 0xf0, 0x58, 0x54, 0x36, 0x53, 0x6d, 0xaa, 0x8a, 0xca, 0xb8, 0x39,
0x8d, 0xf9, 0xf0, 0xdb, 0x06, 0xc8, 0x7b, 0xd2, 0x39, 0x2c, 0xe4, 0x5e, 0x3b, 0xa6, 0xb8, 0xe0,
0xee, 0x4d, 0xcc, 0x15, 0x9e, 0x17, 0xc8, 0xf0, 0x29, 0x90, 0xa7, 0x35, 0x3f, 0xc0, 0xd2, 0xeb,
0xb3, 0xb1, 0x50, 0x95, 0x11, 0x0f, 0x5b, 0xc5, 0x93, 0xb1, 0x3a, 0x4e, 0x40, 0x42, 0x18, 0x7e,
0xd7, 0x00, 0xa0, 0x69, 0xb9, 0x8e, 0x6d, 0xf1, 0x96, 0x21, 0xcf, 0xcd, 0xef, 0x6f, 0x58, 0xdf,
0x54, 0xea, 0xc5, 0xa6, 0x25, 0xbf, 0x91, 0x06, 0x0d, 0xdf, 0x33, 0xc0, 0x18, 0x8d, 0xb6, 0x88,
0x5c, 0x45, 0x79, 0x73, 0x31, 0x7a, 0xf9, 0xab, 0x7d, 0xb5, 0xa5, 0xaa, 0x01, 0x54, 0x26, 0xda,
0xad, 0xe2, 0x98, 0x4e, 0x41, 0x29, 0x03, 0xe0, 0x0f, 0x0c, 0x50, 0x68, 0xc6, 0x35, 0x7b, 0x98,
0x1f, 0xf8, 0x37, 0x8e, 0x69, 0x63, 0x65, 0x44, 0x25, 0xa7, 0x40, 0xf5, 0x01, 0xca, 0x02, 0xf8,
0x47, 0x03, 0x98, 0x96, 0x2d, 0x12, 0xbc, 0xe5, 0x6e, 0x10, 0xc7, 0x0b, 0x31, 0x11, 0xfd, 0x26,
0x35, 0x0b, 0xdc, 0xbc, 0xfe, 0xd6, 0xc2, 0x6c, 0x2f, 0x5b, 0x99, 0x93, 0xd6, 0x99, 0x8b, 0x3d,
0xcc, 0x40, 0x3d, 0x0d, 0x84, 0x1f, 0x18, 0x60, 0x82, 0x62, 0x17, 0xd7, 0x42, 0x6b, 0xcb, 0xc5,
0x57, 0x1c, 0xec, 0xda, 0xd4, 0x1c, 0xe5, 0x56, 0x5f, 0x3b, 0xa2, 0xd5, 0xd5, 0xb4, 0xda, 0xe4,
0x8a, 0x94, 0x61, 0x50, 0xd4, 0x61, 0x01, 0x8f, 0xff, 0xa4, 0xd3, 0x32, 0x47, 0x8e, 0x21, 0xfe,
0x93, 0x16, 0x4f, 0x26, 0xad, 0xa4, 0xb1, 0xd3, 0xa0, 0xe1, 0x3a, 0x98, 0x0a, 0x08, 0xe6, 0x00,
0x37, 0xbc, 0x5d, 0xcf, 0xdf, 0xf3, 0xa4, 0x93, 0xc0, 0x9c, 0x31, 0x5f, 0xa8, 0x9c, 0x6d, 0xb7,
0x8a, 0x53, 0x1b, 0xdd, 0x04, 0x50, 0xf7, 0x75, 0xa5, 0xf7, 0x06, 0xb2, 0x97, 0x93, 0x6c, 0x73,
0xc3, 0x36, 0x85, 0x99, 0x20, 0xb6, 0x8c, 0x9a, 0x06, 0xdf, 0x8e, 0xb7, 0x8e, 0x29, 0xc6, 0x55,
0x77, 0x92, 0x34, 0x98, 0x8a, 0x44, 0x91, 0x66, 0x07, 0xfc, 0xa9, 0x01, 0x4e, 0x5a, 0xb5, 0x1a,
0x0e, 0x42, 0x6c, 0x8b, 0x9a, 0x93, 0xfb, 0x1c, 0xd2, 0xea, 0x94, 0xb4, 0xea, 0xe4, 0xa2, 0x0e,
0x8d, 0xd2, 0x96, 0xc0, 0xe7, 0xc0, 0x29, 0x1a, 0xfa, 0x04, 0xdb, 0x99, 0x6e, 0x1e, 0xb6, 0x5b,
0xc5, 0x53, 0xd5, 0x14, 0x07, 0x65, 0x24, 0x4b, 0xff, 0x1a, 0x02, 0xc5, 0xbb, 0x64, 0x80, 0x7b,
0xb8, 0x2f, 0x5e, 0x04, 0x43, 0xfc, 0x71, 0x6d, 0xee, 0x95, 0x82, 0xd6, 0xa1, 0x72, 0x2a, 0x92,
0x5c, 0x56, 0xbf, 0x18, 0x3e, 0xeb, 0xaa, 0x06, 0xb8, 0xa0, 0xaa, 0x5f, 0x55, 0x41, 0x46, 0x31,
0x1f, 0x5e, 0x06, 0xc0, 0xc6, 0x01, 0xc1, 0xac, 0x86, 0xda, 0xe6, 0x30, 0x97, 0x56, 0x9b, 0xb4,
0xac, 0x38, 0x48, 0x93, 0x82, 0x57, 0x00, 0x8c, 0x7f, 0x39, 0xbe, 0xf7, 0x8a, 0x45, 0x3c, 0xc7,
0xdb, 0x36, 0x0b, 0xdc, 0xec, 0x69, 0xd6, 0x24, 0x2e, 0x77, 0x70, 0x51, 0x97, 0x15, 0xf0, 0x6d,
0x30, 0x24, 0x66, 0x51, 0xbc, 0x70, 0x1d, 0x63, 0xf1, 0x01, 0xdc, 0x47, 0x1c, 0x0a, 0x49, 0xc8,
0xce, 0xa2, 0x93, 0xbf, 0xdf, 0x45, 0xe7, 0x8e, 0x59, 0x7e, 0xe8, 0xbf, 0x32, 0xcb, 0x8f, 0xdc,
0xef, 0x2c, 0x5f, 0xfa, 0xb7, 0x91, 0x4d, 0x85, 0xda, 0x0e, 0x54, 0x6b, 0x96, 0x8b, 0xe1, 0x32,
0x98, 0x60, 0xf7, 0x4b, 0x84, 0x03, 0xd7, 0xa9, 0x59, 0x94, 0x8f, 0x37, 0xc4, 0x19, 0x4c, 0x80,
0x32, 0x7c, 0xd4, 0xb1, 0x02, 0xbe, 0x04, 0xa0, 0xb8, 0x73, 0xa5, 0xf4, 0x88, 0xf6, 0x51, 0xdd,
0x9e, 0xaa, 0x1d, 0x12, 0xa8, 0xcb, 0x2a, 0xb8, 0x04, 0x26, 0x5d, 0x6b, 0x0b, 0xbb, 0xe2, 0xf9,
0x7c, 0xc2, 0x55, 0x89, 0x01, 0xd0, 0x54, 0xbb, 0x55, 0x9c, 0xbc, 0x9a, 0x65, 0xa2, 0x4e, 0xf9,
0xd2, 0xf9, 0x6c, 0xc6, 0xd1, 0x1f, 0x5c, 0xdc, 0x64, 0x3f, 0xcc, 0x81, 0x99, 0xde, 0x01, 0x0b,
0xbf, 0x93, 0x5c, 0xb8, 0xc5, 0x7d, 0xea, 0x8d, 0xe3, 0x3a, 0x1c, 0xf2, 0xc6, 0x0d, 0x3a, 0x6f,
0xdb, 0xf0, 0x9b, 0xac, 0xb9, 0xb5, 0xdc, 0x78, 0xc4, 0xf7, 0xfa, 0xb1, 0x99, 0xc0, 0x40, 0x2a,
0x23, 0xa2, 0x6f, 0xb6, 0x5c, 0xde, 0x26, 0x5b, 0x2e, 0x2e, 0xfd, 0xc6, 0xc8, 0xce, 0x5c, 0x92,
0xc4, 0x02, 0x7f, 0x68, 0x80, 0x71, 0x3f, 0xc0, 0xde, 0xe2, 0xc6, 0xea, 0xcd, 0xff, 0x13, 0x09,
0x46, 0xba, 0xea, 0xa8, 0x31, 0xff, 0x52, 0x75, 0xfd, 0x9a, 0x50, 0xb8, 0x41, 0xfc, 0x80, 0x56,
0x4e, 0xb7, 0x5b, 0xc5, 0xf1, 0xf5, 0x34, 0x14, 0xca, 0x62, 0x97, 0x1a, 0x60, 0x6a, 0x65, 0x3f,
0xc4, 0xc4, 0xb3, 0xdc, 0x65, 0xbf, 0x16, 0x35, 0xb0, 0x17, 0x0a, 0x43, 0x33, 0xf3, 0x41, 0xe3,
0x1e, 0xe7, 0x83, 0x0f, 0x81, 0x81, 0x88, 0xb8, 0x32, 0x8a, 0x47, 0xd5, 0xfc, 0x1b, 0x5d, 0x45,
0x8c, 0x5e, 0x3a, 0x0f, 0x06, 0x99, 0x9d, 0xf0, 0x2c, 0x18, 0x20, 0xd6, 0x1e, 0xd7, 0x3a, 0x56,
0x19, 0x66, 0x22, 0xc8, 0xda, 0x43, 0x8c, 0x56, 0xfa, 0xeb, 0x79, 0x30, 0x9e, 0x79, 0x16, 0x38,
0x03, 0x72, 0x6a, 0xa8, 0x0e, 0xa4, 0xd2, 0xdc, 0xea, 0x32, 0xca, 0x39, 0x36, 0x7c, 0x46, 0xd5,
0x04, 0x01, 0x5a, 0x54, 0x25, 0x8e, 0x53, 0xd9, 0x6d, 0x26, 0x51, 0xc7, 0x0c, 0x89, 0xf3, 0x39,
0xb3, 0x01, 0xd7, 0xe5, 0x29, 0x11, 0x36, 0xe0, 0x3a, 0x62, 0xb4, 0xcf, 0x3a, 0x1c, 0x8d, 0xa7,
0xb3, 0xf9, 0x7b, 0x98, 0xce, 0x0e, 0xdd, 0x71, 0x3a, 0x7b, 0x01, 0xe4, 0x43, 0x27, 0x74, 0x31,
0xaf, 0xaf, 0xda, 0xa5, 0xf3, 0x3a, 0x23, 0x22, 0xc1, 0x83, 0xb7, 0xc0, 0xb0, 0x8d, 0xeb, 0x56,
0xe4, 0x86, 0xbc, 0x94, 0x8e, 0x5e, 0x5e, 0xea, 0x43, 0x08, 0x89, 0xd1, 0xf9, 0xb2, 0xd0, 0x8b,
0x62, 0x00, 0xf8, 0x30, 0x18, 0x6e, 0x58, 0xfb, 0x4e, 0x23, 0x6a, 0xf0, 0xbe, 0xd7, 0x10, 0x62,
0x6b, 0x82, 0x84, 0x62, 0x1e, 0xcb, 0x8c, 0x78, 0xbf, 0xe6, 0x46, 0xd4, 0x69, 0x62, 0xc9, 0x94,
0x3d, 0xa9, 0xca, 0x8c, 0x2b, 0x19, 0x3e, 0xea, 0x58, 0xc1, 0xc1, 0x1c, 0x8f, 0x2f, 0x1e, 0xd5,
0xc0, 0x04, 0x09, 0xc5, 0xbc, 0x34, 0x98, 0x94, 0x1f, 0xeb, 0x05, 0x26, 0x17, 0x77, 0xac, 0x80,
0x8f, 0x81, 0x91, 0x86, 0xb5, 0x7f, 0x15, 0x7b, 0xdb, 0xe1, 0x8e, 0x79, 0x72, 0xce, 0x98, 0x1f,
0xa8, 0x9c, 0x6c, 0xb7, 0x8a, 0x23, 0x6b, 0x31, 0x11, 0x25, 0x7c, 0x2e, 0xec, 0x78, 0x52, 0xf8,
0x94, 0x26, 0x1c, 0x13, 0x51, 0xc2, 0x67, 0x4d, 0x55, 0x60, 0x85, 0xec, 0x70, 0x99, 0xe3, 0xe9,
0xa1, 0xc0, 0x86, 0x20, 0xa3, 0x98, 0x0f, 0xe7, 0x41, 0xa1, 0x61, 0xed, 0xf3, 0x01, 0x8e, 0x39,
0xc1, 0xd5, 0xf2, 0xd7, 0x08, 0x6b, 0x92, 0x86, 0x14, 0x97, 0x4b, 0x3a, 0x9e, 0x90, 0x9c, 0xd4,
0x24, 0x25, 0x0d, 0x29, 0x2e, 0x0b, 0xe2, 0xc8, 0x73, 0x6e, 0x47, 0x58, 0x08, 0x43, 0xee, 0x19,
0x15, 0xc4, 0x37, 0x12, 0x16, 0xd2, 0xe5, 0x60, 0x19, 0x80, 0x46, 0xe4, 0x86, 0x4e, 0xe0, 0xe2,
0xf5, 0xba, 0x79, 0x9a, 0xfb, 0x9f, 0xdf, 0x45, 0xd6, 0x14, 0x15, 0x69, 0x12, 0x10, 0x83, 0x41,
0xec, 0x45, 0x0d, 0xf3, 0x0c, 0xaf, 0xdc, 0x7d, 0x09, 0x41, 0x75, 0x72, 0x56, 0xbc, 0xa8, 0x81,
0xb8, 0x7a, 0xf8, 0x0c, 0x38, 0xd9, 0xb0, 0xf6, 0x59, 0x3a, 0xc0, 0x24, 0x74, 0x30, 0x35, 0xa7,
0xf8, 0xc3, 0x4f, 0xb2, 0x26, 0x7c, 0x4d, 0x67, 0xa0, 0xb4, 0x1c, 0x5f, 0xe8, 0x78, 0xda, 0xc2,
0x69, 0x6d, 0xa1, 0xce, 0x40, 0x69, 0x39, 0xe6, 0x69, 0x82, 0x6f, 0x47, 0x0e, 0xc1, 0xb6, 0xf9,
0x00, 0xef, 0xdb, 0xe5, 0xab, 0x1d, 0x41, 0x43, 0x8a, 0x0b, 0x9b, 0xf1, 0xa4, 0xcf, 0xe4, 0xc7,
0xf0, 0x46, 0x7f, 0x33, 0xf9, 0x3a, 0x59, 0x24, 0xc4, 0x3a, 0x10, 0x95, 0x46, 0x9f, 0xf1, 0x41,
0x0a, 0xf2, 0x96, 0xeb, 0xae, 0xd7, 0xcd, 0xb3, 0x7d, 0xe9, 0x9a, 0xb2, 0x15, 0x44, 0x65, 0x9d,
0x45, 0x06, 0x82, 0x04, 0x16, 0x03, 0xf5, 0x3d, 0x16, 0x1a, 0x33, 0xc7, 0x0b, 0xba, 0xce, 0x40,
0x90, 0xc0, 0xe2, 0x4f, 0xea, 0x1d, 0xac, 0xd7, 0xcd, 0x07, 0x8f, 0xf9, 0x49, 0x19, 0x08, 0x12,
0x58, 0xd0, 0x01, 0x03, 0x9e, 0x1f, 0x9a, 0xe7, 0x8e, 0xa5, 0x3c, 0xf3, 0x82, 0x73, 0xcd, 0x0f,
0x11, 0xc3, 0x80, 0x3f, 0x31, 0x00, 0x08, 0x92, 0x10, 0x7d, 0xa8, 0x2f, 0x03, 0xa4, 0x0c, 0x64,
0x39, 0x89, 0xed, 0x15, 0x2f, 0x24, 0x07, 0xc9, 0xad, 0x4d, 0x3b, 0x03, 0x9a, 0x15, 0xf0, 0x97,
0x06, 0x38, 0xa3, 0x77, 0xef, 0xca, 0xbc, 0x59, 0xee, 0x91, 0xeb, 0xfd, 0x0e, 0xf3, 0x8a, 0xef,
0xbb, 0x15, 0xb3, 0xdd, 0x2a, 0x9e, 0x59, 0xec, 0x82, 0x8a, 0xba, 0xda, 0x02, 0x7f, 0x6b, 0x80,
0x49, 0x99, 0x45, 0x35, 0x0b, 0x8b, 0xdc, 0x81, 0xb8, 0xdf, 0x0e, 0xcc, 0xe2, 0x08, 0x3f, 0xaa,
0x4f, 0x12, 0x3a, 0xf8, 0xa8, 0xd3, 0x34, 0xf8, 0x07, 0x03, 0x8c, 0xd9, 0x38, 0xc0, 0x9e, 0x8d,
0xbd, 0x1a, 0xb3, 0x75, 0xae, 0x2f, 0x93, 0x94, 0xac, 0xad, 0xcb, 0x1a, 0x84, 0x30, 0xb3, 0x2c,
0xcd, 0x1c, 0xd3, 0x59, 0x87, 0xad, 0xe2, 0x74, 0xb2, 0x54, 0xe7, 0xa0, 0x94, 0x95, 0xf0, 0x7d,
0x03, 0x8c, 0x27, 0x1b, 0x20, 0x4a, 0xca, 0xf9, 0x63, 0x8c, 0x03, 0xde, 0xbe, 0x2e, 0xa6, 0x01,
0x51, 0xd6, 0x02, 0xf8, 0x3b, 0x83, 0x75, 0x6a, 0xf1, 0x75, 0x94, 0x9a, 0x25, 0xee, 0xcb, 0x37,
0xfb, 0xee, 0x4b, 0x85, 0x20, 0x5c, 0x79, 0x29, 0x69, 0x05, 0x15, 0xe7, 0xb0, 0x55, 0x9c, 0xd2,
0x3d, 0xa9, 0x18, 0x48, 0xb7, 0x10, 0x7e, 0xdf, 0x00, 0x63, 0x38, 0xe9, 0xb8, 0xa9, 0x79, 0xa1,
0x2f, 0x4e, 0xec, 0xda, 0xc4, 0x8b, 0x01, 0x82, 0xc6, 0xa2, 0x28, 0x85, 0xcd, 0x3a, 0x48, 0xbc,
0x6f, 0x35, 0x02, 0x17, 0x9b, 0xff, 0xd3, 0xe7, 0x0e, 0x72, 0x45, 0xe8, 0x45, 0x31, 0x00, 0xbc,
0x04, 0x0a, 0x5e, 0xe4, 0xba, 0xec, 0xa6, 0x6d, 0x3e, 0xcc, 0x7b, 0x11, 0x35, 0xc0, 0xbe, 0x26,
0xe9, 0x48, 0x49, 0xc0, 0x3a, 0x98, 0xdb, 0x7f, 0x59, 0x7d, 0xcc, 0xd5, 0x75, 0x96, 0x69, 0x5e,
0xe4, 0x5a, 0x66, 0xda, 0xad, 0xe2, 0xf4, 0x66, 0xf7, 0x69, 0xe7, 0x5d, 0x75, 0xc0, 0x57, 0xc1,
0x83, 0x9a, 0xcc, 0x4a, 0x63, 0x0b, 0xdb, 0x36, 0xb6, 0xe3, 0x8b, 0x9b, 0xf9, 0xbf, 0x62, 0x9e,
0x1a, 0x1f, 0xf0, 0xcd, 0xac, 0x00, 0xba, 0xd3, 0x6a, 0x78, 0x15, 0x4c, 0x6b, 0xec, 0x55, 0x2f,
0x5c, 0x27, 0xd5, 0x90, 0x38, 0xde, 0xb6, 0x39, 0xcf, 0xf5, 0x9e, 0x89, 0x4f, 0xe4, 0xa6, 0xc6,
0x43, 0x3d, 0xd6, 0xc0, 0x2f, 0xa7, 0xb4, 0xf1, 0x17, 0x8e, 0x56, 0xf0, 0x32, 0x3e, 0xa0, 0xe6,
0x23, 0xbc, 0x3b, 0xe1, 0x9b, 0xbd, 0xa9, 0xd1, 0x51, 0x0f, 0x79, 0xf8, 0x02, 0x38, 0x9d, 0xe1,
0xb0, 0x2b, 0x8a, 0xf9, 0xa8, 0xb8, 0x6b, 0xb0, 0x7e, 0x76, 0x33, 0x26, 0xa2, 0x6e, 0x92, 0xf0,
0x4b, 0x00, 0x6a, 0xe4, 0x35, 0x2b, 0xe0, 0xeb, 0x1f, 0x13, 0xd7, 0x1e, 0xb6, 0xa3, 0x9b, 0x92,
0x86, 0xba, 0xc8, 0xc1, 0x9f, 0x19, 0xa9, 0x27, 0x49, 0x6e, 0xc7, 0xd4, 0xbc, 0xc4, 0xcf, 0xef,
0xda, 0x11, 0xa3, 0x50, 0x7b, 0x6b, 0x14, 0xb9, 0x58, 0x73, 0xb3, 0x06, 0x85, 0x7a, 0x98, 0x30,
0xc3, 0x6e, 0xe8, 0x99, 0x0c, 0x0f, 0x27, 0xc0, 0xc0, 0x2e, 0x96, 0xdf, 0xa0, 0x20, 0xf6, 0x27,
0xb4, 0x41, 0xbe, 0x69, 0xb9, 0x51, 0x3c, 0x64, 0xe8, 0x73, 0x77, 0x80, 0x84, 0xf2, 0xe7, 0x72,
0xcf, 0x1a, 0x33, 0x1f, 0x18, 0x60, 0xba, 0x7b, 0xe1, 0xb9, 0xaf, 0x66, 0xfd, 0xdc, 0x00, 0x93,
0x1d, 0x35, 0xa6, 0x8b, 0x45, 0xb7, 0xd3, 0x16, 0xbd, 0xda, 0xef, 0x62, 0x21, 0x0e, 0x07, 0xef,
0x90, 0x75, 0xf3, 0x7e, 0x64, 0x80, 0x89, 0x6c, 0xda, 0xbe, 0x9f, 0xfe, 0x2a, 0x7d, 0x90, 0x03,
0xd3, 0xdd, 0x1b, 0x7b, 0x48, 0xd4, 0x04, 0xe3, 0x78, 0x26, 0x41, 0xdd, 0x86, 0xd9, 0xef, 0x1a,
0x60, 0xf4, 0x96, 0x92, 0x8b, 0xbf, 0x51, 0xe8, 0xfb, 0x0c, 0x2a, 0xae, 0x93, 0x09, 0x83, 0x22,
0x1d, 0xb7, 0xf4, 0x7b, 0x03, 0x4c, 0x75, 0x6d, 0x00, 0xe0, 0x45, 0x30, 0x64, 0xb9, 0xae, 0xbf,
0x27, 0x46, 0x89, 0xda, 0xab, 0x8b, 0x45, 0x4e, 0x45, 0x92, 0xab, 0x79, 0x2f, 0xf7, 0x79, 0x79,
0xaf, 0xf4, 0x27, 0x03, 0x9c, 0xbb, 0x53, 0x24, 0xde, 0x97, 0x2d, 0x9d, 0x07, 0x05, 0xd9, 0xbc,
0x1f, 0xf0, 0xed, 0x94, 0xa9, 0x58, 0x26, 0x0d, 0xfe, 0x59, 0x9e, 0xf8, 0xab, 0xf4, 0x02, 0x18,
0xcf, 0x0c, 0xc2, 0x59, 0x75, 0xbe, 0x45, 0x7d, 0x4f, 0x1b, 0x65, 0xab, 0xea, 0x1c, 0x7f, 0xab,
0x87, 0x94, 0x44, 0xe9, 0x43, 0x03, 0x4c, 0x54, 0x31, 0x69, 0x3a, 0x35, 0x8c, 0x70, 0x1d, 0x13,
0xec, 0xd5, 0x30, 0x5c, 0x00, 0x23, 0xfc, 0xeb, 0x82, 0xc0, 0xaa, 0xc5, 0xaf, 0xa4, 0x26, 0xa5,
0x8e, 0x91, 0x6b, 0x31, 0x03, 0x25, 0x32, 0xea, 0xf5, 0x55, 0xae, 0xe7, 0xeb, 0xab, 0x73, 0x60,
0x30, 0x48, 0x26, 0xd9, 0x05, 0xc6, 0xe5, 0x96, 0x70, 0x2a, 0xe7, 0xfa, 0x24, 0xe4, 0xe3, 0xb9,
0xbc, 0xe4, 0xfa, 0x24, 0x44, 0x9c, 0x5a, 0xfa, 0x4b, 0x0e, 0x9c, 0x4a, 0x17, 0x02, 0x06, 0x48,
0x22, 0xb7, 0xe3, 0x7d, 0x19, 0xe3, 0x21, 0xce, 0xd1, 0xbf, 0x2e, 0xca, 0xdd, 0xf9, 0xeb, 0x22,
0xf8, 0x22, 0x98, 0x94, 0x7f, 0xae, 0xec, 0x07, 0x04, 0x53, 0xfe, 0x4e, 0x78, 0x20, 0xfd, 0x8d,
0xf2, 0x5a, 0x56, 0x00, 0x75, 0xae, 0x81, 0x5f, 0xcc, 0x7c, 0xf9, 0x74, 0x21, 0xf9, 0xea, 0x89,
0xf5, 0x94, 0x7c, 0x7f, 0x6e, 0xb2, 0x3c, 0xb2, 0x42, 0x88, 0x4f, 0x32, 0x9f, 0x43, 0x2d, 0x80,
0x91, 0x3a, 0x13, 0xe0, 0x1b, 0x97, 0x4f, 0x3b, 0xfd, 0x4a, 0xcc, 0x40, 0x89, 0x0c, 0x7c, 0x1e,
0x8c, 0xfb, 0x81, 0x68, 0xa1, 0xd7, 0x5d, 0xbb, 0x8a, 0xdd, 0x3a, 0x1f, 0x45, 0x16, 0xe2, 0x79,
0x71, 0x8a, 0x85, 0xb2, 0xb2, 0xa5, 0x3f, 0x1b, 0xa0, 0xdb, 0x77, 0x8d, 0xf0, 0xac, 0x98, 0xfb,
0x6a, 0xc3, 0xd4, 0x78, 0xe6, 0x0b, 0x9b, 0x60, 0x98, 0x8a, 0x58, 0x91, 0x87, 0x61, 0xfd, 0xc8,
0x6f, 0x77, 0xd2, 0x91, 0x27, 0x1a, 0xce, 0x98, 0x1a, 0x83, 0xb1, 0xf3, 0x50, 0xb3, 0x2a, 0x91,
0x67, 0xcb, 0x57, 0x01, 0x63, 0xe2, 0x3c, 0x2c, 0x2d, 0x0a, 0x1a, 0x52, 0xdc, 0x4a, 0xed, 0xa3,
0x4f, 0x67, 0x4f, 0x7c, 0xfc, 0xe9, 0xec, 0x89, 0x4f, 0x3e, 0x9d, 0x3d, 0xf1, 0xad, 0xf6, 0xac,
0xf1, 0x51, 0x7b, 0xd6, 0xf8, 0xb8, 0x3d, 0x6b, 0x7c, 0xd2, 0x9e, 0x35, 0xfe, 0xde, 0x9e, 0x35,
0x7e, 0xfc, 0x8f, 0xd9, 0x13, 0x5f, 0x7b, 0xfe, 0x48, 0xff, 0x4a, 0xf0, 0x9f, 0x00, 0x00, 0x00,
0xff, 0xff, 0xbd, 0x86, 0xc6, 0x7c, 0xa3, 0x30, 0x00, 0x00,
}
func (m *ConversionRequest) Marshal() (dAtA []byte, err error) {
@ -1467,6 +1499,20 @@ func (m *CustomResourceDefinitionSpec) MarshalToSizedBuffer(dAtA []byte) (int, e
_ = i
var l int
_ = l
if len(m.SelectableFields) > 0 {
for iNdEx := len(m.SelectableFields) - 1; iNdEx >= 0; iNdEx-- {
{
size, err := m.SelectableFields[iNdEx].MarshalToSizedBuffer(dAtA[:i])
if err != nil {
return 0, err
}
i -= size
i = encodeVarintGenerated(dAtA, i, uint64(size))
}
i--
dAtA[i] = 0x5a
}
}
if m.PreserveUnknownFields != nil {
i--
if *m.PreserveUnknownFields {
@ -1645,6 +1691,20 @@ func (m *CustomResourceDefinitionVersion) MarshalToSizedBuffer(dAtA []byte) (int
_ = i
var l int
_ = l
if len(m.SelectableFields) > 0 {
for iNdEx := len(m.SelectableFields) - 1; iNdEx >= 0; iNdEx-- {
{
size, err := m.SelectableFields[iNdEx].MarshalToSizedBuffer(dAtA[:i])
if err != nil {
return 0, err
}
i -= size
i = encodeVarintGenerated(dAtA, i, uint64(size))
}
i--
dAtA[i] = 0x4a
}
}
if m.DeprecationWarning != nil {
i -= len(*m.DeprecationWarning)
copy(dAtA[i:], *m.DeprecationWarning)
@ -2597,6 +2657,34 @@ func (m *JSONSchemaPropsOrStringArray) MarshalToSizedBuffer(dAtA []byte) (int, e
return len(dAtA) - i, nil
}
func (m *SelectableField) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalToSizedBuffer(dAtA[:size])
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *SelectableField) MarshalTo(dAtA []byte) (int, error) {
size := m.Size()
return m.MarshalToSizedBuffer(dAtA[:size])
}
func (m *SelectableField) MarshalToSizedBuffer(dAtA []byte) (int, error) {
i := len(dAtA)
_ = i
var l int
_ = l
i -= len(m.JSONPath)
copy(dAtA[i:], m.JSONPath)
i = encodeVarintGenerated(dAtA, i, uint64(len(m.JSONPath)))
i--
dAtA[i] = 0xa
return len(dAtA) - i, nil
}
func (m *ServiceReference) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
@ -2979,6 +3067,12 @@ func (m *CustomResourceDefinitionSpec) Size() (n int) {
if m.PreserveUnknownFields != nil {
n += 2
}
if len(m.SelectableFields) > 0 {
for _, e := range m.SelectableFields {
l = e.Size()
n += 1 + l + sovGenerated(uint64(l))
}
}
return n
}
@ -3034,6 +3128,12 @@ func (m *CustomResourceDefinitionVersion) Size() (n int) {
l = len(*m.DeprecationWarning)
n += 1 + l + sovGenerated(uint64(l))
}
if len(m.SelectableFields) > 0 {
for _, e := range m.SelectableFields {
l = e.Size()
n += 1 + l + sovGenerated(uint64(l))
}
}
return n
}
@ -3348,6 +3448,17 @@ func (m *JSONSchemaPropsOrStringArray) Size() (n int) {
return n
}
func (m *SelectableField) Size() (n int) {
if m == nil {
return 0
}
var l int
_ = l
l = len(m.JSONPath)
n += 1 + l + sovGenerated(uint64(l))
return n
}
func (m *ServiceReference) Size() (n int) {
if m == nil {
return 0
@ -3562,6 +3673,11 @@ func (this *CustomResourceDefinitionSpec) String() string {
repeatedStringForAdditionalPrinterColumns += strings.Replace(strings.Replace(f.String(), "CustomResourceColumnDefinition", "CustomResourceColumnDefinition", 1), `&`, ``, 1) + ","
}
repeatedStringForAdditionalPrinterColumns += "}"
repeatedStringForSelectableFields := "[]SelectableField{"
for _, f := range this.SelectableFields {
repeatedStringForSelectableFields += strings.Replace(strings.Replace(f.String(), "SelectableField", "SelectableField", 1), `&`, ``, 1) + ","
}
repeatedStringForSelectableFields += "}"
s := strings.Join([]string{`&CustomResourceDefinitionSpec{`,
`Group:` + fmt.Sprintf("%v", this.Group) + `,`,
`Version:` + fmt.Sprintf("%v", this.Version) + `,`,
@ -3573,6 +3689,7 @@ func (this *CustomResourceDefinitionSpec) String() string {
`AdditionalPrinterColumns:` + repeatedStringForAdditionalPrinterColumns + `,`,
`Conversion:` + strings.Replace(this.Conversion.String(), "CustomResourceConversion", "CustomResourceConversion", 1) + `,`,
`PreserveUnknownFields:` + valueToStringGenerated(this.PreserveUnknownFields) + `,`,
`SelectableFields:` + repeatedStringForSelectableFields + `,`,
`}`,
}, "")
return s
@ -3603,6 +3720,11 @@ func (this *CustomResourceDefinitionVersion) String() string {
repeatedStringForAdditionalPrinterColumns += strings.Replace(strings.Replace(f.String(), "CustomResourceColumnDefinition", "CustomResourceColumnDefinition", 1), `&`, ``, 1) + ","
}
repeatedStringForAdditionalPrinterColumns += "}"
repeatedStringForSelectableFields := "[]SelectableField{"
for _, f := range this.SelectableFields {
repeatedStringForSelectableFields += strings.Replace(strings.Replace(f.String(), "SelectableField", "SelectableField", 1), `&`, ``, 1) + ","
}
repeatedStringForSelectableFields += "}"
s := strings.Join([]string{`&CustomResourceDefinitionVersion{`,
`Name:` + fmt.Sprintf("%v", this.Name) + `,`,
`Served:` + fmt.Sprintf("%v", this.Served) + `,`,
@ -3612,6 +3734,7 @@ func (this *CustomResourceDefinitionVersion) String() string {
`AdditionalPrinterColumns:` + repeatedStringForAdditionalPrinterColumns + `,`,
`Deprecated:` + fmt.Sprintf("%v", this.Deprecated) + `,`,
`DeprecationWarning:` + valueToStringGenerated(this.DeprecationWarning) + `,`,
`SelectableFields:` + repeatedStringForSelectableFields + `,`,
`}`,
}, "")
return s
@ -3835,6 +3958,16 @@ func (this *JSONSchemaPropsOrStringArray) String() string {
}, "")
return s
}
func (this *SelectableField) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&SelectableField{`,
`JSONPath:` + fmt.Sprintf("%v", this.JSONPath) + `,`,
`}`,
}, "")
return s
}
func (this *ServiceReference) String() string {
if this == nil {
return "nil"
@ -5755,6 +5888,40 @@ func (m *CustomResourceDefinitionSpec) Unmarshal(dAtA []byte) error {
}
b := bool(v != 0)
m.PreserveUnknownFields = &b
case 11:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field SelectableFields", 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 < 0 {
return ErrInvalidLengthGenerated
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.SelectableFields = append(m.SelectableFields, SelectableField{})
if err := m.SelectableFields[len(m.SelectableFields)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(dAtA[iNdEx:])
@ -6185,6 +6352,40 @@ func (m *CustomResourceDefinitionVersion) Unmarshal(dAtA []byte) error {
s := string(dAtA[iNdEx:postIndex])
m.DeprecationWarning = &s
iNdEx = postIndex
case 9:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field SelectableFields", 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 < 0 {
return ErrInvalidLengthGenerated
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.SelectableFields = append(m.SelectableFields, SelectableField{})
if err := m.SelectableFields[len(m.SelectableFields)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(dAtA[iNdEx:])
@ -8825,6 +9026,88 @@ func (m *JSONSchemaPropsOrStringArray) Unmarshal(dAtA []byte) error {
}
return nil
}
func (m *SelectableField) 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: SelectableField: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: SelectableField: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field JSONPath", 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 < 0 {
return ErrInvalidLengthGenerated
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.JSONPath = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(dAtA[iNdEx:])
if err != nil {
return err
}
if (skippy < 0) || (iNdEx+skippy) < 0 {
return ErrInvalidLengthGenerated
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func (m *ServiceReference) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0

View File

@ -273,6 +273,14 @@ message CustomResourceDefinitionSpec {
// +listType=atomic
repeated CustomResourceColumnDefinition additionalPrinterColumns = 8;
// selectableFields specifies paths to fields that may be used as field selectors.
// See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors
//
// +featureGate=CustomResourceFieldSelectors
// +optional
// +listType=atomic
repeated SelectableField selectableFields = 11;
// conversion defines conversion settings for the CRD.
// +optional
optional CustomResourceConversion conversion = 9;
@ -359,6 +367,14 @@ message CustomResourceDefinitionVersion {
// +optional
// +listType=atomic
repeated CustomResourceColumnDefinition additionalPrinterColumns = 6;
// selectableFields specifies paths to fields that may be used as field selectors.
// See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors
//
// +featureGate=CustomResourceFieldSelectors
// +optional
// +listType=atomic
repeated SelectableField selectableFields = 9;
}
// CustomResourceSubresourceScale defines how to serve the scale subresource for CustomResources.
@ -651,6 +667,19 @@ message JSONSchemaPropsOrStringArray {
repeated string property = 2;
}
// SelectableField specifies the JSON path of a field that may be used with field selectors.
message SelectableField {
// jsonPath is a simple JSON path which is evaluated against each custom resource to produce a
// field selector value.
// Only JSON paths without the array notation are allowed.
// Must point to a field of type string, boolean or integer. Types with enum values
// and strings with formats are allowed.
// If jsonPath refers to absent field in a resource, the jsonPath evaluates to an empty string.
// Must not point to metdata fields.
// Required.
optional string jsonPath = 1;
}
// ServiceReference holds a reference to Service.legacy.k8s.io
message ServiceReference {
// namespace is the namespace of the service.

View File

@ -212,6 +212,16 @@ func RegisterConversions(s *runtime.Scheme) error {
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*SelectableField)(nil), (*apiextensions.SelectableField)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_v1beta1_SelectableField_To_apiextensions_SelectableField(a.(*SelectableField), b.(*apiextensions.SelectableField), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*apiextensions.SelectableField)(nil), (*SelectableField)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_apiextensions_SelectableField_To_v1beta1_SelectableField(a.(*apiextensions.SelectableField), b.(*SelectableField), scope)
}); err != nil {
return err
}
if err := s.AddGeneratedConversionFunc((*ServiceReference)(nil), (*apiextensions.ServiceReference)(nil), func(a, b interface{}, scope conversion.Scope) error {
return Convert_v1beta1_ServiceReference_To_apiextensions_ServiceReference(a.(*ServiceReference), b.(*apiextensions.ServiceReference), scope)
}); err != nil {
@ -491,6 +501,7 @@ func autoConvert_v1beta1_CustomResourceDefinitionSpec_To_apiextensions_CustomRes
out.Versions = nil
}
out.AdditionalPrinterColumns = *(*[]apiextensions.CustomResourceColumnDefinition)(unsafe.Pointer(&in.AdditionalPrinterColumns))
out.SelectableFields = *(*[]apiextensions.SelectableField)(unsafe.Pointer(&in.SelectableFields))
if in.Conversion != nil {
in, out := &in.Conversion, &out.Conversion
*out = new(apiextensions.CustomResourceConversion)
@ -538,6 +549,7 @@ func autoConvert_apiextensions_CustomResourceDefinitionSpec_To_v1beta1_CustomRes
out.Versions = nil
}
out.AdditionalPrinterColumns = *(*[]CustomResourceColumnDefinition)(unsafe.Pointer(&in.AdditionalPrinterColumns))
out.SelectableFields = *(*[]SelectableField)(unsafe.Pointer(&in.SelectableFields))
if in.Conversion != nil {
in, out := &in.Conversion, &out.Conversion
*out = new(CustomResourceConversion)
@ -601,6 +613,7 @@ func autoConvert_v1beta1_CustomResourceDefinitionVersion_To_apiextensions_Custom
}
out.Subresources = (*apiextensions.CustomResourceSubresources)(unsafe.Pointer(in.Subresources))
out.AdditionalPrinterColumns = *(*[]apiextensions.CustomResourceColumnDefinition)(unsafe.Pointer(&in.AdditionalPrinterColumns))
out.SelectableFields = *(*[]apiextensions.SelectableField)(unsafe.Pointer(&in.SelectableFields))
return nil
}
@ -626,6 +639,7 @@ func autoConvert_apiextensions_CustomResourceDefinitionVersion_To_v1beta1_Custom
}
out.Subresources = (*CustomResourceSubresources)(unsafe.Pointer(in.Subresources))
out.AdditionalPrinterColumns = *(*[]CustomResourceColumnDefinition)(unsafe.Pointer(&in.AdditionalPrinterColumns))
out.SelectableFields = *(*[]SelectableField)(unsafe.Pointer(&in.SelectableFields))
return nil
}
@ -1273,6 +1287,26 @@ func Convert_apiextensions_JSONSchemaPropsOrStringArray_To_v1beta1_JSONSchemaPro
return autoConvert_apiextensions_JSONSchemaPropsOrStringArray_To_v1beta1_JSONSchemaPropsOrStringArray(in, out, s)
}
func autoConvert_v1beta1_SelectableField_To_apiextensions_SelectableField(in *SelectableField, out *apiextensions.SelectableField, s conversion.Scope) error {
out.JSONPath = in.JSONPath
return nil
}
// Convert_v1beta1_SelectableField_To_apiextensions_SelectableField is an autogenerated conversion function.
func Convert_v1beta1_SelectableField_To_apiextensions_SelectableField(in *SelectableField, out *apiextensions.SelectableField, s conversion.Scope) error {
return autoConvert_v1beta1_SelectableField_To_apiextensions_SelectableField(in, out, s)
}
func autoConvert_apiextensions_SelectableField_To_v1beta1_SelectableField(in *apiextensions.SelectableField, out *SelectableField, s conversion.Scope) error {
out.JSONPath = in.JSONPath
return nil
}
// Convert_apiextensions_SelectableField_To_v1beta1_SelectableField is an autogenerated conversion function.
func Convert_apiextensions_SelectableField_To_v1beta1_SelectableField(in *apiextensions.SelectableField, out *SelectableField, s conversion.Scope) error {
return autoConvert_apiextensions_SelectableField_To_v1beta1_SelectableField(in, out, s)
}
func autoConvert_v1beta1_ServiceReference_To_apiextensions_ServiceReference(in *ServiceReference, out *apiextensions.ServiceReference, s conversion.Scope) error {
out.Namespace = in.Namespace
out.Name = in.Name

View File

@ -279,6 +279,11 @@ func (in *CustomResourceDefinitionSpec) DeepCopyInto(out *CustomResourceDefiniti
*out = make([]CustomResourceColumnDefinition, len(*in))
copy(*out, *in)
}
if in.SelectableFields != nil {
in, out := &in.SelectableFields, &out.SelectableFields
*out = make([]SelectableField, len(*in))
copy(*out, *in)
}
if in.Conversion != nil {
in, out := &in.Conversion, &out.Conversion
*out = new(CustomResourceConversion)
@ -354,6 +359,11 @@ func (in *CustomResourceDefinitionVersion) DeepCopyInto(out *CustomResourceDefin
*out = make([]CustomResourceColumnDefinition, len(*in))
copy(*out, *in)
}
if in.SelectableFields != nil {
in, out := &in.SelectableFields, &out.SelectableFields
*out = make([]SelectableField, len(*in))
copy(*out, *in)
}
return
}
@ -610,6 +620,22 @@ func (in *JSONSchemaPropsOrStringArray) DeepCopy() *JSONSchemaPropsOrStringArray
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SelectableField) DeepCopyInto(out *SelectableField) {
*out = *in
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelectableField.
func (in *SelectableField) DeepCopy() *SelectableField {
if in == nil {
return nil
}
out := new(SelectableField)
in.DeepCopyInto(out)
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ServiceReference) DeepCopyInto(out *ServiceReference) {
*out = *in

View File

@ -197,6 +197,11 @@ func (in *CustomResourceDefinitionSpec) DeepCopyInto(out *CustomResourceDefiniti
*out = make([]CustomResourceColumnDefinition, len(*in))
copy(*out, *in)
}
if in.SelectableFields != nil {
in, out := &in.SelectableFields, &out.SelectableFields
*out = make([]SelectableField, len(*in))
copy(*out, *in)
}
if in.Conversion != nil {
in, out := &in.Conversion, &out.Conversion
*out = new(CustomResourceConversion)
@ -272,6 +277,11 @@ func (in *CustomResourceDefinitionVersion) DeepCopyInto(out *CustomResourceDefin
*out = make([]CustomResourceColumnDefinition, len(*in))
copy(*out, *in)
}
if in.SelectableFields != nil {
in, out := &in.SelectableFields, &out.SelectableFields
*out = make([]SelectableField, len(*in))
copy(*out, *in)
}
return
}
@ -507,6 +517,22 @@ func (in *JSONSchemaPropsOrStringArray) DeepCopy() *JSONSchemaPropsOrStringArray
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SelectableField) DeepCopyInto(out *SelectableField) {
*out = *in
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelectableField.
func (in *SelectableField) DeepCopy() *SelectableField {
if in == nil {
return nil
}
out := new(SelectableField)
in.DeepCopyInto(out)
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ServiceReference) DeepCopyInto(out *ServiceReference) {
*out = *in

View File

@ -165,6 +165,11 @@
"priority": 5,
"jsonPath": "jsonPathValue"
}
],
"selectableFields": [
{
"jsonPath": "jsonPathValue"
}
]
}
],

View File

@ -134,6 +134,8 @@ spec:
optionalOldSelf: true
reason: reasonValue
rule: ruleValue
selectableFields:
- jsonPath: jsonPathValue
served: true
storage: true
subresources:

View File

@ -257,6 +257,11 @@
"priority": 5,
"JSONPath": "JSONPathValue"
}
],
"selectableFields": [
{
"jsonPath": "jsonPathValue"
}
]
}
],
@ -270,6 +275,11 @@
"JSONPath": "JSONPathValue"
}
],
"selectableFields": [
{
"jsonPath": "jsonPathValue"
}
],
"conversion": {
"strategy": "strategyValue",
"webhookClientConfig": {

View File

@ -64,6 +64,8 @@ spec:
singular: singularValue
preserveUnknownFields: true
scope: scopeValue
selectableFields:
- jsonPath: jsonPathValue
subresources:
scale:
labelSelectorPath: labelSelectorPathValue
@ -212,6 +214,8 @@ spec:
optionalOldSelf: true
reason: reasonValue
rule: ruleValue
selectableFields:
- jsonPath: jsonPathValue
served: true
storage: true
subresources:

View File

@ -29,6 +29,7 @@ type CustomResourceDefinitionVersionApplyConfiguration struct {
Schema *CustomResourceValidationApplyConfiguration `json:"schema,omitempty"`
Subresources *CustomResourceSubresourcesApplyConfiguration `json:"subresources,omitempty"`
AdditionalPrinterColumns []CustomResourceColumnDefinitionApplyConfiguration `json:"additionalPrinterColumns,omitempty"`
SelectableFields []SelectableFieldApplyConfiguration `json:"selectableFields,omitempty"`
}
// CustomResourceDefinitionVersionApplyConfiguration constructs an declarative configuration of the CustomResourceDefinitionVersion type for use with
@ -105,3 +106,16 @@ func (b *CustomResourceDefinitionVersionApplyConfiguration) WithAdditionalPrinte
}
return b
}
// WithSelectableFields adds the given value to the SelectableFields field in the declarative configuration
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
// If called multiple times, values provided by each call will be appended to the SelectableFields field.
func (b *CustomResourceDefinitionVersionApplyConfiguration) WithSelectableFields(values ...*SelectableFieldApplyConfiguration) *CustomResourceDefinitionVersionApplyConfiguration {
for i := range values {
if values[i] == nil {
panic("nil value passed to WithSelectableFields")
}
b.SelectableFields = append(b.SelectableFields, *values[i])
}
return b
}

View File

@ -0,0 +1,39 @@
/*
Copyright 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 applyconfiguration-gen. DO NOT EDIT.
package v1
// SelectableFieldApplyConfiguration represents an declarative configuration of the SelectableField type for use
// with apply.
type SelectableFieldApplyConfiguration struct {
JSONPath *string `json:"jsonPath,omitempty"`
}
// SelectableFieldApplyConfiguration constructs an declarative configuration of the SelectableField type for use with
// apply.
func SelectableField() *SelectableFieldApplyConfiguration {
return &SelectableFieldApplyConfiguration{}
}
// WithJSONPath sets the JSONPath field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the JSONPath field is set to the value of the last call.
func (b *SelectableFieldApplyConfiguration) WithJSONPath(value string) *SelectableFieldApplyConfiguration {
b.JSONPath = &value
return b
}

View File

@ -33,6 +33,7 @@ type CustomResourceDefinitionSpecApplyConfiguration struct {
Subresources *CustomResourceSubresourcesApplyConfiguration `json:"subresources,omitempty"`
Versions []CustomResourceDefinitionVersionApplyConfiguration `json:"versions,omitempty"`
AdditionalPrinterColumns []CustomResourceColumnDefinitionApplyConfiguration `json:"additionalPrinterColumns,omitempty"`
SelectableFields []SelectableFieldApplyConfiguration `json:"selectableFields,omitempty"`
Conversion *CustomResourceConversionApplyConfiguration `json:"conversion,omitempty"`
PreserveUnknownFields *bool `json:"preserveUnknownFields,omitempty"`
}
@ -117,6 +118,19 @@ func (b *CustomResourceDefinitionSpecApplyConfiguration) WithAdditionalPrinterCo
return b
}
// WithSelectableFields adds the given value to the SelectableFields field in the declarative configuration
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
// If called multiple times, values provided by each call will be appended to the SelectableFields field.
func (b *CustomResourceDefinitionSpecApplyConfiguration) WithSelectableFields(values ...*SelectableFieldApplyConfiguration) *CustomResourceDefinitionSpecApplyConfiguration {
for i := range values {
if values[i] == nil {
panic("nil value passed to WithSelectableFields")
}
b.SelectableFields = append(b.SelectableFields, *values[i])
}
return b
}
// WithConversion sets the Conversion field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the Conversion field is set to the value of the last call.

View File

@ -29,6 +29,7 @@ type CustomResourceDefinitionVersionApplyConfiguration struct {
Schema *CustomResourceValidationApplyConfiguration `json:"schema,omitempty"`
Subresources *CustomResourceSubresourcesApplyConfiguration `json:"subresources,omitempty"`
AdditionalPrinterColumns []CustomResourceColumnDefinitionApplyConfiguration `json:"additionalPrinterColumns,omitempty"`
SelectableFields []SelectableFieldApplyConfiguration `json:"selectableFields,omitempty"`
}
// CustomResourceDefinitionVersionApplyConfiguration constructs an declarative configuration of the CustomResourceDefinitionVersion type for use with
@ -105,3 +106,16 @@ func (b *CustomResourceDefinitionVersionApplyConfiguration) WithAdditionalPrinte
}
return b
}
// WithSelectableFields adds the given value to the SelectableFields field in the declarative configuration
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
// If called multiple times, values provided by each call will be appended to the SelectableFields field.
func (b *CustomResourceDefinitionVersionApplyConfiguration) WithSelectableFields(values ...*SelectableFieldApplyConfiguration) *CustomResourceDefinitionVersionApplyConfiguration {
for i := range values {
if values[i] == nil {
panic("nil value passed to WithSelectableFields")
}
b.SelectableFields = append(b.SelectableFields, *values[i])
}
return b
}

View File

@ -0,0 +1,39 @@
/*
Copyright 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 applyconfiguration-gen. DO NOT EDIT.
package v1beta1
// SelectableFieldApplyConfiguration represents an declarative configuration of the SelectableField type for use
// with apply.
type SelectableFieldApplyConfiguration struct {
JSONPath *string `json:"jsonPath,omitempty"`
}
// SelectableFieldApplyConfiguration constructs an declarative configuration of the SelectableField type for use with
// apply.
func SelectableField() *SelectableFieldApplyConfiguration {
return &SelectableFieldApplyConfiguration{}
}
// WithJSONPath sets the JSONPath field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the JSONPath field is set to the value of the last call.
func (b *SelectableFieldApplyConfiguration) WithJSONPath(value string) *SelectableFieldApplyConfiguration {
b.JSONPath = &value
return b
}

View File

@ -57,6 +57,8 @@ func ForKind(kind schema.GroupVersionKind) interface{} {
return &apiextensionsv1.ExternalDocumentationApplyConfiguration{}
case v1.SchemeGroupVersion.WithKind("JSONSchemaProps"):
return &apiextensionsv1.JSONSchemaPropsApplyConfiguration{}
case v1.SchemeGroupVersion.WithKind("SelectableField"):
return &apiextensionsv1.SelectableFieldApplyConfiguration{}
case v1.SchemeGroupVersion.WithKind("ServiceReference"):
return &apiextensionsv1.ServiceReferenceApplyConfiguration{}
case v1.SchemeGroupVersion.WithKind("ValidationRule"):
@ -93,6 +95,8 @@ func ForKind(kind schema.GroupVersionKind) interface{} {
return &apiextensionsv1beta1.ExternalDocumentationApplyConfiguration{}
case v1beta1.SchemeGroupVersion.WithKind("JSONSchemaProps"):
return &apiextensionsv1beta1.JSONSchemaPropsApplyConfiguration{}
case v1beta1.SchemeGroupVersion.WithKind("SelectableField"):
return &apiextensionsv1beta1.SelectableFieldApplyConfiguration{}
case v1beta1.SchemeGroupVersion.WithKind("ServiceReference"):
return &apiextensionsv1beta1.ServiceReferenceApplyConfiguration{}
case v1beta1.SchemeGroupVersion.WithKind("ValidationRule"):

View File

@ -76,6 +76,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSONSchemaPropsOrArray": schema_pkg_apis_apiextensions_v1_JSONSchemaPropsOrArray(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSONSchemaPropsOrBool": schema_pkg_apis_apiextensions_v1_JSONSchemaPropsOrBool(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSONSchemaPropsOrStringArray": schema_pkg_apis_apiextensions_v1_JSONSchemaPropsOrStringArray(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.SelectableField": schema_pkg_apis_apiextensions_v1_SelectableField(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.ServiceReference": schema_pkg_apis_apiextensions_v1_ServiceReference(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.ValidationRule": schema_pkg_apis_apiextensions_v1_ValidationRule(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.WebhookClientConfig": schema_pkg_apis_apiextensions_v1_WebhookClientConfig(ref),
@ -102,6 +103,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.JSONSchemaPropsOrArray": schema_pkg_apis_apiextensions_v1beta1_JSONSchemaPropsOrArray(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.JSONSchemaPropsOrBool": schema_pkg_apis_apiextensions_v1beta1_JSONSchemaPropsOrBool(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.JSONSchemaPropsOrStringArray": schema_pkg_apis_apiextensions_v1beta1_JSONSchemaPropsOrStringArray(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.SelectableField": schema_pkg_apis_apiextensions_v1beta1_SelectableField(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.ServiceReference": schema_pkg_apis_apiextensions_v1beta1_ServiceReference(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.ValidationRule": schema_pkg_apis_apiextensions_v1beta1_ValidationRule(ref),
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.WebhookClientConfig": schema_pkg_apis_apiextensions_v1beta1_WebhookClientConfig(ref),
@ -1757,12 +1759,31 @@ func schema_pkg_apis_apiextensions_v1_CustomResourceDefinitionVersion(ref common
},
},
},
"selectableFields": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{
Description: "selectableFields specifies paths to fields that may be used as field selectors. A maximum of 8 selectable fields are allowed. See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.SelectableField"),
},
},
},
},
},
},
Required: []string{"name", "served", "storage"},
},
},
Dependencies: []string{
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.CustomResourceColumnDefinition", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.CustomResourceSubresources", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.CustomResourceValidation"},
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.CustomResourceColumnDefinition", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.CustomResourceSubresources", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.CustomResourceValidation", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.SelectableField"},
}
}
@ -2337,6 +2358,28 @@ func schema_pkg_apis_apiextensions_v1_JSONSchemaPropsOrStringArray(ref common.Re
}
}
func schema_pkg_apis_apiextensions_v1_SelectableField(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "SelectableField specifies the JSON path of a field that may be used with field selectors.",
Type: []string{"object"},
Properties: map[string]spec.Schema{
"jsonPath": {
SchemaProps: spec.SchemaProps{
Description: "jsonPath is a simple JSON path which is evaluated against each custom resource to produce a field selector value. Only JSON paths without the array notation are allowed. Must point to a field of type string, boolean or integer. Types with enum values and strings with formats are allowed. If jsonPath refers to absent field in a resource, the jsonPath evaluates to an empty string. Must not point to metdata fields. Required.",
Default: "",
Type: []string{"string"},
Format: "",
},
},
},
Required: []string{"jsonPath"},
},
},
}
}
func schema_pkg_apis_apiextensions_v1_ServiceReference(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
@ -3090,6 +3133,25 @@ func schema_pkg_apis_apiextensions_v1beta1_CustomResourceDefinitionSpec(ref comm
},
},
},
"selectableFields": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{
Description: "selectableFields specifies paths to fields that may be used as field selectors. See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.SelectableField"),
},
},
},
},
},
"conversion": {
SchemaProps: spec.SchemaProps{
Description: "conversion defines conversion settings for the CRD.",
@ -3108,7 +3170,7 @@ func schema_pkg_apis_apiextensions_v1beta1_CustomResourceDefinitionSpec(ref comm
},
},
Dependencies: []string{
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceColumnDefinition", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceConversion", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceDefinitionNames", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceDefinitionVersion", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceSubresources", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceValidation"},
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceColumnDefinition", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceConversion", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceDefinitionNames", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceDefinitionVersion", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceSubresources", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceValidation", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.SelectableField"},
}
}
@ -3252,12 +3314,31 @@ func schema_pkg_apis_apiextensions_v1beta1_CustomResourceDefinitionVersion(ref c
},
},
},
"selectableFields": {
VendorExtensible: spec.VendorExtensible{
Extensions: spec.Extensions{
"x-kubernetes-list-type": "atomic",
},
},
SchemaProps: spec.SchemaProps{
Description: "selectableFields specifies paths to fields that may be used as field selectors. See https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Default: map[string]interface{}{},
Ref: ref("k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.SelectableField"),
},
},
},
},
},
},
Required: []string{"name", "served", "storage"},
},
},
Dependencies: []string{
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceColumnDefinition", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceSubresources", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceValidation"},
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceColumnDefinition", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceSubresources", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.CustomResourceValidation", "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1.SelectableField"},
}
}
@ -3832,6 +3913,28 @@ func schema_pkg_apis_apiextensions_v1beta1_JSONSchemaPropsOrStringArray(ref comm
}
}
func schema_pkg_apis_apiextensions_v1beta1_SelectableField(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "SelectableField specifies the JSON path of a field that may be used with field selectors.",
Type: []string{"object"},
Properties: map[string]spec.Schema{
"jsonPath": {
SchemaProps: spec.SchemaProps{
Description: "jsonPath is a simple JSON path which is evaluated against each custom resource to produce a field selector value. Only JSON paths without the array notation are allowed. Must point to a field of type string, boolean or integer. Types with enum values and strings with formats are allowed. If jsonPath refers to absent field in a resource, the jsonPath evaluates to an empty string. Must not point to metdata fields. Required.",
Default: "",
Type: []string{"string"},
Format: "",
},
},
},
Required: []string{"jsonPath"},
},
},
}
}
func schema_pkg_apis_apiextensions_v1beta1_ServiceReference(ref common.ReferenceCallback) common.OpenAPIDefinition {
return common.OpenAPIDefinition{
Schema: spec.Schema{