From c59e1e6401020e813007f596b218d37e6e8ffdf4 Mon Sep 17 00:00:00 2001 From: Cowan Macady Date: Thu, 30 Nov 2023 17:11:06 +0100 Subject: [PATCH] fix: update tests after ikg modifications Closing ENG-2397 --- .../authorization_integration_test.go | 8 +- config/config_request.go | 20 - gen/indykite/auditsink/v1beta1/config.pb.go | 5239 +++++++++++++++++ .../auditsink/v1beta1/config.pb.validate.go | 4809 +++++++++++++++ .../v1beta1/config_management_api.pb.go | 2330 ++++---- .../config_management_api.pb.validate.go | 105 - gen/indykite/config/v1beta1/model.pb.go | 2841 ++++----- .../config/v1beta1/model.pb.validate.go | 392 -- gen/indykite/ingest/v1beta2/model.pb.go | 287 +- .../ingest/v1beta2/model.pb.validate.go | 38 +- go.work.sum | 1 + ingest/ingest_integration_test.go | 63 +- test/constants.go | 48 +- 13 files changed, 12714 insertions(+), 3467 deletions(-) create mode 100644 gen/indykite/auditsink/v1beta1/config.pb.go create mode 100644 gen/indykite/auditsink/v1beta1/config.pb.validate.go diff --git a/authorization/authorization_integration_test.go b/authorization/authorization_integration_test.go index b4c04adc..0841cc8d 100644 --- a/authorization/authorization_integration_test.go +++ b/authorization/authorization_integration_test.go @@ -125,7 +125,7 @@ var _ = Describe("Authorized", func() { resource1: PointTo(MatchFields(IgnoreExtras, Fields{ "Actions": MatchAllKeys(Keys{ action1: PointTo(MatchFields(IgnoreExtras, Fields{ - "Allow": Equal(false), + "Allow": Equal(true), })), }), })), @@ -765,6 +765,9 @@ var _ = Describe("Authorized", func() { "2": PointTo(MatchFields(IgnoreExtras, Fields{ "ExternalId": Equal(integration.Asset3), })), + "3": PointTo(MatchFields(IgnoreExtras, Fields{ + "ExternalId": Equal(integration.Asset4), + })), }), })), }), @@ -954,9 +957,6 @@ var _ = Describe("Authorized", func() { "1": PointTo(MatchFields(IgnoreExtras, Fields{ "ExternalId": Equal(integration.Asset2), })), - "2": PointTo(MatchFields(IgnoreExtras, Fields{ - "ExternalId": Equal(integration.Asset3), - })), }), })), }), diff --git a/config/config_request.go b/config/config_request.go index 0b0508f2..2d3a7a68 100644 --- a/config/config_request.go +++ b/config/config_request.go @@ -279,26 +279,6 @@ func (x *NodeRequest) WithWebauthnProviderConfig(v *configpb.WebAuthnProviderCon return x } -func (x *NodeRequest) WithReadidProviderConfig(v *configpb.ReadIDProviderConfig) *NodeRequest { - switch { - case x.create != nil: - x.create.Config = nil - if v != nil { - x.create.Config = &configpb.CreateConfigNodeRequest_ReadidProviderConfig{ - ReadidProviderConfig: v, - } - } - case x.update != nil: - x.update.Config = nil - if v != nil { - x.update.Config = &configpb.UpdateConfigNodeRequest_ReadidProviderConfig{ - ReadidProviderConfig: v, - } - } - } - return x -} - func (x *NodeRequest) WithAuditSinkConfig(v *configpb.AuditSinkConfig) *NodeRequest { switch { case x.create != nil: diff --git a/gen/indykite/auditsink/v1beta1/config.pb.go b/gen/indykite/auditsink/v1beta1/config.pb.go new file mode 100644 index 00000000..efe29da4 --- /dev/null +++ b/gen/indykite/auditsink/v1beta1/config.pb.go @@ -0,0 +1,5239 @@ +// Copyright (c) 2023 IndyKite +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc (unknown) +// source: indykite/auditsink/v1beta1/config.proto + +package auditsinkv1beta1 + +import ( + reflect "reflect" + sync "sync" + + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + durationpb "google.golang.org/protobuf/types/known/durationpb" + timestamppb "google.golang.org/protobuf/types/known/timestamppb" + + v1beta1 "github.com/indykite/indykite-sdk-go/gen/indykite/objects/v1beta1" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// ConfigType is equivalent to internal DocumentType, for easier maintenance keep same numbers. +type ConfigType int32 + +const ( + ConfigType_CONFIG_TYPE_INVALID ConfigType = 0 + ConfigType_CONFIG_TYPE_CUSTOMER ConfigType = 1 + ConfigType_CONFIG_TYPE_APPLICATION_SPACE ConfigType = 2 + ConfigType_CONFIG_TYPE_ISSUER ConfigType = 15 + ConfigType_CONFIG_TYPE_TENANT ConfigType = 3 + ConfigType_CONFIG_TYPE_APPLICATION ConfigType = 4 + ConfigType_CONFIG_TYPE_APP_AGENT ConfigType = 5 + ConfigType_CONFIG_TYPE_APP_AGENT_CREDENTIAL ConfigType = 6 + ConfigType_CONFIG_TYPE_SERVICE_ACCOUNT ConfigType = 18 + ConfigType_CONFIG_TYPE_SERVICE_CREDENTIAL ConfigType = 19 + ConfigType_CONFIG_TYPE_DIGITAL_TWIN ConfigType = 21 + ConfigType_CONFIG_TYPE_AUTH_FLOW ConfigType = 7 + ConfigType_CONFIG_TYPE_EMAIL_SERVICE ConfigType = 8 + ConfigType_CONFIG_TYPE_SMS_SERVICE ConfigType = 9 + ConfigType_CONFIG_TYPE_AUDIT_SINK ConfigType = 27 + ConfigType_CONFIG_TYPE_OAUTH2_CLIENT ConfigType = 10 + ConfigType_CONFIG_TYPE_OAUTH2_APPLICATION ConfigType = 11 + ConfigType_CONFIG_TYPE_OAUTH2_PROVIDER ConfigType = 17 + ConfigType_CONFIG_TYPE_PASSWORD_PROVIDER ConfigType = 12 + ConfigType_CONFIG_TYPE_WEBAUTHN_PROVIDER ConfigType = 13 + ConfigType_CONFIG_TYPE_AUTHENTEQ_PROVIDER ConfigType = 14 + ConfigType_CONFIG_TYPE_SAFR_PROVIDER ConfigType = 16 + ConfigType_CONFIG_TYPE_AUTHORIZATION_POLICY ConfigType = 22 + ConfigType_CONFIG_TYPE_KNOWLEDGE_GRAPH_SCHEMA ConfigType = 23 +) + +// Enum value maps for ConfigType. +var ( + ConfigType_name = map[int32]string{ + 0: "CONFIG_TYPE_INVALID", + 1: "CONFIG_TYPE_CUSTOMER", + 2: "CONFIG_TYPE_APPLICATION_SPACE", + 15: "CONFIG_TYPE_ISSUER", + 3: "CONFIG_TYPE_TENANT", + 4: "CONFIG_TYPE_APPLICATION", + 5: "CONFIG_TYPE_APP_AGENT", + 6: "CONFIG_TYPE_APP_AGENT_CREDENTIAL", + 18: "CONFIG_TYPE_SERVICE_ACCOUNT", + 19: "CONFIG_TYPE_SERVICE_CREDENTIAL", + 21: "CONFIG_TYPE_DIGITAL_TWIN", + 7: "CONFIG_TYPE_AUTH_FLOW", + 8: "CONFIG_TYPE_EMAIL_SERVICE", + 9: "CONFIG_TYPE_SMS_SERVICE", + 27: "CONFIG_TYPE_AUDIT_SINK", + 10: "CONFIG_TYPE_OAUTH2_CLIENT", + 11: "CONFIG_TYPE_OAUTH2_APPLICATION", + 17: "CONFIG_TYPE_OAUTH2_PROVIDER", + 12: "CONFIG_TYPE_PASSWORD_PROVIDER", + 13: "CONFIG_TYPE_WEBAUTHN_PROVIDER", + 14: "CONFIG_TYPE_AUTHENTEQ_PROVIDER", + 16: "CONFIG_TYPE_SAFR_PROVIDER", + 22: "CONFIG_TYPE_AUTHORIZATION_POLICY", + 23: "CONFIG_TYPE_KNOWLEDGE_GRAPH_SCHEMA", + } + ConfigType_value = map[string]int32{ + "CONFIG_TYPE_INVALID": 0, + "CONFIG_TYPE_CUSTOMER": 1, + "CONFIG_TYPE_APPLICATION_SPACE": 2, + "CONFIG_TYPE_ISSUER": 15, + "CONFIG_TYPE_TENANT": 3, + "CONFIG_TYPE_APPLICATION": 4, + "CONFIG_TYPE_APP_AGENT": 5, + "CONFIG_TYPE_APP_AGENT_CREDENTIAL": 6, + "CONFIG_TYPE_SERVICE_ACCOUNT": 18, + "CONFIG_TYPE_SERVICE_CREDENTIAL": 19, + "CONFIG_TYPE_DIGITAL_TWIN": 21, + "CONFIG_TYPE_AUTH_FLOW": 7, + "CONFIG_TYPE_EMAIL_SERVICE": 8, + "CONFIG_TYPE_SMS_SERVICE": 9, + "CONFIG_TYPE_AUDIT_SINK": 27, + "CONFIG_TYPE_OAUTH2_CLIENT": 10, + "CONFIG_TYPE_OAUTH2_APPLICATION": 11, + "CONFIG_TYPE_OAUTH2_PROVIDER": 17, + "CONFIG_TYPE_PASSWORD_PROVIDER": 12, + "CONFIG_TYPE_WEBAUTHN_PROVIDER": 13, + "CONFIG_TYPE_AUTHENTEQ_PROVIDER": 14, + "CONFIG_TYPE_SAFR_PROVIDER": 16, + "CONFIG_TYPE_AUTHORIZATION_POLICY": 22, + "CONFIG_TYPE_KNOWLEDGE_GRAPH_SCHEMA": 23, + } +) + +func (x ConfigType) Enum() *ConfigType { + p := new(ConfigType) + *p = x + return p +} + +func (x ConfigType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ConfigType) Descriptor() protoreflect.EnumDescriptor { + return file_indykite_auditsink_v1beta1_config_proto_enumTypes[0].Descriptor() +} + +func (ConfigType) Type() protoreflect.EnumType { + return &file_indykite_auditsink_v1beta1_config_proto_enumTypes[0] +} + +func (x ConfigType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ConfigType.Descriptor instead. +func (ConfigType) EnumDescriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{0} +} + +type OAuth2GrantType int32 + +const ( + OAuth2GrantType_O_AUTH2_GRANT_TYPE_INVALID OAuth2GrantType = 0 + OAuth2GrantType_O_AUTH2_GRANT_TYPE_AUTHORIZATION_CODE OAuth2GrantType = 1 + OAuth2GrantType_O_AUTH2_GRANT_TYPE_IMPLICIT OAuth2GrantType = 2 + OAuth2GrantType_O_AUTH2_GRANT_TYPE_PASSWORD OAuth2GrantType = 3 + OAuth2GrantType_O_AUTH2_GRANT_TYPE_CLIENT_CREDENTIALS OAuth2GrantType = 4 + OAuth2GrantType_O_AUTH2_GRANT_TYPE_REFRESH_TOKEN OAuth2GrantType = 5 +) + +// Enum value maps for OAuth2GrantType. +var ( + OAuth2GrantType_name = map[int32]string{ + 0: "O_AUTH2_GRANT_TYPE_INVALID", + 1: "O_AUTH2_GRANT_TYPE_AUTHORIZATION_CODE", + 2: "O_AUTH2_GRANT_TYPE_IMPLICIT", + 3: "O_AUTH2_GRANT_TYPE_PASSWORD", + 4: "O_AUTH2_GRANT_TYPE_CLIENT_CREDENTIALS", + 5: "O_AUTH2_GRANT_TYPE_REFRESH_TOKEN", + } + OAuth2GrantType_value = map[string]int32{ + "O_AUTH2_GRANT_TYPE_INVALID": 0, + "O_AUTH2_GRANT_TYPE_AUTHORIZATION_CODE": 1, + "O_AUTH2_GRANT_TYPE_IMPLICIT": 2, + "O_AUTH2_GRANT_TYPE_PASSWORD": 3, + "O_AUTH2_GRANT_TYPE_CLIENT_CREDENTIALS": 4, + "O_AUTH2_GRANT_TYPE_REFRESH_TOKEN": 5, + } +) + +func (x OAuth2GrantType) Enum() *OAuth2GrantType { + p := new(OAuth2GrantType) + *p = x + return p +} + +func (x OAuth2GrantType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (OAuth2GrantType) Descriptor() protoreflect.EnumDescriptor { + return file_indykite_auditsink_v1beta1_config_proto_enumTypes[1].Descriptor() +} + +func (OAuth2GrantType) Type() protoreflect.EnumType { + return &file_indykite_auditsink_v1beta1_config_proto_enumTypes[1] +} + +func (x OAuth2GrantType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use OAuth2GrantType.Descriptor instead. +func (OAuth2GrantType) EnumDescriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{1} +} + +type OAuth2ResponseType int32 + +const ( + OAuth2ResponseType_O_AUTH2_RESPONSE_TYPE_INVALID OAuth2ResponseType = 0 + OAuth2ResponseType_O_AUTH2_RESPONSE_TYPE_TOKEN OAuth2ResponseType = 1 + OAuth2ResponseType_O_AUTH2_RESPONSE_TYPE_CODE OAuth2ResponseType = 2 + OAuth2ResponseType_O_AUTH2_RESPONSE_TYPE_ID_TOKEN OAuth2ResponseType = 3 +) + +// Enum value maps for OAuth2ResponseType. +var ( + OAuth2ResponseType_name = map[int32]string{ + 0: "O_AUTH2_RESPONSE_TYPE_INVALID", + 1: "O_AUTH2_RESPONSE_TYPE_TOKEN", + 2: "O_AUTH2_RESPONSE_TYPE_CODE", + 3: "O_AUTH2_RESPONSE_TYPE_ID_TOKEN", + } + OAuth2ResponseType_value = map[string]int32{ + "O_AUTH2_RESPONSE_TYPE_INVALID": 0, + "O_AUTH2_RESPONSE_TYPE_TOKEN": 1, + "O_AUTH2_RESPONSE_TYPE_CODE": 2, + "O_AUTH2_RESPONSE_TYPE_ID_TOKEN": 3, + } +) + +func (x OAuth2ResponseType) Enum() *OAuth2ResponseType { + p := new(OAuth2ResponseType) + *p = x + return p +} + +func (x OAuth2ResponseType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (OAuth2ResponseType) Descriptor() protoreflect.EnumDescriptor { + return file_indykite_auditsink_v1beta1_config_proto_enumTypes[2].Descriptor() +} + +func (OAuth2ResponseType) Type() protoreflect.EnumType { + return &file_indykite_auditsink_v1beta1_config_proto_enumTypes[2] +} + +func (x OAuth2ResponseType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use OAuth2ResponseType.Descriptor instead. +func (OAuth2ResponseType) EnumDescriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{2} +} + +type OAuth2TokenEndpointAuthMethod int32 + +const ( + OAuth2TokenEndpointAuthMethod_O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_INVALID OAuth2TokenEndpointAuthMethod = 0 + OAuth2TokenEndpointAuthMethod_O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_CLIENT_SECRET_BASIC OAuth2TokenEndpointAuthMethod = 1 + OAuth2TokenEndpointAuthMethod_O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_CLIENT_SECRET_POST OAuth2TokenEndpointAuthMethod = 2 + OAuth2TokenEndpointAuthMethod_O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_PRIVATE_KEY_JWT OAuth2TokenEndpointAuthMethod = 3 + OAuth2TokenEndpointAuthMethod_O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_NONE OAuth2TokenEndpointAuthMethod = 4 +) + +// Enum value maps for OAuth2TokenEndpointAuthMethod. +var ( + OAuth2TokenEndpointAuthMethod_name = map[int32]string{ + 0: "O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_INVALID", + 1: "O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_CLIENT_SECRET_BASIC", + 2: "O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_CLIENT_SECRET_POST", + 3: "O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_PRIVATE_KEY_JWT", + 4: "O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_NONE", + } + OAuth2TokenEndpointAuthMethod_value = map[string]int32{ + "O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_INVALID": 0, + "O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_CLIENT_SECRET_BASIC": 1, + "O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_CLIENT_SECRET_POST": 2, + "O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_PRIVATE_KEY_JWT": 3, + "O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_NONE": 4, + } +) + +func (x OAuth2TokenEndpointAuthMethod) Enum() *OAuth2TokenEndpointAuthMethod { + p := new(OAuth2TokenEndpointAuthMethod) + *p = x + return p +} + +func (x OAuth2TokenEndpointAuthMethod) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (OAuth2TokenEndpointAuthMethod) Descriptor() protoreflect.EnumDescriptor { + return file_indykite_auditsink_v1beta1_config_proto_enumTypes[3].Descriptor() +} + +func (OAuth2TokenEndpointAuthMethod) Type() protoreflect.EnumType { + return &file_indykite_auditsink_v1beta1_config_proto_enumTypes[3] +} + +func (x OAuth2TokenEndpointAuthMethod) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use OAuth2TokenEndpointAuthMethod.Descriptor instead. +func (OAuth2TokenEndpointAuthMethod) EnumDescriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{3} +} + +// TODO: prepare properly +type AuthFlowConfig_Format int32 + +const ( + AuthFlowConfig_FORMAT_INVALID AuthFlowConfig_Format = 0 + AuthFlowConfig_FORMAT_BARE_YAML AuthFlowConfig_Format = 1 + AuthFlowConfig_FORMAT_BARE_JSON AuthFlowConfig_Format = 2 + AuthFlowConfig_FORMAT_RICH_JSON AuthFlowConfig_Format = 3 +) + +// Enum value maps for AuthFlowConfig_Format. +var ( + AuthFlowConfig_Format_name = map[int32]string{ + 0: "FORMAT_INVALID", + 1: "FORMAT_BARE_YAML", + 2: "FORMAT_BARE_JSON", + 3: "FORMAT_RICH_JSON", + } + AuthFlowConfig_Format_value = map[string]int32{ + "FORMAT_INVALID": 0, + "FORMAT_BARE_YAML": 1, + "FORMAT_BARE_JSON": 2, + "FORMAT_RICH_JSON": 3, + } +) + +func (x AuthFlowConfig_Format) Enum() *AuthFlowConfig_Format { + p := new(AuthFlowConfig_Format) + *p = x + return p +} + +func (x AuthFlowConfig_Format) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (AuthFlowConfig_Format) Descriptor() protoreflect.EnumDescriptor { + return file_indykite_auditsink_v1beta1_config_proto_enumTypes[4].Descriptor() +} + +func (AuthFlowConfig_Format) Type() protoreflect.EnumType { + return &file_indykite_auditsink_v1beta1_config_proto_enumTypes[4] +} + +func (x AuthFlowConfig_Format) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use AuthFlowConfig_Format.Descriptor instead. +func (AuthFlowConfig_Format) EnumDescriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{11, 0} +} + +// ProviderType is a list of supported OAuth2 providers. +type OAuth2ClientConfig_ProviderType int32 + +const ( + OAuth2ClientConfig_PROVIDER_TYPE_INVALID OAuth2ClientConfig_ProviderType = 0 + OAuth2ClientConfig_PROVIDER_TYPE_AMAZON_COM OAuth2ClientConfig_ProviderType = 1 + OAuth2ClientConfig_PROVIDER_TYPE_AMAZONCOGNITO_COM OAuth2ClientConfig_ProviderType = 34 + OAuth2ClientConfig_PROVIDER_TYPE_APPLE_COM OAuth2ClientConfig_ProviderType = 41 + OAuth2ClientConfig_PROVIDER_TYPE_AUTHENTEQ_COM OAuth2ClientConfig_ProviderType = 33 + OAuth2ClientConfig_PROVIDER_TYPE_BANKID_COM OAuth2ClientConfig_ProviderType = 38 + OAuth2ClientConfig_PROVIDER_TYPE_BANKID_NO OAuth2ClientConfig_ProviderType = 37 + OAuth2ClientConfig_PROVIDER_TYPE_BITBUCKET OAuth2ClientConfig_ProviderType = 2 + OAuth2ClientConfig_PROVIDER_TYPE_CERN_CH OAuth2ClientConfig_ProviderType = 3 + OAuth2ClientConfig_PROVIDER_TYPE_CUSTOM OAuth2ClientConfig_ProviderType = 39 + OAuth2ClientConfig_PROVIDER_TYPE_FACEBOOK_COM OAuth2ClientConfig_ProviderType = 4 + OAuth2ClientConfig_PROVIDER_TYPE_FITBIT_COM OAuth2ClientConfig_ProviderType = 5 + OAuth2ClientConfig_PROVIDER_TYPE_FOURSQUARE_COM OAuth2ClientConfig_ProviderType = 6 + OAuth2ClientConfig_PROVIDER_TYPE_GITHUB_COM OAuth2ClientConfig_ProviderType = 7 + OAuth2ClientConfig_PROVIDER_TYPE_GITLAB_COM OAuth2ClientConfig_ProviderType = 8 + OAuth2ClientConfig_PROVIDER_TYPE_GOOGLE_COM OAuth2ClientConfig_ProviderType = 9 + OAuth2ClientConfig_PROVIDER_TYPE_HEROKU_COM OAuth2ClientConfig_ProviderType = 10 + OAuth2ClientConfig_PROVIDER_TYPE_HIPCHAT_COM OAuth2ClientConfig_ProviderType = 11 + OAuth2ClientConfig_PROVIDER_TYPE_INDYKITE_ID OAuth2ClientConfig_ProviderType = 35 + OAuth2ClientConfig_PROVIDER_TYPE_INDYKITE_ME OAuth2ClientConfig_ProviderType = 36 + OAuth2ClientConfig_PROVIDER_TYPE_INSTAGRAM_COM OAuth2ClientConfig_ProviderType = 12 + OAuth2ClientConfig_PROVIDER_TYPE_KAKAO_COM OAuth2ClientConfig_ProviderType = 13 + OAuth2ClientConfig_PROVIDER_TYPE_LINKEDIN_COM OAuth2ClientConfig_ProviderType = 14 + OAuth2ClientConfig_PROVIDER_TYPE_MAILCHIMP_COM OAuth2ClientConfig_ProviderType = 15 + OAuth2ClientConfig_PROVIDER_TYPE_MAIL_RU OAuth2ClientConfig_ProviderType = 16 + OAuth2ClientConfig_PROVIDER_TYPE_MEDIAMATH_COM OAuth2ClientConfig_ProviderType = 17 + OAuth2ClientConfig_PROVIDER_TYPE_SANDBOX_MEDIAMATH_COM OAuth2ClientConfig_ProviderType = 18 + OAuth2ClientConfig_PROVIDER_TYPE_LIVE_COM OAuth2ClientConfig_ProviderType = 32 + OAuth2ClientConfig_PROVIDER_TYPE_MICROSOFT_COM OAuth2ClientConfig_ProviderType = 19 + OAuth2ClientConfig_PROVIDER_TYPE_HEALTH_NOKIA_COM OAuth2ClientConfig_ProviderType = 20 + OAuth2ClientConfig_PROVIDER_TYPE_ODNOKLASSNIKI_RU OAuth2ClientConfig_ProviderType = 21 + OAuth2ClientConfig_PROVIDER_TYPE_PAYPAL_COM OAuth2ClientConfig_ProviderType = 22 + OAuth2ClientConfig_PROVIDER_TYPE_SANDBOX_PAYPAL_COM OAuth2ClientConfig_ProviderType = 23 + OAuth2ClientConfig_PROVIDER_TYPE_SLACK_COM OAuth2ClientConfig_ProviderType = 24 + OAuth2ClientConfig_PROVIDER_TYPE_SPOTIFY_COM OAuth2ClientConfig_ProviderType = 25 + OAuth2ClientConfig_PROVIDER_TYPE_STACKOVERFLOW_COM OAuth2ClientConfig_ProviderType = 26 + OAuth2ClientConfig_PROVIDER_TYPE_TWITCH_TV OAuth2ClientConfig_ProviderType = 27 + OAuth2ClientConfig_PROVIDER_TYPE_UBER_COM OAuth2ClientConfig_ProviderType = 28 + OAuth2ClientConfig_PROVIDER_TYPE_VIPPS_NO OAuth2ClientConfig_ProviderType = 40 + OAuth2ClientConfig_PROVIDER_TYPE_VK_COM OAuth2ClientConfig_ProviderType = 29 + OAuth2ClientConfig_PROVIDER_TYPE_YAHOO_COM OAuth2ClientConfig_ProviderType = 30 + OAuth2ClientConfig_PROVIDER_TYPE_YANDEX_COM OAuth2ClientConfig_ProviderType = 31 +) + +// Enum value maps for OAuth2ClientConfig_ProviderType. +var ( + OAuth2ClientConfig_ProviderType_name = map[int32]string{ + 0: "PROVIDER_TYPE_INVALID", + 1: "PROVIDER_TYPE_AMAZON_COM", + 34: "PROVIDER_TYPE_AMAZONCOGNITO_COM", + 41: "PROVIDER_TYPE_APPLE_COM", + 33: "PROVIDER_TYPE_AUTHENTEQ_COM", + 38: "PROVIDER_TYPE_BANKID_COM", + 37: "PROVIDER_TYPE_BANKID_NO", + 2: "PROVIDER_TYPE_BITBUCKET", + 3: "PROVIDER_TYPE_CERN_CH", + 39: "PROVIDER_TYPE_CUSTOM", + 4: "PROVIDER_TYPE_FACEBOOK_COM", + 5: "PROVIDER_TYPE_FITBIT_COM", + 6: "PROVIDER_TYPE_FOURSQUARE_COM", + 7: "PROVIDER_TYPE_GITHUB_COM", + 8: "PROVIDER_TYPE_GITLAB_COM", + 9: "PROVIDER_TYPE_GOOGLE_COM", + 10: "PROVIDER_TYPE_HEROKU_COM", + 11: "PROVIDER_TYPE_HIPCHAT_COM", + 35: "PROVIDER_TYPE_INDYKITE_ID", + 36: "PROVIDER_TYPE_INDYKITE_ME", + 12: "PROVIDER_TYPE_INSTAGRAM_COM", + 13: "PROVIDER_TYPE_KAKAO_COM", + 14: "PROVIDER_TYPE_LINKEDIN_COM", + 15: "PROVIDER_TYPE_MAILCHIMP_COM", + 16: "PROVIDER_TYPE_MAIL_RU", + 17: "PROVIDER_TYPE_MEDIAMATH_COM", + 18: "PROVIDER_TYPE_SANDBOX_MEDIAMATH_COM", + 32: "PROVIDER_TYPE_LIVE_COM", + 19: "PROVIDER_TYPE_MICROSOFT_COM", + 20: "PROVIDER_TYPE_HEALTH_NOKIA_COM", + 21: "PROVIDER_TYPE_ODNOKLASSNIKI_RU", + 22: "PROVIDER_TYPE_PAYPAL_COM", + 23: "PROVIDER_TYPE_SANDBOX_PAYPAL_COM", + 24: "PROVIDER_TYPE_SLACK_COM", + 25: "PROVIDER_TYPE_SPOTIFY_COM", + 26: "PROVIDER_TYPE_STACKOVERFLOW_COM", + 27: "PROVIDER_TYPE_TWITCH_TV", + 28: "PROVIDER_TYPE_UBER_COM", + 40: "PROVIDER_TYPE_VIPPS_NO", + 29: "PROVIDER_TYPE_VK_COM", + 30: "PROVIDER_TYPE_YAHOO_COM", + 31: "PROVIDER_TYPE_YANDEX_COM", + } + OAuth2ClientConfig_ProviderType_value = map[string]int32{ + "PROVIDER_TYPE_INVALID": 0, + "PROVIDER_TYPE_AMAZON_COM": 1, + "PROVIDER_TYPE_AMAZONCOGNITO_COM": 34, + "PROVIDER_TYPE_APPLE_COM": 41, + "PROVIDER_TYPE_AUTHENTEQ_COM": 33, + "PROVIDER_TYPE_BANKID_COM": 38, + "PROVIDER_TYPE_BANKID_NO": 37, + "PROVIDER_TYPE_BITBUCKET": 2, + "PROVIDER_TYPE_CERN_CH": 3, + "PROVIDER_TYPE_CUSTOM": 39, + "PROVIDER_TYPE_FACEBOOK_COM": 4, + "PROVIDER_TYPE_FITBIT_COM": 5, + "PROVIDER_TYPE_FOURSQUARE_COM": 6, + "PROVIDER_TYPE_GITHUB_COM": 7, + "PROVIDER_TYPE_GITLAB_COM": 8, + "PROVIDER_TYPE_GOOGLE_COM": 9, + "PROVIDER_TYPE_HEROKU_COM": 10, + "PROVIDER_TYPE_HIPCHAT_COM": 11, + "PROVIDER_TYPE_INDYKITE_ID": 35, + "PROVIDER_TYPE_INDYKITE_ME": 36, + "PROVIDER_TYPE_INSTAGRAM_COM": 12, + "PROVIDER_TYPE_KAKAO_COM": 13, + "PROVIDER_TYPE_LINKEDIN_COM": 14, + "PROVIDER_TYPE_MAILCHIMP_COM": 15, + "PROVIDER_TYPE_MAIL_RU": 16, + "PROVIDER_TYPE_MEDIAMATH_COM": 17, + "PROVIDER_TYPE_SANDBOX_MEDIAMATH_COM": 18, + "PROVIDER_TYPE_LIVE_COM": 32, + "PROVIDER_TYPE_MICROSOFT_COM": 19, + "PROVIDER_TYPE_HEALTH_NOKIA_COM": 20, + "PROVIDER_TYPE_ODNOKLASSNIKI_RU": 21, + "PROVIDER_TYPE_PAYPAL_COM": 22, + "PROVIDER_TYPE_SANDBOX_PAYPAL_COM": 23, + "PROVIDER_TYPE_SLACK_COM": 24, + "PROVIDER_TYPE_SPOTIFY_COM": 25, + "PROVIDER_TYPE_STACKOVERFLOW_COM": 26, + "PROVIDER_TYPE_TWITCH_TV": 27, + "PROVIDER_TYPE_UBER_COM": 28, + "PROVIDER_TYPE_VIPPS_NO": 40, + "PROVIDER_TYPE_VK_COM": 29, + "PROVIDER_TYPE_YAHOO_COM": 30, + "PROVIDER_TYPE_YANDEX_COM": 31, + } +) + +func (x OAuth2ClientConfig_ProviderType) Enum() *OAuth2ClientConfig_ProviderType { + p := new(OAuth2ClientConfig_ProviderType) + *p = x + return p +} + +func (x OAuth2ClientConfig_ProviderType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (OAuth2ClientConfig_ProviderType) Descriptor() protoreflect.EnumDescriptor { + return file_indykite_auditsink_v1beta1_config_proto_enumTypes[5].Descriptor() +} + +func (OAuth2ClientConfig_ProviderType) Type() protoreflect.EnumType { + return &file_indykite_auditsink_v1beta1_config_proto_enumTypes[5] +} + +func (x OAuth2ClientConfig_ProviderType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use OAuth2ClientConfig_ProviderType.Descriptor instead. +func (OAuth2ClientConfig_ProviderType) EnumDescriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{20, 0} +} + +// AuthStyle represents how requests for tokens are authenticated +// to the server. +type OAuth2ClientConfig_AuthStyle int32 + +const ( + OAuth2ClientConfig_AUTH_STYLE_INVALID OAuth2ClientConfig_AuthStyle = 0 + // AuthStyleAutoDetect means to auto-detect which authentication + // style the provider wants by trying both ways and caching + // the successful way for the future. + OAuth2ClientConfig_AUTH_STYLE_AUTO_DETECT OAuth2ClientConfig_AuthStyle = 1 + // AuthStyleInParams sends the "client_id" and "client_secret" + // in the POST body as application/x-www-form-urlencoded parameters. + OAuth2ClientConfig_AUTH_STYLE_IN_PARAMS OAuth2ClientConfig_AuthStyle = 2 + // AuthStyleInHeader sends the client_id and client_password + // using HTTP Basic Authorization. This is an optional style + // described in the OAuth2 RFC 6749 section 2.3.1. + OAuth2ClientConfig_AUTH_STYLE_IN_HEADER OAuth2ClientConfig_AuthStyle = 3 +) + +// Enum value maps for OAuth2ClientConfig_AuthStyle. +var ( + OAuth2ClientConfig_AuthStyle_name = map[int32]string{ + 0: "AUTH_STYLE_INVALID", + 1: "AUTH_STYLE_AUTO_DETECT", + 2: "AUTH_STYLE_IN_PARAMS", + 3: "AUTH_STYLE_IN_HEADER", + } + OAuth2ClientConfig_AuthStyle_value = map[string]int32{ + "AUTH_STYLE_INVALID": 0, + "AUTH_STYLE_AUTO_DETECT": 1, + "AUTH_STYLE_IN_PARAMS": 2, + "AUTH_STYLE_IN_HEADER": 3, + } +) + +func (x OAuth2ClientConfig_AuthStyle) Enum() *OAuth2ClientConfig_AuthStyle { + p := new(OAuth2ClientConfig_AuthStyle) + *p = x + return p +} + +func (x OAuth2ClientConfig_AuthStyle) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (OAuth2ClientConfig_AuthStyle) Descriptor() protoreflect.EnumDescriptor { + return file_indykite_auditsink_v1beta1_config_proto_enumTypes[6].Descriptor() +} + +func (OAuth2ClientConfig_AuthStyle) Type() protoreflect.EnumType { + return &file_indykite_auditsink_v1beta1_config_proto_enumTypes[6] +} + +func (x OAuth2ClientConfig_AuthStyle) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use OAuth2ClientConfig_AuthStyle.Descriptor instead. +func (OAuth2ClientConfig_AuthStyle) EnumDescriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{20, 1} +} + +type OAuth2ApplicationConfig_ClientSubjectType int32 + +const ( + OAuth2ApplicationConfig_CLIENT_SUBJECT_TYPE_INVALID OAuth2ApplicationConfig_ClientSubjectType = 0 + OAuth2ApplicationConfig_CLIENT_SUBJECT_TYPE_PUBLIC OAuth2ApplicationConfig_ClientSubjectType = 1 + OAuth2ApplicationConfig_CLIENT_SUBJECT_TYPE_PAIRWISE OAuth2ApplicationConfig_ClientSubjectType = 2 +) + +// Enum value maps for OAuth2ApplicationConfig_ClientSubjectType. +var ( + OAuth2ApplicationConfig_ClientSubjectType_name = map[int32]string{ + 0: "CLIENT_SUBJECT_TYPE_INVALID", + 1: "CLIENT_SUBJECT_TYPE_PUBLIC", + 2: "CLIENT_SUBJECT_TYPE_PAIRWISE", + } + OAuth2ApplicationConfig_ClientSubjectType_value = map[string]int32{ + "CLIENT_SUBJECT_TYPE_INVALID": 0, + "CLIENT_SUBJECT_TYPE_PUBLIC": 1, + "CLIENT_SUBJECT_TYPE_PAIRWISE": 2, + } +) + +func (x OAuth2ApplicationConfig_ClientSubjectType) Enum() *OAuth2ApplicationConfig_ClientSubjectType { + p := new(OAuth2ApplicationConfig_ClientSubjectType) + *p = x + return p +} + +func (x OAuth2ApplicationConfig_ClientSubjectType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (OAuth2ApplicationConfig_ClientSubjectType) Descriptor() protoreflect.EnumDescriptor { + return file_indykite_auditsink_v1beta1_config_proto_enumTypes[7].Descriptor() +} + +func (OAuth2ApplicationConfig_ClientSubjectType) Type() protoreflect.EnumType { + return &file_indykite_auditsink_v1beta1_config_proto_enumTypes[7] +} + +func (x OAuth2ApplicationConfig_ClientSubjectType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use OAuth2ApplicationConfig_ClientSubjectType.Descriptor instead. +func (OAuth2ApplicationConfig_ClientSubjectType) EnumDescriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{22, 0} +} + +type WebAuthnProviderConfig_ConveyancePreference int32 + +const ( + WebAuthnProviderConfig_CONVEYANCE_PREFERENCE_INVALID WebAuthnProviderConfig_ConveyancePreference = 0 + WebAuthnProviderConfig_CONVEYANCE_PREFERENCE_NONE WebAuthnProviderConfig_ConveyancePreference = 1 + WebAuthnProviderConfig_CONVEYANCE_PREFERENCE_INDIRECT WebAuthnProviderConfig_ConveyancePreference = 2 + WebAuthnProviderConfig_CONVEYANCE_PREFERENCE_DIRECT WebAuthnProviderConfig_ConveyancePreference = 3 +) + +// Enum value maps for WebAuthnProviderConfig_ConveyancePreference. +var ( + WebAuthnProviderConfig_ConveyancePreference_name = map[int32]string{ + 0: "CONVEYANCE_PREFERENCE_INVALID", + 1: "CONVEYANCE_PREFERENCE_NONE", + 2: "CONVEYANCE_PREFERENCE_INDIRECT", + 3: "CONVEYANCE_PREFERENCE_DIRECT", + } + WebAuthnProviderConfig_ConveyancePreference_value = map[string]int32{ + "CONVEYANCE_PREFERENCE_INVALID": 0, + "CONVEYANCE_PREFERENCE_NONE": 1, + "CONVEYANCE_PREFERENCE_INDIRECT": 2, + "CONVEYANCE_PREFERENCE_DIRECT": 3, + } +) + +func (x WebAuthnProviderConfig_ConveyancePreference) Enum() *WebAuthnProviderConfig_ConveyancePreference { + p := new(WebAuthnProviderConfig_ConveyancePreference) + *p = x + return p +} + +func (x WebAuthnProviderConfig_ConveyancePreference) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (WebAuthnProviderConfig_ConveyancePreference) Descriptor() protoreflect.EnumDescriptor { + return file_indykite_auditsink_v1beta1_config_proto_enumTypes[8].Descriptor() +} + +func (WebAuthnProviderConfig_ConveyancePreference) Type() protoreflect.EnumType { + return &file_indykite_auditsink_v1beta1_config_proto_enumTypes[8] +} + +func (x WebAuthnProviderConfig_ConveyancePreference) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use WebAuthnProviderConfig_ConveyancePreference.Descriptor instead. +func (WebAuthnProviderConfig_ConveyancePreference) EnumDescriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{23, 0} +} + +type WebAuthnProviderConfig_AuthenticatorAttachment int32 + +const ( + WebAuthnProviderConfig_AUTHENTICATOR_ATTACHMENT_INVALID WebAuthnProviderConfig_AuthenticatorAttachment = 0 + WebAuthnProviderConfig_AUTHENTICATOR_ATTACHMENT_DEFAULT WebAuthnProviderConfig_AuthenticatorAttachment = 1 + WebAuthnProviderConfig_AUTHENTICATOR_ATTACHMENT_PLATFORM WebAuthnProviderConfig_AuthenticatorAttachment = 2 + WebAuthnProviderConfig_AUTHENTICATOR_ATTACHMENT_CROSS_PLATFORM WebAuthnProviderConfig_AuthenticatorAttachment = 3 +) + +// Enum value maps for WebAuthnProviderConfig_AuthenticatorAttachment. +var ( + WebAuthnProviderConfig_AuthenticatorAttachment_name = map[int32]string{ + 0: "AUTHENTICATOR_ATTACHMENT_INVALID", + 1: "AUTHENTICATOR_ATTACHMENT_DEFAULT", + 2: "AUTHENTICATOR_ATTACHMENT_PLATFORM", + 3: "AUTHENTICATOR_ATTACHMENT_CROSS_PLATFORM", + } + WebAuthnProviderConfig_AuthenticatorAttachment_value = map[string]int32{ + "AUTHENTICATOR_ATTACHMENT_INVALID": 0, + "AUTHENTICATOR_ATTACHMENT_DEFAULT": 1, + "AUTHENTICATOR_ATTACHMENT_PLATFORM": 2, + "AUTHENTICATOR_ATTACHMENT_CROSS_PLATFORM": 3, + } +) + +func (x WebAuthnProviderConfig_AuthenticatorAttachment) Enum() *WebAuthnProviderConfig_AuthenticatorAttachment { + p := new(WebAuthnProviderConfig_AuthenticatorAttachment) + *p = x + return p +} + +func (x WebAuthnProviderConfig_AuthenticatorAttachment) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (WebAuthnProviderConfig_AuthenticatorAttachment) Descriptor() protoreflect.EnumDescriptor { + return file_indykite_auditsink_v1beta1_config_proto_enumTypes[9].Descriptor() +} + +func (WebAuthnProviderConfig_AuthenticatorAttachment) Type() protoreflect.EnumType { + return &file_indykite_auditsink_v1beta1_config_proto_enumTypes[9] +} + +func (x WebAuthnProviderConfig_AuthenticatorAttachment) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use WebAuthnProviderConfig_AuthenticatorAttachment.Descriptor instead. +func (WebAuthnProviderConfig_AuthenticatorAttachment) EnumDescriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{23, 1} +} + +type WebAuthnProviderConfig_UserVerificationRequirement int32 + +const ( + WebAuthnProviderConfig_USER_VERIFICATION_REQUIREMENT_INVALID WebAuthnProviderConfig_UserVerificationRequirement = 0 + WebAuthnProviderConfig_USER_VERIFICATION_REQUIREMENT_PREFERRED WebAuthnProviderConfig_UserVerificationRequirement = 1 + WebAuthnProviderConfig_USER_VERIFICATION_REQUIREMENT_REQUIRED WebAuthnProviderConfig_UserVerificationRequirement = 2 + WebAuthnProviderConfig_USER_VERIFICATION_REQUIREMENT_DISCOURAGED WebAuthnProviderConfig_UserVerificationRequirement = 3 +) + +// Enum value maps for WebAuthnProviderConfig_UserVerificationRequirement. +var ( + WebAuthnProviderConfig_UserVerificationRequirement_name = map[int32]string{ + 0: "USER_VERIFICATION_REQUIREMENT_INVALID", + 1: "USER_VERIFICATION_REQUIREMENT_PREFERRED", + 2: "USER_VERIFICATION_REQUIREMENT_REQUIRED", + 3: "USER_VERIFICATION_REQUIREMENT_DISCOURAGED", + } + WebAuthnProviderConfig_UserVerificationRequirement_value = map[string]int32{ + "USER_VERIFICATION_REQUIREMENT_INVALID": 0, + "USER_VERIFICATION_REQUIREMENT_PREFERRED": 1, + "USER_VERIFICATION_REQUIREMENT_REQUIRED": 2, + "USER_VERIFICATION_REQUIREMENT_DISCOURAGED": 3, + } +) + +func (x WebAuthnProviderConfig_UserVerificationRequirement) Enum() *WebAuthnProviderConfig_UserVerificationRequirement { + p := new(WebAuthnProviderConfig_UserVerificationRequirement) + *p = x + return p +} + +func (x WebAuthnProviderConfig_UserVerificationRequirement) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (WebAuthnProviderConfig_UserVerificationRequirement) Descriptor() protoreflect.EnumDescriptor { + return file_indykite_auditsink_v1beta1_config_proto_enumTypes[10].Descriptor() +} + +func (WebAuthnProviderConfig_UserVerificationRequirement) Type() protoreflect.EnumType { + return &file_indykite_auditsink_v1beta1_config_proto_enumTypes[10] +} + +func (x WebAuthnProviderConfig_UserVerificationRequirement) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use WebAuthnProviderConfig_UserVerificationRequirement.Descriptor instead. +func (WebAuthnProviderConfig_UserVerificationRequirement) EnumDescriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{23, 2} +} + +type AuthorizationPolicyConfig_Status int32 + +const ( + AuthorizationPolicyConfig_STATUS_INVALID AuthorizationPolicyConfig_Status = 0 + AuthorizationPolicyConfig_STATUS_ACTIVE AuthorizationPolicyConfig_Status = 1 + AuthorizationPolicyConfig_STATUS_INACTIVE AuthorizationPolicyConfig_Status = 2 +) + +// Enum value maps for AuthorizationPolicyConfig_Status. +var ( + AuthorizationPolicyConfig_Status_name = map[int32]string{ + 0: "STATUS_INVALID", + 1: "STATUS_ACTIVE", + 2: "STATUS_INACTIVE", + } + AuthorizationPolicyConfig_Status_value = map[string]int32{ + "STATUS_INVALID": 0, + "STATUS_ACTIVE": 1, + "STATUS_INACTIVE": 2, + } +) + +func (x AuthorizationPolicyConfig_Status) Enum() *AuthorizationPolicyConfig_Status { + p := new(AuthorizationPolicyConfig_Status) + *p = x + return p +} + +func (x AuthorizationPolicyConfig_Status) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (AuthorizationPolicyConfig_Status) Descriptor() protoreflect.EnumDescriptor { + return file_indykite_auditsink_v1beta1_config_proto_enumTypes[11].Descriptor() +} + +func (AuthorizationPolicyConfig_Status) Type() protoreflect.EnumType { + return &file_indykite_auditsink_v1beta1_config_proto_enumTypes[11] +} + +func (x AuthorizationPolicyConfig_Status) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use AuthorizationPolicyConfig_Status.Descriptor instead. +func (AuthorizationPolicyConfig_Status) EnumDescriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{24, 0} +} + +type CreatedConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Type ConfigType `protobuf:"varint,2,opt,name=type,proto3,enum=indykite.auditsink.v1beta1.ConfigType" json:"type,omitempty"` + Location *CreatedConfig_Location `protobuf:"bytes,3,opt,name=location,proto3" json:"location,omitempty"` + Detail *ConfigDetail `protobuf:"bytes,4,opt,name=detail,proto3" json:"detail,omitempty"` +} + +func (x *CreatedConfig) Reset() { + *x = CreatedConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreatedConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreatedConfig) ProtoMessage() {} + +func (x *CreatedConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreatedConfig.ProtoReflect.Descriptor instead. +func (*CreatedConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{0} +} + +func (x *CreatedConfig) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *CreatedConfig) GetType() ConfigType { + if x != nil { + return x.Type + } + return ConfigType_CONFIG_TYPE_INVALID +} + +func (x *CreatedConfig) GetLocation() *CreatedConfig_Location { + if x != nil { + return x.Location + } + return nil +} + +func (x *CreatedConfig) GetDetail() *ConfigDetail { + if x != nil { + return x.Detail + } + return nil +} + +type ReadConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Identifier: + // + // *ReadConfig_Id + // *ReadConfig_Name + Identifier isReadConfig_Identifier `protobuf_oneof:"identifier"` + Type ConfigType `protobuf:"varint,3,opt,name=type,proto3,enum=indykite.auditsink.v1beta1.ConfigType" json:"type,omitempty"` +} + +func (x *ReadConfig) Reset() { + *x = ReadConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ReadConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReadConfig) ProtoMessage() {} + +func (x *ReadConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReadConfig.ProtoReflect.Descriptor instead. +func (*ReadConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{1} +} + +func (m *ReadConfig) GetIdentifier() isReadConfig_Identifier { + if m != nil { + return m.Identifier + } + return nil +} + +func (x *ReadConfig) GetId() string { + if x, ok := x.GetIdentifier().(*ReadConfig_Id); ok { + return x.Id + } + return "" +} + +func (x *ReadConfig) GetName() *ReadConfig_NameIdentifier { + if x, ok := x.GetIdentifier().(*ReadConfig_Name); ok { + return x.Name + } + return nil +} + +func (x *ReadConfig) GetType() ConfigType { + if x != nil { + return x.Type + } + return ConfigType_CONFIG_TYPE_INVALID +} + +type isReadConfig_Identifier interface { + isReadConfig_Identifier() +} + +type ReadConfig_Id struct { + Id string `protobuf:"bytes,1,opt,name=id,proto3,oneof"` +} + +type ReadConfig_Name struct { + Name *ReadConfig_NameIdentifier `protobuf:"bytes,2,opt,name=name,proto3,oneof"` +} + +func (*ReadConfig_Id) isReadConfig_Identifier() {} + +func (*ReadConfig_Name) isReadConfig_Identifier() {} + +type UpdatedConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Type ConfigType `protobuf:"varint,2,opt,name=type,proto3,enum=indykite.auditsink.v1beta1.ConfigType" json:"type,omitempty"` + Before *ConfigDetail `protobuf:"bytes,3,opt,name=before,proto3" json:"before,omitempty"` + After *ConfigDetail `protobuf:"bytes,4,opt,name=after,proto3" json:"after,omitempty"` +} + +func (x *UpdatedConfig) Reset() { + *x = UpdatedConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdatedConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdatedConfig) ProtoMessage() {} + +func (x *UpdatedConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdatedConfig.ProtoReflect.Descriptor instead. +func (*UpdatedConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{2} +} + +func (x *UpdatedConfig) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *UpdatedConfig) GetType() ConfigType { + if x != nil { + return x.Type + } + return ConfigType_CONFIG_TYPE_INVALID +} + +func (x *UpdatedConfig) GetBefore() *ConfigDetail { + if x != nil { + return x.Before + } + return nil +} + +func (x *UpdatedConfig) GetAfter() *ConfigDetail { + if x != nil { + return x.After + } + return nil +} + +type DeletedConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Type ConfigType `protobuf:"varint,2,opt,name=type,proto3,enum=indykite.auditsink.v1beta1.ConfigType" json:"type,omitempty"` +} + +func (x *DeletedConfig) Reset() { + *x = DeletedConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeletedConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeletedConfig) ProtoMessage() {} + +func (x *DeletedConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeletedConfig.ProtoReflect.Descriptor instead. +func (*DeletedConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{3} +} + +func (x *DeletedConfig) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *DeletedConfig) GetType() ConfigType { + if x != nil { + return x.Type + } + return ConfigType_CONFIG_TYPE_INVALID +} + +type ConfigDetail struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` + Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` + Version int64 `protobuf:"varint,4,opt,name=version,proto3" json:"version,omitempty"` + // Types that are assignable to Configuration: + // + // *ConfigDetail_CustomerConfig + // *ConfigDetail_ApplicationSpaceConfig + // *ConfigDetail_TenantConfig + // *ConfigDetail_ApplicationAgentCredential + // *ConfigDetail_ServiceAccountCredential + // *ConfigDetail_AuthFlowConfig + // *ConfigDetail_EmailServiceConfig + // *ConfigDetail_AuditSinkConfig + // *ConfigDetail_Oauth2ClientConfig + // *ConfigDetail_WebAuthnProviderConfig + // *ConfigDetail_AuthorizationPolicyConfig + // *ConfigDetail_Oauth2ApplicationConfig + // *ConfigDetail_Oauth2ProviderConfig + Configuration isConfigDetail_Configuration `protobuf_oneof:"configuration"` +} + +func (x *ConfigDetail) Reset() { + *x = ConfigDetail{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ConfigDetail) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ConfigDetail) ProtoMessage() {} + +func (x *ConfigDetail) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ConfigDetail.ProtoReflect.Descriptor instead. +func (*ConfigDetail) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{4} +} + +func (x *ConfigDetail) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *ConfigDetail) GetDisplayName() string { + if x != nil { + return x.DisplayName + } + return "" +} + +func (x *ConfigDetail) GetDescription() string { + if x != nil { + return x.Description + } + return "" +} + +func (x *ConfigDetail) GetVersion() int64 { + if x != nil { + return x.Version + } + return 0 +} + +func (m *ConfigDetail) GetConfiguration() isConfigDetail_Configuration { + if m != nil { + return m.Configuration + } + return nil +} + +func (x *ConfigDetail) GetCustomerConfig() *CustomerConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_CustomerConfig); ok { + return x.CustomerConfig + } + return nil +} + +func (x *ConfigDetail) GetApplicationSpaceConfig() *ApplicationSpaceConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_ApplicationSpaceConfig); ok { + return x.ApplicationSpaceConfig + } + return nil +} + +func (x *ConfigDetail) GetTenantConfig() *TenantConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_TenantConfig); ok { + return x.TenantConfig + } + return nil +} + +func (x *ConfigDetail) GetApplicationAgentCredential() *ApplicationAgentCredentialConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_ApplicationAgentCredential); ok { + return x.ApplicationAgentCredential + } + return nil +} + +func (x *ConfigDetail) GetServiceAccountCredential() *ServiceAccountCredentialConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_ServiceAccountCredential); ok { + return x.ServiceAccountCredential + } + return nil +} + +func (x *ConfigDetail) GetAuthFlowConfig() *AuthFlowConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_AuthFlowConfig); ok { + return x.AuthFlowConfig + } + return nil +} + +func (x *ConfigDetail) GetEmailServiceConfig() *EmailServiceConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_EmailServiceConfig); ok { + return x.EmailServiceConfig + } + return nil +} + +func (x *ConfigDetail) GetAuditSinkConfig() *AuditSinkConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_AuditSinkConfig); ok { + return x.AuditSinkConfig + } + return nil +} + +func (x *ConfigDetail) GetOauth2ClientConfig() *OAuth2ClientConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_Oauth2ClientConfig); ok { + return x.Oauth2ClientConfig + } + return nil +} + +func (x *ConfigDetail) GetWebAuthnProviderConfig() *WebAuthnProviderConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_WebAuthnProviderConfig); ok { + return x.WebAuthnProviderConfig + } + return nil +} + +func (x *ConfigDetail) GetAuthorizationPolicyConfig() *AuthorizationPolicyConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_AuthorizationPolicyConfig); ok { + return x.AuthorizationPolicyConfig + } + return nil +} + +func (x *ConfigDetail) GetOauth2ApplicationConfig() *OAuth2ApplicationConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_Oauth2ApplicationConfig); ok { + return x.Oauth2ApplicationConfig + } + return nil +} + +func (x *ConfigDetail) GetOauth2ProviderConfig() *OAuth2ProviderConfig { + if x, ok := x.GetConfiguration().(*ConfigDetail_Oauth2ProviderConfig); ok { + return x.Oauth2ProviderConfig + } + return nil +} + +type isConfigDetail_Configuration interface { + isConfigDetail_Configuration() +} + +type ConfigDetail_CustomerConfig struct { + CustomerConfig *CustomerConfig `protobuf:"bytes,5,opt,name=customer_config,json=customerConfig,proto3,oneof"` +} + +type ConfigDetail_ApplicationSpaceConfig struct { + ApplicationSpaceConfig *ApplicationSpaceConfig `protobuf:"bytes,6,opt,name=application_space_config,json=applicationSpaceConfig,proto3,oneof"` +} + +type ConfigDetail_TenantConfig struct { + TenantConfig *TenantConfig `protobuf:"bytes,7,opt,name=tenant_config,json=tenantConfig,proto3,oneof"` +} + +type ConfigDetail_ApplicationAgentCredential struct { + ApplicationAgentCredential *ApplicationAgentCredentialConfig `protobuf:"bytes,8,opt,name=application_agent_credential,json=applicationAgentCredential,proto3,oneof"` +} + +type ConfigDetail_ServiceAccountCredential struct { + ServiceAccountCredential *ServiceAccountCredentialConfig `protobuf:"bytes,9,opt,name=service_account_credential,json=serviceAccountCredential,proto3,oneof"` +} + +type ConfigDetail_AuthFlowConfig struct { + AuthFlowConfig *AuthFlowConfig `protobuf:"bytes,10,opt,name=auth_flow_config,json=authFlowConfig,proto3,oneof"` +} + +type ConfigDetail_EmailServiceConfig struct { + EmailServiceConfig *EmailServiceConfig `protobuf:"bytes,11,opt,name=email_service_config,json=emailServiceConfig,proto3,oneof"` +} + +type ConfigDetail_AuditSinkConfig struct { + AuditSinkConfig *AuditSinkConfig `protobuf:"bytes,12,opt,name=audit_sink_config,json=auditSinkConfig,proto3,oneof"` +} + +type ConfigDetail_Oauth2ClientConfig struct { + Oauth2ClientConfig *OAuth2ClientConfig `protobuf:"bytes,13,opt,name=oauth2_client_config,json=oauth2ClientConfig,proto3,oneof"` +} + +type ConfigDetail_WebAuthnProviderConfig struct { + WebAuthnProviderConfig *WebAuthnProviderConfig `protobuf:"bytes,14,opt,name=web_authn_provider_config,json=webAuthnProviderConfig,proto3,oneof"` +} + +type ConfigDetail_AuthorizationPolicyConfig struct { + AuthorizationPolicyConfig *AuthorizationPolicyConfig `protobuf:"bytes,15,opt,name=authorization_policy_config,json=authorizationPolicyConfig,proto3,oneof"` +} + +type ConfigDetail_Oauth2ApplicationConfig struct { + Oauth2ApplicationConfig *OAuth2ApplicationConfig `protobuf:"bytes,16,opt,name=oauth2_application_config,json=oauth2ApplicationConfig,proto3,oneof"` +} + +type ConfigDetail_Oauth2ProviderConfig struct { + Oauth2ProviderConfig *OAuth2ProviderConfig `protobuf:"bytes,17,opt,name=oauth2_provider_config,json=oauth2ProviderConfig,proto3,oneof"` +} + +func (*ConfigDetail_CustomerConfig) isConfigDetail_Configuration() {} + +func (*ConfigDetail_ApplicationSpaceConfig) isConfigDetail_Configuration() {} + +func (*ConfigDetail_TenantConfig) isConfigDetail_Configuration() {} + +func (*ConfigDetail_ApplicationAgentCredential) isConfigDetail_Configuration() {} + +func (*ConfigDetail_ServiceAccountCredential) isConfigDetail_Configuration() {} + +func (*ConfigDetail_AuthFlowConfig) isConfigDetail_Configuration() {} + +func (*ConfigDetail_EmailServiceConfig) isConfigDetail_Configuration() {} + +func (*ConfigDetail_AuditSinkConfig) isConfigDetail_Configuration() {} + +func (*ConfigDetail_Oauth2ClientConfig) isConfigDetail_Configuration() {} + +func (*ConfigDetail_WebAuthnProviderConfig) isConfigDetail_Configuration() {} + +func (*ConfigDetail_AuthorizationPolicyConfig) isConfigDetail_Configuration() {} + +func (*ConfigDetail_Oauth2ApplicationConfig) isConfigDetail_Configuration() {} + +func (*ConfigDetail_Oauth2ProviderConfig) isConfigDetail_Configuration() {} + +type CustomerConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + DefaultAuthFlowId string `protobuf:"bytes,1,opt,name=default_auth_flow_id,json=defaultAuthFlowId,proto3" json:"default_auth_flow_id,omitempty"` + DefaultEmailServiceId string `protobuf:"bytes,2,opt,name=default_email_service_id,json=defaultEmailServiceId,proto3" json:"default_email_service_id,omitempty"` +} + +func (x *CustomerConfig) Reset() { + *x = CustomerConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CustomerConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CustomerConfig) ProtoMessage() {} + +func (x *CustomerConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CustomerConfig.ProtoReflect.Descriptor instead. +func (*CustomerConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{5} +} + +func (x *CustomerConfig) GetDefaultAuthFlowId() string { + if x != nil { + return x.DefaultAuthFlowId + } + return "" +} + +func (x *CustomerConfig) GetDefaultEmailServiceId() string { + if x != nil { + return x.DefaultEmailServiceId + } + return "" +} + +type ApplicationSpaceConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + DefaultTenantId string `protobuf:"bytes,1,opt,name=default_tenant_id,json=defaultTenantId,proto3" json:"default_tenant_id,omitempty"` + DefaultAuthFlowId string `protobuf:"bytes,2,opt,name=default_auth_flow_id,json=defaultAuthFlowId,proto3" json:"default_auth_flow_id,omitempty"` + DefaultEmailServiceId string `protobuf:"bytes,3,opt,name=default_email_service_id,json=defaultEmailServiceId,proto3" json:"default_email_service_id,omitempty"` + UsernamePolicy *UsernamePolicyConfig `protobuf:"bytes,4,opt,name=username_policy,json=usernamePolicy,proto3" json:"username_policy,omitempty"` +} + +func (x *ApplicationSpaceConfig) Reset() { + *x = ApplicationSpaceConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ApplicationSpaceConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ApplicationSpaceConfig) ProtoMessage() {} + +func (x *ApplicationSpaceConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ApplicationSpaceConfig.ProtoReflect.Descriptor instead. +func (*ApplicationSpaceConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{6} +} + +func (x *ApplicationSpaceConfig) GetDefaultTenantId() string { + if x != nil { + return x.DefaultTenantId + } + return "" +} + +func (x *ApplicationSpaceConfig) GetDefaultAuthFlowId() string { + if x != nil { + return x.DefaultAuthFlowId + } + return "" +} + +func (x *ApplicationSpaceConfig) GetDefaultEmailServiceId() string { + if x != nil { + return x.DefaultEmailServiceId + } + return "" +} + +func (x *ApplicationSpaceConfig) GetUsernamePolicy() *UsernamePolicyConfig { + if x != nil { + return x.UsernamePolicy + } + return nil +} + +type TenantConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + DefaultAuthFlowId string `protobuf:"bytes,1,opt,name=default_auth_flow_id,json=defaultAuthFlowId,proto3" json:"default_auth_flow_id,omitempty"` + DefaultEmailServiceId string `protobuf:"bytes,2,opt,name=default_email_service_id,json=defaultEmailServiceId,proto3" json:"default_email_service_id,omitempty"` + UsernamePolicy *UsernamePolicyConfig `protobuf:"bytes,3,opt,name=username_policy,json=usernamePolicy,proto3" json:"username_policy,omitempty"` +} + +func (x *TenantConfig) Reset() { + *x = TenantConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TenantConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TenantConfig) ProtoMessage() {} + +func (x *TenantConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TenantConfig.ProtoReflect.Descriptor instead. +func (*TenantConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{7} +} + +func (x *TenantConfig) GetDefaultAuthFlowId() string { + if x != nil { + return x.DefaultAuthFlowId + } + return "" +} + +func (x *TenantConfig) GetDefaultEmailServiceId() string { + if x != nil { + return x.DefaultEmailServiceId + } + return "" +} + +func (x *TenantConfig) GetUsernamePolicy() *UsernamePolicyConfig { + if x != nil { + return x.UsernamePolicy + } + return nil +} + +type UsernamePolicyConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AllowedUsernameFormats []string `protobuf:"bytes,1,rep,name=allowed_username_formats,json=allowedUsernameFormats,proto3" json:"allowed_username_formats,omitempty"` + ValidEmail bool `protobuf:"varint,2,opt,name=valid_email,json=validEmail,proto3" json:"valid_email,omitempty"` + VerifyEmail bool `protobuf:"varint,3,opt,name=verify_email,json=verifyEmail,proto3" json:"verify_email,omitempty"` + VerifyEmailGracePeriod *durationpb.Duration `protobuf:"bytes,4,opt,name=verify_email_grace_period,json=verifyEmailGracePeriod,proto3" json:"verify_email_grace_period,omitempty"` + AllowedEmailDomains []string `protobuf:"bytes,5,rep,name=allowed_email_domains,json=allowedEmailDomains,proto3" json:"allowed_email_domains,omitempty"` + ExclusiveEmailDomains []string `protobuf:"bytes,6,rep,name=exclusive_email_domains,json=exclusiveEmailDomains,proto3" json:"exclusive_email_domains,omitempty"` +} + +func (x *UsernamePolicyConfig) Reset() { + *x = UsernamePolicyConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UsernamePolicyConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UsernamePolicyConfig) ProtoMessage() {} + +func (x *UsernamePolicyConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UsernamePolicyConfig.ProtoReflect.Descriptor instead. +func (*UsernamePolicyConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{8} +} + +func (x *UsernamePolicyConfig) GetAllowedUsernameFormats() []string { + if x != nil { + return x.AllowedUsernameFormats + } + return nil +} + +func (x *UsernamePolicyConfig) GetValidEmail() bool { + if x != nil { + return x.ValidEmail + } + return false +} + +func (x *UsernamePolicyConfig) GetVerifyEmail() bool { + if x != nil { + return x.VerifyEmail + } + return false +} + +func (x *UsernamePolicyConfig) GetVerifyEmailGracePeriod() *durationpb.Duration { + if x != nil { + return x.VerifyEmailGracePeriod + } + return nil +} + +func (x *UsernamePolicyConfig) GetAllowedEmailDomains() []string { + if x != nil { + return x.AllowedEmailDomains + } + return nil +} + +func (x *UsernamePolicyConfig) GetExclusiveEmailDomains() []string { + if x != nil { + return x.ExclusiveEmailDomains + } + return nil +} + +type ApplicationAgentCredentialConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Kid string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"` + // KeyFormat specify in which format the public key was provided. + // Could by empty, if no public key was provided. + KeyFormat string `protobuf:"bytes,2,opt,name=key_format,json=keyFormat,proto3" json:"key_format,omitempty"` + OriginalKid string `protobuf:"bytes,3,opt,name=original_kid,json=originalKid,proto3" json:"original_kid,omitempty"` + ExpireTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=expire_time,json=expireTime,proto3" json:"expire_time,omitempty"` +} + +func (x *ApplicationAgentCredentialConfig) Reset() { + *x = ApplicationAgentCredentialConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ApplicationAgentCredentialConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ApplicationAgentCredentialConfig) ProtoMessage() {} + +func (x *ApplicationAgentCredentialConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ApplicationAgentCredentialConfig.ProtoReflect.Descriptor instead. +func (*ApplicationAgentCredentialConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{9} +} + +func (x *ApplicationAgentCredentialConfig) GetKid() string { + if x != nil { + return x.Kid + } + return "" +} + +func (x *ApplicationAgentCredentialConfig) GetKeyFormat() string { + if x != nil { + return x.KeyFormat + } + return "" +} + +func (x *ApplicationAgentCredentialConfig) GetOriginalKid() string { + if x != nil { + return x.OriginalKid + } + return "" +} + +func (x *ApplicationAgentCredentialConfig) GetExpireTime() *timestamppb.Timestamp { + if x != nil { + return x.ExpireTime + } + return nil +} + +type ServiceAccountCredentialConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Kid string `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"` + // KeyFormat specify in which format the public key was provided. + // Could by empty, if no public key was provided. + KeyFormat string `protobuf:"bytes,2,opt,name=key_format,json=keyFormat,proto3" json:"key_format,omitempty"` + OriginalKid string `protobuf:"bytes,3,opt,name=original_kid,json=originalKid,proto3" json:"original_kid,omitempty"` + ExpireTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=expire_time,json=expireTime,proto3" json:"expire_time,omitempty"` +} + +func (x *ServiceAccountCredentialConfig) Reset() { + *x = ServiceAccountCredentialConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ServiceAccountCredentialConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ServiceAccountCredentialConfig) ProtoMessage() {} + +func (x *ServiceAccountCredentialConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ServiceAccountCredentialConfig.ProtoReflect.Descriptor instead. +func (*ServiceAccountCredentialConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{10} +} + +func (x *ServiceAccountCredentialConfig) GetKid() string { + if x != nil { + return x.Kid + } + return "" +} + +func (x *ServiceAccountCredentialConfig) GetKeyFormat() string { + if x != nil { + return x.KeyFormat + } + return "" +} + +func (x *ServiceAccountCredentialConfig) GetOriginalKid() string { + if x != nil { + return x.OriginalKid + } + return "" +} + +func (x *ServiceAccountCredentialConfig) GetExpireTime() *timestamppb.Timestamp { + if x != nil { + return x.ExpireTime + } + return nil +} + +type AuthFlowConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SourceFormat AuthFlowConfig_Format `protobuf:"varint,1,opt,name=source_format,json=sourceFormat,proto3,enum=indykite.auditsink.v1beta1.AuthFlowConfig_Format" json:"source_format,omitempty"` + // Source of AuthFlow definition. + // During Write, developer can send only JSON or YAML and must set appropriate format in source_format field. + // + // When reading, format is always specified by source_format field. However, also Rich JSON might be returned. + // This situation happen, when AuthFlow was designed via Drag'n'Drop tool in Console UI. + Source []byte `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"` +} + +func (x *AuthFlowConfig) Reset() { + *x = AuthFlowConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AuthFlowConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AuthFlowConfig) ProtoMessage() {} + +func (x *AuthFlowConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AuthFlowConfig.ProtoReflect.Descriptor instead. +func (*AuthFlowConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{11} +} + +func (x *AuthFlowConfig) GetSourceFormat() AuthFlowConfig_Format { + if x != nil { + return x.SourceFormat + } + return AuthFlowConfig_FORMAT_INVALID +} + +func (x *AuthFlowConfig) GetSource() []byte { + if x != nil { + return x.Source + } + return nil +} + +type EmailServiceConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + DefaultFromAddress *Email `protobuf:"bytes,1,opt,name=default_from_address,json=defaultFromAddress,proto3" json:"default_from_address,omitempty"` + // Types that are assignable to Provider: + // + // *EmailServiceConfig_Sendgrid + // *EmailServiceConfig_Amazon + Provider isEmailServiceConfig_Provider `protobuf_oneof:"provider"` + InvitationMessage *EmailDefinition `protobuf:"bytes,4,opt,name=invitation_message,json=invitationMessage,proto3" json:"invitation_message,omitempty"` + ResetPasswordMessage *EmailDefinition `protobuf:"bytes,5,opt,name=reset_password_message,json=resetPasswordMessage,proto3" json:"reset_password_message,omitempty"` + VerificationMessage *EmailDefinition `protobuf:"bytes,6,opt,name=verification_message,json=verificationMessage,proto3" json:"verification_message,omitempty"` + OneTimePasswordMessage *EmailDefinition `protobuf:"bytes,7,opt,name=one_time_password_message,json=oneTimePasswordMessage,proto3" json:"one_time_password_message,omitempty"` +} + +func (x *EmailServiceConfig) Reset() { + *x = EmailServiceConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EmailServiceConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EmailServiceConfig) ProtoMessage() {} + +func (x *EmailServiceConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EmailServiceConfig.ProtoReflect.Descriptor instead. +func (*EmailServiceConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{12} +} + +func (x *EmailServiceConfig) GetDefaultFromAddress() *Email { + if x != nil { + return x.DefaultFromAddress + } + return nil +} + +func (m *EmailServiceConfig) GetProvider() isEmailServiceConfig_Provider { + if m != nil { + return m.Provider + } + return nil +} + +func (x *EmailServiceConfig) GetSendgrid() *SendGridProviderConfig { + if x, ok := x.GetProvider().(*EmailServiceConfig_Sendgrid); ok { + return x.Sendgrid + } + return nil +} + +func (x *EmailServiceConfig) GetAmazon() *AmazonSESProviderConfig { + if x, ok := x.GetProvider().(*EmailServiceConfig_Amazon); ok { + return x.Amazon + } + return nil +} + +func (x *EmailServiceConfig) GetInvitationMessage() *EmailDefinition { + if x != nil { + return x.InvitationMessage + } + return nil +} + +func (x *EmailServiceConfig) GetResetPasswordMessage() *EmailDefinition { + if x != nil { + return x.ResetPasswordMessage + } + return nil +} + +func (x *EmailServiceConfig) GetVerificationMessage() *EmailDefinition { + if x != nil { + return x.VerificationMessage + } + return nil +} + +func (x *EmailServiceConfig) GetOneTimePasswordMessage() *EmailDefinition { + if x != nil { + return x.OneTimePasswordMessage + } + return nil +} + +type isEmailServiceConfig_Provider interface { + isEmailServiceConfig_Provider() +} + +type EmailServiceConfig_Sendgrid struct { + Sendgrid *SendGridProviderConfig `protobuf:"bytes,2,opt,name=sendgrid,proto3,oneof"` +} + +type EmailServiceConfig_Amazon struct { + Amazon *AmazonSESProviderConfig `protobuf:"bytes,3,opt,name=amazon,proto3,oneof"` +} + +func (*EmailServiceConfig_Sendgrid) isEmailServiceConfig_Provider() {} + +func (*EmailServiceConfig_Amazon) isEmailServiceConfig_Provider() {} + +type Email struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` +} + +func (x *Email) Reset() { + *x = Email{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Email) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Email) ProtoMessage() {} + +func (x *Email) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Email.ProtoReflect.Descriptor instead. +func (*Email) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{13} +} + +func (x *Email) GetAddress() string { + if x != nil { + return x.Address + } + return "" +} + +func (x *Email) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +type SendGridProviderConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ApiKey string `protobuf:"bytes,1,opt,name=api_key,json=apiKey,proto3" json:"api_key,omitempty"` + SandboxMode bool `protobuf:"varint,2,opt,name=sandbox_mode,json=sandboxMode,proto3" json:"sandbox_mode,omitempty"` + IpPoolName string `protobuf:"bytes,3,opt,name=ip_pool_name,json=ipPoolName,proto3" json:"ip_pool_name,omitempty"` + Host string `protobuf:"bytes,4,opt,name=host,proto3" json:"host,omitempty"` +} + +func (x *SendGridProviderConfig) Reset() { + *x = SendGridProviderConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SendGridProviderConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SendGridProviderConfig) ProtoMessage() {} + +func (x *SendGridProviderConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SendGridProviderConfig.ProtoReflect.Descriptor instead. +func (*SendGridProviderConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{14} +} + +func (x *SendGridProviderConfig) GetApiKey() string { + if x != nil { + return x.ApiKey + } + return "" +} + +func (x *SendGridProviderConfig) GetSandboxMode() bool { + if x != nil { + return x.SandboxMode + } + return false +} + +func (x *SendGridProviderConfig) GetIpPoolName() string { + if x != nil { + return x.IpPoolName + } + return "" +} + +func (x *SendGridProviderConfig) GetHost() string { + if x != nil { + return x.Host + } + return "" +} + +type AmazonSESProviderConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccessKeyId string `protobuf:"bytes,1,opt,name=access_key_id,json=accessKeyId,proto3" json:"access_key_id,omitempty"` + SecretAccessKey string `protobuf:"bytes,2,opt,name=secret_access_key,json=secretAccessKey,proto3" json:"secret_access_key,omitempty"` + Region string `protobuf:"bytes,3,opt,name=region,proto3" json:"region,omitempty"` + ConfigurationSetName string `protobuf:"bytes,4,opt,name=configuration_set_name,json=configurationSetName,proto3" json:"configuration_set_name,omitempty"` + DefaultFromAddress *Email `protobuf:"bytes,5,opt,name=default_from_address,json=defaultFromAddress,proto3" json:"default_from_address,omitempty"` + FeedbackForwardingEmailAddress string `protobuf:"bytes,6,opt,name=feedback_forwarding_email_address,json=feedbackForwardingEmailAddress,proto3" json:"feedback_forwarding_email_address,omitempty"` + ReplyToAddresses []string `protobuf:"bytes,7,rep,name=reply_to_addresses,json=replyToAddresses,proto3" json:"reply_to_addresses,omitempty"` +} + +func (x *AmazonSESProviderConfig) Reset() { + *x = AmazonSESProviderConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AmazonSESProviderConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AmazonSESProviderConfig) ProtoMessage() {} + +func (x *AmazonSESProviderConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AmazonSESProviderConfig.ProtoReflect.Descriptor instead. +func (*AmazonSESProviderConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{15} +} + +func (x *AmazonSESProviderConfig) GetAccessKeyId() string { + if x != nil { + return x.AccessKeyId + } + return "" +} + +func (x *AmazonSESProviderConfig) GetSecretAccessKey() string { + if x != nil { + return x.SecretAccessKey + } + return "" +} + +func (x *AmazonSESProviderConfig) GetRegion() string { + if x != nil { + return x.Region + } + return "" +} + +func (x *AmazonSESProviderConfig) GetConfigurationSetName() string { + if x != nil { + return x.ConfigurationSetName + } + return "" +} + +func (x *AmazonSESProviderConfig) GetDefaultFromAddress() *Email { + if x != nil { + return x.DefaultFromAddress + } + return nil +} + +func (x *AmazonSESProviderConfig) GetFeedbackForwardingEmailAddress() string { + if x != nil { + return x.FeedbackForwardingEmailAddress + } + return "" +} + +func (x *AmazonSESProviderConfig) GetReplyToAddresses() []string { + if x != nil { + return x.ReplyToAddresses + } + return nil +} + +type EmailDefinition struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Email: + // + // *EmailDefinition_Template + Email isEmailDefinition_Email `protobuf_oneof:"email"` +} + +func (x *EmailDefinition) Reset() { + *x = EmailDefinition{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EmailDefinition) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EmailDefinition) ProtoMessage() {} + +func (x *EmailDefinition) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EmailDefinition.ProtoReflect.Descriptor instead. +func (*EmailDefinition) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{16} +} + +func (m *EmailDefinition) GetEmail() isEmailDefinition_Email { + if m != nil { + return m.Email + } + return nil +} + +func (x *EmailDefinition) GetTemplate() *EmailTemplate { + if x, ok := x.GetEmail().(*EmailDefinition_Template); ok { + return x.Template + } + return nil +} + +type isEmailDefinition_Email interface { + isEmailDefinition_Email() +} + +type EmailDefinition_Template struct { + Template *EmailTemplate `protobuf:"bytes,1,opt,name=template,proto3,oneof"` // EmailMessage message = 2; // Not supported yet on BE +} + +func (*EmailDefinition_Template) isEmailDefinition_Email() {} + +type EmailTemplate struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TemplateId string `protobuf:"bytes,1,opt,name=template_id,json=templateId,proto3" json:"template_id,omitempty"` + TemplateVersion string `protobuf:"bytes,2,opt,name=template_version,json=templateVersion,proto3" json:"template_version,omitempty"` + From *Email `protobuf:"bytes,3,opt,name=from,proto3" json:"from,omitempty"` + ReplyTo *Email `protobuf:"bytes,4,opt,name=reply_to,json=replyTo,proto3" json:"reply_to,omitempty"` + To []*Email `protobuf:"bytes,5,rep,name=to,proto3" json:"to,omitempty"` + Cc []*Email `protobuf:"bytes,6,rep,name=cc,proto3" json:"cc,omitempty"` + Bcc []*Email `protobuf:"bytes,7,rep,name=bcc,proto3" json:"bcc,omitempty"` + Subject string `protobuf:"bytes,8,opt,name=subject,proto3" json:"subject,omitempty"` + Headers map[string]string `protobuf:"bytes,9,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + CustomArgs map[string]string `protobuf:"bytes,10,rep,name=custom_args,json=customArgs,proto3" json:"custom_args,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + DynamicTemplateValues map[string]*v1beta1.Value `protobuf:"bytes,11,rep,name=dynamic_template_values,json=dynamicTemplateValues,proto3" json:"dynamic_template_values,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Categories []string `protobuf:"bytes,12,rep,name=categories,proto3" json:"categories,omitempty"` + Attachments []*EmailAttachment `protobuf:"bytes,13,rep,name=attachments,proto3" json:"attachments,omitempty"` + EventPayload string `protobuf:"bytes,14,opt,name=event_payload,json=eventPayload,proto3" json:"event_payload,omitempty"` + // The Amazon Resource Name (ARN) of the template. + TemplateArn string `protobuf:"bytes,15,opt,name=template_arn,json=templateArn,proto3" json:"template_arn,omitempty"` +} + +func (x *EmailTemplate) Reset() { + *x = EmailTemplate{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EmailTemplate) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EmailTemplate) ProtoMessage() {} + +func (x *EmailTemplate) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EmailTemplate.ProtoReflect.Descriptor instead. +func (*EmailTemplate) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{17} +} + +func (x *EmailTemplate) GetTemplateId() string { + if x != nil { + return x.TemplateId + } + return "" +} + +func (x *EmailTemplate) GetTemplateVersion() string { + if x != nil { + return x.TemplateVersion + } + return "" +} + +func (x *EmailTemplate) GetFrom() *Email { + if x != nil { + return x.From + } + return nil +} + +func (x *EmailTemplate) GetReplyTo() *Email { + if x != nil { + return x.ReplyTo + } + return nil +} + +func (x *EmailTemplate) GetTo() []*Email { + if x != nil { + return x.To + } + return nil +} + +func (x *EmailTemplate) GetCc() []*Email { + if x != nil { + return x.Cc + } + return nil +} + +func (x *EmailTemplate) GetBcc() []*Email { + if x != nil { + return x.Bcc + } + return nil +} + +func (x *EmailTemplate) GetSubject() string { + if x != nil { + return x.Subject + } + return "" +} + +func (x *EmailTemplate) GetHeaders() map[string]string { + if x != nil { + return x.Headers + } + return nil +} + +func (x *EmailTemplate) GetCustomArgs() map[string]string { + if x != nil { + return x.CustomArgs + } + return nil +} + +func (x *EmailTemplate) GetDynamicTemplateValues() map[string]*v1beta1.Value { + if x != nil { + return x.DynamicTemplateValues + } + return nil +} + +func (x *EmailTemplate) GetCategories() []string { + if x != nil { + return x.Categories + } + return nil +} + +func (x *EmailTemplate) GetAttachments() []*EmailAttachment { + if x != nil { + return x.Attachments + } + return nil +} + +func (x *EmailTemplate) GetEventPayload() string { + if x != nil { + return x.EventPayload + } + return "" +} + +func (x *EmailTemplate) GetTemplateArn() string { + if x != nil { + return x.TemplateArn + } + return "" +} + +type EmailAttachment struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ContentType string `protobuf:"bytes,1,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"` + ContentId string `protobuf:"bytes,2,opt,name=content_id,json=contentId,proto3" json:"content_id,omitempty"` + Inline bool `protobuf:"varint,3,opt,name=inline,proto3" json:"inline,omitempty"` + FileName string `protobuf:"bytes,4,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"` + Content []byte `protobuf:"bytes,5,opt,name=content,proto3" json:"content,omitempty"` +} + +func (x *EmailAttachment) Reset() { + *x = EmailAttachment{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EmailAttachment) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EmailAttachment) ProtoMessage() {} + +func (x *EmailAttachment) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EmailAttachment.ProtoReflect.Descriptor instead. +func (*EmailAttachment) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{18} +} + +func (x *EmailAttachment) GetContentType() string { + if x != nil { + return x.ContentType + } + return "" +} + +func (x *EmailAttachment) GetContentId() string { + if x != nil { + return x.ContentId + } + return "" +} + +func (x *EmailAttachment) GetInline() bool { + if x != nil { + return x.Inline + } + return false +} + +func (x *EmailAttachment) GetFileName() string { + if x != nil { + return x.FileName + } + return "" +} + +func (x *EmailAttachment) GetContent() []byte { + if x != nil { + return x.Content + } + return nil +} + +type AuditSinkConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Provider: + // + // *AuditSinkConfig_Kafka_ + Provider isAuditSinkConfig_Provider `protobuf_oneof:"provider"` +} + +func (x *AuditSinkConfig) Reset() { + *x = AuditSinkConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AuditSinkConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AuditSinkConfig) ProtoMessage() {} + +func (x *AuditSinkConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AuditSinkConfig.ProtoReflect.Descriptor instead. +func (*AuditSinkConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{19} +} + +func (m *AuditSinkConfig) GetProvider() isAuditSinkConfig_Provider { + if m != nil { + return m.Provider + } + return nil +} + +func (x *AuditSinkConfig) GetKafka() *AuditSinkConfig_Kafka { + if x, ok := x.GetProvider().(*AuditSinkConfig_Kafka_); ok { + return x.Kafka + } + return nil +} + +type isAuditSinkConfig_Provider interface { + isAuditSinkConfig_Provider() +} + +type AuditSinkConfig_Kafka_ struct { + Kafka *AuditSinkConfig_Kafka `protobuf:"bytes,1,opt,name=kafka,proto3,oneof"` +} + +func (*AuditSinkConfig_Kafka_) isAuditSinkConfig_Provider() {} + +type OAuth2ClientConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ProviderType OAuth2ClientConfig_ProviderType `protobuf:"varint,1,opt,name=provider_type,json=providerType,proto3,enum=indykite.auditsink.v1beta1.OAuth2ClientConfig_ProviderType" json:"provider_type,omitempty"` + ClientId string `protobuf:"bytes,2,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` + ClientSecret string `protobuf:"bytes,3,opt,name=client_secret,json=clientSecret,proto3" json:"client_secret,omitempty"` + RedirectUri []string `protobuf:"bytes,4,rep,name=redirect_uri,json=redirectUri,proto3" json:"redirect_uri,omitempty"` + DefaultScopes []string `protobuf:"bytes,17,rep,name=default_scopes,json=defaultScopes,proto3" json:"default_scopes,omitempty"` + AllowedScopes []string `protobuf:"bytes,19,rep,name=allowed_scopes,json=allowedScopes,proto3" json:"allowed_scopes,omitempty"` + AllowSignup bool `protobuf:"varint,8,opt,name=allow_signup,json=allowSignup,proto3" json:"allow_signup,omitempty"` + Issuer string `protobuf:"bytes,9,opt,name=issuer,proto3" json:"issuer,omitempty"` + AuthorizationEndpoint string `protobuf:"bytes,10,opt,name=authorization_endpoint,json=authorizationEndpoint,proto3" json:"authorization_endpoint,omitempty"` + TokenEndpoint string `protobuf:"bytes,11,opt,name=token_endpoint,json=tokenEndpoint,proto3" json:"token_endpoint,omitempty"` + DiscoveryUrl string `protobuf:"bytes,16,opt,name=discovery_url,json=discoveryUrl,proto3" json:"discovery_url,omitempty"` + UserinfoEndpoint string `protobuf:"bytes,12,opt,name=userinfo_endpoint,json=userinfoEndpoint,proto3" json:"userinfo_endpoint,omitempty"` + JwksUri string `protobuf:"bytes,13,opt,name=jwks_uri,json=jwksUri,proto3" json:"jwks_uri,omitempty"` + ImageUrl string `protobuf:"bytes,14,opt,name=image_url,json=imageUrl,proto3" json:"image_url,omitempty"` + Tenant string `protobuf:"bytes,15,opt,name=tenant,proto3" json:"tenant,omitempty"` + HostedDomain string `protobuf:"bytes,18,opt,name=hosted_domain,json=hostedDomain,proto3" json:"hosted_domain,omitempty"` + AuthStyle OAuth2ClientConfig_AuthStyle `protobuf:"varint,20,opt,name=auth_style,json=authStyle,proto3,enum=indykite.auditsink.v1beta1.OAuth2ClientConfig_AuthStyle" json:"auth_style,omitempty"` + // Required for Apple as provider. This will be masked, so it is string. + PrivateKeyPem string `protobuf:"bytes,21,opt,name=private_key_pem,json=privateKeyPem,proto3" json:"private_key_pem,omitempty"` + // Required for Apple as provider. + PrivateKeyId string `protobuf:"bytes,22,opt,name=private_key_id,json=privateKeyId,proto3" json:"private_key_id,omitempty"` + // Required for Apple as provider. + TeamId string `protobuf:"bytes,23,opt,name=team_id,json=teamId,proto3" json:"team_id,omitempty"` +} + +func (x *OAuth2ClientConfig) Reset() { + *x = OAuth2ClientConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *OAuth2ClientConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OAuth2ClientConfig) ProtoMessage() {} + +func (x *OAuth2ClientConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[20] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use OAuth2ClientConfig.ProtoReflect.Descriptor instead. +func (*OAuth2ClientConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{20} +} + +func (x *OAuth2ClientConfig) GetProviderType() OAuth2ClientConfig_ProviderType { + if x != nil { + return x.ProviderType + } + return OAuth2ClientConfig_PROVIDER_TYPE_INVALID +} + +func (x *OAuth2ClientConfig) GetClientId() string { + if x != nil { + return x.ClientId + } + return "" +} + +func (x *OAuth2ClientConfig) GetClientSecret() string { + if x != nil { + return x.ClientSecret + } + return "" +} + +func (x *OAuth2ClientConfig) GetRedirectUri() []string { + if x != nil { + return x.RedirectUri + } + return nil +} + +func (x *OAuth2ClientConfig) GetDefaultScopes() []string { + if x != nil { + return x.DefaultScopes + } + return nil +} + +func (x *OAuth2ClientConfig) GetAllowedScopes() []string { + if x != nil { + return x.AllowedScopes + } + return nil +} + +func (x *OAuth2ClientConfig) GetAllowSignup() bool { + if x != nil { + return x.AllowSignup + } + return false +} + +func (x *OAuth2ClientConfig) GetIssuer() string { + if x != nil { + return x.Issuer + } + return "" +} + +func (x *OAuth2ClientConfig) GetAuthorizationEndpoint() string { + if x != nil { + return x.AuthorizationEndpoint + } + return "" +} + +func (x *OAuth2ClientConfig) GetTokenEndpoint() string { + if x != nil { + return x.TokenEndpoint + } + return "" +} + +func (x *OAuth2ClientConfig) GetDiscoveryUrl() string { + if x != nil { + return x.DiscoveryUrl + } + return "" +} + +func (x *OAuth2ClientConfig) GetUserinfoEndpoint() string { + if x != nil { + return x.UserinfoEndpoint + } + return "" +} + +func (x *OAuth2ClientConfig) GetJwksUri() string { + if x != nil { + return x.JwksUri + } + return "" +} + +func (x *OAuth2ClientConfig) GetImageUrl() string { + if x != nil { + return x.ImageUrl + } + return "" +} + +func (x *OAuth2ClientConfig) GetTenant() string { + if x != nil { + return x.Tenant + } + return "" +} + +func (x *OAuth2ClientConfig) GetHostedDomain() string { + if x != nil { + return x.HostedDomain + } + return "" +} + +func (x *OAuth2ClientConfig) GetAuthStyle() OAuth2ClientConfig_AuthStyle { + if x != nil { + return x.AuthStyle + } + return OAuth2ClientConfig_AUTH_STYLE_INVALID +} + +func (x *OAuth2ClientConfig) GetPrivateKeyPem() string { + if x != nil { + return x.PrivateKeyPem + } + return "" +} + +func (x *OAuth2ClientConfig) GetPrivateKeyId() string { + if x != nil { + return x.PrivateKeyId + } + return "" +} + +func (x *OAuth2ClientConfig) GetTeamId() string { + if x != nil { + return x.TeamId + } + return "" +} + +type OAuth2ProviderConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GrantTypes []OAuth2GrantType `protobuf:"varint,1,rep,packed,name=grant_types,json=grantTypes,proto3,enum=indykite.auditsink.v1beta1.OAuth2GrantType" json:"grant_types,omitempty"` + ResponseTypes []OAuth2ResponseType `protobuf:"varint,2,rep,packed,name=response_types,json=responseTypes,proto3,enum=indykite.auditsink.v1beta1.OAuth2ResponseType" json:"response_types,omitempty"` + Scopes []string `protobuf:"bytes,3,rep,name=scopes,proto3" json:"scopes,omitempty"` + TokenEndpointAuthMethod []OAuth2TokenEndpointAuthMethod `protobuf:"varint,4,rep,packed,name=token_endpoint_auth_method,json=tokenEndpointAuthMethod,proto3,enum=indykite.auditsink.v1beta1.OAuth2TokenEndpointAuthMethod" json:"token_endpoint_auth_method,omitempty"` + TokenEndpointAuthSigningAlg []string `protobuf:"bytes,5,rep,name=token_endpoint_auth_signing_alg,json=tokenEndpointAuthSigningAlg,proto3" json:"token_endpoint_auth_signing_alg,omitempty"` + RequestUris []string `protobuf:"bytes,6,rep,name=request_uris,json=requestUris,proto3" json:"request_uris,omitempty"` + RequestObjectSigningAlg string `protobuf:"bytes,7,opt,name=request_object_signing_alg,json=requestObjectSigningAlg,proto3" json:"request_object_signing_alg,omitempty"` + FrontChannelLoginUri map[string]string `protobuf:"bytes,8,rep,name=front_channel_login_uri,json=frontChannelLoginUri,proto3" json:"front_channel_login_uri,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + FrontChannelConsentUri map[string]string `protobuf:"bytes,9,rep,name=front_channel_consent_uri,json=frontChannelConsentUri,proto3" json:"front_channel_consent_uri,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (x *OAuth2ProviderConfig) Reset() { + *x = OAuth2ProviderConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *OAuth2ProviderConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OAuth2ProviderConfig) ProtoMessage() {} + +func (x *OAuth2ProviderConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[21] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use OAuth2ProviderConfig.ProtoReflect.Descriptor instead. +func (*OAuth2ProviderConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{21} +} + +func (x *OAuth2ProviderConfig) GetGrantTypes() []OAuth2GrantType { + if x != nil { + return x.GrantTypes + } + return nil +} + +func (x *OAuth2ProviderConfig) GetResponseTypes() []OAuth2ResponseType { + if x != nil { + return x.ResponseTypes + } + return nil +} + +func (x *OAuth2ProviderConfig) GetScopes() []string { + if x != nil { + return x.Scopes + } + return nil +} + +func (x *OAuth2ProviderConfig) GetTokenEndpointAuthMethod() []OAuth2TokenEndpointAuthMethod { + if x != nil { + return x.TokenEndpointAuthMethod + } + return nil +} + +func (x *OAuth2ProviderConfig) GetTokenEndpointAuthSigningAlg() []string { + if x != nil { + return x.TokenEndpointAuthSigningAlg + } + return nil +} + +func (x *OAuth2ProviderConfig) GetRequestUris() []string { + if x != nil { + return x.RequestUris + } + return nil +} + +func (x *OAuth2ProviderConfig) GetRequestObjectSigningAlg() string { + if x != nil { + return x.RequestObjectSigningAlg + } + return "" +} + +func (x *OAuth2ProviderConfig) GetFrontChannelLoginUri() map[string]string { + if x != nil { + return x.FrontChannelLoginUri + } + return nil +} + +func (x *OAuth2ProviderConfig) GetFrontChannelConsentUri() map[string]string { + if x != nil { + return x.FrontChannelConsentUri + } + return nil +} + +type OAuth2ApplicationConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ClientId string `protobuf:"bytes,1,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"` + // DisplayName is a human readable name to show in consent page etc. + DisplayName string `protobuf:"bytes,3,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` + // Description is a optional description to show in consent page etc. + Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"` + RedirectUris []string `protobuf:"bytes,5,rep,name=redirect_uris,json=redirectUris,proto3" json:"redirect_uris,omitempty"` + Owner string `protobuf:"bytes,6,opt,name=owner,proto3" json:"owner,omitempty"` + PolicyUri string `protobuf:"bytes,7,opt,name=policy_uri,json=policyUri,proto3" json:"policy_uri,omitempty"` + AllowedCorsOrigins []string `protobuf:"bytes,8,rep,name=allowed_cors_origins,json=allowedCorsOrigins,proto3" json:"allowed_cors_origins,omitempty"` + TermsOfServiceUri string `protobuf:"bytes,9,opt,name=terms_of_service_uri,json=termsOfServiceUri,proto3" json:"terms_of_service_uri,omitempty"` + ClientUri string `protobuf:"bytes,10,opt,name=client_uri,json=clientUri,proto3" json:"client_uri,omitempty"` + LogoUri string `protobuf:"bytes,11,opt,name=logo_uri,json=logoUri,proto3" json:"logo_uri,omitempty"` + UserSupportEmailAddress string `protobuf:"bytes,12,opt,name=user_support_email_address,json=userSupportEmailAddress,proto3" json:"user_support_email_address,omitempty"` + AdditionalContacts []string `protobuf:"bytes,13,rep,name=additional_contacts,json=additionalContacts,proto3" json:"additional_contacts,omitempty"` + SubjectType OAuth2ApplicationConfig_ClientSubjectType `protobuf:"varint,14,opt,name=subject_type,json=subjectType,proto3,enum=indykite.auditsink.v1beta1.OAuth2ApplicationConfig_ClientSubjectType" json:"subject_type,omitempty"` + SectorIdentifierUri string `protobuf:"bytes,15,opt,name=sector_identifier_uri,json=sectorIdentifierUri,proto3" json:"sector_identifier_uri,omitempty"` + GrantTypes []OAuth2GrantType `protobuf:"varint,16,rep,packed,name=grant_types,json=grantTypes,proto3,enum=indykite.auditsink.v1beta1.OAuth2GrantType" json:"grant_types,omitempty"` + ResponseTypes []OAuth2ResponseType `protobuf:"varint,17,rep,packed,name=response_types,json=responseTypes,proto3,enum=indykite.auditsink.v1beta1.OAuth2ResponseType" json:"response_types,omitempty"` + Scopes []string `protobuf:"bytes,18,rep,name=scopes,proto3" json:"scopes,omitempty"` + Audiences []string `protobuf:"bytes,19,rep,name=audiences,proto3" json:"audiences,omitempty"` + TokenEndpointAuthMethod OAuth2TokenEndpointAuthMethod `protobuf:"varint,20,opt,name=token_endpoint_auth_method,json=tokenEndpointAuthMethod,proto3,enum=indykite.auditsink.v1beta1.OAuth2TokenEndpointAuthMethod" json:"token_endpoint_auth_method,omitempty"` + TokenEndpointAuthSigningAlg string `protobuf:"bytes,21,opt,name=token_endpoint_auth_signing_alg,json=tokenEndpointAuthSigningAlg,proto3" json:"token_endpoint_auth_signing_alg,omitempty"` + UserinfoSignedResponseAlg string `protobuf:"bytes,22,opt,name=userinfo_signed_response_alg,json=userinfoSignedResponseAlg,proto3" json:"userinfo_signed_response_alg,omitempty"` + Trusted bool `protobuf:"varint,23,opt,name=trusted,proto3" json:"trusted,omitempty"` +} + +func (x *OAuth2ApplicationConfig) Reset() { + *x = OAuth2ApplicationConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *OAuth2ApplicationConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OAuth2ApplicationConfig) ProtoMessage() {} + +func (x *OAuth2ApplicationConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[22] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use OAuth2ApplicationConfig.ProtoReflect.Descriptor instead. +func (*OAuth2ApplicationConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{22} +} + +func (x *OAuth2ApplicationConfig) GetClientId() string { + if x != nil { + return x.ClientId + } + return "" +} + +func (x *OAuth2ApplicationConfig) GetDisplayName() string { + if x != nil { + return x.DisplayName + } + return "" +} + +func (x *OAuth2ApplicationConfig) GetDescription() string { + if x != nil { + return x.Description + } + return "" +} + +func (x *OAuth2ApplicationConfig) GetRedirectUris() []string { + if x != nil { + return x.RedirectUris + } + return nil +} + +func (x *OAuth2ApplicationConfig) GetOwner() string { + if x != nil { + return x.Owner + } + return "" +} + +func (x *OAuth2ApplicationConfig) GetPolicyUri() string { + if x != nil { + return x.PolicyUri + } + return "" +} + +func (x *OAuth2ApplicationConfig) GetAllowedCorsOrigins() []string { + if x != nil { + return x.AllowedCorsOrigins + } + return nil +} + +func (x *OAuth2ApplicationConfig) GetTermsOfServiceUri() string { + if x != nil { + return x.TermsOfServiceUri + } + return "" +} + +func (x *OAuth2ApplicationConfig) GetClientUri() string { + if x != nil { + return x.ClientUri + } + return "" +} + +func (x *OAuth2ApplicationConfig) GetLogoUri() string { + if x != nil { + return x.LogoUri + } + return "" +} + +func (x *OAuth2ApplicationConfig) GetUserSupportEmailAddress() string { + if x != nil { + return x.UserSupportEmailAddress + } + return "" +} + +func (x *OAuth2ApplicationConfig) GetAdditionalContacts() []string { + if x != nil { + return x.AdditionalContacts + } + return nil +} + +func (x *OAuth2ApplicationConfig) GetSubjectType() OAuth2ApplicationConfig_ClientSubjectType { + if x != nil { + return x.SubjectType + } + return OAuth2ApplicationConfig_CLIENT_SUBJECT_TYPE_INVALID +} + +func (x *OAuth2ApplicationConfig) GetSectorIdentifierUri() string { + if x != nil { + return x.SectorIdentifierUri + } + return "" +} + +func (x *OAuth2ApplicationConfig) GetGrantTypes() []OAuth2GrantType { + if x != nil { + return x.GrantTypes + } + return nil +} + +func (x *OAuth2ApplicationConfig) GetResponseTypes() []OAuth2ResponseType { + if x != nil { + return x.ResponseTypes + } + return nil +} + +func (x *OAuth2ApplicationConfig) GetScopes() []string { + if x != nil { + return x.Scopes + } + return nil +} + +func (x *OAuth2ApplicationConfig) GetAudiences() []string { + if x != nil { + return x.Audiences + } + return nil +} + +func (x *OAuth2ApplicationConfig) GetTokenEndpointAuthMethod() OAuth2TokenEndpointAuthMethod { + if x != nil { + return x.TokenEndpointAuthMethod + } + return OAuth2TokenEndpointAuthMethod_O_AUTH2_TOKEN_ENDPOINT_AUTH_METHOD_INVALID +} + +func (x *OAuth2ApplicationConfig) GetTokenEndpointAuthSigningAlg() string { + if x != nil { + return x.TokenEndpointAuthSigningAlg + } + return "" +} + +func (x *OAuth2ApplicationConfig) GetUserinfoSignedResponseAlg() string { + if x != nil { + return x.UserinfoSignedResponseAlg + } + return "" +} + +func (x *OAuth2ApplicationConfig) GetTrusted() bool { + if x != nil { + return x.Trusted + } + return false +} + +type WebAuthnProviderConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RelyingParties map[string]string `protobuf:"bytes,1,rep,name=relying_parties,json=relyingParties,proto3" json:"relying_parties,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + AttestationPreference WebAuthnProviderConfig_ConveyancePreference `protobuf:"varint,2,opt,name=attestation_preference,json=attestationPreference,proto3,enum=indykite.auditsink.v1beta1.WebAuthnProviderConfig_ConveyancePreference" json:"attestation_preference,omitempty"` + AuthenticatorAttachment WebAuthnProviderConfig_AuthenticatorAttachment `protobuf:"varint,3,opt,name=authenticator_attachment,json=authenticatorAttachment,proto3,enum=indykite.auditsink.v1beta1.WebAuthnProviderConfig_AuthenticatorAttachment" json:"authenticator_attachment,omitempty"` + RequireResidentKey bool `protobuf:"varint,7,opt,name=require_resident_key,json=requireResidentKey,proto3" json:"require_resident_key,omitempty"` + UserVerification WebAuthnProviderConfig_UserVerificationRequirement `protobuf:"varint,4,opt,name=user_verification,json=userVerification,proto3,enum=indykite.auditsink.v1beta1.WebAuthnProviderConfig_UserVerificationRequirement" json:"user_verification,omitempty"` + // specifies a time, in milliseconds + RegistrationTimeout *durationpb.Duration `protobuf:"bytes,5,opt,name=registration_timeout,json=registrationTimeout,proto3" json:"registration_timeout,omitempty"` + // specifies a time, in milliseconds + AuthenticationTimeout *durationpb.Duration `protobuf:"bytes,6,opt,name=authentication_timeout,json=authenticationTimeout,proto3" json:"authentication_timeout,omitempty"` +} + +func (x *WebAuthnProviderConfig) Reset() { + *x = WebAuthnProviderConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *WebAuthnProviderConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*WebAuthnProviderConfig) ProtoMessage() {} + +func (x *WebAuthnProviderConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use WebAuthnProviderConfig.ProtoReflect.Descriptor instead. +func (*WebAuthnProviderConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{23} +} + +func (x *WebAuthnProviderConfig) GetRelyingParties() map[string]string { + if x != nil { + return x.RelyingParties + } + return nil +} + +func (x *WebAuthnProviderConfig) GetAttestationPreference() WebAuthnProviderConfig_ConveyancePreference { + if x != nil { + return x.AttestationPreference + } + return WebAuthnProviderConfig_CONVEYANCE_PREFERENCE_INVALID +} + +func (x *WebAuthnProviderConfig) GetAuthenticatorAttachment() WebAuthnProviderConfig_AuthenticatorAttachment { + if x != nil { + return x.AuthenticatorAttachment + } + return WebAuthnProviderConfig_AUTHENTICATOR_ATTACHMENT_INVALID +} + +func (x *WebAuthnProviderConfig) GetRequireResidentKey() bool { + if x != nil { + return x.RequireResidentKey + } + return false +} + +func (x *WebAuthnProviderConfig) GetUserVerification() WebAuthnProviderConfig_UserVerificationRequirement { + if x != nil { + return x.UserVerification + } + return WebAuthnProviderConfig_USER_VERIFICATION_REQUIREMENT_INVALID +} + +func (x *WebAuthnProviderConfig) GetRegistrationTimeout() *durationpb.Duration { + if x != nil { + return x.RegistrationTimeout + } + return nil +} + +func (x *WebAuthnProviderConfig) GetAuthenticationTimeout() *durationpb.Duration { + if x != nil { + return x.AuthenticationTimeout + } + return nil +} + +type AuthorizationPolicyConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Policy in JSON string format. + Policy string `protobuf:"bytes,1,opt,name=policy,proto3" json:"policy,omitempty"` + // Policy status. + Status AuthorizationPolicyConfig_Status `protobuf:"varint,2,opt,name=status,proto3,enum=indykite.auditsink.v1beta1.AuthorizationPolicyConfig_Status" json:"status,omitempty"` + // Optional policy tags + Tags []string `protobuf:"bytes,3,rep,name=tags,proto3" json:"tags,omitempty"` +} + +func (x *AuthorizationPolicyConfig) Reset() { + *x = AuthorizationPolicyConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AuthorizationPolicyConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AuthorizationPolicyConfig) ProtoMessage() {} + +func (x *AuthorizationPolicyConfig) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[24] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AuthorizationPolicyConfig.ProtoReflect.Descriptor instead. +func (*AuthorizationPolicyConfig) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{24} +} + +func (x *AuthorizationPolicyConfig) GetPolicy() string { + if x != nil { + return x.Policy + } + return "" +} + +func (x *AuthorizationPolicyConfig) GetStatus() AuthorizationPolicyConfig_Status { + if x != nil { + return x.Status + } + return AuthorizationPolicyConfig_STATUS_INVALID +} + +func (x *AuthorizationPolicyConfig) GetTags() []string { + if x != nil { + return x.Tags + } + return nil +} + +type AssignConfigPermissions struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // TargetIdentifier is gid identifier of Service Account or DigitalTwin. + TargetIdentifier string `protobuf:"bytes,1,opt,name=target_identifier,json=targetIdentifier,proto3" json:"target_identifier,omitempty"` + // TargetType is type of TargetIdentifier. + TargetType ConfigType `protobuf:"varint,2,opt,name=target_type,json=targetType,proto3,enum=indykite.auditsink.v1beta1.ConfigType" json:"target_type,omitempty"` + // Permission role id to be assigned. + Role string `protobuf:"bytes,3,opt,name=role,proto3" json:"role,omitempty"` + // CustomerId under which to assign permissions. + CustomerId string `protobuf:"bytes,4,opt,name=customer_id,json=customerId,proto3" json:"customer_id,omitempty"` + // Object to which Permission will be linked to. Can be Customer, AppSpace or Tenant. + ObjectId string `protobuf:"bytes,5,opt,name=object_id,json=objectId,proto3" json:"object_id,omitempty"` + // Object type is type of object_id. + ObjectType ConfigType `protobuf:"varint,6,opt,name=object_type,json=objectType,proto3,enum=indykite.auditsink.v1beta1.ConfigType" json:"object_type,omitempty"` +} + +func (x *AssignConfigPermissions) Reset() { + *x = AssignConfigPermissions{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AssignConfigPermissions) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AssignConfigPermissions) ProtoMessage() {} + +func (x *AssignConfigPermissions) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AssignConfigPermissions.ProtoReflect.Descriptor instead. +func (*AssignConfigPermissions) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{25} +} + +func (x *AssignConfigPermissions) GetTargetIdentifier() string { + if x != nil { + return x.TargetIdentifier + } + return "" +} + +func (x *AssignConfigPermissions) GetTargetType() ConfigType { + if x != nil { + return x.TargetType + } + return ConfigType_CONFIG_TYPE_INVALID +} + +func (x *AssignConfigPermissions) GetRole() string { + if x != nil { + return x.Role + } + return "" +} + +func (x *AssignConfigPermissions) GetCustomerId() string { + if x != nil { + return x.CustomerId + } + return "" +} + +func (x *AssignConfigPermissions) GetObjectId() string { + if x != nil { + return x.ObjectId + } + return "" +} + +func (x *AssignConfigPermissions) GetObjectType() ConfigType { + if x != nil { + return x.ObjectType + } + return ConfigType_CONFIG_TYPE_INVALID +} + +type RevokeConfigPermissions struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // TargetIdentifier is gid identifier of Service Account or DigitalTwin. + TargetIdentifier string `protobuf:"bytes,1,opt,name=target_identifier,json=targetIdentifier,proto3" json:"target_identifier,omitempty"` + // TargetType is type of TargetIdentifier. + TargetType ConfigType `protobuf:"varint,2,opt,name=target_type,json=targetType,proto3,enum=indykite.auditsink.v1beta1.ConfigType" json:"target_type,omitempty"` + // Permission role id to be assigned. + Role string `protobuf:"bytes,3,opt,name=role,proto3" json:"role,omitempty"` + // CustomerId under which to assign permissions. + CustomerId string `protobuf:"bytes,4,opt,name=customer_id,json=customerId,proto3" json:"customer_id,omitempty"` + // Object to which Permission will be linked to. Can be Customer, AppSpace or Tenant. + ObjectId string `protobuf:"bytes,5,opt,name=object_id,json=objectId,proto3" json:"object_id,omitempty"` + // Object type is type of object_id. + ObjectType ConfigType `protobuf:"varint,6,opt,name=object_type,json=objectType,proto3,enum=indykite.auditsink.v1beta1.ConfigType" json:"object_type,omitempty"` +} + +func (x *RevokeConfigPermissions) Reset() { + *x = RevokeConfigPermissions{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RevokeConfigPermissions) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RevokeConfigPermissions) ProtoMessage() {} + +func (x *RevokeConfigPermissions) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RevokeConfigPermissions.ProtoReflect.Descriptor instead. +func (*RevokeConfigPermissions) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{26} +} + +func (x *RevokeConfigPermissions) GetTargetIdentifier() string { + if x != nil { + return x.TargetIdentifier + } + return "" +} + +func (x *RevokeConfigPermissions) GetTargetType() ConfigType { + if x != nil { + return x.TargetType + } + return ConfigType_CONFIG_TYPE_INVALID +} + +func (x *RevokeConfigPermissions) GetRole() string { + if x != nil { + return x.Role + } + return "" +} + +func (x *RevokeConfigPermissions) GetCustomerId() string { + if x != nil { + return x.CustomerId + } + return "" +} + +func (x *RevokeConfigPermissions) GetObjectId() string { + if x != nil { + return x.ObjectId + } + return "" +} + +func (x *RevokeConfigPermissions) GetObjectType() ConfigType { + if x != nil { + return x.ObjectType + } + return ConfigType_CONFIG_TYPE_INVALID +} + +type CreatedConfig_Location struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Type ConfigType `protobuf:"varint,2,opt,name=type,proto3,enum=indykite.auditsink.v1beta1.ConfigType" json:"type,omitempty"` +} + +func (x *CreatedConfig_Location) Reset() { + *x = CreatedConfig_Location{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreatedConfig_Location) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreatedConfig_Location) ProtoMessage() {} + +func (x *CreatedConfig_Location) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreatedConfig_Location.ProtoReflect.Descriptor instead. +func (*CreatedConfig_Location) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{0, 0} +} + +func (x *CreatedConfig_Location) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *CreatedConfig_Location) GetType() ConfigType { + if x != nil { + return x.Type + } + return ConfigType_CONFIG_TYPE_INVALID +} + +type ReadConfig_NameIdentifier struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // LocationId specify under which container the name search happen. Might be empty if searching customer. + LocationId string `protobuf:"bytes,1,opt,name=location_id,json=locationId,proto3" json:"location_id,omitempty"` + // LocationType specify under which container type the name search happen. Might be empty if searching customer. + LocationType *ConfigType `protobuf:"varint,2,opt,name=location_type,json=locationType,proto3,enum=indykite.auditsink.v1beta1.ConfigType,oneof" json:"location_type,omitempty"` + Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` +} + +func (x *ReadConfig_NameIdentifier) Reset() { + *x = ReadConfig_NameIdentifier{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ReadConfig_NameIdentifier) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReadConfig_NameIdentifier) ProtoMessage() {} + +func (x *ReadConfig_NameIdentifier) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReadConfig_NameIdentifier.ProtoReflect.Descriptor instead. +func (*ReadConfig_NameIdentifier) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{1, 0} +} + +func (x *ReadConfig_NameIdentifier) GetLocationId() string { + if x != nil { + return x.LocationId + } + return "" +} + +func (x *ReadConfig_NameIdentifier) GetLocationType() ConfigType { + if x != nil && x.LocationType != nil { + return *x.LocationType + } + return ConfigType_CONFIG_TYPE_INVALID +} + +func (x *ReadConfig_NameIdentifier) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +type AuditSinkConfig_Kafka struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Brokers specify Kafka destinations to connect to. + Brokers []string `protobuf:"bytes,1,rep,name=brokers,proto3" json:"brokers,omitempty"` + // Topic name must be valid based on source code: + // https://github.com/apache/kafka/blob/0.10.2/core/src/main/scala/kafka/common/Topic.scala#L29-L30 + Topic string `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"` + // DisableTLS can force using non-secure connection. + DisableTls bool `protobuf:"varint,3,opt,name=disable_tls,json=disableTls,proto3" json:"disable_tls,omitempty"` + // TLSSkipVerify defines whenever not to verify TLS certificate. Ignored if TLS is disabled. + TlsSkipVerify bool `protobuf:"varint,4,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` + Username string `protobuf:"bytes,5,opt,name=username,proto3" json:"username,omitempty"` + Password string `protobuf:"bytes,6,opt,name=password,proto3" json:"password,omitempty"` +} + +func (x *AuditSinkConfig_Kafka) Reset() { + *x = AuditSinkConfig_Kafka{} + if protoimpl.UnsafeEnabled { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AuditSinkConfig_Kafka) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AuditSinkConfig_Kafka) ProtoMessage() {} + +func (x *AuditSinkConfig_Kafka) ProtoReflect() protoreflect.Message { + mi := &file_indykite_auditsink_v1beta1_config_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AuditSinkConfig_Kafka.ProtoReflect.Descriptor instead. +func (*AuditSinkConfig_Kafka) Descriptor() ([]byte, []int) { + return file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP(), []int{19, 0} +} + +func (x *AuditSinkConfig_Kafka) GetBrokers() []string { + if x != nil { + return x.Brokers + } + return nil +} + +func (x *AuditSinkConfig_Kafka) GetTopic() string { + if x != nil { + return x.Topic + } + return "" +} + +func (x *AuditSinkConfig_Kafka) GetDisableTls() bool { + if x != nil { + return x.DisableTls + } + return false +} + +func (x *AuditSinkConfig_Kafka) GetTlsSkipVerify() bool { + if x != nil { + return x.TlsSkipVerify + } + return false +} + +func (x *AuditSinkConfig_Kafka) GetUsername() string { + if x != nil { + return x.Username + } + return "" +} + +func (x *AuditSinkConfig_Kafka) GetPassword() string { + if x != nil { + return x.Password + } + return "" +} + +var File_indykite_auditsink_v1beta1_config_proto protoreflect.FileDescriptor + +var file_indykite_auditsink_v1beta1_config_proto_rawDesc = []byte{ + 0x0a, 0x27, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x74, + 0x73, 0x69, 0x6e, 0x6b, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1a, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x25, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2f, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc5, 0x02, + 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x3a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, + 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x4e, 0x0a, 0x08, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, + 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x06, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, + 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x1a, 0x56, 0x0a, + 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3a, 0x0a, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xe1, 0x02, 0x0a, 0x0a, 0x52, 0x65, 0x61, 0x64, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x10, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x12, 0x4b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4e, 0x61, 0x6d, + 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x48, 0x00, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, + 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x1a, + 0xa9, 0x01, 0x0a, 0x0e, 0x4e, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x12, 0x50, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, + 0x70, 0x65, 0x48, 0x00, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, + 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x69, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x22, 0xdd, 0x01, 0x0a, 0x0d, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3a, 0x0a, 0x04, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, + 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x40, 0x0a, 0x06, 0x62, 0x65, 0x66, 0x6f, 0x72, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x52, 0x06, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x3e, 0x0a, 0x05, 0x61, 0x66, 0x74, + 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x52, 0x05, 0x61, 0x66, 0x74, 0x65, 0x72, 0x22, 0x5b, 0x0a, 0x0d, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3a, 0x0a, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, + 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xeb, 0x0b, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, + 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x55, 0x0a, 0x0f, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, + 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, + 0x00, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x6e, 0x0a, 0x18, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, + 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, + 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x16, 0x61, 0x70, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x4f, 0x0a, 0x0d, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x48, 0x00, 0x52, 0x0c, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x12, 0x80, 0x01, 0x0a, 0x1c, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x61, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, + 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x1a, 0x61, 0x70, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x7a, 0x0a, 0x1a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x61, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x18, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, + 0x6c, 0x12, 0x56, 0x0a, 0x10, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x66, 0x6c, 0x6f, 0x77, 0x5f, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6e, + 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x46, 0x6c, 0x6f, + 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x46, + 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x62, 0x0a, 0x14, 0x65, 0x6d, 0x61, + 0x69, 0x6c, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x12, 0x65, 0x6d, 0x61, 0x69, 0x6c, + 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x59, 0x0a, + 0x11, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x73, 0x69, 0x6e, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x74, 0x53, 0x69, 0x6e, 0x6b, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x53, 0x69, + 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x62, 0x0a, 0x14, 0x6f, 0x61, 0x75, 0x74, + 0x68, 0x32, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x12, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x6f, 0x0a, 0x19, + 0x77, 0x65, 0x62, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, + 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x65, 0x62, + 0x41, 0x75, 0x74, 0x68, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x16, 0x77, 0x65, 0x62, 0x41, 0x75, 0x74, 0x68, 0x6e, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x77, 0x0a, + 0x1b, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, + 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, + 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, + 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x19, 0x61, 0x75, 0x74, + 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x71, 0x0a, 0x19, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, + 0x5f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, + 0x52, 0x17, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x68, 0x0a, 0x16, 0x6f, 0x61, 0x75, + 0x74, 0x68, 0x32, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x14, 0x6f, + 0x61, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x42, 0x0f, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x7a, 0x0a, 0x0e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2f, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x66, 0x6c, 0x6f, 0x77, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x41, 0x75, 0x74, + 0x68, 0x46, 0x6c, 0x6f, 0x77, 0x49, 0x64, 0x12, 0x37, 0x0a, 0x18, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, + 0x22, 0x89, 0x02, 0x0a, 0x16, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x53, 0x70, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2a, 0x0a, 0x11, 0x64, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, + 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x66, 0x6c, 0x6f, 0x77, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x41, 0x75, + 0x74, 0x68, 0x46, 0x6c, 0x6f, 0x77, 0x49, 0x64, 0x12, 0x37, 0x0a, 0x18, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, + 0x64, 0x12, 0x59, 0x0a, 0x0f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x6f, + 0x6c, 0x69, 0x63, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, + 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x75, 0x73, + 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0xd3, 0x01, 0x0a, + 0x0c, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2f, 0x0a, + 0x14, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x66, 0x6c, + 0x6f, 0x77, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x64, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x41, 0x75, 0x74, 0x68, 0x46, 0x6c, 0x6f, 0x77, 0x49, 0x64, 0x12, 0x37, + 0x0a, 0x18, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x15, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x59, 0x0a, 0x0f, 0x75, 0x73, 0x65, 0x72, 0x6e, + 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, + 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x73, + 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x52, 0x0e, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x50, 0x6f, 0x6c, 0x69, + 0x63, 0x79, 0x22, 0xd6, 0x02, 0x0a, 0x14, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x50, + 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x38, 0x0a, 0x18, 0x61, + 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x5f, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x16, 0x61, + 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x46, 0x6f, + 0x72, 0x6d, 0x61, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x65, + 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, + 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x76, 0x65, + 0x72, 0x69, 0x66, 0x79, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x54, 0x0a, 0x19, 0x76, 0x65, 0x72, + 0x69, 0x66, 0x79, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x67, 0x72, 0x61, 0x63, 0x65, 0x5f, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x16, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, + 0x6d, 0x61, 0x69, 0x6c, 0x47, 0x72, 0x61, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, + 0x32, 0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, + 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x13, + 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x6f, 0x6d, 0x61, + 0x69, 0x6e, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, + 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x06, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x15, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x45, + 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x22, 0xb3, 0x01, 0x0a, 0x20, + 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x65, 0x79, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x46, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x6b, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, + 0x6c, 0x4b, 0x69, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x22, 0xb1, 0x01, 0x0a, 0x1e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x6b, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x65, 0x79, 0x5f, 0x66, 0x6f, + 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x46, + 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, + 0x6c, 0x5f, 0x6b, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x72, 0x69, + 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4b, 0x69, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x69, + 0x72, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xe0, 0x01, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x68, 0x46, 0x6c, + 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x56, 0x0a, 0x0d, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, + 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, + 0x68, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x46, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5e, 0x0a, 0x06, 0x46, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x12, 0x12, 0x0a, 0x0e, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x49, 0x4e, 0x56, + 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, + 0x5f, 0x42, 0x41, 0x52, 0x45, 0x5f, 0x59, 0x41, 0x4d, 0x4c, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, + 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x42, 0x41, 0x52, 0x45, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, + 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x52, 0x49, 0x43, + 0x48, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 0x10, 0x03, 0x22, 0x9d, 0x05, 0x0a, 0x12, 0x45, 0x6d, 0x61, + 0x69, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x53, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, + 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, + 0x52, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x46, 0x72, 0x6f, 0x6d, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x12, 0x50, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x67, 0x72, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x47, 0x72, 0x69, 0x64, 0x50, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x08, 0x73, 0x65, + 0x6e, 0x64, 0x67, 0x72, 0x69, 0x64, 0x12, 0x4d, 0x0a, 0x06, 0x61, 0x6d, 0x61, 0x7a, 0x6f, 0x6e, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x41, 0x6d, 0x61, 0x7a, 0x6f, 0x6e, 0x53, 0x45, 0x53, 0x50, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x06, 0x61, + 0x6d, 0x61, 0x7a, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, 0x12, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, + 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, + 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, + 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x12, 0x61, 0x0a, 0x16, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, + 0x6f, 0x72, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, + 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, + 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x14, + 0x72, 0x65, 0x73, 0x65, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x12, 0x5e, 0x0a, 0x14, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, + 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x13, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x12, 0x66, 0x0a, 0x19, 0x6f, 0x6e, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x16, 0x6f, 0x6e, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x50, 0x61, 0x73, + 0x73, 0x77, 0x6f, 0x72, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x0a, 0x0a, 0x08, + 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x22, 0x35, 0x0a, 0x05, 0x45, 0x6d, 0x61, 0x69, + 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, + 0x8a, 0x01, 0x0a, 0x16, 0x53, 0x65, 0x6e, 0x64, 0x47, 0x72, 0x69, 0x64, 0x50, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x70, + 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x69, + 0x4b, 0x65, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x61, 0x6e, 0x64, 0x62, 0x6f, 0x78, 0x5f, 0x6d, + 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x61, 0x6e, 0x64, 0x62, + 0x6f, 0x78, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x0c, 0x69, 0x70, 0x5f, 0x70, 0x6f, 0x6f, + 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x70, + 0x50, 0x6f, 0x6f, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x22, 0x85, 0x03, 0x0a, + 0x17, 0x41, 0x6d, 0x61, 0x7a, 0x6f, 0x6e, 0x53, 0x45, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, + 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6b, 0x65, + 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x41, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, + 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, + 0x12, 0x34, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x53, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x46, 0x72, 0x6f, 0x6d, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x49, 0x0a, 0x21, 0x66, + 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, + 0x6e, 0x67, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1e, 0x66, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, + 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, + 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x65, 0x73, 0x22, 0x63, 0x0a, 0x0f, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, + 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x47, 0x0a, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, + 0x6c, 0x61, 0x74, 0x65, 0x48, 0x00, 0x52, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, + 0x42, 0x07, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0xce, 0x08, 0x0a, 0x0d, 0x45, 0x6d, + 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x10, + 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, + 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x3c, + 0x0a, 0x08, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, + 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, + 0x61, 0x69, 0x6c, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x12, 0x31, 0x0a, 0x02, + 0x74, 0x6f, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x02, 0x74, 0x6f, 0x12, + 0x31, 0x0a, 0x02, 0x63, 0x63, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, + 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x02, + 0x63, 0x63, 0x12, 0x33, 0x0a, 0x03, 0x62, 0x63, 0x63, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x21, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, + 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, + 0x69, 0x6c, 0x52, 0x03, 0x62, 0x63, 0x63, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x12, 0x50, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, + 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x48, 0x65, + 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x73, 0x12, 0x5a, 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x61, 0x72, + 0x67, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, 0x67, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, 0x67, 0x73, 0x12, + 0x7c, 0x0a, 0x17, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x44, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, + 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, + 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x79, 0x6e, 0x61, + 0x6d, 0x69, 0x63, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x15, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x54, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x1e, 0x0a, + 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x12, 0x4d, 0x0a, + 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, + 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x52, + 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, + 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x72, + 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, + 0x65, 0x41, 0x72, 0x6e, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, + 0x1a, 0x3d, 0x0a, 0x0f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, 0x67, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, + 0x69, 0x0a, 0x1a, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x35, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, + 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x73, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa2, 0x01, 0x0a, 0x0f, 0x45, + 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x21, + 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x06, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, + 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, + 0xa3, 0x02, 0x0a, 0x0f, 0x41, 0x75, 0x64, 0x69, 0x74, 0x53, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x12, 0x49, 0x0a, 0x05, 0x6b, 0x61, 0x66, 0x6b, 0x61, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, + 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x41, 0x75, 0x64, 0x69, 0x74, 0x53, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x4b, 0x61, 0x66, 0x6b, 0x61, 0x48, 0x00, 0x52, 0x05, 0x6b, 0x61, 0x66, 0x6b, 0x61, 0x1a, 0xb8, + 0x01, 0x0a, 0x05, 0x4b, 0x61, 0x66, 0x6b, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x72, 0x6f, 0x6b, + 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x62, 0x72, 0x6f, 0x6b, 0x65, + 0x72, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, + 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, + 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x42, 0x0a, 0x0a, 0x08, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x22, 0xe5, 0x11, 0x0a, 0x12, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, + 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x60, 0x0a, 0x0d, + 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, + 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, + 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, + 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x75, 0x72, 0x69, + 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, + 0x55, 0x72, 0x69, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x73, + 0x63, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6c, + 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x13, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x53, 0x63, 0x6f, 0x70, 0x65, + 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x75, + 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x69, + 0x67, 0x6e, 0x75, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x12, 0x35, 0x0a, 0x16, + 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, + 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x61, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x64, + 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x69, + 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x55, 0x72, 0x6c, 0x12, + 0x2b, 0x0a, 0x11, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x65, 0x6e, 0x64, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x75, 0x73, 0x65, 0x72, + 0x69, 0x6e, 0x66, 0x6f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, + 0x6a, 0x77, 0x6b, 0x73, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x6a, 0x77, 0x6b, 0x73, 0x55, 0x72, 0x69, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, + 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, + 0x65, 0x55, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, + 0x68, 0x6f, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x12, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x68, 0x6f, 0x73, 0x74, 0x65, 0x64, 0x44, 0x6f, 0x6d, 0x61, 0x69, + 0x6e, 0x12, 0x57, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, + 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x52, + 0x09, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x72, + 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x70, 0x65, 0x6d, 0x18, 0x15, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x50, + 0x65, 0x6d, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6b, 0x65, + 0x79, 0x5f, 0x69, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x69, 0x76, + 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, + 0x5f, 0x69, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, + 0x64, 0x22, 0xa4, 0x0a, 0x0a, 0x0c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, + 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, + 0x4d, 0x41, 0x5a, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x50, + 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x4d, 0x41, + 0x5a, 0x4f, 0x4e, 0x43, 0x4f, 0x47, 0x4e, 0x49, 0x54, 0x4f, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x22, + 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, + 0x45, 0x5f, 0x41, 0x50, 0x50, 0x4c, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x29, 0x12, 0x1f, 0x0a, + 0x1b, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, + 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, 0x45, 0x51, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x21, 0x12, 0x1c, + 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x42, 0x41, 0x4e, 0x4b, 0x49, 0x44, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x26, 0x12, 0x1b, 0x0a, 0x17, + 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x41, + 0x4e, 0x4b, 0x49, 0x44, 0x5f, 0x4e, 0x4f, 0x10, 0x25, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, + 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x49, 0x54, 0x42, 0x55, + 0x43, 0x4b, 0x45, 0x54, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, + 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x45, 0x52, 0x4e, 0x5f, 0x43, 0x48, 0x10, + 0x03, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x27, 0x12, 0x1e, 0x0a, 0x1a, 0x50, + 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x41, 0x43, + 0x45, 0x42, 0x4f, 0x4f, 0x4b, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x04, 0x12, 0x1c, 0x0a, 0x18, 0x50, + 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x49, 0x54, + 0x42, 0x49, 0x54, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x05, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x52, 0x4f, + 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x4f, 0x55, 0x52, 0x53, + 0x51, 0x55, 0x41, 0x52, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x06, 0x12, 0x1c, 0x0a, 0x18, 0x50, + 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x47, 0x49, 0x54, + 0x48, 0x55, 0x42, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x07, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, + 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x47, 0x49, 0x54, 0x4c, 0x41, + 0x42, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x08, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, + 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x47, 0x4f, 0x4f, 0x47, 0x4c, 0x45, 0x5f, + 0x43, 0x4f, 0x4d, 0x10, 0x09, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, + 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x4b, 0x55, 0x5f, 0x43, 0x4f, + 0x4d, 0x10, 0x0a, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x48, 0x49, 0x50, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x43, 0x4f, 0x4d, + 0x10, 0x0b, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x44, 0x59, 0x4b, 0x49, 0x54, 0x45, 0x5f, 0x49, 0x44, 0x10, + 0x23, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x44, 0x59, 0x4b, 0x49, 0x54, 0x45, 0x5f, 0x4d, 0x45, 0x10, 0x24, + 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, + 0x45, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x41, 0x47, 0x52, 0x41, 0x4d, 0x5f, 0x43, 0x4f, 0x4d, 0x10, + 0x0c, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x4b, 0x41, 0x4b, 0x41, 0x4f, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x0d, 0x12, 0x1e, + 0x0a, 0x1a, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x4c, 0x49, 0x4e, 0x4b, 0x45, 0x44, 0x49, 0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x0e, 0x12, 0x1f, + 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x4d, 0x41, 0x49, 0x4c, 0x43, 0x48, 0x49, 0x4d, 0x50, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x0f, 0x12, + 0x19, 0x0a, 0x15, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x4d, 0x41, 0x49, 0x4c, 0x5f, 0x52, 0x55, 0x10, 0x10, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, + 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x45, 0x44, 0x49, + 0x41, 0x4d, 0x41, 0x54, 0x48, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x11, 0x12, 0x27, 0x0a, 0x23, 0x50, + 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x41, 0x4e, + 0x44, 0x42, 0x4f, 0x58, 0x5f, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x4d, 0x41, 0x54, 0x48, 0x5f, 0x43, + 0x4f, 0x4d, 0x10, 0x12, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4c, 0x49, 0x56, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x20, + 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, + 0x45, 0x5f, 0x4d, 0x49, 0x43, 0x52, 0x4f, 0x53, 0x4f, 0x46, 0x54, 0x5f, 0x43, 0x4f, 0x4d, 0x10, + 0x13, 0x12, 0x22, 0x0a, 0x1e, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x48, 0x45, 0x41, 0x4c, 0x54, 0x48, 0x5f, 0x4e, 0x4f, 0x4b, 0x49, 0x41, 0x5f, + 0x43, 0x4f, 0x4d, 0x10, 0x14, 0x12, 0x22, 0x0a, 0x1e, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, + 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4f, 0x44, 0x4e, 0x4f, 0x4b, 0x4c, 0x41, 0x53, 0x53, + 0x4e, 0x49, 0x4b, 0x49, 0x5f, 0x52, 0x55, 0x10, 0x15, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, + 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x41, 0x59, 0x50, 0x41, + 0x4c, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x16, 0x12, 0x24, 0x0a, 0x20, 0x50, 0x52, 0x4f, 0x56, 0x49, + 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x41, 0x4e, 0x44, 0x42, 0x4f, 0x58, + 0x5f, 0x50, 0x41, 0x59, 0x50, 0x41, 0x4c, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x17, 0x12, 0x1b, 0x0a, + 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, + 0x4c, 0x41, 0x43, 0x4b, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x18, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x52, + 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x50, 0x4f, 0x54, + 0x49, 0x46, 0x59, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x19, 0x12, 0x23, 0x0a, 0x1f, 0x50, 0x52, 0x4f, + 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x43, 0x4b, + 0x4f, 0x56, 0x45, 0x52, 0x46, 0x4c, 0x4f, 0x57, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x1a, 0x12, 0x1b, + 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x54, 0x57, 0x49, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x56, 0x10, 0x1b, 0x12, 0x1a, 0x0a, 0x16, 0x50, + 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x42, 0x45, + 0x52, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x1c, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, 0x56, 0x49, + 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x56, 0x49, 0x50, 0x50, 0x53, 0x5f, 0x4e, + 0x4f, 0x10, 0x28, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x56, 0x4b, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x1d, 0x12, 0x1b, 0x0a, + 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x59, + 0x41, 0x48, 0x4f, 0x4f, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x1e, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, + 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x59, 0x41, 0x4e, 0x44, + 0x45, 0x58, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x1f, 0x22, 0x73, 0x0a, 0x09, 0x41, 0x75, 0x74, 0x68, + 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x53, 0x54, + 0x59, 0x4c, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1a, 0x0a, + 0x16, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x53, 0x54, 0x59, 0x4c, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x4f, + 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x55, 0x54, + 0x48, 0x5f, 0x53, 0x54, 0x59, 0x4c, 0x45, 0x5f, 0x49, 0x4e, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, + 0x53, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x53, 0x54, 0x59, 0x4c, + 0x45, 0x5f, 0x49, 0x4e, 0x5f, 0x48, 0x45, 0x41, 0x44, 0x45, 0x52, 0x10, 0x03, 0x22, 0x93, 0x07, + 0x0a, 0x14, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4c, 0x0a, 0x0b, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x69, 0x6e, + 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x73, 0x12, 0x55, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, + 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x72, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x63, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x6f, + 0x70, 0x65, 0x73, 0x12, 0x76, 0x0a, 0x1a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x64, + 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, + 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, + 0x6f, 0x64, 0x52, 0x17, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, + 0x74, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x44, 0x0a, 0x1f, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x75, + 0x74, 0x68, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6c, 0x67, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x1b, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x41, 0x6c, + 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x75, 0x72, 0x69, + 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x55, 0x72, 0x69, 0x73, 0x12, 0x3b, 0x0a, 0x1a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, + 0x6c, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x41, 0x6c, + 0x67, 0x12, 0x81, 0x01, 0x0a, 0x17, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, + 0x6e, 0x65, 0x6c, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x08, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, + 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x72, 0x69, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x14, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x6f, 0x67, + 0x69, 0x6e, 0x55, 0x72, 0x69, 0x12, 0x87, 0x01, 0x0a, 0x19, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, + 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x5f, + 0x75, 0x72, 0x69, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4c, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x46, 0x72, 0x6f, 0x6e, + 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x55, + 0x72, 0x69, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x16, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x69, 0x1a, + 0x47, 0x0a, 0x19, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, + 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x72, 0x69, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x49, 0x0a, 0x1b, 0x46, 0x72, 0x6f, 0x6e, + 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x55, + 0x72, 0x69, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x22, 0xea, 0x09, 0x0a, 0x17, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, + 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x75, 0x72, + 0x69, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, + 0x63, 0x74, 0x55, 0x72, 0x69, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, + 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x55, 0x72, 0x69, 0x12, 0x30, 0x0a, 0x14, 0x61, + 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x72, 0x73, 0x5f, 0x6f, 0x72, 0x69, 0x67, + 0x69, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, 0x61, 0x6c, 0x6c, 0x6f, 0x77, + 0x65, 0x64, 0x43, 0x6f, 0x72, 0x73, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x2f, 0x0a, + 0x14, 0x74, 0x65, 0x72, 0x6d, 0x73, 0x5f, 0x6f, 0x66, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x74, 0x65, 0x72, + 0x6d, 0x73, 0x4f, 0x66, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x55, 0x72, 0x69, 0x12, 0x1d, + 0x0a, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x69, 0x12, 0x19, 0x0a, + 0x08, 0x6c, 0x6f, 0x67, 0x6f, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x6c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x69, 0x12, 0x3b, 0x0a, 0x1a, 0x75, 0x73, 0x65, 0x72, + 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x75, 0x73, + 0x65, 0x72, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x12, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x6f, + 0x6e, 0x74, 0x61, 0x63, 0x74, 0x73, 0x12, 0x68, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x45, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, + 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, + 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x32, 0x0a, 0x15, 0x73, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x13, 0x73, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x55, 0x72, 0x69, 0x12, 0x4c, 0x0a, 0x0b, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x73, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x47, 0x72, 0x61, + 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x73, 0x12, 0x55, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x69, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x6f, + 0x70, 0x65, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x6f, 0x70, 0x65, + 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x13, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, + 0x76, 0x0a, 0x1a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, + 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x14, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, + 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x17, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, + 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x44, 0x0a, 0x1f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x73, + 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6c, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x1b, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, + 0x75, 0x74, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x41, 0x6c, 0x67, 0x12, 0x3f, 0x0a, + 0x1c, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, + 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x61, 0x6c, 0x67, 0x18, 0x16, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x19, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x53, 0x69, 0x67, + 0x6e, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x41, 0x6c, 0x67, 0x12, 0x18, + 0x0a, 0x07, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x07, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x22, 0x76, 0x0a, 0x11, 0x43, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, + 0x1b, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x55, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1e, + 0x0a, 0x1a, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x55, 0x42, 0x4a, 0x45, 0x43, 0x54, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x10, 0x01, 0x12, 0x20, + 0x0a, 0x1c, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x55, 0x42, 0x4a, 0x45, 0x43, 0x54, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x41, 0x49, 0x52, 0x57, 0x49, 0x53, 0x45, 0x10, 0x02, + 0x22, 0xd4, 0x0a, 0x0a, 0x16, 0x57, 0x65, 0x62, 0x41, 0x75, 0x74, 0x68, 0x6e, 0x50, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x6f, 0x0a, 0x0f, 0x72, + 0x65, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x57, 0x65, 0x62, 0x41, 0x75, 0x74, 0x68, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x6c, 0x79, 0x69, 0x6e, 0x67, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e, 0x72, 0x65, + 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x7e, 0x0a, 0x16, + 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x65, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x47, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, + 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x65, 0x62, 0x41, 0x75, 0x74, + 0x68, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x79, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x72, 0x65, 0x66, 0x65, + 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x15, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x85, 0x01, 0x0a, + 0x18, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, + 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x4a, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, + 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x65, 0x62, + 0x41, 0x75, 0x74, 0x68, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, + 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x17, 0x61, 0x75, 0x74, + 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, + 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x5f, + 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x12, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x52, 0x65, 0x73, 0x69, 0x64, + 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x7b, 0x0a, 0x11, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x76, + 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x4e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, + 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, + 0x65, 0x62, 0x41, 0x75, 0x74, 0x68, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x52, 0x10, 0x75, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x4c, 0x0a, 0x14, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x72, 0x65, + 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, + 0x74, 0x12, 0x50, 0x0a, 0x16, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x15, 0x61, 0x75, + 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, + 0x6f, 0x75, 0x74, 0x1a, 0x41, 0x0a, 0x13, 0x52, 0x65, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x50, 0x61, + 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x9f, 0x01, 0x0a, 0x14, 0x43, 0x6f, 0x6e, 0x76, 0x65, + 0x79, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, + 0x21, 0x0a, 0x1d, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x59, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, + 0x45, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, + 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x59, 0x41, 0x4e, 0x43, 0x45, + 0x5f, 0x50, 0x52, 0x45, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, + 0x10, 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x59, 0x41, 0x4e, 0x43, 0x45, + 0x5f, 0x50, 0x52, 0x45, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x49, 0x4e, 0x44, 0x49, + 0x52, 0x45, 0x43, 0x54, 0x10, 0x02, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x59, + 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, + 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x10, 0x03, 0x22, 0xb9, 0x01, 0x0a, 0x17, 0x41, 0x75, 0x74, + 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, + 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x20, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, + 0x43, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, 0x48, 0x4d, 0x45, 0x4e, 0x54, + 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x41, 0x55, + 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x41, + 0x43, 0x48, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, + 0x12, 0x25, 0x0a, 0x21, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x4f, + 0x52, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, 0x48, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x4c, 0x41, + 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x10, 0x02, 0x12, 0x2b, 0x0a, 0x27, 0x41, 0x55, 0x54, 0x48, 0x45, + 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, 0x48, 0x4d, + 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x52, 0x4f, 0x53, 0x53, 0x5f, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, + 0x52, 0x4d, 0x10, 0x03, 0x22, 0xd0, 0x01, 0x0a, 0x1b, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, + 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x25, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x56, 0x45, 0x52, + 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, + 0x2b, 0x0a, 0x27, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x56, 0x45, 0x52, 0x49, 0x46, 0x49, 0x43, 0x41, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, + 0x5f, 0x50, 0x52, 0x45, 0x46, 0x45, 0x52, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x2a, 0x0a, 0x26, + 0x55, 0x53, 0x45, 0x52, 0x5f, 0x56, 0x45, 0x52, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, + 0x4e, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x45, + 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x10, 0x02, 0x12, 0x2d, 0x0a, 0x29, 0x55, 0x53, 0x45, 0x52, + 0x5f, 0x56, 0x45, 0x52, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, + 0x51, 0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x55, + 0x52, 0x41, 0x47, 0x45, 0x44, 0x10, 0x03, 0x22, 0xe3, 0x01, 0x0a, 0x19, 0x41, 0x75, 0x74, 0x68, + 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x54, 0x0a, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, + 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x6f, + 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x22, 0x44, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x49, 0x4e, 0x56, 0x41, + 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, + 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x54, 0x41, 0x54, + 0x55, 0x53, 0x5f, 0x49, 0x4e, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x02, 0x22, 0xaa, 0x02, + 0x0a, 0x17, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x65, + 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x69, 0x6e, + 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, + 0x6f, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, + 0x64, 0x12, 0x47, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0xaa, 0x02, 0x0a, 0x17, 0x52, + 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, + 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, + 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x47, + 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x61, + 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x6f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x2a, 0x87, 0x06, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, + 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, + 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x45, 0x52, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x4f, 0x4e, + 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x50, 0x50, 0x4c, 0x49, 0x43, 0x41, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, + 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x53, 0x53, 0x55, + 0x45, 0x52, 0x10, 0x0f, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x54, 0x10, 0x03, 0x12, 0x1b, 0x0a, 0x17, + 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x50, 0x50, 0x4c, + 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4f, 0x4e, + 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x50, 0x50, 0x5f, 0x41, 0x47, 0x45, + 0x4e, 0x54, 0x10, 0x05, 0x12, 0x24, 0x0a, 0x20, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x41, 0x50, 0x50, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x52, + 0x45, 0x44, 0x45, 0x4e, 0x54, 0x49, 0x41, 0x4c, 0x10, 0x06, 0x12, 0x1f, 0x0a, 0x1b, 0x43, 0x4f, + 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x49, 0x43, + 0x45, 0x5f, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x12, 0x12, 0x22, 0x0a, 0x1e, 0x43, + 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x49, + 0x43, 0x45, 0x5f, 0x43, 0x52, 0x45, 0x44, 0x45, 0x4e, 0x54, 0x49, 0x41, 0x4c, 0x10, 0x13, 0x12, + 0x1c, 0x0a, 0x18, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, + 0x49, 0x47, 0x49, 0x54, 0x41, 0x4c, 0x5f, 0x54, 0x57, 0x49, 0x4e, 0x10, 0x15, 0x12, 0x19, 0x0a, + 0x15, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x55, 0x54, + 0x48, 0x5f, 0x46, 0x4c, 0x4f, 0x57, 0x10, 0x07, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x4f, 0x4e, 0x46, + 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x4d, 0x41, 0x49, 0x4c, 0x5f, 0x53, 0x45, + 0x52, 0x56, 0x49, 0x43, 0x45, 0x10, 0x08, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x4f, 0x4e, 0x46, 0x49, + 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x4d, 0x53, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x49, + 0x43, 0x45, 0x10, 0x09, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x54, 0x5f, 0x53, 0x49, 0x4e, 0x4b, 0x10, 0x1b, + 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x4f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x10, 0x0a, 0x12, + 0x22, 0x0a, 0x1e, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4f, + 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x41, 0x50, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, + 0x4e, 0x10, 0x0b, 0x12, 0x1f, 0x0a, 0x1b, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x4f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, + 0x45, 0x52, 0x10, 0x11, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, 0x5f, 0x50, 0x52, 0x4f, + 0x56, 0x49, 0x44, 0x45, 0x52, 0x10, 0x0c, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x4f, 0x4e, 0x46, 0x49, + 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x57, 0x45, 0x42, 0x41, 0x55, 0x54, 0x48, 0x4e, 0x5f, + 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x10, 0x0d, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x4f, + 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e, + 0x54, 0x45, 0x51, 0x5f, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x10, 0x0e, 0x12, 0x1d, + 0x0a, 0x19, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x41, + 0x46, 0x52, 0x5f, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x10, 0x10, 0x12, 0x24, 0x0a, + 0x20, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x55, 0x54, + 0x48, 0x4f, 0x52, 0x49, 0x5a, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, + 0x59, 0x10, 0x16, 0x12, 0x26, 0x0a, 0x22, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x4b, 0x4e, 0x4f, 0x57, 0x4c, 0x45, 0x44, 0x47, 0x45, 0x5f, 0x47, 0x52, 0x41, + 0x50, 0x48, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x10, 0x17, 0x22, 0x04, 0x08, 0x18, 0x10, + 0x18, 0x2a, 0xef, 0x01, 0x0a, 0x0f, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x47, 0x72, 0x61, 0x6e, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, + 0x5f, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, + 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x29, 0x0a, 0x25, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, + 0x5f, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x48, + 0x4f, 0x52, 0x49, 0x5a, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x10, 0x01, + 0x12, 0x1f, 0x0a, 0x1b, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x47, 0x52, 0x41, 0x4e, + 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4d, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x10, + 0x02, 0x12, 0x1f, 0x0a, 0x1b, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x47, 0x52, 0x41, + 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, + 0x10, 0x03, 0x12, 0x29, 0x0a, 0x25, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x47, 0x52, + 0x41, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, + 0x43, 0x52, 0x45, 0x44, 0x45, 0x4e, 0x54, 0x49, 0x41, 0x4c, 0x53, 0x10, 0x04, 0x12, 0x24, 0x0a, + 0x20, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x52, 0x45, 0x46, 0x52, 0x45, 0x53, 0x48, 0x5f, 0x54, 0x4f, 0x4b, 0x45, + 0x4e, 0x10, 0x05, 0x2a, 0x9c, 0x01, 0x0a, 0x12, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x1d, 0x4f, 0x5f, + 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1f, 0x0a, + 0x1b, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, + 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x01, 0x12, 0x1e, + 0x0a, 0x1a, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, + 0x53, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x10, 0x02, 0x12, 0x22, + 0x0a, 0x1e, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, + 0x53, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, + 0x10, 0x03, 0x2a, 0xab, 0x02, 0x0a, 0x1d, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, + 0x74, 0x68, 0x6f, 0x64, 0x12, 0x2e, 0x0a, 0x2a, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, + 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, + 0x55, 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, + 0x49, 0x44, 0x10, 0x00, 0x12, 0x3a, 0x0a, 0x36, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, + 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, + 0x55, 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, + 0x54, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x5f, 0x42, 0x41, 0x53, 0x49, 0x43, 0x10, 0x01, + 0x12, 0x39, 0x0a, 0x35, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x54, 0x4f, 0x4b, 0x45, + 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x5f, + 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, + 0x43, 0x52, 0x45, 0x54, 0x5f, 0x50, 0x4f, 0x53, 0x54, 0x10, 0x02, 0x12, 0x36, 0x0a, 0x32, 0x4f, + 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, + 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, + 0x44, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x4a, 0x57, + 0x54, 0x10, 0x03, 0x12, 0x2b, 0x0a, 0x27, 0x4f, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x32, 0x5f, 0x54, + 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x55, + 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x04, + 0x42, 0x8c, 0x02, 0x0a, 0x1e, 0x63, 0x6f, 0x6d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x42, 0x0b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x50, 0x01, 0x5a, 0x53, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x2d, 0x73, 0x64, 0x6b, 0x2d, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x2f, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x61, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x49, 0x41, 0x58, 0xaa, 0x02, 0x1a, + 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, + 0x6e, 0x6b, 0x2e, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x1a, 0x49, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x5c, 0x41, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x5c, + 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xe2, 0x02, 0x26, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x74, 0x65, 0x5c, 0x41, 0x75, 0x64, 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x5c, 0x56, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0xea, 0x02, 0x1c, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x3a, 0x3a, 0x41, 0x75, 0x64, + 0x69, 0x74, 0x73, 0x69, 0x6e, 0x6b, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, + 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_indykite_auditsink_v1beta1_config_proto_rawDescOnce sync.Once + file_indykite_auditsink_v1beta1_config_proto_rawDescData = file_indykite_auditsink_v1beta1_config_proto_rawDesc +) + +func file_indykite_auditsink_v1beta1_config_proto_rawDescGZIP() []byte { + file_indykite_auditsink_v1beta1_config_proto_rawDescOnce.Do(func() { + file_indykite_auditsink_v1beta1_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_indykite_auditsink_v1beta1_config_proto_rawDescData) + }) + return file_indykite_auditsink_v1beta1_config_proto_rawDescData +} + +var file_indykite_auditsink_v1beta1_config_proto_enumTypes = make([]protoimpl.EnumInfo, 12) +var file_indykite_auditsink_v1beta1_config_proto_msgTypes = make([]protoimpl.MessageInfo, 36) +var file_indykite_auditsink_v1beta1_config_proto_goTypes = []interface{}{ + (ConfigType)(0), // 0: indykite.auditsink.v1beta1.ConfigType + (OAuth2GrantType)(0), // 1: indykite.auditsink.v1beta1.OAuth2GrantType + (OAuth2ResponseType)(0), // 2: indykite.auditsink.v1beta1.OAuth2ResponseType + (OAuth2TokenEndpointAuthMethod)(0), // 3: indykite.auditsink.v1beta1.OAuth2TokenEndpointAuthMethod + (AuthFlowConfig_Format)(0), // 4: indykite.auditsink.v1beta1.AuthFlowConfig.Format + (OAuth2ClientConfig_ProviderType)(0), // 5: indykite.auditsink.v1beta1.OAuth2ClientConfig.ProviderType + (OAuth2ClientConfig_AuthStyle)(0), // 6: indykite.auditsink.v1beta1.OAuth2ClientConfig.AuthStyle + (OAuth2ApplicationConfig_ClientSubjectType)(0), // 7: indykite.auditsink.v1beta1.OAuth2ApplicationConfig.ClientSubjectType + (WebAuthnProviderConfig_ConveyancePreference)(0), // 8: indykite.auditsink.v1beta1.WebAuthnProviderConfig.ConveyancePreference + (WebAuthnProviderConfig_AuthenticatorAttachment)(0), // 9: indykite.auditsink.v1beta1.WebAuthnProviderConfig.AuthenticatorAttachment + (WebAuthnProviderConfig_UserVerificationRequirement)(0), // 10: indykite.auditsink.v1beta1.WebAuthnProviderConfig.UserVerificationRequirement + (AuthorizationPolicyConfig_Status)(0), // 11: indykite.auditsink.v1beta1.AuthorizationPolicyConfig.Status + (*CreatedConfig)(nil), // 12: indykite.auditsink.v1beta1.CreatedConfig + (*ReadConfig)(nil), // 13: indykite.auditsink.v1beta1.ReadConfig + (*UpdatedConfig)(nil), // 14: indykite.auditsink.v1beta1.UpdatedConfig + (*DeletedConfig)(nil), // 15: indykite.auditsink.v1beta1.DeletedConfig + (*ConfigDetail)(nil), // 16: indykite.auditsink.v1beta1.ConfigDetail + (*CustomerConfig)(nil), // 17: indykite.auditsink.v1beta1.CustomerConfig + (*ApplicationSpaceConfig)(nil), // 18: indykite.auditsink.v1beta1.ApplicationSpaceConfig + (*TenantConfig)(nil), // 19: indykite.auditsink.v1beta1.TenantConfig + (*UsernamePolicyConfig)(nil), // 20: indykite.auditsink.v1beta1.UsernamePolicyConfig + (*ApplicationAgentCredentialConfig)(nil), // 21: indykite.auditsink.v1beta1.ApplicationAgentCredentialConfig + (*ServiceAccountCredentialConfig)(nil), // 22: indykite.auditsink.v1beta1.ServiceAccountCredentialConfig + (*AuthFlowConfig)(nil), // 23: indykite.auditsink.v1beta1.AuthFlowConfig + (*EmailServiceConfig)(nil), // 24: indykite.auditsink.v1beta1.EmailServiceConfig + (*Email)(nil), // 25: indykite.auditsink.v1beta1.Email + (*SendGridProviderConfig)(nil), // 26: indykite.auditsink.v1beta1.SendGridProviderConfig + (*AmazonSESProviderConfig)(nil), // 27: indykite.auditsink.v1beta1.AmazonSESProviderConfig + (*EmailDefinition)(nil), // 28: indykite.auditsink.v1beta1.EmailDefinition + (*EmailTemplate)(nil), // 29: indykite.auditsink.v1beta1.EmailTemplate + (*EmailAttachment)(nil), // 30: indykite.auditsink.v1beta1.EmailAttachment + (*AuditSinkConfig)(nil), // 31: indykite.auditsink.v1beta1.AuditSinkConfig + (*OAuth2ClientConfig)(nil), // 32: indykite.auditsink.v1beta1.OAuth2ClientConfig + (*OAuth2ProviderConfig)(nil), // 33: indykite.auditsink.v1beta1.OAuth2ProviderConfig + (*OAuth2ApplicationConfig)(nil), // 34: indykite.auditsink.v1beta1.OAuth2ApplicationConfig + (*WebAuthnProviderConfig)(nil), // 35: indykite.auditsink.v1beta1.WebAuthnProviderConfig + (*AuthorizationPolicyConfig)(nil), // 36: indykite.auditsink.v1beta1.AuthorizationPolicyConfig + (*AssignConfigPermissions)(nil), // 37: indykite.auditsink.v1beta1.AssignConfigPermissions + (*RevokeConfigPermissions)(nil), // 38: indykite.auditsink.v1beta1.RevokeConfigPermissions + (*CreatedConfig_Location)(nil), // 39: indykite.auditsink.v1beta1.CreatedConfig.Location + (*ReadConfig_NameIdentifier)(nil), // 40: indykite.auditsink.v1beta1.ReadConfig.NameIdentifier + nil, // 41: indykite.auditsink.v1beta1.EmailTemplate.HeadersEntry + nil, // 42: indykite.auditsink.v1beta1.EmailTemplate.CustomArgsEntry + nil, // 43: indykite.auditsink.v1beta1.EmailTemplate.DynamicTemplateValuesEntry + (*AuditSinkConfig_Kafka)(nil), // 44: indykite.auditsink.v1beta1.AuditSinkConfig.Kafka + nil, // 45: indykite.auditsink.v1beta1.OAuth2ProviderConfig.FrontChannelLoginUriEntry + nil, // 46: indykite.auditsink.v1beta1.OAuth2ProviderConfig.FrontChannelConsentUriEntry + nil, // 47: indykite.auditsink.v1beta1.WebAuthnProviderConfig.RelyingPartiesEntry + (*durationpb.Duration)(nil), // 48: google.protobuf.Duration + (*timestamppb.Timestamp)(nil), // 49: google.protobuf.Timestamp + (*v1beta1.Value)(nil), // 50: indykite.objects.v1beta1.Value +} +var file_indykite_auditsink_v1beta1_config_proto_depIdxs = []int32{ + 0, // 0: indykite.auditsink.v1beta1.CreatedConfig.type:type_name -> indykite.auditsink.v1beta1.ConfigType + 39, // 1: indykite.auditsink.v1beta1.CreatedConfig.location:type_name -> indykite.auditsink.v1beta1.CreatedConfig.Location + 16, // 2: indykite.auditsink.v1beta1.CreatedConfig.detail:type_name -> indykite.auditsink.v1beta1.ConfigDetail + 40, // 3: indykite.auditsink.v1beta1.ReadConfig.name:type_name -> indykite.auditsink.v1beta1.ReadConfig.NameIdentifier + 0, // 4: indykite.auditsink.v1beta1.ReadConfig.type:type_name -> indykite.auditsink.v1beta1.ConfigType + 0, // 5: indykite.auditsink.v1beta1.UpdatedConfig.type:type_name -> indykite.auditsink.v1beta1.ConfigType + 16, // 6: indykite.auditsink.v1beta1.UpdatedConfig.before:type_name -> indykite.auditsink.v1beta1.ConfigDetail + 16, // 7: indykite.auditsink.v1beta1.UpdatedConfig.after:type_name -> indykite.auditsink.v1beta1.ConfigDetail + 0, // 8: indykite.auditsink.v1beta1.DeletedConfig.type:type_name -> indykite.auditsink.v1beta1.ConfigType + 17, // 9: indykite.auditsink.v1beta1.ConfigDetail.customer_config:type_name -> indykite.auditsink.v1beta1.CustomerConfig + 18, // 10: indykite.auditsink.v1beta1.ConfigDetail.application_space_config:type_name -> indykite.auditsink.v1beta1.ApplicationSpaceConfig + 19, // 11: indykite.auditsink.v1beta1.ConfigDetail.tenant_config:type_name -> indykite.auditsink.v1beta1.TenantConfig + 21, // 12: indykite.auditsink.v1beta1.ConfigDetail.application_agent_credential:type_name -> indykite.auditsink.v1beta1.ApplicationAgentCredentialConfig + 22, // 13: indykite.auditsink.v1beta1.ConfigDetail.service_account_credential:type_name -> indykite.auditsink.v1beta1.ServiceAccountCredentialConfig + 23, // 14: indykite.auditsink.v1beta1.ConfigDetail.auth_flow_config:type_name -> indykite.auditsink.v1beta1.AuthFlowConfig + 24, // 15: indykite.auditsink.v1beta1.ConfigDetail.email_service_config:type_name -> indykite.auditsink.v1beta1.EmailServiceConfig + 31, // 16: indykite.auditsink.v1beta1.ConfigDetail.audit_sink_config:type_name -> indykite.auditsink.v1beta1.AuditSinkConfig + 32, // 17: indykite.auditsink.v1beta1.ConfigDetail.oauth2_client_config:type_name -> indykite.auditsink.v1beta1.OAuth2ClientConfig + 35, // 18: indykite.auditsink.v1beta1.ConfigDetail.web_authn_provider_config:type_name -> indykite.auditsink.v1beta1.WebAuthnProviderConfig + 36, // 19: indykite.auditsink.v1beta1.ConfigDetail.authorization_policy_config:type_name -> indykite.auditsink.v1beta1.AuthorizationPolicyConfig + 34, // 20: indykite.auditsink.v1beta1.ConfigDetail.oauth2_application_config:type_name -> indykite.auditsink.v1beta1.OAuth2ApplicationConfig + 33, // 21: indykite.auditsink.v1beta1.ConfigDetail.oauth2_provider_config:type_name -> indykite.auditsink.v1beta1.OAuth2ProviderConfig + 20, // 22: indykite.auditsink.v1beta1.ApplicationSpaceConfig.username_policy:type_name -> indykite.auditsink.v1beta1.UsernamePolicyConfig + 20, // 23: indykite.auditsink.v1beta1.TenantConfig.username_policy:type_name -> indykite.auditsink.v1beta1.UsernamePolicyConfig + 48, // 24: indykite.auditsink.v1beta1.UsernamePolicyConfig.verify_email_grace_period:type_name -> google.protobuf.Duration + 49, // 25: indykite.auditsink.v1beta1.ApplicationAgentCredentialConfig.expire_time:type_name -> google.protobuf.Timestamp + 49, // 26: indykite.auditsink.v1beta1.ServiceAccountCredentialConfig.expire_time:type_name -> google.protobuf.Timestamp + 4, // 27: indykite.auditsink.v1beta1.AuthFlowConfig.source_format:type_name -> indykite.auditsink.v1beta1.AuthFlowConfig.Format + 25, // 28: indykite.auditsink.v1beta1.EmailServiceConfig.default_from_address:type_name -> indykite.auditsink.v1beta1.Email + 26, // 29: indykite.auditsink.v1beta1.EmailServiceConfig.sendgrid:type_name -> indykite.auditsink.v1beta1.SendGridProviderConfig + 27, // 30: indykite.auditsink.v1beta1.EmailServiceConfig.amazon:type_name -> indykite.auditsink.v1beta1.AmazonSESProviderConfig + 28, // 31: indykite.auditsink.v1beta1.EmailServiceConfig.invitation_message:type_name -> indykite.auditsink.v1beta1.EmailDefinition + 28, // 32: indykite.auditsink.v1beta1.EmailServiceConfig.reset_password_message:type_name -> indykite.auditsink.v1beta1.EmailDefinition + 28, // 33: indykite.auditsink.v1beta1.EmailServiceConfig.verification_message:type_name -> indykite.auditsink.v1beta1.EmailDefinition + 28, // 34: indykite.auditsink.v1beta1.EmailServiceConfig.one_time_password_message:type_name -> indykite.auditsink.v1beta1.EmailDefinition + 25, // 35: indykite.auditsink.v1beta1.AmazonSESProviderConfig.default_from_address:type_name -> indykite.auditsink.v1beta1.Email + 29, // 36: indykite.auditsink.v1beta1.EmailDefinition.template:type_name -> indykite.auditsink.v1beta1.EmailTemplate + 25, // 37: indykite.auditsink.v1beta1.EmailTemplate.from:type_name -> indykite.auditsink.v1beta1.Email + 25, // 38: indykite.auditsink.v1beta1.EmailTemplate.reply_to:type_name -> indykite.auditsink.v1beta1.Email + 25, // 39: indykite.auditsink.v1beta1.EmailTemplate.to:type_name -> indykite.auditsink.v1beta1.Email + 25, // 40: indykite.auditsink.v1beta1.EmailTemplate.cc:type_name -> indykite.auditsink.v1beta1.Email + 25, // 41: indykite.auditsink.v1beta1.EmailTemplate.bcc:type_name -> indykite.auditsink.v1beta1.Email + 41, // 42: indykite.auditsink.v1beta1.EmailTemplate.headers:type_name -> indykite.auditsink.v1beta1.EmailTemplate.HeadersEntry + 42, // 43: indykite.auditsink.v1beta1.EmailTemplate.custom_args:type_name -> indykite.auditsink.v1beta1.EmailTemplate.CustomArgsEntry + 43, // 44: indykite.auditsink.v1beta1.EmailTemplate.dynamic_template_values:type_name -> indykite.auditsink.v1beta1.EmailTemplate.DynamicTemplateValuesEntry + 30, // 45: indykite.auditsink.v1beta1.EmailTemplate.attachments:type_name -> indykite.auditsink.v1beta1.EmailAttachment + 44, // 46: indykite.auditsink.v1beta1.AuditSinkConfig.kafka:type_name -> indykite.auditsink.v1beta1.AuditSinkConfig.Kafka + 5, // 47: indykite.auditsink.v1beta1.OAuth2ClientConfig.provider_type:type_name -> indykite.auditsink.v1beta1.OAuth2ClientConfig.ProviderType + 6, // 48: indykite.auditsink.v1beta1.OAuth2ClientConfig.auth_style:type_name -> indykite.auditsink.v1beta1.OAuth2ClientConfig.AuthStyle + 1, // 49: indykite.auditsink.v1beta1.OAuth2ProviderConfig.grant_types:type_name -> indykite.auditsink.v1beta1.OAuth2GrantType + 2, // 50: indykite.auditsink.v1beta1.OAuth2ProviderConfig.response_types:type_name -> indykite.auditsink.v1beta1.OAuth2ResponseType + 3, // 51: indykite.auditsink.v1beta1.OAuth2ProviderConfig.token_endpoint_auth_method:type_name -> indykite.auditsink.v1beta1.OAuth2TokenEndpointAuthMethod + 45, // 52: indykite.auditsink.v1beta1.OAuth2ProviderConfig.front_channel_login_uri:type_name -> indykite.auditsink.v1beta1.OAuth2ProviderConfig.FrontChannelLoginUriEntry + 46, // 53: indykite.auditsink.v1beta1.OAuth2ProviderConfig.front_channel_consent_uri:type_name -> indykite.auditsink.v1beta1.OAuth2ProviderConfig.FrontChannelConsentUriEntry + 7, // 54: indykite.auditsink.v1beta1.OAuth2ApplicationConfig.subject_type:type_name -> indykite.auditsink.v1beta1.OAuth2ApplicationConfig.ClientSubjectType + 1, // 55: indykite.auditsink.v1beta1.OAuth2ApplicationConfig.grant_types:type_name -> indykite.auditsink.v1beta1.OAuth2GrantType + 2, // 56: indykite.auditsink.v1beta1.OAuth2ApplicationConfig.response_types:type_name -> indykite.auditsink.v1beta1.OAuth2ResponseType + 3, // 57: indykite.auditsink.v1beta1.OAuth2ApplicationConfig.token_endpoint_auth_method:type_name -> indykite.auditsink.v1beta1.OAuth2TokenEndpointAuthMethod + 47, // 58: indykite.auditsink.v1beta1.WebAuthnProviderConfig.relying_parties:type_name -> indykite.auditsink.v1beta1.WebAuthnProviderConfig.RelyingPartiesEntry + 8, // 59: indykite.auditsink.v1beta1.WebAuthnProviderConfig.attestation_preference:type_name -> indykite.auditsink.v1beta1.WebAuthnProviderConfig.ConveyancePreference + 9, // 60: indykite.auditsink.v1beta1.WebAuthnProviderConfig.authenticator_attachment:type_name -> indykite.auditsink.v1beta1.WebAuthnProviderConfig.AuthenticatorAttachment + 10, // 61: indykite.auditsink.v1beta1.WebAuthnProviderConfig.user_verification:type_name -> indykite.auditsink.v1beta1.WebAuthnProviderConfig.UserVerificationRequirement + 48, // 62: indykite.auditsink.v1beta1.WebAuthnProviderConfig.registration_timeout:type_name -> google.protobuf.Duration + 48, // 63: indykite.auditsink.v1beta1.WebAuthnProviderConfig.authentication_timeout:type_name -> google.protobuf.Duration + 11, // 64: indykite.auditsink.v1beta1.AuthorizationPolicyConfig.status:type_name -> indykite.auditsink.v1beta1.AuthorizationPolicyConfig.Status + 0, // 65: indykite.auditsink.v1beta1.AssignConfigPermissions.target_type:type_name -> indykite.auditsink.v1beta1.ConfigType + 0, // 66: indykite.auditsink.v1beta1.AssignConfigPermissions.object_type:type_name -> indykite.auditsink.v1beta1.ConfigType + 0, // 67: indykite.auditsink.v1beta1.RevokeConfigPermissions.target_type:type_name -> indykite.auditsink.v1beta1.ConfigType + 0, // 68: indykite.auditsink.v1beta1.RevokeConfigPermissions.object_type:type_name -> indykite.auditsink.v1beta1.ConfigType + 0, // 69: indykite.auditsink.v1beta1.CreatedConfig.Location.type:type_name -> indykite.auditsink.v1beta1.ConfigType + 0, // 70: indykite.auditsink.v1beta1.ReadConfig.NameIdentifier.location_type:type_name -> indykite.auditsink.v1beta1.ConfigType + 50, // 71: indykite.auditsink.v1beta1.EmailTemplate.DynamicTemplateValuesEntry.value:type_name -> indykite.objects.v1beta1.Value + 72, // [72:72] is the sub-list for method output_type + 72, // [72:72] is the sub-list for method input_type + 72, // [72:72] is the sub-list for extension type_name + 72, // [72:72] is the sub-list for extension extendee + 0, // [0:72] is the sub-list for field type_name +} + +func init() { file_indykite_auditsink_v1beta1_config_proto_init() } +func file_indykite_auditsink_v1beta1_config_proto_init() { + if File_indykite_auditsink_v1beta1_config_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_indykite_auditsink_v1beta1_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreatedConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReadConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdatedConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeletedConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ConfigDetail); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CustomerConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ApplicationSpaceConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TenantConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UsernamePolicyConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ApplicationAgentCredentialConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ServiceAccountCredentialConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AuthFlowConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EmailServiceConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Email); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SendGridProviderConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AmazonSESProviderConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EmailDefinition); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EmailTemplate); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EmailAttachment); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AuditSinkConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuth2ClientConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuth2ProviderConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuth2ApplicationConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WebAuthnProviderConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AuthorizationPolicyConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AssignConfigPermissions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RevokeConfigPermissions); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreatedConfig_Location); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReadConfig_NameIdentifier); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AuditSinkConfig_Kafka); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[1].OneofWrappers = []interface{}{ + (*ReadConfig_Id)(nil), + (*ReadConfig_Name)(nil), + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[4].OneofWrappers = []interface{}{ + (*ConfigDetail_CustomerConfig)(nil), + (*ConfigDetail_ApplicationSpaceConfig)(nil), + (*ConfigDetail_TenantConfig)(nil), + (*ConfigDetail_ApplicationAgentCredential)(nil), + (*ConfigDetail_ServiceAccountCredential)(nil), + (*ConfigDetail_AuthFlowConfig)(nil), + (*ConfigDetail_EmailServiceConfig)(nil), + (*ConfigDetail_AuditSinkConfig)(nil), + (*ConfigDetail_Oauth2ClientConfig)(nil), + (*ConfigDetail_WebAuthnProviderConfig)(nil), + (*ConfigDetail_AuthorizationPolicyConfig)(nil), + (*ConfigDetail_Oauth2ApplicationConfig)(nil), + (*ConfigDetail_Oauth2ProviderConfig)(nil), + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[12].OneofWrappers = []interface{}{ + (*EmailServiceConfig_Sendgrid)(nil), + (*EmailServiceConfig_Amazon)(nil), + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[16].OneofWrappers = []interface{}{ + (*EmailDefinition_Template)(nil), + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[19].OneofWrappers = []interface{}{ + (*AuditSinkConfig_Kafka_)(nil), + } + file_indykite_auditsink_v1beta1_config_proto_msgTypes[28].OneofWrappers = []interface{}{} + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_indykite_auditsink_v1beta1_config_proto_rawDesc, + NumEnums: 12, + NumMessages: 36, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_indykite_auditsink_v1beta1_config_proto_goTypes, + DependencyIndexes: file_indykite_auditsink_v1beta1_config_proto_depIdxs, + EnumInfos: file_indykite_auditsink_v1beta1_config_proto_enumTypes, + MessageInfos: file_indykite_auditsink_v1beta1_config_proto_msgTypes, + }.Build() + File_indykite_auditsink_v1beta1_config_proto = out.File + file_indykite_auditsink_v1beta1_config_proto_rawDesc = nil + file_indykite_auditsink_v1beta1_config_proto_goTypes = nil + file_indykite_auditsink_v1beta1_config_proto_depIdxs = nil +} diff --git a/gen/indykite/auditsink/v1beta1/config.pb.validate.go b/gen/indykite/auditsink/v1beta1/config.pb.validate.go new file mode 100644 index 00000000..92dff7c9 --- /dev/null +++ b/gen/indykite/auditsink/v1beta1/config.pb.validate.go @@ -0,0 +1,4809 @@ +// Code generated by protoc-gen-validate. DO NOT EDIT. +// source: indykite/auditsink/v1beta1/config.proto + +package auditsinkv1beta1 + +import ( + "bytes" + "errors" + "fmt" + "net" + "net/mail" + "net/url" + "regexp" + "sort" + "strings" + "time" + "unicode/utf8" + + "google.golang.org/protobuf/types/known/anypb" +) + +// ensure the imports are used +var ( + _ = bytes.MinRead + _ = errors.New("") + _ = fmt.Print + _ = utf8.UTFMax + _ = (*regexp.Regexp)(nil) + _ = (*strings.Reader)(nil) + _ = net.IPv4len + _ = time.Duration(0) + _ = (*url.URL)(nil) + _ = (*mail.Address)(nil) + _ = anypb.Any{} + _ = sort.Sort +) + +// Validate checks the field values on CreatedConfig with the rules defined in +// the proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *CreatedConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on CreatedConfig with the rules defined +// in the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in CreatedConfigMultiError, or +// nil if none found. +func (m *CreatedConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *CreatedConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Id + + // no validation rules for Type + + if all { + switch v := interface{}(m.GetLocation()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, CreatedConfigValidationError{ + field: "Location", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, CreatedConfigValidationError{ + field: "Location", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetLocation()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return CreatedConfigValidationError{ + field: "Location", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if all { + switch v := interface{}(m.GetDetail()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, CreatedConfigValidationError{ + field: "Detail", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, CreatedConfigValidationError{ + field: "Detail", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetDetail()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return CreatedConfigValidationError{ + field: "Detail", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if len(errors) > 0 { + return CreatedConfigMultiError(errors) + } + + return nil +} + +// CreatedConfigMultiError is an error wrapping multiple validation errors +// returned by CreatedConfig.ValidateAll() if the designated constraints +// aren't met. +type CreatedConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m CreatedConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m CreatedConfigMultiError) AllErrors() []error { return m } + +// CreatedConfigValidationError is the validation error returned by +// CreatedConfig.Validate if the designated constraints aren't met. +type CreatedConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e CreatedConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e CreatedConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e CreatedConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e CreatedConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e CreatedConfigValidationError) ErrorName() string { return "CreatedConfigValidationError" } + +// Error satisfies the builtin error interface +func (e CreatedConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sCreatedConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = CreatedConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = CreatedConfigValidationError{} + +// Validate checks the field values on ReadConfig with the rules defined in the +// proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *ReadConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ReadConfig with the rules defined in +// the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in ReadConfigMultiError, or +// nil if none found. +func (m *ReadConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *ReadConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Type + + switch v := m.Identifier.(type) { + case *ReadConfig_Id: + if v == nil { + err := ReadConfigValidationError{ + field: "Identifier", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + // no validation rules for Id + case *ReadConfig_Name: + if v == nil { + err := ReadConfigValidationError{ + field: "Identifier", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetName()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ReadConfigValidationError{ + field: "Name", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ReadConfigValidationError{ + field: "Name", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetName()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ReadConfigValidationError{ + field: "Name", + reason: "embedded message failed validation", + cause: err, + } + } + } + + default: + _ = v // ensures v is used + } + + if len(errors) > 0 { + return ReadConfigMultiError(errors) + } + + return nil +} + +// ReadConfigMultiError is an error wrapping multiple validation errors +// returned by ReadConfig.ValidateAll() if the designated constraints aren't met. +type ReadConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ReadConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ReadConfigMultiError) AllErrors() []error { return m } + +// ReadConfigValidationError is the validation error returned by +// ReadConfig.Validate if the designated constraints aren't met. +type ReadConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ReadConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ReadConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ReadConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ReadConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ReadConfigValidationError) ErrorName() string { return "ReadConfigValidationError" } + +// Error satisfies the builtin error interface +func (e ReadConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sReadConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ReadConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ReadConfigValidationError{} + +// Validate checks the field values on UpdatedConfig with the rules defined in +// the proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *UpdatedConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on UpdatedConfig with the rules defined +// in the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in UpdatedConfigMultiError, or +// nil if none found. +func (m *UpdatedConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *UpdatedConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Id + + // no validation rules for Type + + if all { + switch v := interface{}(m.GetBefore()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, UpdatedConfigValidationError{ + field: "Before", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, UpdatedConfigValidationError{ + field: "Before", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetBefore()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return UpdatedConfigValidationError{ + field: "Before", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if all { + switch v := interface{}(m.GetAfter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, UpdatedConfigValidationError{ + field: "After", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, UpdatedConfigValidationError{ + field: "After", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetAfter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return UpdatedConfigValidationError{ + field: "After", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if len(errors) > 0 { + return UpdatedConfigMultiError(errors) + } + + return nil +} + +// UpdatedConfigMultiError is an error wrapping multiple validation errors +// returned by UpdatedConfig.ValidateAll() if the designated constraints +// aren't met. +type UpdatedConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m UpdatedConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m UpdatedConfigMultiError) AllErrors() []error { return m } + +// UpdatedConfigValidationError is the validation error returned by +// UpdatedConfig.Validate if the designated constraints aren't met. +type UpdatedConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e UpdatedConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e UpdatedConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e UpdatedConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e UpdatedConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e UpdatedConfigValidationError) ErrorName() string { return "UpdatedConfigValidationError" } + +// Error satisfies the builtin error interface +func (e UpdatedConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sUpdatedConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = UpdatedConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = UpdatedConfigValidationError{} + +// Validate checks the field values on DeletedConfig with the rules defined in +// the proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *DeletedConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on DeletedConfig with the rules defined +// in the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in DeletedConfigMultiError, or +// nil if none found. +func (m *DeletedConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *DeletedConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Id + + // no validation rules for Type + + if len(errors) > 0 { + return DeletedConfigMultiError(errors) + } + + return nil +} + +// DeletedConfigMultiError is an error wrapping multiple validation errors +// returned by DeletedConfig.ValidateAll() if the designated constraints +// aren't met. +type DeletedConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m DeletedConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m DeletedConfigMultiError) AllErrors() []error { return m } + +// DeletedConfigValidationError is the validation error returned by +// DeletedConfig.Validate if the designated constraints aren't met. +type DeletedConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e DeletedConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e DeletedConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e DeletedConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e DeletedConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e DeletedConfigValidationError) ErrorName() string { return "DeletedConfigValidationError" } + +// Error satisfies the builtin error interface +func (e DeletedConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sDeletedConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = DeletedConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = DeletedConfigValidationError{} + +// Validate checks the field values on ConfigDetail with the rules defined in +// the proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *ConfigDetail) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ConfigDetail with the rules defined +// in the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in ConfigDetailMultiError, or +// nil if none found. +func (m *ConfigDetail) ValidateAll() error { + return m.validate(true) +} + +func (m *ConfigDetail) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Name + + // no validation rules for DisplayName + + // no validation rules for Description + + // no validation rules for Version + + switch v := m.Configuration.(type) { + case *ConfigDetail_CustomerConfig: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetCustomerConfig()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "CustomerConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "CustomerConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetCustomerConfig()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "CustomerConfig", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ConfigDetail_ApplicationSpaceConfig: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetApplicationSpaceConfig()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "ApplicationSpaceConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "ApplicationSpaceConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetApplicationSpaceConfig()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "ApplicationSpaceConfig", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ConfigDetail_TenantConfig: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetTenantConfig()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "TenantConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "TenantConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetTenantConfig()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "TenantConfig", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ConfigDetail_ApplicationAgentCredential: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetApplicationAgentCredential()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "ApplicationAgentCredential", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "ApplicationAgentCredential", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetApplicationAgentCredential()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "ApplicationAgentCredential", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ConfigDetail_ServiceAccountCredential: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetServiceAccountCredential()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "ServiceAccountCredential", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "ServiceAccountCredential", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetServiceAccountCredential()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "ServiceAccountCredential", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ConfigDetail_AuthFlowConfig: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetAuthFlowConfig()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "AuthFlowConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "AuthFlowConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetAuthFlowConfig()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "AuthFlowConfig", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ConfigDetail_EmailServiceConfig: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetEmailServiceConfig()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "EmailServiceConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "EmailServiceConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetEmailServiceConfig()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "EmailServiceConfig", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ConfigDetail_AuditSinkConfig: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetAuditSinkConfig()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "AuditSinkConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "AuditSinkConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetAuditSinkConfig()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "AuditSinkConfig", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ConfigDetail_Oauth2ClientConfig: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetOauth2ClientConfig()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "Oauth2ClientConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "Oauth2ClientConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetOauth2ClientConfig()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "Oauth2ClientConfig", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ConfigDetail_WebAuthnProviderConfig: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetWebAuthnProviderConfig()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "WebAuthnProviderConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "WebAuthnProviderConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetWebAuthnProviderConfig()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "WebAuthnProviderConfig", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ConfigDetail_AuthorizationPolicyConfig: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetAuthorizationPolicyConfig()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "AuthorizationPolicyConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "AuthorizationPolicyConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetAuthorizationPolicyConfig()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "AuthorizationPolicyConfig", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ConfigDetail_Oauth2ApplicationConfig: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetOauth2ApplicationConfig()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "Oauth2ApplicationConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "Oauth2ApplicationConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetOauth2ApplicationConfig()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "Oauth2ApplicationConfig", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ConfigDetail_Oauth2ProviderConfig: + if v == nil { + err := ConfigDetailValidationError{ + field: "Configuration", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetOauth2ProviderConfig()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "Oauth2ProviderConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ConfigDetailValidationError{ + field: "Oauth2ProviderConfig", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetOauth2ProviderConfig()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ConfigDetailValidationError{ + field: "Oauth2ProviderConfig", + reason: "embedded message failed validation", + cause: err, + } + } + } + + default: + _ = v // ensures v is used + } + + if len(errors) > 0 { + return ConfigDetailMultiError(errors) + } + + return nil +} + +// ConfigDetailMultiError is an error wrapping multiple validation errors +// returned by ConfigDetail.ValidateAll() if the designated constraints aren't met. +type ConfigDetailMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ConfigDetailMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ConfigDetailMultiError) AllErrors() []error { return m } + +// ConfigDetailValidationError is the validation error returned by +// ConfigDetail.Validate if the designated constraints aren't met. +type ConfigDetailValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ConfigDetailValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ConfigDetailValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ConfigDetailValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ConfigDetailValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ConfigDetailValidationError) ErrorName() string { return "ConfigDetailValidationError" } + +// Error satisfies the builtin error interface +func (e ConfigDetailValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sConfigDetail.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ConfigDetailValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ConfigDetailValidationError{} + +// Validate checks the field values on CustomerConfig with the rules defined in +// the proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *CustomerConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on CustomerConfig with the rules defined +// in the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in CustomerConfigMultiError, +// or nil if none found. +func (m *CustomerConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *CustomerConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for DefaultAuthFlowId + + // no validation rules for DefaultEmailServiceId + + if len(errors) > 0 { + return CustomerConfigMultiError(errors) + } + + return nil +} + +// CustomerConfigMultiError is an error wrapping multiple validation errors +// returned by CustomerConfig.ValidateAll() if the designated constraints +// aren't met. +type CustomerConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m CustomerConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m CustomerConfigMultiError) AllErrors() []error { return m } + +// CustomerConfigValidationError is the validation error returned by +// CustomerConfig.Validate if the designated constraints aren't met. +type CustomerConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e CustomerConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e CustomerConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e CustomerConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e CustomerConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e CustomerConfigValidationError) ErrorName() string { return "CustomerConfigValidationError" } + +// Error satisfies the builtin error interface +func (e CustomerConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sCustomerConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = CustomerConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = CustomerConfigValidationError{} + +// Validate checks the field values on ApplicationSpaceConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *ApplicationSpaceConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ApplicationSpaceConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ApplicationSpaceConfigMultiError, or nil if none found. +func (m *ApplicationSpaceConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *ApplicationSpaceConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for DefaultTenantId + + // no validation rules for DefaultAuthFlowId + + // no validation rules for DefaultEmailServiceId + + if all { + switch v := interface{}(m.GetUsernamePolicy()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ApplicationSpaceConfigValidationError{ + field: "UsernamePolicy", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ApplicationSpaceConfigValidationError{ + field: "UsernamePolicy", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetUsernamePolicy()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ApplicationSpaceConfigValidationError{ + field: "UsernamePolicy", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if len(errors) > 0 { + return ApplicationSpaceConfigMultiError(errors) + } + + return nil +} + +// ApplicationSpaceConfigMultiError is an error wrapping multiple validation +// errors returned by ApplicationSpaceConfig.ValidateAll() if the designated +// constraints aren't met. +type ApplicationSpaceConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ApplicationSpaceConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ApplicationSpaceConfigMultiError) AllErrors() []error { return m } + +// ApplicationSpaceConfigValidationError is the validation error returned by +// ApplicationSpaceConfig.Validate if the designated constraints aren't met. +type ApplicationSpaceConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ApplicationSpaceConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ApplicationSpaceConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ApplicationSpaceConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ApplicationSpaceConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ApplicationSpaceConfigValidationError) ErrorName() string { + return "ApplicationSpaceConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e ApplicationSpaceConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sApplicationSpaceConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ApplicationSpaceConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ApplicationSpaceConfigValidationError{} + +// Validate checks the field values on TenantConfig with the rules defined in +// the proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *TenantConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on TenantConfig with the rules defined +// in the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in TenantConfigMultiError, or +// nil if none found. +func (m *TenantConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *TenantConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for DefaultAuthFlowId + + // no validation rules for DefaultEmailServiceId + + if all { + switch v := interface{}(m.GetUsernamePolicy()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, TenantConfigValidationError{ + field: "UsernamePolicy", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, TenantConfigValidationError{ + field: "UsernamePolicy", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetUsernamePolicy()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return TenantConfigValidationError{ + field: "UsernamePolicy", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if len(errors) > 0 { + return TenantConfigMultiError(errors) + } + + return nil +} + +// TenantConfigMultiError is an error wrapping multiple validation errors +// returned by TenantConfig.ValidateAll() if the designated constraints aren't met. +type TenantConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m TenantConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m TenantConfigMultiError) AllErrors() []error { return m } + +// TenantConfigValidationError is the validation error returned by +// TenantConfig.Validate if the designated constraints aren't met. +type TenantConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e TenantConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e TenantConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e TenantConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e TenantConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e TenantConfigValidationError) ErrorName() string { return "TenantConfigValidationError" } + +// Error satisfies the builtin error interface +func (e TenantConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sTenantConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = TenantConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = TenantConfigValidationError{} + +// Validate checks the field values on UsernamePolicyConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *UsernamePolicyConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on UsernamePolicyConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// UsernamePolicyConfigMultiError, or nil if none found. +func (m *UsernamePolicyConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *UsernamePolicyConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for ValidEmail + + // no validation rules for VerifyEmail + + if all { + switch v := interface{}(m.GetVerifyEmailGracePeriod()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, UsernamePolicyConfigValidationError{ + field: "VerifyEmailGracePeriod", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, UsernamePolicyConfigValidationError{ + field: "VerifyEmailGracePeriod", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetVerifyEmailGracePeriod()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return UsernamePolicyConfigValidationError{ + field: "VerifyEmailGracePeriod", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if len(errors) > 0 { + return UsernamePolicyConfigMultiError(errors) + } + + return nil +} + +// UsernamePolicyConfigMultiError is an error wrapping multiple validation +// errors returned by UsernamePolicyConfig.ValidateAll() if the designated +// constraints aren't met. +type UsernamePolicyConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m UsernamePolicyConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m UsernamePolicyConfigMultiError) AllErrors() []error { return m } + +// UsernamePolicyConfigValidationError is the validation error returned by +// UsernamePolicyConfig.Validate if the designated constraints aren't met. +type UsernamePolicyConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e UsernamePolicyConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e UsernamePolicyConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e UsernamePolicyConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e UsernamePolicyConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e UsernamePolicyConfigValidationError) ErrorName() string { + return "UsernamePolicyConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e UsernamePolicyConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sUsernamePolicyConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = UsernamePolicyConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = UsernamePolicyConfigValidationError{} + +// Validate checks the field values on ApplicationAgentCredentialConfig with +// the rules defined in the proto definition for this message. If any rules +// are violated, the first error encountered is returned, or nil if there are +// no violations. +func (m *ApplicationAgentCredentialConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ApplicationAgentCredentialConfig with +// the rules defined in the proto definition for this message. If any rules +// are violated, the result is a list of violation errors wrapped in +// ApplicationAgentCredentialConfigMultiError, or nil if none found. +func (m *ApplicationAgentCredentialConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *ApplicationAgentCredentialConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Kid + + // no validation rules for KeyFormat + + // no validation rules for OriginalKid + + if all { + switch v := interface{}(m.GetExpireTime()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ApplicationAgentCredentialConfigValidationError{ + field: "ExpireTime", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ApplicationAgentCredentialConfigValidationError{ + field: "ExpireTime", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetExpireTime()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ApplicationAgentCredentialConfigValidationError{ + field: "ExpireTime", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if len(errors) > 0 { + return ApplicationAgentCredentialConfigMultiError(errors) + } + + return nil +} + +// ApplicationAgentCredentialConfigMultiError is an error wrapping multiple +// validation errors returned by +// ApplicationAgentCredentialConfig.ValidateAll() if the designated +// constraints aren't met. +type ApplicationAgentCredentialConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ApplicationAgentCredentialConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ApplicationAgentCredentialConfigMultiError) AllErrors() []error { return m } + +// ApplicationAgentCredentialConfigValidationError is the validation error +// returned by ApplicationAgentCredentialConfig.Validate if the designated +// constraints aren't met. +type ApplicationAgentCredentialConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ApplicationAgentCredentialConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ApplicationAgentCredentialConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ApplicationAgentCredentialConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ApplicationAgentCredentialConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ApplicationAgentCredentialConfigValidationError) ErrorName() string { + return "ApplicationAgentCredentialConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e ApplicationAgentCredentialConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sApplicationAgentCredentialConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ApplicationAgentCredentialConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ApplicationAgentCredentialConfigValidationError{} + +// Validate checks the field values on ServiceAccountCredentialConfig with the +// rules defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *ServiceAccountCredentialConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ServiceAccountCredentialConfig with +// the rules defined in the proto definition for this message. If any rules +// are violated, the result is a list of violation errors wrapped in +// ServiceAccountCredentialConfigMultiError, or nil if none found. +func (m *ServiceAccountCredentialConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *ServiceAccountCredentialConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Kid + + // no validation rules for KeyFormat + + // no validation rules for OriginalKid + + if all { + switch v := interface{}(m.GetExpireTime()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ServiceAccountCredentialConfigValidationError{ + field: "ExpireTime", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ServiceAccountCredentialConfigValidationError{ + field: "ExpireTime", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetExpireTime()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ServiceAccountCredentialConfigValidationError{ + field: "ExpireTime", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if len(errors) > 0 { + return ServiceAccountCredentialConfigMultiError(errors) + } + + return nil +} + +// ServiceAccountCredentialConfigMultiError is an error wrapping multiple +// validation errors returned by ServiceAccountCredentialConfig.ValidateAll() +// if the designated constraints aren't met. +type ServiceAccountCredentialConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ServiceAccountCredentialConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ServiceAccountCredentialConfigMultiError) AllErrors() []error { return m } + +// ServiceAccountCredentialConfigValidationError is the validation error +// returned by ServiceAccountCredentialConfig.Validate if the designated +// constraints aren't met. +type ServiceAccountCredentialConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ServiceAccountCredentialConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ServiceAccountCredentialConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ServiceAccountCredentialConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ServiceAccountCredentialConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ServiceAccountCredentialConfigValidationError) ErrorName() string { + return "ServiceAccountCredentialConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e ServiceAccountCredentialConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sServiceAccountCredentialConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ServiceAccountCredentialConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ServiceAccountCredentialConfigValidationError{} + +// Validate checks the field values on AuthFlowConfig with the rules defined in +// the proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *AuthFlowConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on AuthFlowConfig with the rules defined +// in the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in AuthFlowConfigMultiError, +// or nil if none found. +func (m *AuthFlowConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *AuthFlowConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for SourceFormat + + // no validation rules for Source + + if len(errors) > 0 { + return AuthFlowConfigMultiError(errors) + } + + return nil +} + +// AuthFlowConfigMultiError is an error wrapping multiple validation errors +// returned by AuthFlowConfig.ValidateAll() if the designated constraints +// aren't met. +type AuthFlowConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m AuthFlowConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m AuthFlowConfigMultiError) AllErrors() []error { return m } + +// AuthFlowConfigValidationError is the validation error returned by +// AuthFlowConfig.Validate if the designated constraints aren't met. +type AuthFlowConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e AuthFlowConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AuthFlowConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AuthFlowConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e AuthFlowConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e AuthFlowConfigValidationError) ErrorName() string { return "AuthFlowConfigValidationError" } + +// Error satisfies the builtin error interface +func (e AuthFlowConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sAuthFlowConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = AuthFlowConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = AuthFlowConfigValidationError{} + +// Validate checks the field values on EmailServiceConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *EmailServiceConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on EmailServiceConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// EmailServiceConfigMultiError, or nil if none found. +func (m *EmailServiceConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *EmailServiceConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + if all { + switch v := interface{}(m.GetDefaultFromAddress()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "DefaultFromAddress", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "DefaultFromAddress", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetDefaultFromAddress()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailServiceConfigValidationError{ + field: "DefaultFromAddress", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if all { + switch v := interface{}(m.GetInvitationMessage()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "InvitationMessage", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "InvitationMessage", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetInvitationMessage()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailServiceConfigValidationError{ + field: "InvitationMessage", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if all { + switch v := interface{}(m.GetResetPasswordMessage()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "ResetPasswordMessage", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "ResetPasswordMessage", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetResetPasswordMessage()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailServiceConfigValidationError{ + field: "ResetPasswordMessage", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if all { + switch v := interface{}(m.GetVerificationMessage()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "VerificationMessage", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "VerificationMessage", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetVerificationMessage()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailServiceConfigValidationError{ + field: "VerificationMessage", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if all { + switch v := interface{}(m.GetOneTimePasswordMessage()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "OneTimePasswordMessage", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "OneTimePasswordMessage", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetOneTimePasswordMessage()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailServiceConfigValidationError{ + field: "OneTimePasswordMessage", + reason: "embedded message failed validation", + cause: err, + } + } + } + + switch v := m.Provider.(type) { + case *EmailServiceConfig_Sendgrid: + if v == nil { + err := EmailServiceConfigValidationError{ + field: "Provider", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetSendgrid()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "Sendgrid", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "Sendgrid", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetSendgrid()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailServiceConfigValidationError{ + field: "Sendgrid", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *EmailServiceConfig_Amazon: + if v == nil { + err := EmailServiceConfigValidationError{ + field: "Provider", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetAmazon()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "Amazon", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailServiceConfigValidationError{ + field: "Amazon", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetAmazon()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailServiceConfigValidationError{ + field: "Amazon", + reason: "embedded message failed validation", + cause: err, + } + } + } + + default: + _ = v // ensures v is used + } + + if len(errors) > 0 { + return EmailServiceConfigMultiError(errors) + } + + return nil +} + +// EmailServiceConfigMultiError is an error wrapping multiple validation errors +// returned by EmailServiceConfig.ValidateAll() if the designated constraints +// aren't met. +type EmailServiceConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m EmailServiceConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m EmailServiceConfigMultiError) AllErrors() []error { return m } + +// EmailServiceConfigValidationError is the validation error returned by +// EmailServiceConfig.Validate if the designated constraints aren't met. +type EmailServiceConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e EmailServiceConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e EmailServiceConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e EmailServiceConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e EmailServiceConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e EmailServiceConfigValidationError) ErrorName() string { + return "EmailServiceConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e EmailServiceConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sEmailServiceConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = EmailServiceConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = EmailServiceConfigValidationError{} + +// Validate checks the field values on Email with the rules defined in the +// proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *Email) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on Email with the rules defined in the +// proto definition for this message. If any rules are violated, the result is +// a list of violation errors wrapped in EmailMultiError, or nil if none found. +func (m *Email) ValidateAll() error { + return m.validate(true) +} + +func (m *Email) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Address + + // no validation rules for Name + + if len(errors) > 0 { + return EmailMultiError(errors) + } + + return nil +} + +// EmailMultiError is an error wrapping multiple validation errors returned by +// Email.ValidateAll() if the designated constraints aren't met. +type EmailMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m EmailMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m EmailMultiError) AllErrors() []error { return m } + +// EmailValidationError is the validation error returned by Email.Validate if +// the designated constraints aren't met. +type EmailValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e EmailValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e EmailValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e EmailValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e EmailValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e EmailValidationError) ErrorName() string { return "EmailValidationError" } + +// Error satisfies the builtin error interface +func (e EmailValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sEmail.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = EmailValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = EmailValidationError{} + +// Validate checks the field values on SendGridProviderConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *SendGridProviderConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on SendGridProviderConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// SendGridProviderConfigMultiError, or nil if none found. +func (m *SendGridProviderConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *SendGridProviderConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for ApiKey + + // no validation rules for SandboxMode + + // no validation rules for IpPoolName + + // no validation rules for Host + + if len(errors) > 0 { + return SendGridProviderConfigMultiError(errors) + } + + return nil +} + +// SendGridProviderConfigMultiError is an error wrapping multiple validation +// errors returned by SendGridProviderConfig.ValidateAll() if the designated +// constraints aren't met. +type SendGridProviderConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m SendGridProviderConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m SendGridProviderConfigMultiError) AllErrors() []error { return m } + +// SendGridProviderConfigValidationError is the validation error returned by +// SendGridProviderConfig.Validate if the designated constraints aren't met. +type SendGridProviderConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e SendGridProviderConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e SendGridProviderConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e SendGridProviderConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e SendGridProviderConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e SendGridProviderConfigValidationError) ErrorName() string { + return "SendGridProviderConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e SendGridProviderConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sSendGridProviderConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = SendGridProviderConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = SendGridProviderConfigValidationError{} + +// Validate checks the field values on AmazonSESProviderConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *AmazonSESProviderConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on AmazonSESProviderConfig with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// AmazonSESProviderConfigMultiError, or nil if none found. +func (m *AmazonSESProviderConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *AmazonSESProviderConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for AccessKeyId + + // no validation rules for SecretAccessKey + + // no validation rules for Region + + // no validation rules for ConfigurationSetName + + if all { + switch v := interface{}(m.GetDefaultFromAddress()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AmazonSESProviderConfigValidationError{ + field: "DefaultFromAddress", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AmazonSESProviderConfigValidationError{ + field: "DefaultFromAddress", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetDefaultFromAddress()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return AmazonSESProviderConfigValidationError{ + field: "DefaultFromAddress", + reason: "embedded message failed validation", + cause: err, + } + } + } + + // no validation rules for FeedbackForwardingEmailAddress + + if len(errors) > 0 { + return AmazonSESProviderConfigMultiError(errors) + } + + return nil +} + +// AmazonSESProviderConfigMultiError is an error wrapping multiple validation +// errors returned by AmazonSESProviderConfig.ValidateAll() if the designated +// constraints aren't met. +type AmazonSESProviderConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m AmazonSESProviderConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m AmazonSESProviderConfigMultiError) AllErrors() []error { return m } + +// AmazonSESProviderConfigValidationError is the validation error returned by +// AmazonSESProviderConfig.Validate if the designated constraints aren't met. +type AmazonSESProviderConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e AmazonSESProviderConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AmazonSESProviderConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AmazonSESProviderConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e AmazonSESProviderConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e AmazonSESProviderConfigValidationError) ErrorName() string { + return "AmazonSESProviderConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e AmazonSESProviderConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sAmazonSESProviderConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = AmazonSESProviderConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = AmazonSESProviderConfigValidationError{} + +// Validate checks the field values on EmailDefinition with the rules defined +// in the proto definition for this message. If any rules are violated, the +// first error encountered is returned, or nil if there are no violations. +func (m *EmailDefinition) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on EmailDefinition with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// EmailDefinitionMultiError, or nil if none found. +func (m *EmailDefinition) ValidateAll() error { + return m.validate(true) +} + +func (m *EmailDefinition) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + switch v := m.Email.(type) { + case *EmailDefinition_Template: + if v == nil { + err := EmailDefinitionValidationError{ + field: "Email", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetTemplate()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailDefinitionValidationError{ + field: "Template", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailDefinitionValidationError{ + field: "Template", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetTemplate()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailDefinitionValidationError{ + field: "Template", + reason: "embedded message failed validation", + cause: err, + } + } + } + + default: + _ = v // ensures v is used + } + + if len(errors) > 0 { + return EmailDefinitionMultiError(errors) + } + + return nil +} + +// EmailDefinitionMultiError is an error wrapping multiple validation errors +// returned by EmailDefinition.ValidateAll() if the designated constraints +// aren't met. +type EmailDefinitionMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m EmailDefinitionMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m EmailDefinitionMultiError) AllErrors() []error { return m } + +// EmailDefinitionValidationError is the validation error returned by +// EmailDefinition.Validate if the designated constraints aren't met. +type EmailDefinitionValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e EmailDefinitionValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e EmailDefinitionValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e EmailDefinitionValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e EmailDefinitionValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e EmailDefinitionValidationError) ErrorName() string { return "EmailDefinitionValidationError" } + +// Error satisfies the builtin error interface +func (e EmailDefinitionValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sEmailDefinition.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = EmailDefinitionValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = EmailDefinitionValidationError{} + +// Validate checks the field values on EmailTemplate with the rules defined in +// the proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *EmailTemplate) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on EmailTemplate with the rules defined +// in the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in EmailTemplateMultiError, or +// nil if none found. +func (m *EmailTemplate) ValidateAll() error { + return m.validate(true) +} + +func (m *EmailTemplate) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for TemplateId + + // no validation rules for TemplateVersion + + if all { + switch v := interface{}(m.GetFrom()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: "From", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: "From", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetFrom()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailTemplateValidationError{ + field: "From", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if all { + switch v := interface{}(m.GetReplyTo()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: "ReplyTo", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: "ReplyTo", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetReplyTo()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailTemplateValidationError{ + field: "ReplyTo", + reason: "embedded message failed validation", + cause: err, + } + } + } + + for idx, item := range m.GetTo() { + _, _ = idx, item + + if all { + switch v := interface{}(item).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: fmt.Sprintf("To[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: fmt.Sprintf("To[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(item).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailTemplateValidationError{ + field: fmt.Sprintf("To[%v]", idx), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + for idx, item := range m.GetCc() { + _, _ = idx, item + + if all { + switch v := interface{}(item).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: fmt.Sprintf("Cc[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: fmt.Sprintf("Cc[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(item).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailTemplateValidationError{ + field: fmt.Sprintf("Cc[%v]", idx), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + for idx, item := range m.GetBcc() { + _, _ = idx, item + + if all { + switch v := interface{}(item).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: fmt.Sprintf("Bcc[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: fmt.Sprintf("Bcc[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(item).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailTemplateValidationError{ + field: fmt.Sprintf("Bcc[%v]", idx), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + // no validation rules for Subject + + // no validation rules for Headers + + // no validation rules for CustomArgs + + { + sorted_keys := make([]string, len(m.GetDynamicTemplateValues())) + i := 0 + for key := range m.GetDynamicTemplateValues() { + sorted_keys[i] = key + i++ + } + sort.Slice(sorted_keys, func(i, j int) bool { return sorted_keys[i] < sorted_keys[j] }) + for _, key := range sorted_keys { + val := m.GetDynamicTemplateValues()[key] + _ = val + + // no validation rules for DynamicTemplateValues[key] + + if all { + switch v := interface{}(val).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: fmt.Sprintf("DynamicTemplateValues[%v]", key), + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: fmt.Sprintf("DynamicTemplateValues[%v]", key), + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(val).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailTemplateValidationError{ + field: fmt.Sprintf("DynamicTemplateValues[%v]", key), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + } + + for idx, item := range m.GetAttachments() { + _, _ = idx, item + + if all { + switch v := interface{}(item).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: fmt.Sprintf("Attachments[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, EmailTemplateValidationError{ + field: fmt.Sprintf("Attachments[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(item).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return EmailTemplateValidationError{ + field: fmt.Sprintf("Attachments[%v]", idx), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + // no validation rules for EventPayload + + // no validation rules for TemplateArn + + if len(errors) > 0 { + return EmailTemplateMultiError(errors) + } + + return nil +} + +// EmailTemplateMultiError is an error wrapping multiple validation errors +// returned by EmailTemplate.ValidateAll() if the designated constraints +// aren't met. +type EmailTemplateMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m EmailTemplateMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m EmailTemplateMultiError) AllErrors() []error { return m } + +// EmailTemplateValidationError is the validation error returned by +// EmailTemplate.Validate if the designated constraints aren't met. +type EmailTemplateValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e EmailTemplateValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e EmailTemplateValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e EmailTemplateValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e EmailTemplateValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e EmailTemplateValidationError) ErrorName() string { return "EmailTemplateValidationError" } + +// Error satisfies the builtin error interface +func (e EmailTemplateValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sEmailTemplate.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = EmailTemplateValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = EmailTemplateValidationError{} + +// Validate checks the field values on EmailAttachment with the rules defined +// in the proto definition for this message. If any rules are violated, the +// first error encountered is returned, or nil if there are no violations. +func (m *EmailAttachment) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on EmailAttachment with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// EmailAttachmentMultiError, or nil if none found. +func (m *EmailAttachment) ValidateAll() error { + return m.validate(true) +} + +func (m *EmailAttachment) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for ContentType + + // no validation rules for ContentId + + // no validation rules for Inline + + // no validation rules for FileName + + // no validation rules for Content + + if len(errors) > 0 { + return EmailAttachmentMultiError(errors) + } + + return nil +} + +// EmailAttachmentMultiError is an error wrapping multiple validation errors +// returned by EmailAttachment.ValidateAll() if the designated constraints +// aren't met. +type EmailAttachmentMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m EmailAttachmentMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m EmailAttachmentMultiError) AllErrors() []error { return m } + +// EmailAttachmentValidationError is the validation error returned by +// EmailAttachment.Validate if the designated constraints aren't met. +type EmailAttachmentValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e EmailAttachmentValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e EmailAttachmentValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e EmailAttachmentValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e EmailAttachmentValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e EmailAttachmentValidationError) ErrorName() string { return "EmailAttachmentValidationError" } + +// Error satisfies the builtin error interface +func (e EmailAttachmentValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sEmailAttachment.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = EmailAttachmentValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = EmailAttachmentValidationError{} + +// Validate checks the field values on AuditSinkConfig with the rules defined +// in the proto definition for this message. If any rules are violated, the +// first error encountered is returned, or nil if there are no violations. +func (m *AuditSinkConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on AuditSinkConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// AuditSinkConfigMultiError, or nil if none found. +func (m *AuditSinkConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *AuditSinkConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + switch v := m.Provider.(type) { + case *AuditSinkConfig_Kafka_: + if v == nil { + err := AuditSinkConfigValidationError{ + field: "Provider", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetKafka()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AuditSinkConfigValidationError{ + field: "Kafka", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AuditSinkConfigValidationError{ + field: "Kafka", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetKafka()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return AuditSinkConfigValidationError{ + field: "Kafka", + reason: "embedded message failed validation", + cause: err, + } + } + } + + default: + _ = v // ensures v is used + } + + if len(errors) > 0 { + return AuditSinkConfigMultiError(errors) + } + + return nil +} + +// AuditSinkConfigMultiError is an error wrapping multiple validation errors +// returned by AuditSinkConfig.ValidateAll() if the designated constraints +// aren't met. +type AuditSinkConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m AuditSinkConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m AuditSinkConfigMultiError) AllErrors() []error { return m } + +// AuditSinkConfigValidationError is the validation error returned by +// AuditSinkConfig.Validate if the designated constraints aren't met. +type AuditSinkConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e AuditSinkConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AuditSinkConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AuditSinkConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e AuditSinkConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e AuditSinkConfigValidationError) ErrorName() string { return "AuditSinkConfigValidationError" } + +// Error satisfies the builtin error interface +func (e AuditSinkConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sAuditSinkConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = AuditSinkConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = AuditSinkConfigValidationError{} + +// Validate checks the field values on OAuth2ClientConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *OAuth2ClientConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on OAuth2ClientConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// OAuth2ClientConfigMultiError, or nil if none found. +func (m *OAuth2ClientConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *OAuth2ClientConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for ProviderType + + // no validation rules for ClientId + + // no validation rules for ClientSecret + + // no validation rules for AllowSignup + + // no validation rules for Issuer + + // no validation rules for AuthorizationEndpoint + + // no validation rules for TokenEndpoint + + // no validation rules for DiscoveryUrl + + // no validation rules for UserinfoEndpoint + + // no validation rules for JwksUri + + // no validation rules for ImageUrl + + // no validation rules for Tenant + + // no validation rules for HostedDomain + + // no validation rules for AuthStyle + + // no validation rules for PrivateKeyPem + + // no validation rules for PrivateKeyId + + // no validation rules for TeamId + + if len(errors) > 0 { + return OAuth2ClientConfigMultiError(errors) + } + + return nil +} + +// OAuth2ClientConfigMultiError is an error wrapping multiple validation errors +// returned by OAuth2ClientConfig.ValidateAll() if the designated constraints +// aren't met. +type OAuth2ClientConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m OAuth2ClientConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m OAuth2ClientConfigMultiError) AllErrors() []error { return m } + +// OAuth2ClientConfigValidationError is the validation error returned by +// OAuth2ClientConfig.Validate if the designated constraints aren't met. +type OAuth2ClientConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e OAuth2ClientConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e OAuth2ClientConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e OAuth2ClientConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e OAuth2ClientConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e OAuth2ClientConfigValidationError) ErrorName() string { + return "OAuth2ClientConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e OAuth2ClientConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sOAuth2ClientConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = OAuth2ClientConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = OAuth2ClientConfigValidationError{} + +// Validate checks the field values on OAuth2ProviderConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *OAuth2ProviderConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on OAuth2ProviderConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// OAuth2ProviderConfigMultiError, or nil if none found. +func (m *OAuth2ProviderConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *OAuth2ProviderConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for RequestObjectSigningAlg + + // no validation rules for FrontChannelLoginUri + + // no validation rules for FrontChannelConsentUri + + if len(errors) > 0 { + return OAuth2ProviderConfigMultiError(errors) + } + + return nil +} + +// OAuth2ProviderConfigMultiError is an error wrapping multiple validation +// errors returned by OAuth2ProviderConfig.ValidateAll() if the designated +// constraints aren't met. +type OAuth2ProviderConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m OAuth2ProviderConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m OAuth2ProviderConfigMultiError) AllErrors() []error { return m } + +// OAuth2ProviderConfigValidationError is the validation error returned by +// OAuth2ProviderConfig.Validate if the designated constraints aren't met. +type OAuth2ProviderConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e OAuth2ProviderConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e OAuth2ProviderConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e OAuth2ProviderConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e OAuth2ProviderConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e OAuth2ProviderConfigValidationError) ErrorName() string { + return "OAuth2ProviderConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e OAuth2ProviderConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sOAuth2ProviderConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = OAuth2ProviderConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = OAuth2ProviderConfigValidationError{} + +// Validate checks the field values on OAuth2ApplicationConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *OAuth2ApplicationConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on OAuth2ApplicationConfig with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// OAuth2ApplicationConfigMultiError, or nil if none found. +func (m *OAuth2ApplicationConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *OAuth2ApplicationConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for ClientId + + // no validation rules for DisplayName + + // no validation rules for Description + + // no validation rules for Owner + + // no validation rules for PolicyUri + + // no validation rules for TermsOfServiceUri + + // no validation rules for ClientUri + + // no validation rules for LogoUri + + // no validation rules for UserSupportEmailAddress + + // no validation rules for SubjectType + + // no validation rules for SectorIdentifierUri + + // no validation rules for TokenEndpointAuthMethod + + // no validation rules for TokenEndpointAuthSigningAlg + + // no validation rules for UserinfoSignedResponseAlg + + // no validation rules for Trusted + + if len(errors) > 0 { + return OAuth2ApplicationConfigMultiError(errors) + } + + return nil +} + +// OAuth2ApplicationConfigMultiError is an error wrapping multiple validation +// errors returned by OAuth2ApplicationConfig.ValidateAll() if the designated +// constraints aren't met. +type OAuth2ApplicationConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m OAuth2ApplicationConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m OAuth2ApplicationConfigMultiError) AllErrors() []error { return m } + +// OAuth2ApplicationConfigValidationError is the validation error returned by +// OAuth2ApplicationConfig.Validate if the designated constraints aren't met. +type OAuth2ApplicationConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e OAuth2ApplicationConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e OAuth2ApplicationConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e OAuth2ApplicationConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e OAuth2ApplicationConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e OAuth2ApplicationConfigValidationError) ErrorName() string { + return "OAuth2ApplicationConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e OAuth2ApplicationConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sOAuth2ApplicationConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = OAuth2ApplicationConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = OAuth2ApplicationConfigValidationError{} + +// Validate checks the field values on WebAuthnProviderConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *WebAuthnProviderConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on WebAuthnProviderConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// WebAuthnProviderConfigMultiError, or nil if none found. +func (m *WebAuthnProviderConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *WebAuthnProviderConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for RelyingParties + + // no validation rules for AttestationPreference + + // no validation rules for AuthenticatorAttachment + + // no validation rules for RequireResidentKey + + // no validation rules for UserVerification + + if all { + switch v := interface{}(m.GetRegistrationTimeout()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, WebAuthnProviderConfigValidationError{ + field: "RegistrationTimeout", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, WebAuthnProviderConfigValidationError{ + field: "RegistrationTimeout", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetRegistrationTimeout()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return WebAuthnProviderConfigValidationError{ + field: "RegistrationTimeout", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if all { + switch v := interface{}(m.GetAuthenticationTimeout()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, WebAuthnProviderConfigValidationError{ + field: "AuthenticationTimeout", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, WebAuthnProviderConfigValidationError{ + field: "AuthenticationTimeout", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetAuthenticationTimeout()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return WebAuthnProviderConfigValidationError{ + field: "AuthenticationTimeout", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if len(errors) > 0 { + return WebAuthnProviderConfigMultiError(errors) + } + + return nil +} + +// WebAuthnProviderConfigMultiError is an error wrapping multiple validation +// errors returned by WebAuthnProviderConfig.ValidateAll() if the designated +// constraints aren't met. +type WebAuthnProviderConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m WebAuthnProviderConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m WebAuthnProviderConfigMultiError) AllErrors() []error { return m } + +// WebAuthnProviderConfigValidationError is the validation error returned by +// WebAuthnProviderConfig.Validate if the designated constraints aren't met. +type WebAuthnProviderConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e WebAuthnProviderConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e WebAuthnProviderConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e WebAuthnProviderConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e WebAuthnProviderConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e WebAuthnProviderConfigValidationError) ErrorName() string { + return "WebAuthnProviderConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e WebAuthnProviderConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sWebAuthnProviderConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = WebAuthnProviderConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = WebAuthnProviderConfigValidationError{} + +// Validate checks the field values on AuthorizationPolicyConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *AuthorizationPolicyConfig) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on AuthorizationPolicyConfig with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// AuthorizationPolicyConfigMultiError, or nil if none found. +func (m *AuthorizationPolicyConfig) ValidateAll() error { + return m.validate(true) +} + +func (m *AuthorizationPolicyConfig) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Policy + + // no validation rules for Status + + if len(errors) > 0 { + return AuthorizationPolicyConfigMultiError(errors) + } + + return nil +} + +// AuthorizationPolicyConfigMultiError is an error wrapping multiple validation +// errors returned by AuthorizationPolicyConfig.ValidateAll() if the +// designated constraints aren't met. +type AuthorizationPolicyConfigMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m AuthorizationPolicyConfigMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m AuthorizationPolicyConfigMultiError) AllErrors() []error { return m } + +// AuthorizationPolicyConfigValidationError is the validation error returned by +// AuthorizationPolicyConfig.Validate if the designated constraints aren't met. +type AuthorizationPolicyConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e AuthorizationPolicyConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AuthorizationPolicyConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AuthorizationPolicyConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e AuthorizationPolicyConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e AuthorizationPolicyConfigValidationError) ErrorName() string { + return "AuthorizationPolicyConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e AuthorizationPolicyConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sAuthorizationPolicyConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = AuthorizationPolicyConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = AuthorizationPolicyConfigValidationError{} + +// Validate checks the field values on AssignConfigPermissions with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *AssignConfigPermissions) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on AssignConfigPermissions with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// AssignConfigPermissionsMultiError, or nil if none found. +func (m *AssignConfigPermissions) ValidateAll() error { + return m.validate(true) +} + +func (m *AssignConfigPermissions) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for TargetIdentifier + + // no validation rules for TargetType + + // no validation rules for Role + + // no validation rules for CustomerId + + // no validation rules for ObjectId + + // no validation rules for ObjectType + + if len(errors) > 0 { + return AssignConfigPermissionsMultiError(errors) + } + + return nil +} + +// AssignConfigPermissionsMultiError is an error wrapping multiple validation +// errors returned by AssignConfigPermissions.ValidateAll() if the designated +// constraints aren't met. +type AssignConfigPermissionsMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m AssignConfigPermissionsMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m AssignConfigPermissionsMultiError) AllErrors() []error { return m } + +// AssignConfigPermissionsValidationError is the validation error returned by +// AssignConfigPermissions.Validate if the designated constraints aren't met. +type AssignConfigPermissionsValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e AssignConfigPermissionsValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AssignConfigPermissionsValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AssignConfigPermissionsValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e AssignConfigPermissionsValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e AssignConfigPermissionsValidationError) ErrorName() string { + return "AssignConfigPermissionsValidationError" +} + +// Error satisfies the builtin error interface +func (e AssignConfigPermissionsValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sAssignConfigPermissions.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = AssignConfigPermissionsValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = AssignConfigPermissionsValidationError{} + +// Validate checks the field values on RevokeConfigPermissions with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *RevokeConfigPermissions) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on RevokeConfigPermissions with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// RevokeConfigPermissionsMultiError, or nil if none found. +func (m *RevokeConfigPermissions) ValidateAll() error { + return m.validate(true) +} + +func (m *RevokeConfigPermissions) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for TargetIdentifier + + // no validation rules for TargetType + + // no validation rules for Role + + // no validation rules for CustomerId + + // no validation rules for ObjectId + + // no validation rules for ObjectType + + if len(errors) > 0 { + return RevokeConfigPermissionsMultiError(errors) + } + + return nil +} + +// RevokeConfigPermissionsMultiError is an error wrapping multiple validation +// errors returned by RevokeConfigPermissions.ValidateAll() if the designated +// constraints aren't met. +type RevokeConfigPermissionsMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m RevokeConfigPermissionsMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m RevokeConfigPermissionsMultiError) AllErrors() []error { return m } + +// RevokeConfigPermissionsValidationError is the validation error returned by +// RevokeConfigPermissions.Validate if the designated constraints aren't met. +type RevokeConfigPermissionsValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e RevokeConfigPermissionsValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e RevokeConfigPermissionsValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e RevokeConfigPermissionsValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e RevokeConfigPermissionsValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e RevokeConfigPermissionsValidationError) ErrorName() string { + return "RevokeConfigPermissionsValidationError" +} + +// Error satisfies the builtin error interface +func (e RevokeConfigPermissionsValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sRevokeConfigPermissions.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = RevokeConfigPermissionsValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = RevokeConfigPermissionsValidationError{} + +// Validate checks the field values on CreatedConfig_Location with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *CreatedConfig_Location) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on CreatedConfig_Location with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// CreatedConfig_LocationMultiError, or nil if none found. +func (m *CreatedConfig_Location) ValidateAll() error { + return m.validate(true) +} + +func (m *CreatedConfig_Location) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Id + + // no validation rules for Type + + if len(errors) > 0 { + return CreatedConfig_LocationMultiError(errors) + } + + return nil +} + +// CreatedConfig_LocationMultiError is an error wrapping multiple validation +// errors returned by CreatedConfig_Location.ValidateAll() if the designated +// constraints aren't met. +type CreatedConfig_LocationMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m CreatedConfig_LocationMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m CreatedConfig_LocationMultiError) AllErrors() []error { return m } + +// CreatedConfig_LocationValidationError is the validation error returned by +// CreatedConfig_Location.Validate if the designated constraints aren't met. +type CreatedConfig_LocationValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e CreatedConfig_LocationValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e CreatedConfig_LocationValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e CreatedConfig_LocationValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e CreatedConfig_LocationValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e CreatedConfig_LocationValidationError) ErrorName() string { + return "CreatedConfig_LocationValidationError" +} + +// Error satisfies the builtin error interface +func (e CreatedConfig_LocationValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sCreatedConfig_Location.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = CreatedConfig_LocationValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = CreatedConfig_LocationValidationError{} + +// Validate checks the field values on ReadConfig_NameIdentifier with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *ReadConfig_NameIdentifier) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ReadConfig_NameIdentifier with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ReadConfig_NameIdentifierMultiError, or nil if none found. +func (m *ReadConfig_NameIdentifier) ValidateAll() error { + return m.validate(true) +} + +func (m *ReadConfig_NameIdentifier) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for LocationId + + // no validation rules for Name + + if m.LocationType != nil { + // no validation rules for LocationType + } + + if len(errors) > 0 { + return ReadConfig_NameIdentifierMultiError(errors) + } + + return nil +} + +// ReadConfig_NameIdentifierMultiError is an error wrapping multiple validation +// errors returned by ReadConfig_NameIdentifier.ValidateAll() if the +// designated constraints aren't met. +type ReadConfig_NameIdentifierMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ReadConfig_NameIdentifierMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ReadConfig_NameIdentifierMultiError) AllErrors() []error { return m } + +// ReadConfig_NameIdentifierValidationError is the validation error returned by +// ReadConfig_NameIdentifier.Validate if the designated constraints aren't met. +type ReadConfig_NameIdentifierValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ReadConfig_NameIdentifierValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ReadConfig_NameIdentifierValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ReadConfig_NameIdentifierValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ReadConfig_NameIdentifierValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ReadConfig_NameIdentifierValidationError) ErrorName() string { + return "ReadConfig_NameIdentifierValidationError" +} + +// Error satisfies the builtin error interface +func (e ReadConfig_NameIdentifierValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sReadConfig_NameIdentifier.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ReadConfig_NameIdentifierValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ReadConfig_NameIdentifierValidationError{} + +// Validate checks the field values on AuditSinkConfig_Kafka with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *AuditSinkConfig_Kafka) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on AuditSinkConfig_Kafka with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// AuditSinkConfig_KafkaMultiError, or nil if none found. +func (m *AuditSinkConfig_Kafka) ValidateAll() error { + return m.validate(true) +} + +func (m *AuditSinkConfig_Kafka) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Topic + + // no validation rules for DisableTls + + // no validation rules for TlsSkipVerify + + // no validation rules for Username + + // no validation rules for Password + + if len(errors) > 0 { + return AuditSinkConfig_KafkaMultiError(errors) + } + + return nil +} + +// AuditSinkConfig_KafkaMultiError is an error wrapping multiple validation +// errors returned by AuditSinkConfig_Kafka.ValidateAll() if the designated +// constraints aren't met. +type AuditSinkConfig_KafkaMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m AuditSinkConfig_KafkaMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m AuditSinkConfig_KafkaMultiError) AllErrors() []error { return m } + +// AuditSinkConfig_KafkaValidationError is the validation error returned by +// AuditSinkConfig_Kafka.Validate if the designated constraints aren't met. +type AuditSinkConfig_KafkaValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e AuditSinkConfig_KafkaValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AuditSinkConfig_KafkaValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AuditSinkConfig_KafkaValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e AuditSinkConfig_KafkaValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e AuditSinkConfig_KafkaValidationError) ErrorName() string { + return "AuditSinkConfig_KafkaValidationError" +} + +// Error satisfies the builtin error interface +func (e AuditSinkConfig_KafkaValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sAuditSinkConfig_Kafka.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = AuditSinkConfig_KafkaValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = AuditSinkConfig_KafkaValidationError{} diff --git a/gen/indykite/config/v1beta1/config_management_api.pb.go b/gen/indykite/config/v1beta1/config_management_api.pb.go index a8ee7d6c..b7b243f8 100644 --- a/gen/indykite/config/v1beta1/config_management_api.pb.go +++ b/gen/indykite/config/v1beta1/config_management_api.pb.go @@ -5752,7 +5752,6 @@ type CreateConfigNodeRequest struct { // *CreateConfigNodeRequest_SafrProviderConfig // *CreateConfigNodeRequest_AuthorizationPolicyConfig // *CreateConfigNodeRequest_KnowledgeGraphSchemaConfig - // *CreateConfigNodeRequest_ReadidProviderConfig Config isCreateConfigNodeRequest_Config `protobuf_oneof:"config"` // Database bookmarks to handle Read-after-Write consistency. // Insert one or multiple bookmarks returned from the previous Write operation if needed. @@ -5903,13 +5902,6 @@ func (x *CreateConfigNodeRequest) GetKnowledgeGraphSchemaConfig() *KnowledgeGrap return nil } -func (x *CreateConfigNodeRequest) GetReadidProviderConfig() *ReadIDProviderConfig { - if x, ok := x.GetConfig().(*CreateConfigNodeRequest_ReadidProviderConfig); ok { - return x.ReadidProviderConfig - } - return nil -} - func (x *CreateConfigNodeRequest) GetBookmarks() []string { if x != nil { return x.Bookmarks @@ -5966,10 +5958,6 @@ type CreateConfigNodeRequest_KnowledgeGraphSchemaConfig struct { KnowledgeGraphSchemaConfig *KnowledgeGraphSchemaConfig `protobuf:"bytes,26,opt,name=knowledge_graph_schema_config,json=knowledgeGraphSchemaConfig,proto3,oneof"` } -type CreateConfigNodeRequest_ReadidProviderConfig struct { - ReadidProviderConfig *ReadIDProviderConfig `protobuf:"bytes,27,opt,name=readid_provider_config,json=readidProviderConfig,proto3,oneof"` -} - func (*CreateConfigNodeRequest_AuthFlowConfig) isCreateConfigNodeRequest_Config() {} func (*CreateConfigNodeRequest_EmailServiceConfig) isCreateConfigNodeRequest_Config() {} @@ -5992,8 +5980,6 @@ func (*CreateConfigNodeRequest_AuthorizationPolicyConfig) isCreateConfigNodeRequ func (*CreateConfigNodeRequest_KnowledgeGraphSchemaConfig) isCreateConfigNodeRequest_Config() {} -func (*CreateConfigNodeRequest_ReadidProviderConfig) isCreateConfigNodeRequest_Config() {} - type CreateConfigNodeResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -6248,7 +6234,6 @@ type UpdateConfigNodeRequest struct { // *UpdateConfigNodeRequest_SafrProviderConfig // *UpdateConfigNodeRequest_AuthorizationPolicyConfig // *UpdateConfigNodeRequest_KnowledgeGraphSchemaConfig - // *UpdateConfigNodeRequest_ReadidProviderConfig Config isUpdateConfigNodeRequest_Config `protobuf_oneof:"config"` // Database bookmarks to handle Read-after-Write consistency. // Insert one or multiple bookmarks returned from the previous Write operation if needed. @@ -6399,13 +6384,6 @@ func (x *UpdateConfigNodeRequest) GetKnowledgeGraphSchemaConfig() *KnowledgeGrap return nil } -func (x *UpdateConfigNodeRequest) GetReadidProviderConfig() *ReadIDProviderConfig { - if x, ok := x.GetConfig().(*UpdateConfigNodeRequest_ReadidProviderConfig); ok { - return x.ReadidProviderConfig - } - return nil -} - func (x *UpdateConfigNodeRequest) GetBookmarks() []string { if x != nil { return x.Bookmarks @@ -6462,10 +6440,6 @@ type UpdateConfigNodeRequest_KnowledgeGraphSchemaConfig struct { KnowledgeGraphSchemaConfig *KnowledgeGraphSchemaConfig `protobuf:"bytes,26,opt,name=knowledge_graph_schema_config,json=knowledgeGraphSchemaConfig,proto3,oneof"` } -type UpdateConfigNodeRequest_ReadidProviderConfig struct { - ReadidProviderConfig *ReadIDProviderConfig `protobuf:"bytes,27,opt,name=readid_provider_config,json=readidProviderConfig,proto3,oneof"` -} - func (*UpdateConfigNodeRequest_AuthFlowConfig) isUpdateConfigNodeRequest_Config() {} func (*UpdateConfigNodeRequest_EmailServiceConfig) isUpdateConfigNodeRequest_Config() {} @@ -6488,8 +6462,6 @@ func (*UpdateConfigNodeRequest_AuthorizationPolicyConfig) isUpdateConfigNodeRequ func (*UpdateConfigNodeRequest_KnowledgeGraphSchemaConfig) isUpdateConfigNodeRequest_Config() {} -func (*UpdateConfigNodeRequest_ReadidProviderConfig) isUpdateConfigNodeRequest_Config() {} - // UpdateConfigNodeResponse represents a result of operation request. type UpdateConfigNodeResponse struct { state protoimpl.MessageState @@ -9972,7 +9944,7 @@ var file_indykite_config_v1beta1_config_management_api_proto_rawDesc = []byte{ 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xd3, 0x0d, 0x0a, 0x17, 0x43, 0x72, + 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xe8, 0x0c, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, @@ -10069,228 +10041,345 @@ var file_indykite_config_v1beta1_config_management_api_proto_rawDesc = []byte{ 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x1a, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, 0x70, - 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x6f, 0x0a, - 0x16, 0x72, 0x65, 0x61, 0x64, 0x69, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, - 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x49, 0x44, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, - 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x14, 0x72, 0x65, 0x61, 0x64, 0x69, 0x64, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, - 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, - 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, - 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, - 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, - 0x42, 0x0d, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, - 0xff, 0x02, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, - 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, - 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x45, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, - 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, - 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, - 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x0a, 0x6c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, - 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x42, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, - 0x79, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, - 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, - 0x6b, 0x22, 0xa9, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, - 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, - 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, - 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, - 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, - 0x72, 0x6b, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x1c, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x5e, 0x0a, - 0x16, 0x52, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, + 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, + 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, + 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, + 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, + 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x42, + 0x0d, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x4a, 0x04, + 0x08, 0x1b, 0x10, 0x1c, 0x22, 0xff, 0x02, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, + 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, + 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, + 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x45, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, + 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, + 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, + 0x7d, 0x24, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3b, + 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, + 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, + 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, + 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xa9, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x61, 0x64, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, + 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, + 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, + 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, + 0x72, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, + 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, + 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, + 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x22, 0x5e, 0x0a, 0x16, 0x52, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x0b, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, + 0x64, 0x65, 0x22, 0xc6, 0x0c, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, + 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, + 0x52, 0x02, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x4e, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, + 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, + 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, + 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, + 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5d, 0x0a, 0x10, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x66, 0x6c, + 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x27, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x46, 0x6c, + 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, + 0x10, 0x01, 0x48, 0x00, 0x52, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x69, 0x0a, 0x14, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, + 0x69, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, + 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x12, 0x65, 0x6d, 0x61, + 0x69, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x63, 0x0a, 0x12, 0x73, 0x6d, 0x73, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, + 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x4d, 0x53, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, + 0x48, 0x00, 0x52, 0x10, 0x73, 0x6d, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x60, 0x0a, 0x11, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x73, 0x69, + 0x6e, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x74, 0x53, + 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, + 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x0f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x53, 0x69, 0x6e, 0x6b, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x69, 0x0a, 0x14, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, + 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x12, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, + 0x41, 0x75, 0x74, 0x68, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x12, 0x6f, + 0x61, 0x75, 0x74, 0x68, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x75, 0x0a, 0x18, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x14, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, + 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, + 0x52, 0x16, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x75, 0x0a, 0x18, 0x77, 0x65, 0x62, 0x61, + 0x75, 0x74, 0x68, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x69, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x65, 0x62, 0x41, 0x75, 0x74, 0x68, 0x6e, 0x50, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, + 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x16, 0x77, 0x65, 0x62, 0x61, 0x75, 0x74, 0x68, + 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x78, 0x0a, 0x19, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x65, 0x71, 0x5f, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x16, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, + 0x68, 0x65, 0x6e, 0x74, 0x65, 0x71, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, + 0x52, 0x17, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x65, 0x71, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x69, 0x0a, 0x14, 0x73, 0x61, 0x66, + 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x53, 0x41, 0x46, 0x52, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, + 0x52, 0x12, 0x73, 0x61, 0x66, 0x72, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x7e, 0x0a, 0x1b, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, + 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x19, 0x61, 0x75, 0x74, 0x68, 0x6f, + 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x82, 0x01, 0x0a, 0x1d, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, + 0x67, 0x65, 0x5f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, - 0x65, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x22, 0xb1, 0x0d, - 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, + 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x1a, 0x6b, + 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, + 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, + 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, + 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, + 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4a, 0x04, 0x08, 0x1b, 0x10, 0x1c, 0x22, 0xff, 0x02, 0x0a, 0x18, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, + 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, + 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x45, + 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, + 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, + 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x1d, + 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x12, 0x0a, + 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, + 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xe8, 0x01, + 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, - 0x30, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, + 0x55, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x65, 0x74, 0x61, - 0x67, 0x12, 0x4e, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, - 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x4d, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, - 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x5d, 0x0a, 0x10, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x66, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, - 0x0e, 0x61, 0x75, 0x74, 0x68, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, - 0x69, 0x0a, 0x14, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, - 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, - 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x12, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x63, 0x0a, 0x12, 0x73, 0x6d, - 0x73, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, - 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x53, 0x4d, 0x53, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x10, 0x73, - 0x6d, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, - 0x60, 0x0a, 0x11, 0x61, 0x75, 0x64, 0x69, 0x74, 0x5f, 0x73, 0x69, 0x6e, 0x6b, 0x5f, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x74, 0x53, 0x69, 0x6e, 0x6b, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, - 0x52, 0x0f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x53, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x12, 0x69, 0x0a, 0x14, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, 0x5f, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, - 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x12, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x75, 0x0a, 0x18, - 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, - 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, - 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, - 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x16, 0x70, 0x61, 0x73, - 0x73, 0x77, 0x6f, 0x72, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x12, 0x75, 0x0a, 0x18, 0x77, 0x65, 0x62, 0x61, 0x75, 0x74, 0x68, 0x6e, 0x5f, - 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, - 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, - 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x57, 0x65, 0x62, 0x41, 0x75, 0x74, 0x68, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, - 0x48, 0x00, 0x52, 0x16, 0x77, 0x65, 0x62, 0x61, 0x75, 0x74, 0x68, 0x6e, 0x50, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x78, 0x0a, 0x19, 0x61, 0x75, - 0x74, 0x68, 0x65, 0x6e, 0x74, 0x65, 0x71, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, - 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x65, - 0x71, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, - 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x17, 0x61, 0x75, 0x74, - 0x68, 0x65, 0x6e, 0x74, 0x65, 0x71, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x12, 0x69, 0x0a, 0x14, 0x73, 0x61, 0x66, 0x72, 0x5f, 0x70, 0x72, 0x6f, - 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x17, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x41, 0x46, - 0x52, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, - 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x12, 0x73, 0x61, 0x66, - 0x72, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, - 0x7e, 0x0a, 0x1b, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x19, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, - 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, - 0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, - 0x10, 0x01, 0x48, 0x00, 0x52, 0x19, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, - 0x82, 0x01, 0x0a, 0x1d, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x67, 0x72, - 0x61, 0x70, 0x68, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x23, 0xfa, 0x42, 0x20, + 0x72, 0x1e, 0x10, 0x08, 0x18, 0x12, 0x32, 0x15, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x5d, 0x7b, 0x38, 0x2c, 0x31, 0x38, 0x7d, 0x24, 0xd0, 0x01, 0x01, + 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, + 0x72, 0x6b, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, + 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, + 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, + 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x55, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, + 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, + 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, + 0x68, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, + 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x46, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6e, 0x6f, 0x64, 0x65, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, - 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, - 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x1a, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, - 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x12, 0x6f, 0x0a, 0x16, 0x72, 0x65, 0x61, 0x64, 0x69, 0x64, 0x5f, 0x70, - 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x1b, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, - 0x65, 0x61, 0x64, 0x49, 0x44, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, - 0x14, 0x72, 0x65, 0x61, 0x64, 0x69, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, - 0x6b, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, - 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, - 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, - 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x22, 0xff, 0x02, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, - 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, - 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, - 0x52, 0x02, 0x69, 0x64, 0x12, 0x45, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, - 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, - 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, - 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x5f, 0x62, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x42, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, - 0x62, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x64, 0x42, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, - 0x61, 0x72, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, - 0x61, 0x72, 0x6b, 0x22, 0xe8, 0x01, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, - 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, - 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x55, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x42, 0x23, 0xfa, 0x42, 0x20, 0x72, 0x1e, 0x10, 0x08, 0x18, 0x12, 0x32, 0x15, 0x5e, 0x5b, - 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x5d, 0x7b, 0x38, 0x2c, 0x31, - 0x38, 0x7d, 0x24, 0xd0, 0x01, 0x01, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x40, 0x0a, 0x09, - 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x42, + 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x36, 0x0a, 0x18, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, + 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, + 0x6b, 0x22, 0xda, 0x03, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, + 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x46, 0x0a, 0x0c, 0x61, 0x70, 0x70, 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, + 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x0a, 0x61, + 0x70, 0x70, 0x53, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xfa, 0x42, 0x2a, 0x72, 0x28, 0x10, 0x02, + 0x18, 0x3f, 0x32, 0x22, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x5d, 0x28, 0x3f, 0x3a, 0x5b, 0x2d, 0x61, + 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x30, 0x2c, 0x36, 0x31, 0x7d, 0x5b, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x5d, 0x29, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4e, 0x0a, 0x0c, + 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, + 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, + 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4f, 0x0a, 0x06, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, + 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, + 0x01, 0x02, 0x10, 0x01, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x09, + 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, - 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x55, - 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, - 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0xbc, + 0x02, 0x0a, 0x1c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, - 0x24, 0x52, 0x02, 0x69, 0x64, 0x22, 0x68, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, - 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, - 0x64, 0x65, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x22, - 0x36, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, - 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x62, - 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, - 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xda, 0x03, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x0c, 0x61, 0x70, 0x70, 0x5f, 0x73, - 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, - 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, - 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, - 0x34, 0x7d, 0x24, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x53, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, + 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, + 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, + 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x12, 0x0a, + 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, + 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0x93, 0x01, + 0x0a, 0x19, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, + 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, + 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, + 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, + 0x72, 0x6b, 0x73, 0x22, 0x6e, 0x0a, 0x1a, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, + 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x50, 0x0a, 0x0f, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, 0x5f, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x52, 0x0e, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x22, 0xad, 0x03, 0x0a, 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, + 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, + 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, + 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x65, 0x74, 0x61, + 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x4e, 0x0a, 0x0c, 0x64, + 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, + 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, + 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, + 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x45, 0x0a, 0x06, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x06, + 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, + 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, + 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, + 0x72, 0x6b, 0x73, 0x22, 0xbc, 0x02, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, + 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, + 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, + 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x42, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, + 0x72, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, + 0x72, 0x6b, 0x22, 0xc7, 0x01, 0x0a, 0x1b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, + 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, + 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, + 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, + 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, + 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, + 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, + 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, + 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x3a, 0x0a, 0x1c, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, + 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xec, 0x03, 0x0a, 0x1e, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x52, 0x0a, 0x12, 0x6f, + 0x61, 0x75, 0x74, 0x68, 0x32, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, + 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x10, 0x6f, + 0x61, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xfa, 0x42, 0x2a, 0x72, 0x28, 0x10, 0x02, 0x18, 0x3f, 0x32, 0x22, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x5d, 0x28, 0x3f, 0x3a, 0x5b, 0x2d, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x30, 0x2c, 0x36, @@ -10305,81 +10394,87 @@ var file_indykite_config_v1beta1_config_management_api_proto_rawDesc = []byte{ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x4f, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x6e, 0x12, 0x52, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, - 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, + 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x06, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, + 0x6b, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, + 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, + 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, + 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x81, 0x03, 0x0a, 0x1f, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, + 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, + 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, + 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x3b, 0x0a, + 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, + 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x1b, 0x0a, + 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, + 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0x96, 0x01, 0x0a, 0x1c, + 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, + 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, + 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, - 0x61, 0x72, 0x6b, 0x73, 0x22, 0xbc, 0x02, 0x0a, 0x1c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, - 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, - 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, - 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, - 0x62, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x64, 0x42, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, - 0x61, 0x72, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, - 0x61, 0x72, 0x6b, 0x22, 0x93, 0x01, 0x0a, 0x19, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, - 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, - 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, - 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, - 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, - 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, - 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, - 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, - 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x6e, 0x0a, 0x1a, 0x52, 0x65, 0x61, - 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0f, 0x6f, 0x61, 0x75, 0x74, 0x68, - 0x32, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, - 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x0e, 0x6f, 0x61, 0x75, 0x74, 0x68, - 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x22, 0xad, 0x03, 0x0a, 0x1b, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, - 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, - 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, - 0x30, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x65, 0x74, 0x61, - 0x67, 0x12, 0x4e, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x61, 0x72, 0x6b, 0x73, 0x22, 0x7a, 0x0a, 0x1d, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, + 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x12, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, 0x5f, + 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, + 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x6f, + 0x61, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0xb3, 0x03, 0x0a, 0x1e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, + 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, + 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, + 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x65, 0x74, 0x61, + 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, - 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x4d, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, - 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x45, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, - 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, - 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, - 0x61, 0x72, 0x6b, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, - 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, - 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, - 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0xbc, 0x02, 0x0a, 0x1c, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x4e, 0x0a, 0x0c, 0x64, + 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, + 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, + 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, + 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x06, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, + 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, + 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, + 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, + 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0xbf, 0x02, 0x0a, 0x1f, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, @@ -10397,758 +10492,622 @@ var file_indykite_config_v1beta1_config_management_api_proto_rawDesc = []byte{ 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xc7, 0x01, 0x0a, 0x1b, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, - 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, - 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x30, - 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, - 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, - 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x03, 0x20, - 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, - 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, - 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, - 0x6b, 0x73, 0x22, 0x3a, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, - 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xec, - 0x03, 0x0a, 0x1e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x52, 0x0a, 0x12, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, 0x5f, 0x70, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, - 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, - 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, - 0x34, 0x7d, 0x24, 0x52, 0x10, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, - 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x2d, 0xfa, 0x42, 0x2a, 0x72, 0x28, 0x10, 0x02, 0x18, 0x3f, 0x32, 0x22, - 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x5d, 0x28, 0x3f, 0x3a, 0x5b, 0x2d, 0x61, 0x2d, 0x7a, 0x30, 0x2d, - 0x39, 0x5d, 0x7b, 0x30, 0x2c, 0x36, 0x31, 0x7d, 0x5b, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5d, - 0x29, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4e, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, - 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xfa, 0x42, - 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, 0x69, 0x73, - 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xfa, 0x42, 0x0a, - 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x52, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, - 0x02, 0x10, 0x01, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x09, 0x62, - 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, - 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, - 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, - 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x81, 0x03, - 0x0a, 0x1f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, - 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, - 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, - 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, - 0x62, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x42, 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, - 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, - 0x74, 0x61, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, - 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, - 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, - 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, - 0x6b, 0x22, 0x96, 0x01, 0x0a, 0x1c, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, - 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, - 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, - 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, - 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, + 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xef, 0x01, 0x0a, 0x1e, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, + 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x55, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x23, 0xfa, + 0x42, 0x20, 0x72, 0x1e, 0x10, 0x08, 0x18, 0x12, 0x32, 0x15, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, + 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x5d, 0x7b, 0x38, 0x2c, 0x31, 0x38, 0x7d, 0x24, 0xd0, + 0x01, 0x01, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, + 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, - 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x7a, 0x0a, 0x1d, 0x52, 0x65, - 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x12, 0x6f, - 0x61, 0x75, 0x74, 0x68, 0x32, 0x5f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb3, 0x03, 0x0a, 0x1e, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, + 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x3d, 0x0a, 0x1f, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xfd, 0x02, 0x0a, 0x18, 0x41, 0x73, + 0x73, 0x69, 0x67, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x51, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, + 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, + 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x42, 0x0a, 0x04, 0x72, 0x6f, 0x6c, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xfa, 0x42, 0x2b, 0x72, 0x29, 0x52, 0x0a, + 0x61, 0x6c, 0x6c, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x5f, + 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x52, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, + 0x5f, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x45, 0x0a, + 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, + 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, + 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, + 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x08, 0x6f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, + 0x61, 0x72, 0x6b, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, + 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, + 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, + 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x51, 0x0a, 0x19, 0x41, 0x73, 0x73, + 0x69, 0x67, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xfd, 0x02, 0x0a, + 0x18, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x51, 0x0a, 0x11, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, + 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, + 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x42, 0x0a, 0x04, + 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xfa, 0x42, 0x2b, 0x72, + 0x29, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x0a, 0x61, + 0x6c, 0x6c, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x52, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x65, 0x72, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, + 0x12, 0x45, 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, - 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, - 0x30, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x65, 0x74, 0x61, - 0x67, 0x12, 0x4e, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, - 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x4d, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, - 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x48, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, - 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, - 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, + 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x0a, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, + 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, + 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, + 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, + 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, - 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0xbf, 0x02, 0x0a, - 0x1f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, - 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, + 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x51, 0x0a, 0x19, + 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, + 0x9c, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x08, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, - 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, - 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x42, 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x12, - 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, - 0x61, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xef, - 0x01, 0x0a, 0x1e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, - 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, - 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, - 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x55, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x42, 0x23, 0xfa, 0x42, 0x20, 0x72, 0x1e, 0x10, 0x08, 0x18, 0x12, 0x32, 0x15, - 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x5d, 0x7b, 0x38, - 0x2c, 0x31, 0x38, 0x7d, 0x24, 0xd0, 0x01, 0x01, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x40, - 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, - 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, - 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, - 0x22, 0x3d, 0x0a, 0x1f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, - 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, - 0xfd, 0x02, 0x0a, 0x18, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x51, 0x0a, 0x11, - 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, - 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, - 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x10, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, - 0x42, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xfa, - 0x42, 0x2b, 0x72, 0x29, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x6f, 0x72, - 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x52, 0x0f, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x52, 0x04, 0x72, - 0x6f, 0x6c, 0x65, 0x12, 0x45, 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, - 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, - 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x0a, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x09, 0x6f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, - 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, - 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, - 0x34, 0x7d, 0x24, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x40, 0x0a, - 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, - 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, - 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, - 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, - 0x51, 0x0a, 0x19, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, - 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, - 0x72, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, - 0x72, 0x6b, 0x22, 0xfd, 0x02, 0x0a, 0x18, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x50, 0x65, 0x72, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x51, 0x0a, 0x11, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, - 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, - 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, - 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, - 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, - 0x65, 0x72, 0x12, 0x42, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x2e, 0xfa, 0x42, 0x2b, 0x72, 0x29, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x5f, 0x65, 0x64, 0x69, - 0x74, 0x6f, 0x72, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x52, - 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, - 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x45, 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, - 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, - 0x24, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x12, 0x41, 0x0a, - 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, - 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, - 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, - 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x05, 0x20, - 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, - 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, - 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, - 0x6b, 0x73, 0x22, 0x51, 0x0a, 0x19, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, 0x6f, - 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x6f, 0x6f, - 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0x9c, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x40, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, - 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, - 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, - 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, - 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, - 0x61, 0x72, 0x6b, 0x73, 0x22, 0x83, 0x06, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x4b, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x12, 0x6a, 0x0a, - 0x10, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x5d, 0x0a, 0x0b, 0x69, 0x6e, 0x76, - 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, + 0x7d, 0x24, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x09, + 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, + 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x22, 0x1a, 0x72, 0x18, 0x10, 0x28, 0x32, 0x14, 0x5e, + 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x2d, 0x5d, 0x7b, 0x34, 0x30, + 0x2c, 0x7d, 0x24, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x83, + 0x06, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x05, 0x75, 0x73, + 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x55, 0x73, 0x65, 0x72, + 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x12, 0x6a, 0x0a, 0x10, 0x73, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x3f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x52, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x73, 0x12, 0x5d, 0x0a, 0x0b, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x49, 0x6e, 0x76, 0x69, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x1a, 0x43, 0x0a, 0x0e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x02, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, + 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x6d, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x55, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x2e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x69, 0x6e, 0x76, - 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x43, 0x0a, 0x0e, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, - 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x6d, 0x0a, - 0x04, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x55, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, - 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x1a, 0x8b, 0x01, 0x0a, - 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x55, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, - 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x1a, 0x8d, 0x01, 0x0a, 0x0a, 0x49, - 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, 0x76, - 0x69, 0x74, 0x65, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x55, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, - 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x22, 0x19, 0x0a, 0x17, 0x47, 0x65, - 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x95, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x79, 0x0a, 0x1e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, - 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x68, 0x65, 0x6c, - 0x70, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, - 0x61, 0x70, 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, - 0x52, 0x1b, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, - 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x32, 0xb1, 0x38, - 0x0a, 0x13, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, - 0x6e, 0x74, 0x41, 0x50, 0x49, 0x12, 0x6b, 0x0a, 0x0c, 0x52, 0x65, 0x61, 0x64, 0x43, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, - 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x52, 0x65, 0x61, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, - 0x61, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x12, 0x52, 0x65, 0x61, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, - 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x69, + 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x6f, 0x6c, 0x65, 0x52, + 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x1a, 0x8b, 0x01, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x55, 0x0a, + 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x34, 0x2e, 0x69, 0x6e, 0x64, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x72, + 0x6f, 0x6c, 0x65, 0x73, 0x1a, 0x8d, 0x01, 0x0a, 0x0a, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x55, 0x0a, + 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x72, + 0x6f, 0x6c, 0x65, 0x73, 0x22, 0x19, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, + 0x95, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x48, 0x65, 0x6c, + 0x70, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x79, 0x0a, 0x1e, + 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x68, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, + 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x52, 0x1b, 0x6b, 0x6e, 0x6f, 0x77, + 0x6c, 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x32, 0xb1, 0x38, 0x0a, 0x13, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x50, 0x49, 0x12, + 0x6b, 0x0a, 0x0c, 0x52, 0x65, 0x61, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x12, + 0x2c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x12, + 0x52, 0x65, 0x61, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x12, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, + 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x52, 0x65, 0x61, 0x64, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x14, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, - 0x63, 0x65, 0x12, 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, - 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x12, 0x34, 0x2e, 0x69, + 0x6d, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x12, 0x36, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x53, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, + 0x0a, 0x14, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x12, 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x53, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, - 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x15, 0x4c, 0x69, - 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, - 0x63, 0x65, 0x73, 0x12, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, - 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, - 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x30, 0x01, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x12, - 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x35, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, + 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, + 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x89, + 0x01, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x12, 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, + 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x53, 0x70, 0x61, 0x63, 0x65, 0x12, 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x95, 0x01, 0x0a, 0x1a, 0x52, 0x65, 0x61, 0x64, 0x41, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3a, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, + 0x70, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x3b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, + 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x9b, + 0x01, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x3c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x89, 0x01, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x12, 0x36, 0x2e, 0x69, 0x6e, - 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, - 0x70, 0x61, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x95, 0x01, 0x0a, - 0x1a, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x53, 0x70, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3a, 0x2e, 0x69, 0x6e, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3d, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7a, 0x0a, 0x11, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x0f, 0x52, 0x65, 0x61, 0x64, + 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x9b, 0x01, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, - 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x3d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, - 0x70, 0x61, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x7a, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, - 0x0a, 0x0f, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, - 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, - 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x79, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, - 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, - 0x7a, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7a, 0x0a, 0x11, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x12, 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x34, 0x2e, 0x69, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, - 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x15, 0x4c, 0x69, - 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x73, 0x12, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, - 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, 0x6e, 0x64, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x79, + 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, + 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, + 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x7a, 0x0a, 0x11, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, + 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7a, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x30, 0x01, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, - 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x89, 0x01, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x2e, 0x69, 0x6e, - 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xad, 0x01, 0x0a, - 0x22, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x61, 0x6c, 0x12, 0x42, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, - 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x43, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa1, 0x01, 0x0a, - 0x1e, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, - 0x3e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, - 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x3f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, - 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0xa7, 0x01, 0x0a, 0x20, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, - 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x40, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, + 0x0a, 0x14, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x35, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, + 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x89, + 0x01, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xad, 0x01, 0x0a, 0x22, 0x52, 0x65, 0x67, 0x69, 0x73, + 0x74, 0x65, 0x72, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x42, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, + 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x43, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, + 0x73, 0x74, 0x65, 0x72, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa1, 0x01, 0x0a, 0x1e, 0x52, 0x65, 0x61, 0x64, 0x41, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, + 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x3e, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, - 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, + 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa7, 0x01, 0x0a, 0x20, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, + 0x40, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x41, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, - 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x7d, 0x0a, 0x12, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, - 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x12, 0x52, 0x65, + 0x61, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, + 0x65, 0x61, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x83, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x83, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa7, 0x01, 0x0a, 0x20, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, + 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x40, 0x2e, 0x69, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x53, 0x65, 0x72, + 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x9b, 0x01, 0x0a, 0x1c, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, + 0x12, 0x3c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa7, 0x01, 0x0a, 0x20, - 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x72, + 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0xa1, 0x01, + 0x0a, 0x1e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, - 0x12, 0x40, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, - 0x74, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x67, - 0x69, 0x73, 0x74, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x9b, 0x01, 0x0a, 0x1c, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x3c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, - 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, - 0x65, 0x61, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0xa1, 0x01, 0x0a, 0x1e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x3e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, - 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, - 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, - 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x0a, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x61, - 0x6e, 0x74, 0x12, 0x2a, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, - 0x64, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, + 0x12, 0x3e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, + 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x3f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, + 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x6b, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, + 0x74, 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x2d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, + 0x0a, 0x0a, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x2a, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x61, 0x6e, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6a, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, + 0x61, 0x6e, 0x74, 0x73, 0x12, 0x2b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, + 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x2c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, + 0x01, 0x12, 0x6b, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, + 0x74, 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x2d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, + 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, - 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6a, 0x0a, 0x0b, 0x4c, - 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x2b, 0x2e, 0x69, 0x6e, 0x64, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, + 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, + 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x10, 0x52, + 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, + 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, + 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, + 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x6b, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, - 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, - 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x77, 0x0a, 0x10, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, - 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, + 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, + 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, + 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x12, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x12, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x10, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x30, 0x2e, - 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x71, 0x0a, 0x0e, 0x52, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x2e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, - 0x65, 0x61, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, - 0x65, 0x61, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, + 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, - 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, - 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, - 0x64, 0x65, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x73, 0x12, 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, - 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x41, - 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x34, 0x2e, 0x69, + 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x71, 0x0a, 0x0e, + 0x52, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x2e, + 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, + 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x77, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, + 0x6f, 0x64, 0x65, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x30, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, + 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x36, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, + 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, + 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, - 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x12, 0x52, 0x65, 0x61, - 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, - 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, - 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, - 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x12, 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x12, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, + 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, + 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, + 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x34, 0x2e, 0x69, 0x6e, + 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, + 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x12, 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, - 0x01, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, - 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, - 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x41, - 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, - 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x69, 0x6e, 0x64, 0x79, - 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, - 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x86, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, - 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x2e, - 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, - 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, - 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, - 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, - 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, - 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x38, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x17, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, + 0x01, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, + 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x86, 0x01, + 0x0a, 0x15, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x38, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, + 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x41, 0x75, + 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7a, 0x0a, 0x11, 0x41, 0x73, - 0x73, 0x69, 0x67, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x73, 0x73, - 0x69, 0x67, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7a, 0x0a, 0x11, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x2e, 0x69, 0x6e, + 0x6f, 0x6e, 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, - 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x74, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, + 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x69, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, + 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7a, 0x0a, 0x11, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x50, 0x65, + 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x50, 0x65, 0x72, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x7a, 0x0a, 0x11, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x0f, + 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x2f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, + 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x77, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x48, + 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x53, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x12, 0x30, 0x2e, 0x69, - 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, - 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x42, 0x84, 0x02, 0x0a, 0x1b, 0x63, 0x6f, 0x6d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x42, 0x18, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x41, 0x70, 0x69, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4d, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2d, 0x73, 0x64, 0x6b, 0x2d, - 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2f, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x49, - 0x43, 0x58, 0xaa, 0x02, 0x17, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x17, 0x49, - 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5c, 0x56, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xe2, 0x02, 0x23, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x48, 0x65, 0x6c, 0x70, + 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x84, 0x02, 0x0a, 0x1b, + 0x63, 0x6f, 0x6d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x18, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x70, 0x69, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2f, 0x69, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2d, 0x73, 0x64, 0x6b, 0x2d, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, + 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x49, 0x43, 0x58, 0xaa, 0x02, 0x17, 0x49, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x56, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x17, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x19, 0x49, - 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, - 0x3a, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0xe2, 0x02, 0x23, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x19, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -11302,13 +11261,12 @@ var file_indykite_config_v1beta1_config_management_api_proto_goTypes = []interfa (*SAFRProviderConfig)(nil), // 134: indykite.config.v1beta1.SAFRProviderConfig (*AuthorizationPolicyConfig)(nil), // 135: indykite.config.v1beta1.AuthorizationPolicyConfig (*KnowledgeGraphSchemaConfig)(nil), // 136: indykite.config.v1beta1.KnowledgeGraphSchemaConfig - (*ReadIDProviderConfig)(nil), // 137: indykite.config.v1beta1.ReadIDProviderConfig - (*ConfigNode)(nil), // 138: indykite.config.v1beta1.ConfigNode - (*OAuth2ProviderConfig)(nil), // 139: indykite.config.v1beta1.OAuth2ProviderConfig - (*OAuth2Provider)(nil), // 140: indykite.config.v1beta1.OAuth2Provider - (*OAuth2ApplicationConfig)(nil), // 141: indykite.config.v1beta1.OAuth2ApplicationConfig - (*OAuth2Application)(nil), // 142: indykite.config.v1beta1.OAuth2Application - (*KnowledgeGraphSchemaHelpers)(nil), // 143: indykite.config.v1beta1.KnowledgeGraphSchemaHelpers + (*ConfigNode)(nil), // 137: indykite.config.v1beta1.ConfigNode + (*OAuth2ProviderConfig)(nil), // 138: indykite.config.v1beta1.OAuth2ProviderConfig + (*OAuth2Provider)(nil), // 139: indykite.config.v1beta1.OAuth2Provider + (*OAuth2ApplicationConfig)(nil), // 140: indykite.config.v1beta1.OAuth2ApplicationConfig + (*OAuth2Application)(nil), // 141: indykite.config.v1beta1.OAuth2Application + (*KnowledgeGraphSchemaHelpers)(nil), // 142: indykite.config.v1beta1.KnowledgeGraphSchemaHelpers } var file_indykite_config_v1beta1_config_management_api_proto_depIdxs = []int32{ 112, // 0: indykite.config.v1beta1.ReadCustomerResponse.customer:type_name -> indykite.config.v1beta1.Customer @@ -11420,175 +11378,173 @@ var file_indykite_config_v1beta1_config_management_api_proto_depIdxs = []int32{ 134, // 106: indykite.config.v1beta1.CreateConfigNodeRequest.safr_provider_config:type_name -> indykite.config.v1beta1.SAFRProviderConfig 135, // 107: indykite.config.v1beta1.CreateConfigNodeRequest.authorization_policy_config:type_name -> indykite.config.v1beta1.AuthorizationPolicyConfig 136, // 108: indykite.config.v1beta1.CreateConfigNodeRequest.knowledge_graph_schema_config:type_name -> indykite.config.v1beta1.KnowledgeGraphSchemaConfig - 137, // 109: indykite.config.v1beta1.CreateConfigNodeRequest.readid_provider_config:type_name -> indykite.config.v1beta1.ReadIDProviderConfig - 114, // 110: indykite.config.v1beta1.CreateConfigNodeResponse.create_time:type_name -> google.protobuf.Timestamp - 114, // 111: indykite.config.v1beta1.CreateConfigNodeResponse.update_time:type_name -> google.protobuf.Timestamp - 138, // 112: indykite.config.v1beta1.ReadConfigNodeResponse.config_node:type_name -> indykite.config.v1beta1.ConfigNode - 115, // 113: indykite.config.v1beta1.UpdateConfigNodeRequest.etag:type_name -> google.protobuf.StringValue - 115, // 114: indykite.config.v1beta1.UpdateConfigNodeRequest.display_name:type_name -> google.protobuf.StringValue - 115, // 115: indykite.config.v1beta1.UpdateConfigNodeRequest.description:type_name -> google.protobuf.StringValue - 126, // 116: indykite.config.v1beta1.UpdateConfigNodeRequest.auth_flow_config:type_name -> indykite.config.v1beta1.AuthFlowConfig - 127, // 117: indykite.config.v1beta1.UpdateConfigNodeRequest.email_service_config:type_name -> indykite.config.v1beta1.EmailServiceConfig - 128, // 118: indykite.config.v1beta1.UpdateConfigNodeRequest.sms_service_config:type_name -> indykite.config.v1beta1.SMSServiceConfig - 129, // 119: indykite.config.v1beta1.UpdateConfigNodeRequest.audit_sink_config:type_name -> indykite.config.v1beta1.AuditSinkConfig - 130, // 120: indykite.config.v1beta1.UpdateConfigNodeRequest.oauth2_client_config:type_name -> indykite.config.v1beta1.OAuth2ClientConfig - 131, // 121: indykite.config.v1beta1.UpdateConfigNodeRequest.password_provider_config:type_name -> indykite.config.v1beta1.PasswordProviderConfig - 132, // 122: indykite.config.v1beta1.UpdateConfigNodeRequest.webauthn_provider_config:type_name -> indykite.config.v1beta1.WebAuthnProviderConfig - 133, // 123: indykite.config.v1beta1.UpdateConfigNodeRequest.authenteq_provider_config:type_name -> indykite.config.v1beta1.AuthenteqProviderConfig - 134, // 124: indykite.config.v1beta1.UpdateConfigNodeRequest.safr_provider_config:type_name -> indykite.config.v1beta1.SAFRProviderConfig - 135, // 125: indykite.config.v1beta1.UpdateConfigNodeRequest.authorization_policy_config:type_name -> indykite.config.v1beta1.AuthorizationPolicyConfig - 136, // 126: indykite.config.v1beta1.UpdateConfigNodeRequest.knowledge_graph_schema_config:type_name -> indykite.config.v1beta1.KnowledgeGraphSchemaConfig - 137, // 127: indykite.config.v1beta1.UpdateConfigNodeRequest.readid_provider_config:type_name -> indykite.config.v1beta1.ReadIDProviderConfig - 114, // 128: indykite.config.v1beta1.UpdateConfigNodeResponse.create_time:type_name -> google.protobuf.Timestamp - 114, // 129: indykite.config.v1beta1.UpdateConfigNodeResponse.update_time:type_name -> google.protobuf.Timestamp - 115, // 130: indykite.config.v1beta1.DeleteConfigNodeRequest.etag:type_name -> google.protobuf.StringValue - 138, // 131: indykite.config.v1beta1.ListConfigNodeVersionsResponse.config_nodes:type_name -> indykite.config.v1beta1.ConfigNode - 115, // 132: indykite.config.v1beta1.CreateOAuth2ProviderRequest.display_name:type_name -> google.protobuf.StringValue - 115, // 133: indykite.config.v1beta1.CreateOAuth2ProviderRequest.description:type_name -> google.protobuf.StringValue - 139, // 134: indykite.config.v1beta1.CreateOAuth2ProviderRequest.config:type_name -> indykite.config.v1beta1.OAuth2ProviderConfig - 114, // 135: indykite.config.v1beta1.CreateOAuth2ProviderResponse.create_time:type_name -> google.protobuf.Timestamp - 114, // 136: indykite.config.v1beta1.CreateOAuth2ProviderResponse.update_time:type_name -> google.protobuf.Timestamp - 140, // 137: indykite.config.v1beta1.ReadOAuth2ProviderResponse.oauth2_provider:type_name -> indykite.config.v1beta1.OAuth2Provider - 115, // 138: indykite.config.v1beta1.UpdateOAuth2ProviderRequest.etag:type_name -> google.protobuf.StringValue - 115, // 139: indykite.config.v1beta1.UpdateOAuth2ProviderRequest.display_name:type_name -> google.protobuf.StringValue - 115, // 140: indykite.config.v1beta1.UpdateOAuth2ProviderRequest.description:type_name -> google.protobuf.StringValue - 139, // 141: indykite.config.v1beta1.UpdateOAuth2ProviderRequest.config:type_name -> indykite.config.v1beta1.OAuth2ProviderConfig - 114, // 142: indykite.config.v1beta1.UpdateOAuth2ProviderResponse.create_time:type_name -> google.protobuf.Timestamp - 114, // 143: indykite.config.v1beta1.UpdateOAuth2ProviderResponse.update_time:type_name -> google.protobuf.Timestamp - 115, // 144: indykite.config.v1beta1.DeleteOAuth2ProviderRequest.etag:type_name -> google.protobuf.StringValue - 115, // 145: indykite.config.v1beta1.CreateOAuth2ApplicationRequest.display_name:type_name -> google.protobuf.StringValue - 115, // 146: indykite.config.v1beta1.CreateOAuth2ApplicationRequest.description:type_name -> google.protobuf.StringValue - 141, // 147: indykite.config.v1beta1.CreateOAuth2ApplicationRequest.config:type_name -> indykite.config.v1beta1.OAuth2ApplicationConfig - 114, // 148: indykite.config.v1beta1.CreateOAuth2ApplicationResponse.create_time:type_name -> google.protobuf.Timestamp - 114, // 149: indykite.config.v1beta1.CreateOAuth2ApplicationResponse.update_time:type_name -> google.protobuf.Timestamp - 142, // 150: indykite.config.v1beta1.ReadOAuth2ApplicationResponse.oauth2_application:type_name -> indykite.config.v1beta1.OAuth2Application - 115, // 151: indykite.config.v1beta1.UpdateOAuth2ApplicationRequest.etag:type_name -> google.protobuf.StringValue - 115, // 152: indykite.config.v1beta1.UpdateOAuth2ApplicationRequest.display_name:type_name -> google.protobuf.StringValue - 115, // 153: indykite.config.v1beta1.UpdateOAuth2ApplicationRequest.description:type_name -> google.protobuf.StringValue - 141, // 154: indykite.config.v1beta1.UpdateOAuth2ApplicationRequest.config:type_name -> indykite.config.v1beta1.OAuth2ApplicationConfig - 114, // 155: indykite.config.v1beta1.UpdateOAuth2ApplicationResponse.create_time:type_name -> google.protobuf.Timestamp - 114, // 156: indykite.config.v1beta1.UpdateOAuth2ApplicationResponse.update_time:type_name -> google.protobuf.Timestamp - 115, // 157: indykite.config.v1beta1.DeleteOAuth2ApplicationRequest.etag:type_name -> google.protobuf.StringValue - 109, // 158: indykite.config.v1beta1.ListPermissionsResponse.users:type_name -> indykite.config.v1beta1.ListPermissionsResponse.User - 110, // 159: indykite.config.v1beta1.ListPermissionsResponse.service_accounts:type_name -> indykite.config.v1beta1.ListPermissionsResponse.ServiceAccount - 111, // 160: indykite.config.v1beta1.ListPermissionsResponse.invitations:type_name -> indykite.config.v1beta1.ListPermissionsResponse.Invitation - 143, // 161: indykite.config.v1beta1.GetSchemaHelpersResponse.knowledge_graph_schema_helpers:type_name -> indykite.config.v1beta1.KnowledgeGraphSchemaHelpers - 108, // 162: indykite.config.v1beta1.ListPermissionsResponse.User.roles:type_name -> indykite.config.v1beta1.ListPermissionsResponse.PermissionRole - 108, // 163: indykite.config.v1beta1.ListPermissionsResponse.ServiceAccount.roles:type_name -> indykite.config.v1beta1.ListPermissionsResponse.PermissionRole - 108, // 164: indykite.config.v1beta1.ListPermissionsResponse.Invitation.roles:type_name -> indykite.config.v1beta1.ListPermissionsResponse.PermissionRole - 0, // 165: indykite.config.v1beta1.ConfigManagementAPI.ReadCustomer:input_type -> indykite.config.v1beta1.ReadCustomerRequest - 2, // 166: indykite.config.v1beta1.ConfigManagementAPI.ReadCustomerConfig:input_type -> indykite.config.v1beta1.ReadCustomerConfigRequest - 4, // 167: indykite.config.v1beta1.ConfigManagementAPI.UpdateCustomerConfig:input_type -> indykite.config.v1beta1.UpdateCustomerConfigRequest - 6, // 168: indykite.config.v1beta1.ConfigManagementAPI.CreateApplicationSpace:input_type -> indykite.config.v1beta1.CreateApplicationSpaceRequest - 8, // 169: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationSpace:input_type -> indykite.config.v1beta1.ReadApplicationSpaceRequest - 10, // 170: indykite.config.v1beta1.ConfigManagementAPI.ListApplicationSpaces:input_type -> indykite.config.v1beta1.ListApplicationSpacesRequest - 12, // 171: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplicationSpace:input_type -> indykite.config.v1beta1.UpdateApplicationSpaceRequest - 14, // 172: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplicationSpace:input_type -> indykite.config.v1beta1.DeleteApplicationSpaceRequest - 16, // 173: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationSpaceConfig:input_type -> indykite.config.v1beta1.ReadApplicationSpaceConfigRequest - 18, // 174: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplicationSpaceConfig:input_type -> indykite.config.v1beta1.UpdateApplicationSpaceConfigRequest - 20, // 175: indykite.config.v1beta1.ConfigManagementAPI.CreateApplication:input_type -> indykite.config.v1beta1.CreateApplicationRequest - 22, // 176: indykite.config.v1beta1.ConfigManagementAPI.ReadApplication:input_type -> indykite.config.v1beta1.ReadApplicationRequest - 24, // 177: indykite.config.v1beta1.ConfigManagementAPI.ListApplications:input_type -> indykite.config.v1beta1.ListApplicationsRequest - 26, // 178: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplication:input_type -> indykite.config.v1beta1.UpdateApplicationRequest - 28, // 179: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplication:input_type -> indykite.config.v1beta1.DeleteApplicationRequest - 30, // 180: indykite.config.v1beta1.ConfigManagementAPI.CreateApplicationAgent:input_type -> indykite.config.v1beta1.CreateApplicationAgentRequest - 32, // 181: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationAgent:input_type -> indykite.config.v1beta1.ReadApplicationAgentRequest - 34, // 182: indykite.config.v1beta1.ConfigManagementAPI.ListApplicationAgents:input_type -> indykite.config.v1beta1.ListApplicationAgentsRequest - 36, // 183: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplicationAgent:input_type -> indykite.config.v1beta1.UpdateApplicationAgentRequest - 38, // 184: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplicationAgent:input_type -> indykite.config.v1beta1.DeleteApplicationAgentRequest - 40, // 185: indykite.config.v1beta1.ConfigManagementAPI.RegisterApplicationAgentCredential:input_type -> indykite.config.v1beta1.RegisterApplicationAgentCredentialRequest - 42, // 186: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationAgentCredential:input_type -> indykite.config.v1beta1.ReadApplicationAgentCredentialRequest - 44, // 187: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplicationAgentCredential:input_type -> indykite.config.v1beta1.DeleteApplicationAgentCredentialRequest - 46, // 188: indykite.config.v1beta1.ConfigManagementAPI.CreateServiceAccount:input_type -> indykite.config.v1beta1.CreateServiceAccountRequest - 48, // 189: indykite.config.v1beta1.ConfigManagementAPI.ReadServiceAccount:input_type -> indykite.config.v1beta1.ReadServiceAccountRequest - 50, // 190: indykite.config.v1beta1.ConfigManagementAPI.UpdateServiceAccount:input_type -> indykite.config.v1beta1.UpdateServiceAccountRequest - 52, // 191: indykite.config.v1beta1.ConfigManagementAPI.DeleteServiceAccount:input_type -> indykite.config.v1beta1.DeleteServiceAccountRequest - 54, // 192: indykite.config.v1beta1.ConfigManagementAPI.RegisterServiceAccountCredential:input_type -> indykite.config.v1beta1.RegisterServiceAccountCredentialRequest - 56, // 193: indykite.config.v1beta1.ConfigManagementAPI.ReadServiceAccountCredential:input_type -> indykite.config.v1beta1.ReadServiceAccountCredentialRequest - 58, // 194: indykite.config.v1beta1.ConfigManagementAPI.DeleteServiceAccountCredential:input_type -> indykite.config.v1beta1.DeleteServiceAccountCredentialRequest - 60, // 195: indykite.config.v1beta1.ConfigManagementAPI.CreateTenant:input_type -> indykite.config.v1beta1.CreateTenantRequest - 62, // 196: indykite.config.v1beta1.ConfigManagementAPI.ReadTenant:input_type -> indykite.config.v1beta1.ReadTenantRequest - 64, // 197: indykite.config.v1beta1.ConfigManagementAPI.ListTenants:input_type -> indykite.config.v1beta1.ListTenantsRequest - 66, // 198: indykite.config.v1beta1.ConfigManagementAPI.UpdateTenant:input_type -> indykite.config.v1beta1.UpdateTenantRequest - 68, // 199: indykite.config.v1beta1.ConfigManagementAPI.DeleteTenant:input_type -> indykite.config.v1beta1.DeleteTenantRequest - 70, // 200: indykite.config.v1beta1.ConfigManagementAPI.ReadTenantConfig:input_type -> indykite.config.v1beta1.ReadTenantConfigRequest - 72, // 201: indykite.config.v1beta1.ConfigManagementAPI.UpdateTenantConfig:input_type -> indykite.config.v1beta1.UpdateTenantConfigRequest - 74, // 202: indykite.config.v1beta1.ConfigManagementAPI.CreateConfigNode:input_type -> indykite.config.v1beta1.CreateConfigNodeRequest - 76, // 203: indykite.config.v1beta1.ConfigManagementAPI.ReadConfigNode:input_type -> indykite.config.v1beta1.ReadConfigNodeRequest - 78, // 204: indykite.config.v1beta1.ConfigManagementAPI.UpdateConfigNode:input_type -> indykite.config.v1beta1.UpdateConfigNodeRequest - 80, // 205: indykite.config.v1beta1.ConfigManagementAPI.DeleteConfigNode:input_type -> indykite.config.v1beta1.DeleteConfigNodeRequest - 81, // 206: indykite.config.v1beta1.ConfigManagementAPI.ListConfigNodeVersions:input_type -> indykite.config.v1beta1.ListConfigNodeVersionsRequest - 84, // 207: indykite.config.v1beta1.ConfigManagementAPI.CreateOAuth2Provider:input_type -> indykite.config.v1beta1.CreateOAuth2ProviderRequest - 86, // 208: indykite.config.v1beta1.ConfigManagementAPI.ReadOAuth2Provider:input_type -> indykite.config.v1beta1.ReadOAuth2ProviderRequest - 88, // 209: indykite.config.v1beta1.ConfigManagementAPI.UpdateOAuth2Provider:input_type -> indykite.config.v1beta1.UpdateOAuth2ProviderRequest - 90, // 210: indykite.config.v1beta1.ConfigManagementAPI.DeleteOAuth2Provider:input_type -> indykite.config.v1beta1.DeleteOAuth2ProviderRequest - 92, // 211: indykite.config.v1beta1.ConfigManagementAPI.CreateOAuth2Application:input_type -> indykite.config.v1beta1.CreateOAuth2ApplicationRequest - 94, // 212: indykite.config.v1beta1.ConfigManagementAPI.ReadOAuth2Application:input_type -> indykite.config.v1beta1.ReadOAuth2ApplicationRequest - 96, // 213: indykite.config.v1beta1.ConfigManagementAPI.UpdateOAuth2Application:input_type -> indykite.config.v1beta1.UpdateOAuth2ApplicationRequest - 98, // 214: indykite.config.v1beta1.ConfigManagementAPI.DeleteOAuth2Application:input_type -> indykite.config.v1beta1.DeleteOAuth2ApplicationRequest - 100, // 215: indykite.config.v1beta1.ConfigManagementAPI.AssignPermissions:input_type -> indykite.config.v1beta1.AssignPermissionsRequest - 102, // 216: indykite.config.v1beta1.ConfigManagementAPI.RevokePermissions:input_type -> indykite.config.v1beta1.RevokePermissionsRequest - 104, // 217: indykite.config.v1beta1.ConfigManagementAPI.ListPermissions:input_type -> indykite.config.v1beta1.ListPermissionsRequest - 106, // 218: indykite.config.v1beta1.ConfigManagementAPI.GetSchemaHelpers:input_type -> indykite.config.v1beta1.GetSchemaHelpersRequest - 1, // 219: indykite.config.v1beta1.ConfigManagementAPI.ReadCustomer:output_type -> indykite.config.v1beta1.ReadCustomerResponse - 3, // 220: indykite.config.v1beta1.ConfigManagementAPI.ReadCustomerConfig:output_type -> indykite.config.v1beta1.ReadCustomerConfigResponse - 5, // 221: indykite.config.v1beta1.ConfigManagementAPI.UpdateCustomerConfig:output_type -> indykite.config.v1beta1.UpdateCustomerConfigResponse - 7, // 222: indykite.config.v1beta1.ConfigManagementAPI.CreateApplicationSpace:output_type -> indykite.config.v1beta1.CreateApplicationSpaceResponse - 9, // 223: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationSpace:output_type -> indykite.config.v1beta1.ReadApplicationSpaceResponse - 11, // 224: indykite.config.v1beta1.ConfigManagementAPI.ListApplicationSpaces:output_type -> indykite.config.v1beta1.ListApplicationSpacesResponse - 13, // 225: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplicationSpace:output_type -> indykite.config.v1beta1.UpdateApplicationSpaceResponse - 15, // 226: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplicationSpace:output_type -> indykite.config.v1beta1.DeleteApplicationSpaceResponse - 17, // 227: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationSpaceConfig:output_type -> indykite.config.v1beta1.ReadApplicationSpaceConfigResponse - 19, // 228: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplicationSpaceConfig:output_type -> indykite.config.v1beta1.UpdateApplicationSpaceConfigResponse - 21, // 229: indykite.config.v1beta1.ConfigManagementAPI.CreateApplication:output_type -> indykite.config.v1beta1.CreateApplicationResponse - 23, // 230: indykite.config.v1beta1.ConfigManagementAPI.ReadApplication:output_type -> indykite.config.v1beta1.ReadApplicationResponse - 25, // 231: indykite.config.v1beta1.ConfigManagementAPI.ListApplications:output_type -> indykite.config.v1beta1.ListApplicationsResponse - 27, // 232: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplication:output_type -> indykite.config.v1beta1.UpdateApplicationResponse - 29, // 233: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplication:output_type -> indykite.config.v1beta1.DeleteApplicationResponse - 31, // 234: indykite.config.v1beta1.ConfigManagementAPI.CreateApplicationAgent:output_type -> indykite.config.v1beta1.CreateApplicationAgentResponse - 33, // 235: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationAgent:output_type -> indykite.config.v1beta1.ReadApplicationAgentResponse - 35, // 236: indykite.config.v1beta1.ConfigManagementAPI.ListApplicationAgents:output_type -> indykite.config.v1beta1.ListApplicationAgentsResponse - 37, // 237: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplicationAgent:output_type -> indykite.config.v1beta1.UpdateApplicationAgentResponse - 39, // 238: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplicationAgent:output_type -> indykite.config.v1beta1.DeleteApplicationAgentResponse - 41, // 239: indykite.config.v1beta1.ConfigManagementAPI.RegisterApplicationAgentCredential:output_type -> indykite.config.v1beta1.RegisterApplicationAgentCredentialResponse - 43, // 240: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationAgentCredential:output_type -> indykite.config.v1beta1.ReadApplicationAgentCredentialResponse - 45, // 241: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplicationAgentCredential:output_type -> indykite.config.v1beta1.DeleteApplicationAgentCredentialResponse - 47, // 242: indykite.config.v1beta1.ConfigManagementAPI.CreateServiceAccount:output_type -> indykite.config.v1beta1.CreateServiceAccountResponse - 49, // 243: indykite.config.v1beta1.ConfigManagementAPI.ReadServiceAccount:output_type -> indykite.config.v1beta1.ReadServiceAccountResponse - 51, // 244: indykite.config.v1beta1.ConfigManagementAPI.UpdateServiceAccount:output_type -> indykite.config.v1beta1.UpdateServiceAccountResponse - 53, // 245: indykite.config.v1beta1.ConfigManagementAPI.DeleteServiceAccount:output_type -> indykite.config.v1beta1.DeleteServiceAccountResponse - 55, // 246: indykite.config.v1beta1.ConfigManagementAPI.RegisterServiceAccountCredential:output_type -> indykite.config.v1beta1.RegisterServiceAccountCredentialResponse - 57, // 247: indykite.config.v1beta1.ConfigManagementAPI.ReadServiceAccountCredential:output_type -> indykite.config.v1beta1.ReadServiceAccountCredentialResponse - 59, // 248: indykite.config.v1beta1.ConfigManagementAPI.DeleteServiceAccountCredential:output_type -> indykite.config.v1beta1.DeleteServiceAccountCredentialResponse - 61, // 249: indykite.config.v1beta1.ConfigManagementAPI.CreateTenant:output_type -> indykite.config.v1beta1.CreateTenantResponse - 63, // 250: indykite.config.v1beta1.ConfigManagementAPI.ReadTenant:output_type -> indykite.config.v1beta1.ReadTenantResponse - 65, // 251: indykite.config.v1beta1.ConfigManagementAPI.ListTenants:output_type -> indykite.config.v1beta1.ListTenantsResponse - 67, // 252: indykite.config.v1beta1.ConfigManagementAPI.UpdateTenant:output_type -> indykite.config.v1beta1.UpdateTenantResponse - 69, // 253: indykite.config.v1beta1.ConfigManagementAPI.DeleteTenant:output_type -> indykite.config.v1beta1.DeleteTenantResponse - 71, // 254: indykite.config.v1beta1.ConfigManagementAPI.ReadTenantConfig:output_type -> indykite.config.v1beta1.ReadTenantConfigResponse - 73, // 255: indykite.config.v1beta1.ConfigManagementAPI.UpdateTenantConfig:output_type -> indykite.config.v1beta1.UpdateTenantConfigResponse - 75, // 256: indykite.config.v1beta1.ConfigManagementAPI.CreateConfigNode:output_type -> indykite.config.v1beta1.CreateConfigNodeResponse - 77, // 257: indykite.config.v1beta1.ConfigManagementAPI.ReadConfigNode:output_type -> indykite.config.v1beta1.ReadConfigNodeResponse - 79, // 258: indykite.config.v1beta1.ConfigManagementAPI.UpdateConfigNode:output_type -> indykite.config.v1beta1.UpdateConfigNodeResponse - 83, // 259: indykite.config.v1beta1.ConfigManagementAPI.DeleteConfigNode:output_type -> indykite.config.v1beta1.DeleteConfigNodeResponse - 82, // 260: indykite.config.v1beta1.ConfigManagementAPI.ListConfigNodeVersions:output_type -> indykite.config.v1beta1.ListConfigNodeVersionsResponse - 85, // 261: indykite.config.v1beta1.ConfigManagementAPI.CreateOAuth2Provider:output_type -> indykite.config.v1beta1.CreateOAuth2ProviderResponse - 87, // 262: indykite.config.v1beta1.ConfigManagementAPI.ReadOAuth2Provider:output_type -> indykite.config.v1beta1.ReadOAuth2ProviderResponse - 89, // 263: indykite.config.v1beta1.ConfigManagementAPI.UpdateOAuth2Provider:output_type -> indykite.config.v1beta1.UpdateOAuth2ProviderResponse - 91, // 264: indykite.config.v1beta1.ConfigManagementAPI.DeleteOAuth2Provider:output_type -> indykite.config.v1beta1.DeleteOAuth2ProviderResponse - 93, // 265: indykite.config.v1beta1.ConfigManagementAPI.CreateOAuth2Application:output_type -> indykite.config.v1beta1.CreateOAuth2ApplicationResponse - 95, // 266: indykite.config.v1beta1.ConfigManagementAPI.ReadOAuth2Application:output_type -> indykite.config.v1beta1.ReadOAuth2ApplicationResponse - 97, // 267: indykite.config.v1beta1.ConfigManagementAPI.UpdateOAuth2Application:output_type -> indykite.config.v1beta1.UpdateOAuth2ApplicationResponse - 99, // 268: indykite.config.v1beta1.ConfigManagementAPI.DeleteOAuth2Application:output_type -> indykite.config.v1beta1.DeleteOAuth2ApplicationResponse - 101, // 269: indykite.config.v1beta1.ConfigManagementAPI.AssignPermissions:output_type -> indykite.config.v1beta1.AssignPermissionsResponse - 103, // 270: indykite.config.v1beta1.ConfigManagementAPI.RevokePermissions:output_type -> indykite.config.v1beta1.RevokePermissionsResponse - 105, // 271: indykite.config.v1beta1.ConfigManagementAPI.ListPermissions:output_type -> indykite.config.v1beta1.ListPermissionsResponse - 107, // 272: indykite.config.v1beta1.ConfigManagementAPI.GetSchemaHelpers:output_type -> indykite.config.v1beta1.GetSchemaHelpersResponse - 219, // [219:273] is the sub-list for method output_type - 165, // [165:219] is the sub-list for method input_type - 165, // [165:165] is the sub-list for extension type_name - 165, // [165:165] is the sub-list for extension extendee - 0, // [0:165] is the sub-list for field type_name + 114, // 109: indykite.config.v1beta1.CreateConfigNodeResponse.create_time:type_name -> google.protobuf.Timestamp + 114, // 110: indykite.config.v1beta1.CreateConfigNodeResponse.update_time:type_name -> google.protobuf.Timestamp + 137, // 111: indykite.config.v1beta1.ReadConfigNodeResponse.config_node:type_name -> indykite.config.v1beta1.ConfigNode + 115, // 112: indykite.config.v1beta1.UpdateConfigNodeRequest.etag:type_name -> google.protobuf.StringValue + 115, // 113: indykite.config.v1beta1.UpdateConfigNodeRequest.display_name:type_name -> google.protobuf.StringValue + 115, // 114: indykite.config.v1beta1.UpdateConfigNodeRequest.description:type_name -> google.protobuf.StringValue + 126, // 115: indykite.config.v1beta1.UpdateConfigNodeRequest.auth_flow_config:type_name -> indykite.config.v1beta1.AuthFlowConfig + 127, // 116: indykite.config.v1beta1.UpdateConfigNodeRequest.email_service_config:type_name -> indykite.config.v1beta1.EmailServiceConfig + 128, // 117: indykite.config.v1beta1.UpdateConfigNodeRequest.sms_service_config:type_name -> indykite.config.v1beta1.SMSServiceConfig + 129, // 118: indykite.config.v1beta1.UpdateConfigNodeRequest.audit_sink_config:type_name -> indykite.config.v1beta1.AuditSinkConfig + 130, // 119: indykite.config.v1beta1.UpdateConfigNodeRequest.oauth2_client_config:type_name -> indykite.config.v1beta1.OAuth2ClientConfig + 131, // 120: indykite.config.v1beta1.UpdateConfigNodeRequest.password_provider_config:type_name -> indykite.config.v1beta1.PasswordProviderConfig + 132, // 121: indykite.config.v1beta1.UpdateConfigNodeRequest.webauthn_provider_config:type_name -> indykite.config.v1beta1.WebAuthnProviderConfig + 133, // 122: indykite.config.v1beta1.UpdateConfigNodeRequest.authenteq_provider_config:type_name -> indykite.config.v1beta1.AuthenteqProviderConfig + 134, // 123: indykite.config.v1beta1.UpdateConfigNodeRequest.safr_provider_config:type_name -> indykite.config.v1beta1.SAFRProviderConfig + 135, // 124: indykite.config.v1beta1.UpdateConfigNodeRequest.authorization_policy_config:type_name -> indykite.config.v1beta1.AuthorizationPolicyConfig + 136, // 125: indykite.config.v1beta1.UpdateConfigNodeRequest.knowledge_graph_schema_config:type_name -> indykite.config.v1beta1.KnowledgeGraphSchemaConfig + 114, // 126: indykite.config.v1beta1.UpdateConfigNodeResponse.create_time:type_name -> google.protobuf.Timestamp + 114, // 127: indykite.config.v1beta1.UpdateConfigNodeResponse.update_time:type_name -> google.protobuf.Timestamp + 115, // 128: indykite.config.v1beta1.DeleteConfigNodeRequest.etag:type_name -> google.protobuf.StringValue + 137, // 129: indykite.config.v1beta1.ListConfigNodeVersionsResponse.config_nodes:type_name -> indykite.config.v1beta1.ConfigNode + 115, // 130: indykite.config.v1beta1.CreateOAuth2ProviderRequest.display_name:type_name -> google.protobuf.StringValue + 115, // 131: indykite.config.v1beta1.CreateOAuth2ProviderRequest.description:type_name -> google.protobuf.StringValue + 138, // 132: indykite.config.v1beta1.CreateOAuth2ProviderRequest.config:type_name -> indykite.config.v1beta1.OAuth2ProviderConfig + 114, // 133: indykite.config.v1beta1.CreateOAuth2ProviderResponse.create_time:type_name -> google.protobuf.Timestamp + 114, // 134: indykite.config.v1beta1.CreateOAuth2ProviderResponse.update_time:type_name -> google.protobuf.Timestamp + 139, // 135: indykite.config.v1beta1.ReadOAuth2ProviderResponse.oauth2_provider:type_name -> indykite.config.v1beta1.OAuth2Provider + 115, // 136: indykite.config.v1beta1.UpdateOAuth2ProviderRequest.etag:type_name -> google.protobuf.StringValue + 115, // 137: indykite.config.v1beta1.UpdateOAuth2ProviderRequest.display_name:type_name -> google.protobuf.StringValue + 115, // 138: indykite.config.v1beta1.UpdateOAuth2ProviderRequest.description:type_name -> google.protobuf.StringValue + 138, // 139: indykite.config.v1beta1.UpdateOAuth2ProviderRequest.config:type_name -> indykite.config.v1beta1.OAuth2ProviderConfig + 114, // 140: indykite.config.v1beta1.UpdateOAuth2ProviderResponse.create_time:type_name -> google.protobuf.Timestamp + 114, // 141: indykite.config.v1beta1.UpdateOAuth2ProviderResponse.update_time:type_name -> google.protobuf.Timestamp + 115, // 142: indykite.config.v1beta1.DeleteOAuth2ProviderRequest.etag:type_name -> google.protobuf.StringValue + 115, // 143: indykite.config.v1beta1.CreateOAuth2ApplicationRequest.display_name:type_name -> google.protobuf.StringValue + 115, // 144: indykite.config.v1beta1.CreateOAuth2ApplicationRequest.description:type_name -> google.protobuf.StringValue + 140, // 145: indykite.config.v1beta1.CreateOAuth2ApplicationRequest.config:type_name -> indykite.config.v1beta1.OAuth2ApplicationConfig + 114, // 146: indykite.config.v1beta1.CreateOAuth2ApplicationResponse.create_time:type_name -> google.protobuf.Timestamp + 114, // 147: indykite.config.v1beta1.CreateOAuth2ApplicationResponse.update_time:type_name -> google.protobuf.Timestamp + 141, // 148: indykite.config.v1beta1.ReadOAuth2ApplicationResponse.oauth2_application:type_name -> indykite.config.v1beta1.OAuth2Application + 115, // 149: indykite.config.v1beta1.UpdateOAuth2ApplicationRequest.etag:type_name -> google.protobuf.StringValue + 115, // 150: indykite.config.v1beta1.UpdateOAuth2ApplicationRequest.display_name:type_name -> google.protobuf.StringValue + 115, // 151: indykite.config.v1beta1.UpdateOAuth2ApplicationRequest.description:type_name -> google.protobuf.StringValue + 140, // 152: indykite.config.v1beta1.UpdateOAuth2ApplicationRequest.config:type_name -> indykite.config.v1beta1.OAuth2ApplicationConfig + 114, // 153: indykite.config.v1beta1.UpdateOAuth2ApplicationResponse.create_time:type_name -> google.protobuf.Timestamp + 114, // 154: indykite.config.v1beta1.UpdateOAuth2ApplicationResponse.update_time:type_name -> google.protobuf.Timestamp + 115, // 155: indykite.config.v1beta1.DeleteOAuth2ApplicationRequest.etag:type_name -> google.protobuf.StringValue + 109, // 156: indykite.config.v1beta1.ListPermissionsResponse.users:type_name -> indykite.config.v1beta1.ListPermissionsResponse.User + 110, // 157: indykite.config.v1beta1.ListPermissionsResponse.service_accounts:type_name -> indykite.config.v1beta1.ListPermissionsResponse.ServiceAccount + 111, // 158: indykite.config.v1beta1.ListPermissionsResponse.invitations:type_name -> indykite.config.v1beta1.ListPermissionsResponse.Invitation + 142, // 159: indykite.config.v1beta1.GetSchemaHelpersResponse.knowledge_graph_schema_helpers:type_name -> indykite.config.v1beta1.KnowledgeGraphSchemaHelpers + 108, // 160: indykite.config.v1beta1.ListPermissionsResponse.User.roles:type_name -> indykite.config.v1beta1.ListPermissionsResponse.PermissionRole + 108, // 161: indykite.config.v1beta1.ListPermissionsResponse.ServiceAccount.roles:type_name -> indykite.config.v1beta1.ListPermissionsResponse.PermissionRole + 108, // 162: indykite.config.v1beta1.ListPermissionsResponse.Invitation.roles:type_name -> indykite.config.v1beta1.ListPermissionsResponse.PermissionRole + 0, // 163: indykite.config.v1beta1.ConfigManagementAPI.ReadCustomer:input_type -> indykite.config.v1beta1.ReadCustomerRequest + 2, // 164: indykite.config.v1beta1.ConfigManagementAPI.ReadCustomerConfig:input_type -> indykite.config.v1beta1.ReadCustomerConfigRequest + 4, // 165: indykite.config.v1beta1.ConfigManagementAPI.UpdateCustomerConfig:input_type -> indykite.config.v1beta1.UpdateCustomerConfigRequest + 6, // 166: indykite.config.v1beta1.ConfigManagementAPI.CreateApplicationSpace:input_type -> indykite.config.v1beta1.CreateApplicationSpaceRequest + 8, // 167: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationSpace:input_type -> indykite.config.v1beta1.ReadApplicationSpaceRequest + 10, // 168: indykite.config.v1beta1.ConfigManagementAPI.ListApplicationSpaces:input_type -> indykite.config.v1beta1.ListApplicationSpacesRequest + 12, // 169: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplicationSpace:input_type -> indykite.config.v1beta1.UpdateApplicationSpaceRequest + 14, // 170: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplicationSpace:input_type -> indykite.config.v1beta1.DeleteApplicationSpaceRequest + 16, // 171: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationSpaceConfig:input_type -> indykite.config.v1beta1.ReadApplicationSpaceConfigRequest + 18, // 172: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplicationSpaceConfig:input_type -> indykite.config.v1beta1.UpdateApplicationSpaceConfigRequest + 20, // 173: indykite.config.v1beta1.ConfigManagementAPI.CreateApplication:input_type -> indykite.config.v1beta1.CreateApplicationRequest + 22, // 174: indykite.config.v1beta1.ConfigManagementAPI.ReadApplication:input_type -> indykite.config.v1beta1.ReadApplicationRequest + 24, // 175: indykite.config.v1beta1.ConfigManagementAPI.ListApplications:input_type -> indykite.config.v1beta1.ListApplicationsRequest + 26, // 176: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplication:input_type -> indykite.config.v1beta1.UpdateApplicationRequest + 28, // 177: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplication:input_type -> indykite.config.v1beta1.DeleteApplicationRequest + 30, // 178: indykite.config.v1beta1.ConfigManagementAPI.CreateApplicationAgent:input_type -> indykite.config.v1beta1.CreateApplicationAgentRequest + 32, // 179: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationAgent:input_type -> indykite.config.v1beta1.ReadApplicationAgentRequest + 34, // 180: indykite.config.v1beta1.ConfigManagementAPI.ListApplicationAgents:input_type -> indykite.config.v1beta1.ListApplicationAgentsRequest + 36, // 181: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplicationAgent:input_type -> indykite.config.v1beta1.UpdateApplicationAgentRequest + 38, // 182: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplicationAgent:input_type -> indykite.config.v1beta1.DeleteApplicationAgentRequest + 40, // 183: indykite.config.v1beta1.ConfigManagementAPI.RegisterApplicationAgentCredential:input_type -> indykite.config.v1beta1.RegisterApplicationAgentCredentialRequest + 42, // 184: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationAgentCredential:input_type -> indykite.config.v1beta1.ReadApplicationAgentCredentialRequest + 44, // 185: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplicationAgentCredential:input_type -> indykite.config.v1beta1.DeleteApplicationAgentCredentialRequest + 46, // 186: indykite.config.v1beta1.ConfigManagementAPI.CreateServiceAccount:input_type -> indykite.config.v1beta1.CreateServiceAccountRequest + 48, // 187: indykite.config.v1beta1.ConfigManagementAPI.ReadServiceAccount:input_type -> indykite.config.v1beta1.ReadServiceAccountRequest + 50, // 188: indykite.config.v1beta1.ConfigManagementAPI.UpdateServiceAccount:input_type -> indykite.config.v1beta1.UpdateServiceAccountRequest + 52, // 189: indykite.config.v1beta1.ConfigManagementAPI.DeleteServiceAccount:input_type -> indykite.config.v1beta1.DeleteServiceAccountRequest + 54, // 190: indykite.config.v1beta1.ConfigManagementAPI.RegisterServiceAccountCredential:input_type -> indykite.config.v1beta1.RegisterServiceAccountCredentialRequest + 56, // 191: indykite.config.v1beta1.ConfigManagementAPI.ReadServiceAccountCredential:input_type -> indykite.config.v1beta1.ReadServiceAccountCredentialRequest + 58, // 192: indykite.config.v1beta1.ConfigManagementAPI.DeleteServiceAccountCredential:input_type -> indykite.config.v1beta1.DeleteServiceAccountCredentialRequest + 60, // 193: indykite.config.v1beta1.ConfigManagementAPI.CreateTenant:input_type -> indykite.config.v1beta1.CreateTenantRequest + 62, // 194: indykite.config.v1beta1.ConfigManagementAPI.ReadTenant:input_type -> indykite.config.v1beta1.ReadTenantRequest + 64, // 195: indykite.config.v1beta1.ConfigManagementAPI.ListTenants:input_type -> indykite.config.v1beta1.ListTenantsRequest + 66, // 196: indykite.config.v1beta1.ConfigManagementAPI.UpdateTenant:input_type -> indykite.config.v1beta1.UpdateTenantRequest + 68, // 197: indykite.config.v1beta1.ConfigManagementAPI.DeleteTenant:input_type -> indykite.config.v1beta1.DeleteTenantRequest + 70, // 198: indykite.config.v1beta1.ConfigManagementAPI.ReadTenantConfig:input_type -> indykite.config.v1beta1.ReadTenantConfigRequest + 72, // 199: indykite.config.v1beta1.ConfigManagementAPI.UpdateTenantConfig:input_type -> indykite.config.v1beta1.UpdateTenantConfigRequest + 74, // 200: indykite.config.v1beta1.ConfigManagementAPI.CreateConfigNode:input_type -> indykite.config.v1beta1.CreateConfigNodeRequest + 76, // 201: indykite.config.v1beta1.ConfigManagementAPI.ReadConfigNode:input_type -> indykite.config.v1beta1.ReadConfigNodeRequest + 78, // 202: indykite.config.v1beta1.ConfigManagementAPI.UpdateConfigNode:input_type -> indykite.config.v1beta1.UpdateConfigNodeRequest + 80, // 203: indykite.config.v1beta1.ConfigManagementAPI.DeleteConfigNode:input_type -> indykite.config.v1beta1.DeleteConfigNodeRequest + 81, // 204: indykite.config.v1beta1.ConfigManagementAPI.ListConfigNodeVersions:input_type -> indykite.config.v1beta1.ListConfigNodeVersionsRequest + 84, // 205: indykite.config.v1beta1.ConfigManagementAPI.CreateOAuth2Provider:input_type -> indykite.config.v1beta1.CreateOAuth2ProviderRequest + 86, // 206: indykite.config.v1beta1.ConfigManagementAPI.ReadOAuth2Provider:input_type -> indykite.config.v1beta1.ReadOAuth2ProviderRequest + 88, // 207: indykite.config.v1beta1.ConfigManagementAPI.UpdateOAuth2Provider:input_type -> indykite.config.v1beta1.UpdateOAuth2ProviderRequest + 90, // 208: indykite.config.v1beta1.ConfigManagementAPI.DeleteOAuth2Provider:input_type -> indykite.config.v1beta1.DeleteOAuth2ProviderRequest + 92, // 209: indykite.config.v1beta1.ConfigManagementAPI.CreateOAuth2Application:input_type -> indykite.config.v1beta1.CreateOAuth2ApplicationRequest + 94, // 210: indykite.config.v1beta1.ConfigManagementAPI.ReadOAuth2Application:input_type -> indykite.config.v1beta1.ReadOAuth2ApplicationRequest + 96, // 211: indykite.config.v1beta1.ConfigManagementAPI.UpdateOAuth2Application:input_type -> indykite.config.v1beta1.UpdateOAuth2ApplicationRequest + 98, // 212: indykite.config.v1beta1.ConfigManagementAPI.DeleteOAuth2Application:input_type -> indykite.config.v1beta1.DeleteOAuth2ApplicationRequest + 100, // 213: indykite.config.v1beta1.ConfigManagementAPI.AssignPermissions:input_type -> indykite.config.v1beta1.AssignPermissionsRequest + 102, // 214: indykite.config.v1beta1.ConfigManagementAPI.RevokePermissions:input_type -> indykite.config.v1beta1.RevokePermissionsRequest + 104, // 215: indykite.config.v1beta1.ConfigManagementAPI.ListPermissions:input_type -> indykite.config.v1beta1.ListPermissionsRequest + 106, // 216: indykite.config.v1beta1.ConfigManagementAPI.GetSchemaHelpers:input_type -> indykite.config.v1beta1.GetSchemaHelpersRequest + 1, // 217: indykite.config.v1beta1.ConfigManagementAPI.ReadCustomer:output_type -> indykite.config.v1beta1.ReadCustomerResponse + 3, // 218: indykite.config.v1beta1.ConfigManagementAPI.ReadCustomerConfig:output_type -> indykite.config.v1beta1.ReadCustomerConfigResponse + 5, // 219: indykite.config.v1beta1.ConfigManagementAPI.UpdateCustomerConfig:output_type -> indykite.config.v1beta1.UpdateCustomerConfigResponse + 7, // 220: indykite.config.v1beta1.ConfigManagementAPI.CreateApplicationSpace:output_type -> indykite.config.v1beta1.CreateApplicationSpaceResponse + 9, // 221: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationSpace:output_type -> indykite.config.v1beta1.ReadApplicationSpaceResponse + 11, // 222: indykite.config.v1beta1.ConfigManagementAPI.ListApplicationSpaces:output_type -> indykite.config.v1beta1.ListApplicationSpacesResponse + 13, // 223: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplicationSpace:output_type -> indykite.config.v1beta1.UpdateApplicationSpaceResponse + 15, // 224: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplicationSpace:output_type -> indykite.config.v1beta1.DeleteApplicationSpaceResponse + 17, // 225: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationSpaceConfig:output_type -> indykite.config.v1beta1.ReadApplicationSpaceConfigResponse + 19, // 226: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplicationSpaceConfig:output_type -> indykite.config.v1beta1.UpdateApplicationSpaceConfigResponse + 21, // 227: indykite.config.v1beta1.ConfigManagementAPI.CreateApplication:output_type -> indykite.config.v1beta1.CreateApplicationResponse + 23, // 228: indykite.config.v1beta1.ConfigManagementAPI.ReadApplication:output_type -> indykite.config.v1beta1.ReadApplicationResponse + 25, // 229: indykite.config.v1beta1.ConfigManagementAPI.ListApplications:output_type -> indykite.config.v1beta1.ListApplicationsResponse + 27, // 230: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplication:output_type -> indykite.config.v1beta1.UpdateApplicationResponse + 29, // 231: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplication:output_type -> indykite.config.v1beta1.DeleteApplicationResponse + 31, // 232: indykite.config.v1beta1.ConfigManagementAPI.CreateApplicationAgent:output_type -> indykite.config.v1beta1.CreateApplicationAgentResponse + 33, // 233: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationAgent:output_type -> indykite.config.v1beta1.ReadApplicationAgentResponse + 35, // 234: indykite.config.v1beta1.ConfigManagementAPI.ListApplicationAgents:output_type -> indykite.config.v1beta1.ListApplicationAgentsResponse + 37, // 235: indykite.config.v1beta1.ConfigManagementAPI.UpdateApplicationAgent:output_type -> indykite.config.v1beta1.UpdateApplicationAgentResponse + 39, // 236: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplicationAgent:output_type -> indykite.config.v1beta1.DeleteApplicationAgentResponse + 41, // 237: indykite.config.v1beta1.ConfigManagementAPI.RegisterApplicationAgentCredential:output_type -> indykite.config.v1beta1.RegisterApplicationAgentCredentialResponse + 43, // 238: indykite.config.v1beta1.ConfigManagementAPI.ReadApplicationAgentCredential:output_type -> indykite.config.v1beta1.ReadApplicationAgentCredentialResponse + 45, // 239: indykite.config.v1beta1.ConfigManagementAPI.DeleteApplicationAgentCredential:output_type -> indykite.config.v1beta1.DeleteApplicationAgentCredentialResponse + 47, // 240: indykite.config.v1beta1.ConfigManagementAPI.CreateServiceAccount:output_type -> indykite.config.v1beta1.CreateServiceAccountResponse + 49, // 241: indykite.config.v1beta1.ConfigManagementAPI.ReadServiceAccount:output_type -> indykite.config.v1beta1.ReadServiceAccountResponse + 51, // 242: indykite.config.v1beta1.ConfigManagementAPI.UpdateServiceAccount:output_type -> indykite.config.v1beta1.UpdateServiceAccountResponse + 53, // 243: indykite.config.v1beta1.ConfigManagementAPI.DeleteServiceAccount:output_type -> indykite.config.v1beta1.DeleteServiceAccountResponse + 55, // 244: indykite.config.v1beta1.ConfigManagementAPI.RegisterServiceAccountCredential:output_type -> indykite.config.v1beta1.RegisterServiceAccountCredentialResponse + 57, // 245: indykite.config.v1beta1.ConfigManagementAPI.ReadServiceAccountCredential:output_type -> indykite.config.v1beta1.ReadServiceAccountCredentialResponse + 59, // 246: indykite.config.v1beta1.ConfigManagementAPI.DeleteServiceAccountCredential:output_type -> indykite.config.v1beta1.DeleteServiceAccountCredentialResponse + 61, // 247: indykite.config.v1beta1.ConfigManagementAPI.CreateTenant:output_type -> indykite.config.v1beta1.CreateTenantResponse + 63, // 248: indykite.config.v1beta1.ConfigManagementAPI.ReadTenant:output_type -> indykite.config.v1beta1.ReadTenantResponse + 65, // 249: indykite.config.v1beta1.ConfigManagementAPI.ListTenants:output_type -> indykite.config.v1beta1.ListTenantsResponse + 67, // 250: indykite.config.v1beta1.ConfigManagementAPI.UpdateTenant:output_type -> indykite.config.v1beta1.UpdateTenantResponse + 69, // 251: indykite.config.v1beta1.ConfigManagementAPI.DeleteTenant:output_type -> indykite.config.v1beta1.DeleteTenantResponse + 71, // 252: indykite.config.v1beta1.ConfigManagementAPI.ReadTenantConfig:output_type -> indykite.config.v1beta1.ReadTenantConfigResponse + 73, // 253: indykite.config.v1beta1.ConfigManagementAPI.UpdateTenantConfig:output_type -> indykite.config.v1beta1.UpdateTenantConfigResponse + 75, // 254: indykite.config.v1beta1.ConfigManagementAPI.CreateConfigNode:output_type -> indykite.config.v1beta1.CreateConfigNodeResponse + 77, // 255: indykite.config.v1beta1.ConfigManagementAPI.ReadConfigNode:output_type -> indykite.config.v1beta1.ReadConfigNodeResponse + 79, // 256: indykite.config.v1beta1.ConfigManagementAPI.UpdateConfigNode:output_type -> indykite.config.v1beta1.UpdateConfigNodeResponse + 83, // 257: indykite.config.v1beta1.ConfigManagementAPI.DeleteConfigNode:output_type -> indykite.config.v1beta1.DeleteConfigNodeResponse + 82, // 258: indykite.config.v1beta1.ConfigManagementAPI.ListConfigNodeVersions:output_type -> indykite.config.v1beta1.ListConfigNodeVersionsResponse + 85, // 259: indykite.config.v1beta1.ConfigManagementAPI.CreateOAuth2Provider:output_type -> indykite.config.v1beta1.CreateOAuth2ProviderResponse + 87, // 260: indykite.config.v1beta1.ConfigManagementAPI.ReadOAuth2Provider:output_type -> indykite.config.v1beta1.ReadOAuth2ProviderResponse + 89, // 261: indykite.config.v1beta1.ConfigManagementAPI.UpdateOAuth2Provider:output_type -> indykite.config.v1beta1.UpdateOAuth2ProviderResponse + 91, // 262: indykite.config.v1beta1.ConfigManagementAPI.DeleteOAuth2Provider:output_type -> indykite.config.v1beta1.DeleteOAuth2ProviderResponse + 93, // 263: indykite.config.v1beta1.ConfigManagementAPI.CreateOAuth2Application:output_type -> indykite.config.v1beta1.CreateOAuth2ApplicationResponse + 95, // 264: indykite.config.v1beta1.ConfigManagementAPI.ReadOAuth2Application:output_type -> indykite.config.v1beta1.ReadOAuth2ApplicationResponse + 97, // 265: indykite.config.v1beta1.ConfigManagementAPI.UpdateOAuth2Application:output_type -> indykite.config.v1beta1.UpdateOAuth2ApplicationResponse + 99, // 266: indykite.config.v1beta1.ConfigManagementAPI.DeleteOAuth2Application:output_type -> indykite.config.v1beta1.DeleteOAuth2ApplicationResponse + 101, // 267: indykite.config.v1beta1.ConfigManagementAPI.AssignPermissions:output_type -> indykite.config.v1beta1.AssignPermissionsResponse + 103, // 268: indykite.config.v1beta1.ConfigManagementAPI.RevokePermissions:output_type -> indykite.config.v1beta1.RevokePermissionsResponse + 105, // 269: indykite.config.v1beta1.ConfigManagementAPI.ListPermissions:output_type -> indykite.config.v1beta1.ListPermissionsResponse + 107, // 270: indykite.config.v1beta1.ConfigManagementAPI.GetSchemaHelpers:output_type -> indykite.config.v1beta1.GetSchemaHelpersResponse + 217, // [217:271] is the sub-list for method output_type + 163, // [163:217] is the sub-list for method input_type + 163, // [163:163] is the sub-list for extension type_name + 163, // [163:163] is the sub-list for extension extendee + 0, // [0:163] is the sub-list for field type_name } func init() { file_indykite_config_v1beta1_config_management_api_proto_init() } @@ -12987,7 +12943,6 @@ func file_indykite_config_v1beta1_config_management_api_proto_init() { (*CreateConfigNodeRequest_SafrProviderConfig)(nil), (*CreateConfigNodeRequest_AuthorizationPolicyConfig)(nil), (*CreateConfigNodeRequest_KnowledgeGraphSchemaConfig)(nil), - (*CreateConfigNodeRequest_ReadidProviderConfig)(nil), } file_indykite_config_v1beta1_config_management_api_proto_msgTypes[78].OneofWrappers = []interface{}{ (*UpdateConfigNodeRequest_AuthFlowConfig)(nil), @@ -13001,7 +12956,6 @@ func file_indykite_config_v1beta1_config_management_api_proto_init() { (*UpdateConfigNodeRequest_SafrProviderConfig)(nil), (*UpdateConfigNodeRequest_AuthorizationPolicyConfig)(nil), (*UpdateConfigNodeRequest_KnowledgeGraphSchemaConfig)(nil), - (*UpdateConfigNodeRequest_ReadidProviderConfig)(nil), } type x struct{} out := protoimpl.TypeBuilder{ diff --git a/gen/indykite/config/v1beta1/config_management_api.pb.validate.go b/gen/indykite/config/v1beta1/config_management_api.pb.validate.go index 791b6975..351b1287 100644 --- a/gen/indykite/config/v1beta1/config_management_api.pb.validate.go +++ b/gen/indykite/config/v1beta1/config_management_api.pb.validate.go @@ -14475,59 +14475,6 @@ func (m *CreateConfigNodeRequest) validate(all bool) error { } } - case *CreateConfigNodeRequest_ReadidProviderConfig: - if v == nil { - err := CreateConfigNodeRequestValidationError{ - field: "Config", - reason: "oneof value cannot be a typed-nil", - } - if !all { - return err - } - errors = append(errors, err) - } - oneofConfigPresent = true - - if m.GetReadidProviderConfig() == nil { - err := CreateConfigNodeRequestValidationError{ - field: "ReadidProviderConfig", - reason: "value is required", - } - if !all { - return err - } - errors = append(errors, err) - } - - if all { - switch v := interface{}(m.GetReadidProviderConfig()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, CreateConfigNodeRequestValidationError{ - field: "ReadidProviderConfig", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, CreateConfigNodeRequestValidationError{ - field: "ReadidProviderConfig", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetReadidProviderConfig()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return CreateConfigNodeRequestValidationError{ - field: "ReadidProviderConfig", - reason: "embedded message failed validation", - cause: err, - } - } - } - default: _ = v // ensures v is used } @@ -15843,58 +15790,6 @@ func (m *UpdateConfigNodeRequest) validate(all bool) error { } } - case *UpdateConfigNodeRequest_ReadidProviderConfig: - if v == nil { - err := UpdateConfigNodeRequestValidationError{ - field: "Config", - reason: "oneof value cannot be a typed-nil", - } - if !all { - return err - } - errors = append(errors, err) - } - - if m.GetReadidProviderConfig() == nil { - err := UpdateConfigNodeRequestValidationError{ - field: "ReadidProviderConfig", - reason: "value is required", - } - if !all { - return err - } - errors = append(errors, err) - } - - if all { - switch v := interface{}(m.GetReadidProviderConfig()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, UpdateConfigNodeRequestValidationError{ - field: "ReadidProviderConfig", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, UpdateConfigNodeRequestValidationError{ - field: "ReadidProviderConfig", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetReadidProviderConfig()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return UpdateConfigNodeRequestValidationError{ - field: "ReadidProviderConfig", - reason: "embedded message failed validation", - cause: err, - } - } - } - default: _ = v // ensures v is used } diff --git a/gen/indykite/config/v1beta1/model.pb.go b/gen/indykite/config/v1beta1/model.pb.go index 7231bfcf..da1137d7 100644 --- a/gen/indykite/config/v1beta1/model.pb.go +++ b/gen/indykite/config/v1beta1/model.pb.go @@ -793,7 +793,7 @@ func (x AuthorizationPolicyConfig_Status) Number() protoreflect.EnumNumber { // Deprecated: Use AuthorizationPolicyConfig_Status.Descriptor instead. func (AuthorizationPolicyConfig_Status) EnumDescriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{39, 0} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{38, 0} } // UniqueNameIdentifier is an alternative to Globally Unique ID generated by the server. @@ -2395,7 +2395,6 @@ type ConfigNode struct { // *ConfigNode_SafrProviderConfig // *ConfigNode_AuthorizationPolicyConfig // *ConfigNode_KnowledgeGraphSchemaConfig - // *ConfigNode_ReadidProviderConfig Config isConfigNode_Config `protobuf_oneof:"config"` // Optional. If document is versioned, can be set to a specific document version Version int64 `protobuf:"varint,29,opt,name=version,proto3" json:"version,omitempty"` @@ -2608,13 +2607,6 @@ func (x *ConfigNode) GetKnowledgeGraphSchemaConfig() *KnowledgeGraphSchemaConfig return nil } -func (x *ConfigNode) GetReadidProviderConfig() *ReadIDProviderConfig { - if x, ok := x.GetConfig().(*ConfigNode_ReadidProviderConfig); ok { - return x.ReadidProviderConfig - } - return nil -} - func (x *ConfigNode) GetVersion() int64 { if x != nil { return x.Version @@ -2667,10 +2659,6 @@ type ConfigNode_KnowledgeGraphSchemaConfig struct { KnowledgeGraphSchemaConfig *KnowledgeGraphSchemaConfig `protobuf:"bytes,24,opt,name=knowledge_graph_schema_config,json=knowledgeGraphSchemaConfig,proto3,oneof"` } -type ConfigNode_ReadidProviderConfig struct { - ReadidProviderConfig *ReadIDProviderConfig `protobuf:"bytes,25,opt,name=readid_provider_config,json=readidProviderConfig,proto3,oneof"` -} - func (*ConfigNode_AuthFlowConfig) isConfigNode_Config() {} func (*ConfigNode_EmailServiceConfig) isConfigNode_Config() {} @@ -2691,8 +2679,6 @@ func (*ConfigNode_AuthorizationPolicyConfig) isConfigNode_Config() {} func (*ConfigNode_KnowledgeGraphSchemaConfig) isConfigNode_Config() {} -func (*ConfigNode_ReadidProviderConfig) isConfigNode_Config() {} - // OAuth2ClientConfig is a service specific set of parameters type OAuth2ClientConfig struct { state protoimpl.MessageState @@ -3978,94 +3964,6 @@ func (x *AuthenteqProviderConfig) GetHostAddress() string { return "" } -type ReadIDProviderConfig struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Client secret for writer app - SubmitterSecret string `protobuf:"bytes,1,opt,name=submitter_secret,json=submitterSecret,proto3" json:"submitter_secret,omitempty"` - ManagerSecret string `protobuf:"bytes,2,opt,name=manager_secret,json=managerSecret,proto3" json:"manager_secret,omitempty"` - SubmitterPassword string `protobuf:"bytes,3,opt,name=submitter_password,json=submitterPassword,proto3" json:"submitter_password,omitempty"` - HostAddress string `protobuf:"bytes,4,opt,name=host_address,json=hostAddress,proto3" json:"host_address,omitempty"` - PropertyMap map[string]*ReadIDProviderConfig_Property `protobuf:"bytes,5,rep,name=property_map,json=propertyMap,proto3" json:"property_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - UniquePropertyName string `protobuf:"bytes,6,opt,name=unique_property_name,json=uniquePropertyName,proto3" json:"unique_property_name,omitempty"` -} - -func (x *ReadIDProviderConfig) Reset() { - *x = ReadIDProviderConfig{} - if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ReadIDProviderConfig) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ReadIDProviderConfig) ProtoMessage() {} - -func (x *ReadIDProviderConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ReadIDProviderConfig.ProtoReflect.Descriptor instead. -func (*ReadIDProviderConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{22} -} - -func (x *ReadIDProviderConfig) GetSubmitterSecret() string { - if x != nil { - return x.SubmitterSecret - } - return "" -} - -func (x *ReadIDProviderConfig) GetManagerSecret() string { - if x != nil { - return x.ManagerSecret - } - return "" -} - -func (x *ReadIDProviderConfig) GetSubmitterPassword() string { - if x != nil { - return x.SubmitterPassword - } - return "" -} - -func (x *ReadIDProviderConfig) GetHostAddress() string { - if x != nil { - return x.HostAddress - } - return "" -} - -func (x *ReadIDProviderConfig) GetPropertyMap() map[string]*ReadIDProviderConfig_Property { - if x != nil { - return x.PropertyMap - } - return nil -} - -func (x *ReadIDProviderConfig) GetUniquePropertyName() string { - if x != nil { - return x.UniquePropertyName - } - return "" -} - type SAFRProviderConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4084,7 +3982,7 @@ type SAFRProviderConfig struct { func (x *SAFRProviderConfig) Reset() { *x = SAFRProviderConfig{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[23] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4097,7 +3995,7 @@ func (x *SAFRProviderConfig) String() string { func (*SAFRProviderConfig) ProtoMessage() {} func (x *SAFRProviderConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[23] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4110,7 +4008,7 @@ func (x *SAFRProviderConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use SAFRProviderConfig.ProtoReflect.Descriptor instead. func (*SAFRProviderConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{23} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{22} } func (x *SAFRProviderConfig) GetAccountId() string { @@ -4144,7 +4042,7 @@ type SMSServiceConfig struct { func (x *SMSServiceConfig) Reset() { *x = SMSServiceConfig{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[24] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4157,7 +4055,7 @@ func (x *SMSServiceConfig) String() string { func (*SMSServiceConfig) ProtoMessage() {} func (x *SMSServiceConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[24] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4170,7 +4068,7 @@ func (x *SMSServiceConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use SMSServiceConfig.ProtoReflect.Descriptor instead. func (*SMSServiceConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{24} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{23} } type EmailServiceConfig struct { @@ -4197,7 +4095,7 @@ type EmailServiceConfig struct { func (x *EmailServiceConfig) Reset() { *x = EmailServiceConfig{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[25] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4210,7 +4108,7 @@ func (x *EmailServiceConfig) String() string { func (*EmailServiceConfig) ProtoMessage() {} func (x *EmailServiceConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[25] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4223,7 +4121,7 @@ func (x *EmailServiceConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use EmailServiceConfig.ProtoReflect.Descriptor instead. func (*EmailServiceConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{25} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{24} } func (x *EmailServiceConfig) GetDefaultFromAddress() *Email { @@ -4344,7 +4242,7 @@ type Email struct { func (x *Email) Reset() { *x = Email{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[26] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4357,7 +4255,7 @@ func (x *Email) String() string { func (*Email) ProtoMessage() {} func (x *Email) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[26] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4370,7 +4268,7 @@ func (x *Email) ProtoReflect() protoreflect.Message { // Deprecated: Use Email.ProtoReflect.Descriptor instead. func (*Email) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{26} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{25} } func (x *Email) GetAddress() string { @@ -4406,7 +4304,7 @@ type SendGridProviderConfig struct { func (x *SendGridProviderConfig) Reset() { *x = SendGridProviderConfig{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[27] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4419,7 +4317,7 @@ func (x *SendGridProviderConfig) String() string { func (*SendGridProviderConfig) ProtoMessage() {} func (x *SendGridProviderConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[27] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4432,7 +4330,7 @@ func (x *SendGridProviderConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use SendGridProviderConfig.ProtoReflect.Descriptor instead. func (*SendGridProviderConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{27} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{26} } func (x *SendGridProviderConfig) GetApiKey() string { @@ -4481,7 +4379,7 @@ type MailJetProviderConfig struct { func (x *MailJetProviderConfig) Reset() { *x = MailJetProviderConfig{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[28] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4494,7 +4392,7 @@ func (x *MailJetProviderConfig) String() string { func (*MailJetProviderConfig) ProtoMessage() {} func (x *MailJetProviderConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[28] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4507,7 +4405,7 @@ func (x *MailJetProviderConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use MailJetProviderConfig.ProtoReflect.Descriptor instead. func (*MailJetProviderConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{28} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{27} } func (x *MailJetProviderConfig) GetApiKey() string { @@ -4554,7 +4452,7 @@ type MailgunProviderConfig struct { func (x *MailgunProviderConfig) Reset() { *x = MailgunProviderConfig{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[29] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4567,7 +4465,7 @@ func (x *MailgunProviderConfig) String() string { func (*MailgunProviderConfig) ProtoMessage() {} func (x *MailgunProviderConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[29] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4580,7 +4478,7 @@ func (x *MailgunProviderConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use MailgunProviderConfig.ProtoReflect.Descriptor instead. func (*MailgunProviderConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{29} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{28} } func (x *MailgunProviderConfig) GetApiKey() string { @@ -4631,7 +4529,7 @@ type AmazonSESProviderConfig struct { func (x *AmazonSESProviderConfig) Reset() { *x = AmazonSESProviderConfig{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[30] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4644,7 +4542,7 @@ func (x *AmazonSESProviderConfig) String() string { func (*AmazonSESProviderConfig) ProtoMessage() {} func (x *AmazonSESProviderConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[30] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4657,7 +4555,7 @@ func (x *AmazonSESProviderConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use AmazonSESProviderConfig.ProtoReflect.Descriptor instead. func (*AmazonSESProviderConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{30} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{29} } func (x *AmazonSESProviderConfig) GetAccessKeyId() string { @@ -4724,7 +4622,7 @@ type EmailDefinition struct { func (x *EmailDefinition) Reset() { *x = EmailDefinition{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[31] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4737,7 +4635,7 @@ func (x *EmailDefinition) String() string { func (*EmailDefinition) ProtoMessage() {} func (x *EmailDefinition) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[31] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4750,7 +4648,7 @@ func (x *EmailDefinition) ProtoReflect() protoreflect.Message { // Deprecated: Use EmailDefinition.ProtoReflect.Descriptor instead. func (*EmailDefinition) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{31} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{30} } func (m *EmailDefinition) GetEmail() isEmailDefinition_Email { @@ -4816,7 +4714,7 @@ type EmailTemplate struct { func (x *EmailTemplate) Reset() { *x = EmailTemplate{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[32] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4829,7 +4727,7 @@ func (x *EmailTemplate) String() string { func (*EmailTemplate) ProtoMessage() {} func (x *EmailTemplate) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[32] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4842,7 +4740,7 @@ func (x *EmailTemplate) ProtoReflect() protoreflect.Message { // Deprecated: Use EmailTemplate.ProtoReflect.Descriptor instead. func (*EmailTemplate) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{32} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{31} } func (x *EmailTemplate) GetTemplateId() string { @@ -4965,7 +4863,7 @@ type EmailAttachment struct { func (x *EmailAttachment) Reset() { *x = EmailAttachment{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[33] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4978,7 +4876,7 @@ func (x *EmailAttachment) String() string { func (*EmailAttachment) ProtoMessage() {} func (x *EmailAttachment) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[33] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4991,7 +4889,7 @@ func (x *EmailAttachment) ProtoReflect() protoreflect.Message { // Deprecated: Use EmailAttachment.ProtoReflect.Descriptor instead. func (*EmailAttachment) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{33} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{32} } func (x *EmailAttachment) GetContentType() string { @@ -5053,7 +4951,7 @@ type EmailMessage struct { func (x *EmailMessage) Reset() { *x = EmailMessage{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[34] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5066,7 +4964,7 @@ func (x *EmailMessage) String() string { func (*EmailMessage) ProtoMessage() {} func (x *EmailMessage) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[34] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5079,7 +4977,7 @@ func (x *EmailMessage) ProtoReflect() protoreflect.Message { // Deprecated: Use EmailMessage.ProtoReflect.Descriptor instead. func (*EmailMessage) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{34} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{33} } func (x *EmailMessage) GetFrom() *Email { @@ -5202,7 +5100,7 @@ type PasswordProviderConfig struct { func (x *PasswordProviderConfig) Reset() { *x = PasswordProviderConfig{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[35] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5215,7 +5113,7 @@ func (x *PasswordProviderConfig) String() string { func (*PasswordProviderConfig) ProtoMessage() {} func (x *PasswordProviderConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[35] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5228,7 +5126,7 @@ func (x *PasswordProviderConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use PasswordProviderConfig.ProtoReflect.Descriptor instead. func (*PasswordProviderConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{35} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{34} } func (x *PasswordProviderConfig) GetUsernamePolicy() *UsernamePolicy { @@ -5308,7 +5206,7 @@ type UsernamePolicy struct { func (x *UsernamePolicy) Reset() { *x = UsernamePolicy{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[36] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5321,7 +5219,7 @@ func (x *UsernamePolicy) String() string { func (*UsernamePolicy) ProtoMessage() {} func (x *UsernamePolicy) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[36] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5334,7 +5232,7 @@ func (x *UsernamePolicy) ProtoReflect() protoreflect.Message { // Deprecated: Use UsernamePolicy.ProtoReflect.Descriptor instead. func (*UsernamePolicy) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{36} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{35} } func (x *UsernamePolicy) GetAllowedUsernameFormats() []string { @@ -5400,7 +5298,7 @@ type UniquePropertyConstraint struct { func (x *UniquePropertyConstraint) Reset() { *x = UniquePropertyConstraint{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[37] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5413,7 +5311,7 @@ func (x *UniquePropertyConstraint) String() string { func (*UniquePropertyConstraint) ProtoMessage() {} func (x *UniquePropertyConstraint) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[37] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5426,7 +5324,7 @@ func (x *UniquePropertyConstraint) ProtoReflect() protoreflect.Message { // Deprecated: Use UniquePropertyConstraint.ProtoReflect.Descriptor instead. func (*UniquePropertyConstraint) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{37} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{36} } func (x *UniquePropertyConstraint) GetTenantUnique() bool { @@ -5455,7 +5353,7 @@ type PasswordPolicy struct { func (x *PasswordPolicy) Reset() { *x = PasswordPolicy{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[38] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5468,7 +5366,7 @@ func (x *PasswordPolicy) String() string { func (*PasswordPolicy) ProtoMessage() {} func (x *PasswordPolicy) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[38] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5481,7 +5379,7 @@ func (x *PasswordPolicy) ProtoReflect() protoreflect.Message { // Deprecated: Use PasswordPolicy.ProtoReflect.Descriptor instead. func (*PasswordPolicy) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{38} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{37} } func (x *PasswordPolicy) GetTemplate() PasswordPolicyTemplate { @@ -5514,7 +5412,7 @@ type AuthorizationPolicyConfig struct { func (x *AuthorizationPolicyConfig) Reset() { *x = AuthorizationPolicyConfig{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[39] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5527,7 +5425,7 @@ func (x *AuthorizationPolicyConfig) String() string { func (*AuthorizationPolicyConfig) ProtoMessage() {} func (x *AuthorizationPolicyConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[39] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5540,7 +5438,7 @@ func (x *AuthorizationPolicyConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use AuthorizationPolicyConfig.ProtoReflect.Descriptor instead. func (*AuthorizationPolicyConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{39} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{38} } func (x *AuthorizationPolicyConfig) GetPolicy() string { @@ -5575,7 +5473,7 @@ type KnowledgeGraphSchemaConfig struct { func (x *KnowledgeGraphSchemaConfig) Reset() { *x = KnowledgeGraphSchemaConfig{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[40] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5588,7 +5486,7 @@ func (x *KnowledgeGraphSchemaConfig) String() string { func (*KnowledgeGraphSchemaConfig) ProtoMessage() {} func (x *KnowledgeGraphSchemaConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[40] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5601,7 +5499,7 @@ func (x *KnowledgeGraphSchemaConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use KnowledgeGraphSchemaConfig.ProtoReflect.Descriptor instead. func (*KnowledgeGraphSchemaConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{40} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{39} } func (x *KnowledgeGraphSchemaConfig) GetSchema() string { @@ -5623,7 +5521,7 @@ type KnowledgeGraphSchemaHelpers struct { func (x *KnowledgeGraphSchemaHelpers) Reset() { *x = KnowledgeGraphSchemaHelpers{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[41] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5636,7 +5534,7 @@ func (x *KnowledgeGraphSchemaHelpers) String() string { func (*KnowledgeGraphSchemaHelpers) ProtoMessage() {} func (x *KnowledgeGraphSchemaHelpers) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[41] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5649,7 +5547,7 @@ func (x *KnowledgeGraphSchemaHelpers) ProtoReflect() protoreflect.Message { // Deprecated: Use KnowledgeGraphSchemaHelpers.ProtoReflect.Descriptor instead. func (*KnowledgeGraphSchemaHelpers) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{41} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{40} } func (x *KnowledgeGraphSchemaHelpers) GetDefinitions() string { @@ -5680,7 +5578,7 @@ type AuditSinkConfig struct { func (x *AuditSinkConfig) Reset() { *x = AuditSinkConfig{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[42] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5693,7 +5591,7 @@ func (x *AuditSinkConfig) String() string { func (*AuditSinkConfig) ProtoMessage() {} func (x *AuditSinkConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[42] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5706,7 +5604,7 @@ func (x *AuditSinkConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use AuditSinkConfig.ProtoReflect.Descriptor instead. func (*AuditSinkConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{42} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{41} } func (m *AuditSinkConfig) GetProvider() isAuditSinkConfig_Provider { @@ -5754,7 +5652,7 @@ type KafkaSinkConfig struct { func (x *KafkaSinkConfig) Reset() { *x = KafkaSinkConfig{} if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[43] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5767,7 +5665,7 @@ func (x *KafkaSinkConfig) String() string { func (*KafkaSinkConfig) ProtoMessage() {} func (x *KafkaSinkConfig) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[43] + mi := &file_indykite_config_v1beta1_model_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5780,7 +5678,7 @@ func (x *KafkaSinkConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use KafkaSinkConfig.ProtoReflect.Descriptor instead. func (*KafkaSinkConfig) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{43} + return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{42} } func (x *KafkaSinkConfig) GetBrokers() []string { @@ -5825,61 +5723,6 @@ func (x *KafkaSinkConfig) GetPassword() string { return "" } -type ReadIDProviderConfig_Property struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Expression string `protobuf:"bytes,1,opt,name=expression,proto3" json:"expression,omitempty"` - Enabled bool `protobuf:"varint,2,opt,name=enabled,proto3" json:"enabled,omitempty"` -} - -func (x *ReadIDProviderConfig_Property) Reset() { - *x = ReadIDProviderConfig_Property{} - if protoimpl.UnsafeEnabled { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[48] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ReadIDProviderConfig_Property) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ReadIDProviderConfig_Property) ProtoMessage() {} - -func (x *ReadIDProviderConfig_Property) ProtoReflect() protoreflect.Message { - mi := &file_indykite_config_v1beta1_model_proto_msgTypes[48] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ReadIDProviderConfig_Property.ProtoReflect.Descriptor instead. -func (*ReadIDProviderConfig_Property) Descriptor() ([]byte, []int) { - return file_indykite_config_v1beta1_model_proto_rawDescGZIP(), []int{22, 0} -} - -func (x *ReadIDProviderConfig_Property) GetExpression() string { - if x != nil { - return x.Expression - } - return "" -} - -func (x *ReadIDProviderConfig_Property) GetEnabled() bool { - if x != nil { - return x.Enabled - } - return false -} - var File_indykite_config_v1beta1_model_proto protoreflect.FileDescriptor var file_indykite_config_v1beta1_model_proto_rawDesc = []byte{ @@ -6342,7 +6185,7 @@ var file_indykite_config_v1beta1_model_proto_rawDesc = []byte{ 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x10, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x22, 0xa3, 0x10, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, + 0x6e, 0x74, 0x49, 0x64, 0x22, 0xb8, 0x0f, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, @@ -6463,1133 +6306,1088 @@ var file_indykite_config_v1beta1_model_proto_rawDesc = []byte{ 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x1a, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x12, 0x6f, 0x0a, 0x16, 0x72, 0x65, 0x61, 0x64, 0x69, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, - 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x49, - 0x44, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, - 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x14, 0x72, 0x65, 0x61, - 0x64, 0x69, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x1d, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x0d, 0x0a, 0x06, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, 0x98, 0x09, 0x0a, 0x12, 0x4f, - 0x41, 0x75, 0x74, 0x68, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x12, 0x56, 0x0a, 0x0d, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, - 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x42, - 0x0a, 0xfa, 0x42, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, 0x52, 0x0c, 0x70, 0x72, 0x6f, - 0x76, 0x69, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x09, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, - 0x04, 0x72, 0x02, 0x10, 0x08, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x2f, 0x0a, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x08, 0xd0, - 0x01, 0x01, 0x52, 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, - 0x12, 0x36, 0x0a, 0x0c, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x75, 0x72, 0x69, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x42, 0x13, 0xfa, 0x42, 0x10, 0x92, 0x01, 0x0d, 0x18, 0x01, - 0x22, 0x07, 0x72, 0x05, 0x10, 0x08, 0x88, 0x01, 0x01, 0x28, 0x01, 0x52, 0x0b, 0x72, 0x65, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x55, 0x72, 0x69, 0x12, 0x37, 0x0a, 0x0e, 0x64, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x09, - 0x42, 0x10, 0xfa, 0x42, 0x0d, 0x92, 0x01, 0x0a, 0x18, 0x01, 0x22, 0x04, 0x72, 0x02, 0x10, 0x01, - 0x28, 0x01, 0x52, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x53, 0x63, 0x6f, 0x70, 0x65, - 0x73, 0x12, 0x37, 0x0a, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x73, 0x63, 0x6f, - 0x70, 0x65, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x09, 0x42, 0x10, 0xfa, 0x42, 0x0d, 0x92, 0x01, - 0x0a, 0x18, 0x01, 0x22, 0x04, 0x72, 0x02, 0x10, 0x01, 0x28, 0x01, 0x52, 0x0d, 0x61, 0x6c, 0x6c, - 0x6f, 0x77, 0x65, 0x64, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x6c, - 0x6c, 0x6f, 0x77, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x75, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x69, 0x67, 0x6e, 0x75, 0x70, 0x12, 0x2c, 0x0a, - 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x14, 0xfa, - 0x42, 0x11, 0x72, 0x0f, 0x10, 0x09, 0x3a, 0x05, 0x68, 0x74, 0x74, 0x70, 0x73, 0xd0, 0x01, 0x01, - 0x88, 0x01, 0x01, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x12, 0x4b, 0x0a, 0x16, 0x61, - 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x64, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x14, 0xfa, 0x42, 0x11, - 0x72, 0x0f, 0x10, 0x09, 0x3a, 0x05, 0x68, 0x74, 0x74, 0x70, 0x73, 0xd0, 0x01, 0x01, 0x88, 0x01, - 0x01, 0x52, 0x15, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x3b, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, + 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x1d, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x0d, 0x0a, 0x06, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x4a, 0x04, 0x08, 0x19, 0x10, 0x1a, 0x22, + 0x98, 0x09, 0x0a, 0x12, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x56, 0x0a, 0x0d, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, + 0x54, 0x79, 0x70, 0x65, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, + 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x24, + 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x08, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, + 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, + 0x72, 0x05, 0x10, 0x08, 0xd0, 0x01, 0x01, 0x52, 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, + 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x36, 0x0a, 0x0c, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x42, 0x13, 0xfa, 0x42, 0x10, + 0x92, 0x01, 0x0d, 0x18, 0x01, 0x22, 0x07, 0x72, 0x05, 0x10, 0x08, 0x88, 0x01, 0x01, 0x28, 0x01, + 0x52, 0x0b, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x55, 0x72, 0x69, 0x12, 0x37, 0x0a, + 0x0e, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x18, + 0x11, 0x20, 0x03, 0x28, 0x09, 0x42, 0x10, 0xfa, 0x42, 0x0d, 0x92, 0x01, 0x0a, 0x18, 0x01, 0x22, + 0x04, 0x72, 0x02, 0x10, 0x01, 0x28, 0x01, 0x52, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x53, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, + 0x64, 0x5f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x09, 0x42, 0x10, + 0xfa, 0x42, 0x0d, 0x92, 0x01, 0x0a, 0x18, 0x01, 0x22, 0x04, 0x72, 0x02, 0x10, 0x01, 0x28, 0x01, + 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x12, + 0x21, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x75, 0x70, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x53, 0x69, 0x67, 0x6e, + 0x75, 0x70, 0x12, 0x2c, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x14, 0xfa, 0x42, 0x11, 0x72, 0x0f, 0x10, 0x09, 0x3a, 0x05, 0x68, 0x74, 0x74, + 0x70, 0x73, 0xd0, 0x01, 0x01, 0x88, 0x01, 0x01, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, + 0x12, 0x4b, 0x0a, 0x16, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x14, 0xfa, 0x42, 0x11, 0x72, 0x0f, 0x10, 0x09, 0x3a, 0x05, 0x68, 0x74, 0x74, 0x70, 0x73, - 0xd0, 0x01, 0x01, 0x88, 0x01, 0x01, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, - 0x72, 0x79, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x42, 0x14, 0xfa, 0x42, - 0x11, 0x72, 0x0f, 0x10, 0x09, 0x3a, 0x05, 0x68, 0x74, 0x74, 0x70, 0x73, 0xd0, 0x01, 0x01, 0x88, - 0x01, 0x01, 0x52, 0x0c, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x55, 0x72, 0x6c, - 0x12, 0x41, 0x0a, 0x11, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x65, 0x6e, 0x64, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x14, 0xfa, 0x42, 0x11, - 0x72, 0x0f, 0x10, 0x09, 0x3a, 0x05, 0x68, 0x74, 0x74, 0x70, 0x73, 0xd0, 0x01, 0x01, 0x88, 0x01, - 0x01, 0x52, 0x10, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x45, 0x6e, 0x64, 0x70, 0x6f, - 0x69, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x08, 0x6a, 0x77, 0x6b, 0x73, 0x5f, 0x75, 0x72, 0x69, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x09, 0x42, 0x14, 0xfa, 0x42, 0x11, 0x72, 0x0f, 0x10, 0x09, 0x3a, 0x05, - 0x68, 0x74, 0x74, 0x70, 0x73, 0xd0, 0x01, 0x01, 0x88, 0x01, 0x01, 0x52, 0x07, 0x6a, 0x77, 0x6b, - 0x73, 0x55, 0x72, 0x69, 0x12, 0x2a, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, - 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, - 0x18, 0x80, 0x08, 0xd0, 0x01, 0x01, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, - 0x12, 0x25, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, - 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x0d, 0x68, 0x6f, 0x73, 0x74, 0x65, - 0x64, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0f, - 0xfa, 0x42, 0x0c, 0x72, 0x0a, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x68, 0x01, 0x52, - 0x0c, 0x68, 0x6f, 0x73, 0x74, 0x65, 0x64, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x4b, 0x0a, - 0x0a, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, - 0x53, 0x74, 0x79, 0x6c, 0x65, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, - 0x09, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x6c, 0x0a, 0x0f, 0x70, 0x72, - 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x70, 0x65, 0x6d, 0x18, 0x15, 0x20, - 0x01, 0x28, 0x0c, 0x42, 0x44, 0xfa, 0x42, 0x41, 0x7a, 0x3f, 0x10, 0x55, 0x18, 0x80, 0x40, 0x2a, - 0x1b, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x42, 0x45, 0x47, 0x49, 0x4e, 0x20, 0x50, 0x52, 0x49, 0x56, - 0x41, 0x54, 0x45, 0x20, 0x4b, 0x45, 0x59, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x32, 0x19, 0x2d, 0x2d, - 0x2d, 0x2d, 0x2d, 0x45, 0x4e, 0x44, 0x20, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x20, 0x4b, - 0x45, 0x59, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x70, 0x01, 0x52, 0x0d, 0x70, 0x72, 0x69, 0x76, 0x61, - 0x74, 0x65, 0x4b, 0x65, 0x79, 0x50, 0x65, 0x6d, 0x12, 0x33, 0x0a, 0x0e, 0x70, 0x72, 0x69, 0x76, - 0x61, 0x74, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, - 0x0c, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x26, 0x0a, - 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, - 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x06, 0x74, - 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0xfc, 0x06, 0x0a, 0x11, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, - 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, - 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, - 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x2d, 0xfa, 0x42, 0x2a, 0x72, 0x28, 0x10, 0x02, 0x18, 0x3f, 0x32, 0x22, 0x5e, 0x5b, 0x61, 0x2d, - 0x7a, 0x5d, 0x28, 0x3f, 0x3a, 0x5b, 0x2d, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x30, - 0x2c, 0x36, 0x31, 0x7d, 0x5b, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5d, 0x29, 0x24, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, - 0x05, 0x10, 0x02, 0x18, 0xfe, 0x01, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x02, 0x18, - 0xfe, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x3d, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x72, - 0x6f, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x72, - 0x6f, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x45, 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, + 0xd0, 0x01, 0x01, 0x88, 0x01, 0x01, 0x52, 0x15, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x3b, 0x0a, + 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x14, 0xfa, 0x42, 0x11, 0x72, 0x0f, 0x10, 0x09, 0x3a, 0x05, + 0x68, 0x74, 0x74, 0x70, 0x73, 0xd0, 0x01, 0x01, 0x88, 0x01, 0x01, 0x52, 0x0d, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x0d, 0x64, 0x69, + 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x14, 0xfa, 0x42, 0x11, 0x72, 0x0f, 0x10, 0x09, 0x3a, 0x05, 0x68, 0x74, 0x74, 0x70, + 0x73, 0xd0, 0x01, 0x01, 0x88, 0x01, 0x01, 0x52, 0x0c, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, + 0x72, 0x79, 0x55, 0x72, 0x6c, 0x12, 0x41, 0x0a, 0x11, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, + 0x6f, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x14, 0xfa, 0x42, 0x11, 0x72, 0x0f, 0x10, 0x09, 0x3a, 0x05, 0x68, 0x74, 0x74, 0x70, 0x73, + 0xd0, 0x01, 0x01, 0x88, 0x01, 0x01, 0x52, 0x10, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, + 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x08, 0x6a, 0x77, 0x6b, 0x73, + 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x42, 0x14, 0xfa, 0x42, 0x11, 0x72, + 0x0f, 0x10, 0x09, 0x3a, 0x05, 0x68, 0x74, 0x74, 0x70, 0x73, 0xd0, 0x01, 0x01, 0x88, 0x01, 0x01, + 0x52, 0x07, 0x6a, 0x77, 0x6b, 0x73, 0x55, 0x72, 0x69, 0x12, 0x2a, 0x0a, 0x09, 0x69, 0x6d, 0x61, + 0x67, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, + 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0x80, 0x08, 0xd0, 0x01, 0x01, 0x52, 0x08, 0x69, 0x6d, 0x61, + 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x25, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, + 0x0f, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, + 0x01, 0xd0, 0x01, 0x01, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x0d, + 0x68, 0x6f, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x12, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x0f, 0xfa, 0x42, 0x0c, 0x72, 0x0a, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, + 0x01, 0x01, 0x68, 0x01, 0x52, 0x0c, 0x68, 0x6f, 0x73, 0x74, 0x65, 0x64, 0x44, 0x6f, 0x6d, 0x61, + 0x69, 0x6e, 0x12, 0x4b, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x73, 0x74, 0x79, 0x6c, 0x65, + 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, + 0x01, 0x02, 0x10, 0x01, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, + 0x6c, 0x0a, 0x0f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x70, + 0x65, 0x6d, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x44, 0xfa, 0x42, 0x41, 0x7a, 0x3f, 0x10, + 0x55, 0x18, 0x80, 0x40, 0x2a, 0x1b, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x42, 0x45, 0x47, 0x49, 0x4e, + 0x20, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x20, 0x4b, 0x45, 0x59, 0x2d, 0x2d, 0x2d, 0x2d, + 0x2d, 0x32, 0x19, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x45, 0x4e, 0x44, 0x20, 0x50, 0x52, 0x49, 0x56, + 0x41, 0x54, 0x45, 0x20, 0x4b, 0x45, 0x59, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x70, 0x01, 0x52, 0x0d, + 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x50, 0x65, 0x6d, 0x12, 0x33, 0x0a, + 0x0e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, + 0x16, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, + 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0c, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, + 0x49, 0x64, 0x12, 0x26, 0x0a, 0x07, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x17, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, + 0x01, 0x01, 0x52, 0x06, 0x74, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x22, 0xfc, 0x06, 0x0a, 0x11, 0x4f, + 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, - 0x7d, 0x24, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x12, 0x46, - 0x0a, 0x0c, 0x61, 0x70, 0x70, 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, - 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, - 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x53, - 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x52, 0x0a, 0x12, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, - 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, - 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, - 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x10, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x32, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x06, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x22, 0xd8, 0x0b, 0x0a, 0x17, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2d, 0x0a, - 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x02, 0x18, 0xfe, 0x01, 0x52, - 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x0b, - 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, - 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, - 0x0d, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x73, 0x18, 0x05, - 0x20, 0x03, 0x28, 0x09, 0x42, 0x11, 0xfa, 0x42, 0x0e, 0x92, 0x01, 0x0b, 0x08, 0x01, 0x18, 0x01, - 0x22, 0x05, 0x72, 0x03, 0x88, 0x01, 0x01, 0x52, 0x0c, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, - 0x74, 0x55, 0x72, 0x69, 0x73, 0x12, 0x20, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x02, 0x18, 0xfe, 0x01, - 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x0a, 0x70, 0x6f, 0x6c, 0x69, 0x63, - 0x79, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xfa, 0x42, 0x08, - 0x72, 0x06, 0x18, 0xfe, 0x01, 0x88, 0x01, 0x01, 0x52, 0x09, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, - 0x55, 0x72, 0x69, 0x12, 0x44, 0x0a, 0x14, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x63, - 0x6f, 0x72, 0x73, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, - 0x09, 0x42, 0x12, 0xfa, 0x42, 0x0f, 0x92, 0x01, 0x0c, 0x18, 0x01, 0x22, 0x08, 0x72, 0x06, 0x18, - 0xfe, 0x01, 0x88, 0x01, 0x01, 0x52, 0x12, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x43, 0x6f, - 0x72, 0x73, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x3c, 0x0a, 0x14, 0x74, 0x65, 0x72, - 0x6d, 0x73, 0x5f, 0x6f, 0x66, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x72, - 0x69, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xfa, 0x42, 0x08, 0x72, 0x06, 0x18, 0xfe, - 0x01, 0x88, 0x01, 0x01, 0x52, 0x11, 0x74, 0x65, 0x72, 0x6d, 0x73, 0x4f, 0x66, 0x53, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x55, 0x72, 0x69, 0x12, 0x2a, 0x0a, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xfa, 0x42, 0x08, - 0x72, 0x06, 0x18, 0xfe, 0x01, 0x88, 0x01, 0x01, 0x52, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x55, 0x72, 0x69, 0x12, 0x26, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x6f, 0x5f, 0x75, 0x72, 0x69, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xfa, 0x42, 0x08, 0x72, 0x06, 0x18, 0xfe, 0x01, 0x88, - 0x01, 0x01, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x69, 0x12, 0x47, 0x0a, 0x1a, 0x75, - 0x73, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x65, 0x6d, 0x61, 0x69, - 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x18, 0xfe, 0x01, 0x60, 0x01, 0x52, 0x17, 0x75, 0x73, 0x65, - 0x72, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x12, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x6f, 0x6e, - 0x74, 0x61, 0x63, 0x74, 0x73, 0x12, 0x59, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x69, 0x6e, - 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x82, 0x01, 0x04, 0x10, - 0x01, 0x20, 0x00, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x42, 0x0a, 0x15, 0x73, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x0e, 0xfa, 0x42, 0x0b, 0x72, 0x09, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x88, 0x01, 0x01, 0x52, - 0x13, 0x73, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, - 0x72, 0x55, 0x72, 0x69, 0x12, 0x56, 0x0a, 0x0b, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x73, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xfa, 0x42, 0x2a, 0x72, 0x28, 0x10, 0x02, 0x18, 0x3f, 0x32, + 0x22, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x5d, 0x28, 0x3f, 0x3a, 0x5b, 0x2d, 0x61, 0x2d, 0x7a, 0x30, + 0x2d, 0x39, 0x5d, 0x7b, 0x30, 0x2c, 0x36, 0x31, 0x7d, 0x5b, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x5d, 0x29, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x0c, 0x64, 0x69, 0x73, + 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x02, 0x18, 0xfe, 0x01, 0x52, 0x0b, 0x64, 0x69, 0x73, + 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0a, 0xfa, 0x42, 0x07, + 0x72, 0x05, 0x10, 0x02, 0x18, 0xfe, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, + 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, + 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x3d, 0x0a, 0x0c, + 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0b, + 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x64, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x64, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x45, 0x0a, 0x0b, + 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, + 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, + 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x0c, 0x61, 0x70, 0x70, 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, + 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, + 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, + 0x0a, 0x61, 0x70, 0x70, 0x53, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x52, 0x0a, 0x12, 0x6f, + 0x61, 0x75, 0x74, 0x68, 0x32, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, + 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, + 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x10, 0x6f, + 0x61, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x48, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, + 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xd8, 0x0b, 0x0a, 0x17, 0x4f, 0x41, + 0x75, 0x74, 0x68, 0x32, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, + 0x02, 0x18, 0xfe, 0x01, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x2f, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x02, 0x18, + 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x0d, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x75, + 0x72, 0x69, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x11, 0xfa, 0x42, 0x0e, 0x92, 0x01, + 0x0b, 0x08, 0x01, 0x18, 0x01, 0x22, 0x05, 0x72, 0x03, 0x88, 0x01, 0x01, 0x52, 0x0c, 0x72, 0x65, + 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x55, 0x72, 0x69, 0x73, 0x12, 0x20, 0x0a, 0x05, 0x6f, 0x77, + 0x6e, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, + 0x10, 0x02, 0x18, 0xfe, 0x01, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x0a, + 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x0b, 0xfa, 0x42, 0x08, 0x72, 0x06, 0x18, 0xfe, 0x01, 0x88, 0x01, 0x01, 0x52, 0x09, 0x70, + 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x55, 0x72, 0x69, 0x12, 0x44, 0x0a, 0x14, 0x61, 0x6c, 0x6c, 0x6f, + 0x77, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x72, 0x73, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x73, + 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x42, 0x12, 0xfa, 0x42, 0x0f, 0x92, 0x01, 0x0c, 0x18, 0x01, + 0x22, 0x08, 0x72, 0x06, 0x18, 0xfe, 0x01, 0x88, 0x01, 0x01, 0x52, 0x12, 0x61, 0x6c, 0x6c, 0x6f, + 0x77, 0x65, 0x64, 0x43, 0x6f, 0x72, 0x73, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x3c, + 0x0a, 0x14, 0x74, 0x65, 0x72, 0x6d, 0x73, 0x5f, 0x6f, 0x66, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xfa, 0x42, + 0x08, 0x72, 0x06, 0x18, 0xfe, 0x01, 0x88, 0x01, 0x01, 0x52, 0x11, 0x74, 0x65, 0x72, 0x6d, 0x73, + 0x4f, 0x66, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x55, 0x72, 0x69, 0x12, 0x2a, 0x0a, 0x0a, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x0b, 0xfa, 0x42, 0x08, 0x72, 0x06, 0x18, 0xfe, 0x01, 0x88, 0x01, 0x01, 0x52, 0x09, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x69, 0x12, 0x26, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x6f, + 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xfa, 0x42, 0x08, 0x72, + 0x06, 0x18, 0xfe, 0x01, 0x88, 0x01, 0x01, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x6f, 0x55, 0x72, 0x69, + 0x12, 0x47, 0x0a, 0x1a, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, + 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x18, 0xfe, 0x01, 0x60, 0x01, + 0x52, 0x17, 0x75, 0x73, 0x65, 0x72, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x6d, 0x61, + 0x69, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2f, 0x0a, 0x13, 0x61, 0x64, 0x64, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x73, + 0x18, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x73, 0x12, 0x59, 0x0a, 0x0c, 0x73, 0x75, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x2a, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x0a, 0xfa, 0x42, + 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x42, 0x0a, 0x15, 0x73, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x0e, 0xfa, 0x42, 0x0b, 0x72, 0x09, 0x18, 0xfe, 0x01, 0xd0, 0x01, + 0x01, 0x88, 0x01, 0x01, 0x52, 0x13, 0x73, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x49, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x55, 0x72, 0x69, 0x12, 0x56, 0x0a, 0x0b, 0x67, 0x72, 0x61, + 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x22, + 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x42, 0x11, 0xfa, 0x42, 0x0e, 0x92, 0x01, 0x0b, 0x18, 0x01, 0x22, 0x07, 0x82, 0x01, + 0x04, 0x10, 0x01, 0x20, 0x00, 0x52, 0x0a, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x73, 0x12, 0x5f, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x11, 0xfa, - 0x42, 0x0e, 0x92, 0x01, 0x0b, 0x18, 0x01, 0x22, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, - 0x52, 0x0a, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x5f, 0x0a, 0x0e, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x11, + 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, + 0x42, 0x11, 0xfa, 0x42, 0x0e, 0x92, 0x01, 0x0b, 0x18, 0x01, 0x22, 0x07, 0x82, 0x01, 0x04, 0x10, + 0x01, 0x20, 0x00, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x73, 0x12, 0x49, 0x0a, 0x06, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x12, 0x20, 0x03, + 0x28, 0x09, 0x42, 0x31, 0xfa, 0x42, 0x2e, 0x92, 0x01, 0x2b, 0x08, 0x01, 0x18, 0x01, 0x22, 0x25, + 0x72, 0x23, 0x32, 0x21, 0x5e, 0x5b, 0x5c, 0x78, 0x32, 0x31, 0x5c, 0x78, 0x32, 0x33, 0x2d, 0x5c, + 0x78, 0x35, 0x62, 0x5c, 0x78, 0x35, 0x64, 0x2d, 0x5c, 0x78, 0x37, 0x65, 0x5d, 0x7b, 0x31, 0x2c, + 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x06, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x12, 0x2d, 0x0a, + 0x09, 0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x09, + 0x42, 0x0f, 0xfa, 0x42, 0x0c, 0x92, 0x01, 0x09, 0x18, 0x01, 0x22, 0x05, 0x72, 0x03, 0xb0, 0x01, + 0x01, 0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x79, 0x0a, 0x1a, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, + 0x75, 0x74, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, + 0x6f, 0x64, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, 0x52, 0x17, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, + 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0xae, 0x01, 0x0a, 0x1f, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, + 0x73, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6c, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x68, 0xfa, 0x42, 0x65, 0x72, 0x63, 0x52, 0x05, 0x52, 0x53, 0x32, 0x35, 0x36, 0x52, + 0x05, 0x52, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x52, 0x53, 0x35, 0x31, 0x32, 0x52, 0x05, 0x50, + 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x50, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x50, 0x53, 0x35, + 0x31, 0x32, 0x52, 0x05, 0x45, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x45, 0x53, 0x33, 0x38, 0x34, + 0x52, 0x05, 0x45, 0x53, 0x35, 0x31, 0x32, 0x52, 0x06, 0x45, 0x53, 0x32, 0x35, 0x36, 0x4b, 0x52, + 0x05, 0x48, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x48, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x48, + 0x53, 0x35, 0x31, 0x32, 0x52, 0x05, 0x45, 0x64, 0x44, 0x53, 0x41, 0x52, 0x1b, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x53, 0x69, + 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x41, 0x6c, 0x67, 0x12, 0x50, 0x0a, 0x1c, 0x75, 0x73, 0x65, 0x72, + 0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x61, 0x6c, 0x67, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0f, + 0xfa, 0x42, 0x0c, 0x72, 0x0a, 0x52, 0x05, 0x52, 0x53, 0x32, 0x35, 0x36, 0xd0, 0x01, 0x01, 0x52, + 0x19, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x41, 0x6c, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x72, + 0x75, 0x73, 0x74, 0x65, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x74, 0x72, 0x75, + 0x73, 0x74, 0x65, 0x64, 0x22, 0xa2, 0x06, 0x0a, 0x0e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, + 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, + 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x41, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xfa, 0x42, 0x2a, + 0x72, 0x28, 0x10, 0x02, 0x18, 0x3f, 0x32, 0x22, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x5d, 0x28, 0x3f, + 0x3a, 0x5b, 0x2d, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x30, 0x2c, 0x36, 0x31, 0x7d, + 0x5b, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5d, 0x29, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x2d, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x02, 0x18, + 0xfe, 0x01, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x4a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x02, 0x18, 0xfe, 0x01, 0x52, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x0b, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, + 0x62, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x42, 0x79, 0x12, 0x3d, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, + 0x74, 0x61, 0x67, 0x12, 0x45, 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, + 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, + 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x0a, + 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x0c, 0x61, 0x70, + 0x70, 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, + 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, + 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x53, 0x70, 0x61, 0x63, 0x65, + 0x49, 0x64, 0x12, 0x45, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, + 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x80, 0x0a, 0x0a, 0x14, 0x4f, 0x41, + 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x12, 0x58, 0x0a, 0x0b, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x13, 0xfa, 0x42, 0x10, + 0x92, 0x01, 0x0d, 0x08, 0x01, 0x18, 0x01, 0x22, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, + 0x52, 0x0a, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x61, 0x0a, 0x0e, + 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42, 0x11, 0xfa, 0x42, 0x0e, - 0x92, 0x01, 0x0b, 0x18, 0x01, 0x22, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, 0x52, 0x0d, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x49, 0x0a, - 0x06, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x09, 0x42, 0x31, 0xfa, - 0x42, 0x2e, 0x92, 0x01, 0x2b, 0x08, 0x01, 0x18, 0x01, 0x22, 0x25, 0x72, 0x23, 0x32, 0x21, 0x5e, - 0x5b, 0x5c, 0x78, 0x32, 0x31, 0x5c, 0x78, 0x32, 0x33, 0x2d, 0x5c, 0x78, 0x35, 0x62, 0x5c, 0x78, - 0x35, 0x64, 0x2d, 0x5c, 0x78, 0x37, 0x65, 0x5d, 0x7b, 0x31, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, - 0x52, 0x06, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x09, 0x61, 0x75, 0x64, 0x69, - 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x09, 0x42, 0x0f, 0xfa, 0x42, 0x0c, - 0x92, 0x01, 0x09, 0x18, 0x01, 0x22, 0x05, 0x72, 0x03, 0xb0, 0x01, 0x01, 0x52, 0x09, 0x61, 0x75, - 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x79, 0x0a, 0x1a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x6d, - 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x69, 0x6e, - 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, - 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x42, 0x0a, 0xfa, - 0x42, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, 0x52, 0x17, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, - 0x6f, 0x64, 0x12, 0xae, 0x01, 0x0a, 0x1f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x64, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x69, - 0x6e, 0x67, 0x5f, 0x61, 0x6c, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x42, 0x68, 0xfa, 0x42, - 0x65, 0x72, 0x63, 0x52, 0x05, 0x52, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x52, 0x53, 0x33, 0x38, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42, 0x13, 0xfa, 0x42, 0x10, + 0x92, 0x01, 0x0d, 0x08, 0x01, 0x18, 0x01, 0x22, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, + 0x52, 0x0d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, + 0x49, 0x0a, 0x06, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, + 0x31, 0xfa, 0x42, 0x2e, 0x92, 0x01, 0x2b, 0x08, 0x01, 0x18, 0x01, 0x22, 0x25, 0x72, 0x23, 0x32, + 0x21, 0x5e, 0x5b, 0x5c, 0x78, 0x32, 0x31, 0x5c, 0x78, 0x32, 0x33, 0x2d, 0x5c, 0x78, 0x35, 0x62, + 0x5c, 0x78, 0x35, 0x64, 0x2d, 0x5c, 0x78, 0x37, 0x65, 0x5d, 0x7b, 0x31, 0x2c, 0x32, 0x35, 0x34, + 0x7d, 0x24, 0x52, 0x06, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x12, 0x80, 0x01, 0x0a, 0x1a, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x75, + 0x74, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0e, 0x32, + 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x45, + 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, + 0x64, 0x42, 0x11, 0xfa, 0x42, 0x0e, 0x92, 0x01, 0x0b, 0x08, 0x01, 0x22, 0x07, 0x82, 0x01, 0x04, + 0x10, 0x01, 0x20, 0x00, 0x52, 0x17, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0xb5, 0x01, + 0x0a, 0x1f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, + 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6c, + 0x67, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x6f, 0xfa, 0x42, 0x6c, 0x92, 0x01, 0x69, 0x08, + 0x01, 0x22, 0x65, 0x72, 0x63, 0x52, 0x05, 0x52, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x52, 0x53, + 0x33, 0x38, 0x34, 0x52, 0x05, 0x52, 0x53, 0x35, 0x31, 0x32, 0x52, 0x05, 0x50, 0x53, 0x32, 0x35, + 0x36, 0x52, 0x05, 0x50, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x50, 0x53, 0x35, 0x31, 0x32, 0x52, + 0x05, 0x45, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x45, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x45, + 0x53, 0x35, 0x31, 0x32, 0x52, 0x06, 0x45, 0x53, 0x32, 0x35, 0x36, 0x4b, 0x52, 0x05, 0x48, 0x53, + 0x32, 0x35, 0x36, 0x52, 0x05, 0x48, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x48, 0x53, 0x35, 0x31, + 0x32, 0x52, 0x05, 0x45, 0x64, 0x44, 0x53, 0x41, 0x52, 0x1b, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x45, + 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x69, + 0x6e, 0x67, 0x41, 0x6c, 0x67, 0x12, 0x30, 0x0a, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x5f, 0x75, 0x72, 0x69, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, + 0x92, 0x01, 0x07, 0x22, 0x05, 0x72, 0x03, 0x88, 0x01, 0x01, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x55, 0x72, 0x69, 0x73, 0x12, 0xa8, 0x01, 0x0a, 0x1a, 0x72, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x69, + 0x6e, 0x67, 0x5f, 0x61, 0x6c, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x6b, 0xfa, 0x42, + 0x68, 0x72, 0x66, 0x52, 0x05, 0x52, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x52, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x52, 0x53, 0x35, 0x31, 0x32, 0x52, 0x05, 0x50, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x50, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x50, 0x53, 0x35, 0x31, 0x32, 0x52, 0x05, 0x45, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x45, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x45, 0x53, 0x35, 0x31, 0x32, 0x52, 0x06, 0x45, 0x53, 0x32, 0x35, 0x36, 0x4b, 0x52, 0x05, 0x48, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x48, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x48, 0x53, 0x35, 0x31, 0x32, 0x52, - 0x05, 0x45, 0x64, 0x44, 0x53, 0x41, 0x52, 0x1b, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, - 0x41, 0x6c, 0x67, 0x12, 0x50, 0x0a, 0x1c, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x5f, - 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, - 0x61, 0x6c, 0x67, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0f, 0xfa, 0x42, 0x0c, 0x72, 0x0a, - 0x52, 0x05, 0x52, 0x53, 0x32, 0x35, 0x36, 0xd0, 0x01, 0x01, 0x52, 0x19, 0x75, 0x73, 0x65, 0x72, - 0x69, 0x6e, 0x66, 0x6f, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x41, 0x6c, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, - 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x22, - 0xa2, 0x06, 0x0a, 0x0e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x12, 0x34, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, - 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, - 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, - 0x35, 0x34, 0x7d, 0x24, 0x52, 0x02, 0x69, 0x64, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xfa, 0x42, 0x2a, 0x72, 0x28, 0x10, 0x02, 0x18, - 0x3f, 0x32, 0x22, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x5d, 0x28, 0x3f, 0x3a, 0x5b, 0x2d, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x30, 0x2c, 0x36, 0x31, 0x7d, 0x5b, 0x61, 0x2d, 0x7a, 0x30, - 0x2d, 0x39, 0x5d, 0x29, 0x24, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x0c, 0x64, - 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x02, 0x18, 0xfe, 0x01, 0x52, 0x0b, 0x64, - 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x64, 0x65, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0a, 0xfa, - 0x42, 0x07, 0x72, 0x05, 0x10, 0x02, 0x18, 0xfe, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, - 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x42, 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x0e, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x3d, - 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3b, 0x0a, - 0x0b, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, - 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, - 0x61, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x45, - 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, - 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, - 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x65, 0x72, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x0c, 0x61, 0x70, 0x70, 0x5f, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x42, 0x21, - 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, - 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, 0x35, 0x34, 0x7d, - 0x24, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x53, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x45, 0x0a, - 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, - 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x22, 0x80, 0x0a, 0x0a, 0x14, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, - 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x58, 0x0a, - 0x0b, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x72, 0x61, - 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x42, 0x13, 0xfa, 0x42, 0x10, 0x92, 0x01, 0x0d, 0x08, 0x01, - 0x18, 0x01, 0x22, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, 0x52, 0x0a, 0x67, 0x72, 0x61, - 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x61, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, - 0x25, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42, 0x13, 0xfa, 0x42, 0x10, 0x92, 0x01, 0x0d, 0x08, 0x01, - 0x18, 0x01, 0x22, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, 0x52, 0x0d, 0x72, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x49, 0x0a, 0x06, 0x73, 0x63, - 0x6f, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x31, 0xfa, 0x42, 0x2e, 0x92, - 0x01, 0x2b, 0x08, 0x01, 0x18, 0x01, 0x22, 0x25, 0x72, 0x23, 0x32, 0x21, 0x5e, 0x5b, 0x5c, 0x78, - 0x32, 0x31, 0x5c, 0x78, 0x32, 0x33, 0x2d, 0x5c, 0x78, 0x35, 0x62, 0x5c, 0x78, 0x35, 0x64, 0x2d, - 0x5c, 0x78, 0x37, 0x65, 0x5d, 0x7b, 0x31, 0x2c, 0x32, 0x35, 0x34, 0x7d, 0x24, 0x52, 0x06, 0x73, - 0x63, 0x6f, 0x70, 0x65, 0x73, 0x12, 0x80, 0x01, 0x0a, 0x1a, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, - 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x6d, 0x65, - 0x74, 0x68, 0x6f, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, - 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x42, 0x11, 0xfa, 0x42, - 0x0e, 0x92, 0x01, 0x0b, 0x08, 0x01, 0x22, 0x07, 0x82, 0x01, 0x04, 0x10, 0x01, 0x20, 0x00, 0x52, - 0x17, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, - 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0xb5, 0x01, 0x0a, 0x1f, 0x74, 0x6f, 0x6b, - 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x68, - 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6c, 0x67, 0x18, 0x05, 0x20, 0x03, - 0x28, 0x09, 0x42, 0x6f, 0xfa, 0x42, 0x6c, 0x92, 0x01, 0x69, 0x08, 0x01, 0x22, 0x65, 0x72, 0x63, - 0x52, 0x05, 0x52, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x52, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, - 0x52, 0x53, 0x35, 0x31, 0x32, 0x52, 0x05, 0x50, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x50, 0x53, - 0x33, 0x38, 0x34, 0x52, 0x05, 0x50, 0x53, 0x35, 0x31, 0x32, 0x52, 0x05, 0x45, 0x53, 0x32, 0x35, - 0x36, 0x52, 0x05, 0x45, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x45, 0x53, 0x35, 0x31, 0x32, 0x52, - 0x06, 0x45, 0x53, 0x32, 0x35, 0x36, 0x4b, 0x52, 0x05, 0x48, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, - 0x48, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x48, 0x53, 0x35, 0x31, 0x32, 0x52, 0x05, 0x45, 0x64, - 0x44, 0x53, 0x41, 0x52, 0x1b, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, - 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x41, 0x6c, 0x67, - 0x12, 0x30, 0x0a, 0x0c, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x73, - 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x92, 0x01, 0x07, 0x22, 0x05, - 0x72, 0x03, 0x88, 0x01, 0x01, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x55, 0x72, - 0x69, 0x73, 0x12, 0xa8, 0x01, 0x0a, 0x1a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6c, - 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x6b, 0xfa, 0x42, 0x68, 0x72, 0x66, 0x52, 0x05, - 0x52, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x52, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x52, 0x53, - 0x35, 0x31, 0x32, 0x52, 0x05, 0x50, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x50, 0x53, 0x33, 0x38, - 0x34, 0x52, 0x05, 0x50, 0x53, 0x35, 0x31, 0x32, 0x52, 0x05, 0x45, 0x53, 0x32, 0x35, 0x36, 0x52, - 0x05, 0x45, 0x53, 0x33, 0x38, 0x34, 0x52, 0x05, 0x45, 0x53, 0x35, 0x31, 0x32, 0x52, 0x06, 0x45, - 0x53, 0x32, 0x35, 0x36, 0x4b, 0x52, 0x05, 0x48, 0x53, 0x32, 0x35, 0x36, 0x52, 0x05, 0x48, 0x53, - 0x33, 0x38, 0x34, 0x52, 0x05, 0x48, 0x53, 0x35, 0x31, 0x32, 0x52, 0x05, 0x45, 0x64, 0x44, 0x53, - 0x41, 0xd0, 0x01, 0x01, 0x52, 0x17, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x41, 0x6c, 0x67, 0x12, 0x95, 0x01, - 0x0a, 0x17, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, - 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x47, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x46, - 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x6f, 0x67, 0x69, 0x6e, - 0x55, 0x72, 0x69, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x15, 0xfa, 0x42, 0x12, 0x9a, 0x01, 0x0f, - 0x08, 0x01, 0x22, 0x04, 0x72, 0x02, 0x18, 0x20, 0x2a, 0x05, 0x72, 0x03, 0x88, 0x01, 0x01, 0x52, - 0x14, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x6f, 0x67, - 0x69, 0x6e, 0x55, 0x72, 0x69, 0x12, 0x9b, 0x01, 0x0a, 0x19, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, - 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x5f, - 0x75, 0x72, 0x69, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x69, 0x6e, 0x64, 0x79, - 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x69, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x42, 0x15, 0xfa, 0x42, 0x12, 0x9a, 0x01, 0x0f, 0x08, 0x01, 0x22, 0x04, - 0x72, 0x02, 0x18, 0x20, 0x2a, 0x05, 0x72, 0x03, 0x88, 0x01, 0x01, 0x52, 0x16, 0x66, 0x72, 0x6f, - 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, - 0x55, 0x72, 0x69, 0x1a, 0x47, 0x0a, 0x19, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, - 0x6e, 0x65, 0x6c, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x72, 0x69, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x05, 0x45, 0x64, 0x44, 0x53, 0x41, 0xd0, 0x01, 0x01, 0x52, 0x17, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x41, + 0x6c, 0x67, 0x12, 0x95, 0x01, 0x0a, 0x17, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x08, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, + 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x72, 0x69, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x15, 0xfa, + 0x42, 0x12, 0x9a, 0x01, 0x0f, 0x08, 0x01, 0x22, 0x04, 0x72, 0x02, 0x18, 0x20, 0x2a, 0x05, 0x72, + 0x03, 0x88, 0x01, 0x01, 0x52, 0x14, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x72, 0x69, 0x12, 0x9b, 0x01, 0x0a, 0x19, 0x66, + 0x72, 0x6f, 0x6e, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, + 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x49, + 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x32, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x46, 0x72, + 0x6f, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, + 0x74, 0x55, 0x72, 0x69, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x15, 0xfa, 0x42, 0x12, 0x9a, 0x01, + 0x0f, 0x08, 0x01, 0x22, 0x04, 0x72, 0x02, 0x18, 0x20, 0x2a, 0x05, 0x72, 0x03, 0x88, 0x01, 0x01, + 0x52, 0x16, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, + 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x69, 0x1a, 0x47, 0x0a, 0x19, 0x46, 0x72, 0x6f, 0x6e, + 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x55, 0x72, 0x69, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x1a, 0x49, 0x0a, 0x1b, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x69, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x49, 0x0a, 0x1b, - 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x73, - 0x65, 0x6e, 0x74, 0x55, 0x72, 0x69, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa8, 0x06, 0x0a, + 0x16, 0x57, 0x65, 0x62, 0x41, 0x75, 0x74, 0x68, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x86, 0x01, 0x0a, 0x0f, 0x72, 0x65, 0x6c, 0x79, + 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x43, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x65, 0x62, 0x41, + 0x75, 0x74, 0x68, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x52, 0x65, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x18, 0xfa, 0x42, 0x15, 0x9a, 0x01, 0x12, 0x08, 0x01, + 0x22, 0x05, 0x72, 0x03, 0x88, 0x01, 0x01, 0x2a, 0x07, 0x72, 0x05, 0x10, 0x01, 0x18, 0x80, 0x02, + 0x52, 0x0e, 0x72, 0x65, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, + 0x12, 0x6e, 0x0a, 0x16, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, + 0x79, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, + 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x15, 0x61, 0x74, 0x74, 0x65, 0x73, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, + 0x12, 0x75, 0x0a, 0x18, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, + 0x72, 0x5f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, + 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, + 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x17, + 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x74, 0x74, + 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x72, 0x65, 0x71, 0x75, 0x69, + 0x72, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x52, 0x65, + 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x6b, 0x0a, 0x11, 0x75, 0x73, 0x65, + 0x72, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, + 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, + 0x01, 0x02, 0x10, 0x01, 0x52, 0x10, 0x75, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5b, 0x0a, 0x14, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, + 0x0d, 0xfa, 0x42, 0x0a, 0xaa, 0x01, 0x07, 0x22, 0x03, 0x08, 0x84, 0x07, 0x32, 0x00, 0x52, 0x13, + 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, + 0x6f, 0x75, 0x74, 0x12, 0x5f, 0x0a, 0x16, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0d, + 0xfa, 0x42, 0x0a, 0xaa, 0x01, 0x07, 0x22, 0x03, 0x08, 0x84, 0x07, 0x32, 0x00, 0x52, 0x15, 0x61, + 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, + 0x65, 0x6f, 0x75, 0x74, 0x1a, 0x41, 0x0a, 0x13, 0x52, 0x65, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x50, + 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa8, 0x06, 0x0a, 0x16, 0x57, 0x65, 0x62, 0x41, - 0x75, 0x74, 0x68, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x12, 0x86, 0x01, 0x0a, 0x0f, 0x72, 0x65, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x5f, 0x70, - 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x69, - 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x65, 0x62, 0x41, 0x75, 0x74, 0x68, 0x6e, 0x50, - 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, - 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x42, 0x18, 0xfa, 0x42, 0x15, 0x9a, 0x01, 0x12, 0x08, 0x01, 0x22, 0x05, 0x72, 0x03, 0x88, - 0x01, 0x01, 0x2a, 0x07, 0x72, 0x05, 0x10, 0x01, 0x18, 0x80, 0x02, 0x52, 0x0e, 0x72, 0x65, 0x6c, - 0x79, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x6e, 0x0a, 0x16, 0x61, - 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x65, - 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x69, 0x6e, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x77, 0x0a, 0x16, 0x57, 0x65, 0x62, 0x41, 0x75, + 0x74, 0x68, 0x6e, 0x53, 0x69, 0x74, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, + 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e, + 0x22, 0x92, 0x02, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x68, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x12, 0x5d, 0x0a, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x66, 0x6f, + 0x72, 0x6d, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x69, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, + 0x01, 0x02, 0x10, 0x01, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x12, 0x21, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0c, 0x42, 0x09, 0xfa, 0x42, 0x06, 0x7a, 0x04, 0x18, 0x80, 0x80, 0x40, 0x52, 0x06, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x22, + 0x5e, 0x0a, 0x06, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x12, 0x0a, 0x0e, 0x46, 0x4f, 0x52, + 0x4d, 0x41, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x14, 0x0a, + 0x10, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x42, 0x41, 0x52, 0x45, 0x5f, 0x59, 0x41, 0x4d, + 0x4c, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x42, 0x41, + 0x52, 0x45, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x4f, 0x52, + 0x4d, 0x41, 0x54, 0x5f, 0x52, 0x49, 0x43, 0x48, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 0x10, 0x03, 0x4a, + 0x04, 0x08, 0x03, 0x10, 0x04, 0x22, 0xce, 0x01, 0x0a, 0x17, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, + 0x74, 0x65, 0x71, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x30, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x72, 0x65, 0x64, + 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, + 0x55, 0x72, 0x69, 0x12, 0x24, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x0c, 0x52, + 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x0d, 0x63, 0x6c, 0x69, + 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x0c, 0xd0, 0x01, 0x01, 0x52, 0x0c, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x2a, 0x0a, 0x0c, 0x68, 0x6f, + 0x73, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x68, 0x01, 0x52, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x94, 0x01, 0x0a, 0x12, 0x53, 0x41, 0x46, 0x52, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x29, 0x0a, + 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x02, 0x18, 0xfe, 0x01, 0x52, 0x09, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, + 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, + 0x08, 0x10, 0x04, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, + 0x6f, 0x72, 0x64, 0x12, 0x28, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x02, 0x18, + 0xfe, 0x01, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x12, 0x0a, + 0x10, 0x53, 0x4d, 0x53, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x22, 0xe8, 0x06, 0x0a, 0x12, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x50, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x46, + 0x72, 0x6f, 0x6d, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x12, 0x57, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x67, 0x72, 0x69, 0x64, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x47, 0x72, 0x69, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, + 0x01, 0x48, 0x00, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x67, 0x72, 0x69, 0x64, 0x12, 0x54, 0x0a, + 0x07, 0x6d, 0x61, 0x69, 0x6c, 0x6a, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, + 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x69, 0x6c, 0x4a, 0x65, 0x74, + 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, + 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x61, 0x69, 0x6c, + 0x6a, 0x65, 0x74, 0x12, 0x54, 0x0a, 0x07, 0x6d, 0x61, 0x69, 0x6c, 0x67, 0x75, 0x6e, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, + 0x61, 0x69, 0x6c, 0x67, 0x75, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, + 0x52, 0x07, 0x6d, 0x61, 0x69, 0x6c, 0x67, 0x75, 0x6e, 0x12, 0x54, 0x0a, 0x06, 0x61, 0x6d, 0x61, + 0x7a, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x41, 0x6d, 0x61, 0x7a, 0x6f, 0x6e, 0x53, 0x45, 0x53, 0x50, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, + 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x06, 0x61, 0x6d, 0x61, 0x7a, 0x6f, 0x6e, 0x12, + 0x57, 0x0a, 0x12, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x79, 0x61, 0x6e, 0x63, 0x65, - 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, - 0x01, 0x02, 0x10, 0x01, 0x52, 0x15, 0x61, 0x74, 0x74, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x75, 0x0a, 0x18, 0x61, - 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x74, 0x74, - 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x5e, 0x0a, 0x16, 0x72, 0x65, 0x73, 0x65, + 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x14, 0x72, 0x65, 0x73, 0x65, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x5b, 0x0a, 0x14, 0x76, 0x65, 0x72, 0x69, + 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x13, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x63, 0x0a, 0x19, 0x6f, 0x6e, 0x65, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x16, 0x6f, 0x6e, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, + 0x6f, 0x72, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x22, 0x50, 0x0a, 0x05, + 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x24, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x18, 0xfe, 0x01, + 0x60, 0x01, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x21, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, + 0x10, 0x01, 0x18, 0xf7, 0x03, 0xd0, 0x01, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xf5, + 0x01, 0x0a, 0x16, 0x53, 0x65, 0x6e, 0x64, 0x47, 0x72, 0x69, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x26, 0x0a, 0x07, 0x61, 0x70, 0x69, + 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, + 0x08, 0x10, 0x19, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, + 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x61, 0x6e, 0x64, 0x62, 0x6f, 0x78, 0x5f, 0x6d, 0x6f, 0x64, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x61, 0x6e, 0x64, 0x62, 0x6f, 0x78, + 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x69, 0x70, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0c, 0xfa, 0x42, 0x09, 0x72, 0x07, 0x10, + 0x02, 0x18, 0x40, 0xd0, 0x01, 0x01, 0x52, 0x0a, 0x69, 0x70, 0x50, 0x6f, 0x6f, 0x6c, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x10, + 0xfa, 0x42, 0x0d, 0x72, 0x0b, 0x10, 0x0a, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x88, 0x01, 0x01, + 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x22, 0xbd, 0x02, 0x0a, 0x15, 0x4d, 0x61, 0x69, 0x6c, 0x4a, + 0x65, 0x74, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x12, 0x26, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x19, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, + 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x61, 0x6e, 0x64, + 0x62, 0x6f, 0x78, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, + 0x73, 0x61, 0x6e, 0x64, 0x62, 0x6f, 0x78, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x56, 0x0a, 0x08, 0x75, + 0x72, 0x6c, 0x5f, 0x74, 0x61, 0x67, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, - 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, - 0x63, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x42, - 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x17, 0x61, 0x75, 0x74, 0x68, 0x65, - 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, - 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x5f, 0x72, 0x65, - 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x12, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x52, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, - 0x74, 0x4b, 0x65, 0x79, 0x12, 0x6b, 0x0a, 0x11, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x76, 0x65, 0x72, - 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x34, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, - 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, - 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, - 0x10, 0x75, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x5b, 0x0a, 0x14, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0xaa, - 0x01, 0x07, 0x22, 0x03, 0x08, 0x84, 0x07, 0x32, 0x00, 0x52, 0x13, 0x72, 0x65, 0x67, 0x69, 0x73, - 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x5f, - 0x0a, 0x16, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0xaa, 0x01, - 0x07, 0x22, 0x03, 0x08, 0x84, 0x07, 0x32, 0x00, 0x52, 0x15, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, - 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x1a, - 0x41, 0x0a, 0x13, 0x52, 0x65, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x72, 0x74, 0x69, 0x65, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0x77, 0x0a, 0x16, 0x57, 0x65, 0x62, 0x41, 0x75, 0x74, 0x68, 0x6e, 0x53, 0x69, - 0x74, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, - 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x16, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x22, 0x92, 0x02, 0x0a, 0x0e, - 0x41, 0x75, 0x74, 0x68, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x5d, - 0x0a, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, - 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x41, 0x75, 0x74, 0x68, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x46, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, - 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x21, 0x0a, - 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x09, 0xfa, - 0x42, 0x06, 0x7a, 0x04, 0x18, 0x80, 0x80, 0x40, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x22, 0x5e, 0x0a, 0x06, 0x46, 0x6f, - 0x72, 0x6d, 0x61, 0x74, 0x12, 0x12, 0x0a, 0x0e, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x49, - 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x4f, 0x52, 0x4d, - 0x41, 0x54, 0x5f, 0x42, 0x41, 0x52, 0x45, 0x5f, 0x59, 0x41, 0x4d, 0x4c, 0x10, 0x01, 0x12, 0x14, - 0x0a, 0x10, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x42, 0x41, 0x52, 0x45, 0x5f, 0x4a, 0x53, - 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x52, - 0x49, 0x43, 0x48, 0x5f, 0x4a, 0x53, 0x4f, 0x4e, 0x10, 0x03, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, - 0x22, 0xce, 0x01, 0x0a, 0x17, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x65, 0x71, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x30, 0x0a, 0x14, - 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, - 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x64, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x55, 0x72, 0x69, 0x12, 0x24, - 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x0c, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x0d, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, - 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, - 0x72, 0x05, 0x10, 0x0c, 0xd0, 0x01, 0x01, 0x52, 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, - 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x2a, 0x0a, 0x0c, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, - 0x72, 0x02, 0x68, 0x01, 0x52, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x22, 0xde, 0x04, 0x0a, 0x14, 0x52, 0x65, 0x61, 0x64, 0x49, 0x44, 0x50, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x35, 0x0a, 0x10, 0x73, 0x75, - 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x24, 0xd0, 0x01, 0x01, - 0x52, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x53, 0x65, 0x63, 0x72, 0x65, - 0x74, 0x12, 0x31, 0x0a, 0x0e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, - 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, - 0x10, 0x24, 0xd0, 0x01, 0x01, 0x52, 0x0d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x53, 0x65, - 0x63, 0x72, 0x65, 0x74, 0x12, 0x3c, 0x0a, 0x12, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, - 0x72, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x04, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, - 0x11, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x12, 0x30, 0x0a, 0x0c, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, - 0x04, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x61, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, - 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x49, 0x44, 0x50, 0x72, 0x6f, 0x76, 0x69, - 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, - 0x74, 0x79, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x70, - 0x65, 0x72, 0x74, 0x79, 0x4d, 0x61, 0x70, 0x12, 0x3f, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x71, 0x75, - 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x04, 0x18, 0x80, - 0x04, 0xd0, 0x01, 0x01, 0x52, 0x12, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x50, 0x72, 0x6f, 0x70, - 0x65, 0x72, 0x74, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x50, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x70, - 0x65, 0x72, 0x74, 0x79, 0x12, 0x2a, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, - 0x04, 0x18, 0x80, 0x04, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, 0x76, 0x0a, 0x10, 0x50, 0x72, - 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, - 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, - 0x12, 0x4c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x36, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x49, 0x44, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x50, - 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0x94, 0x01, 0x0a, 0x12, 0x53, 0x41, 0x46, 0x52, 0x50, 0x72, 0x6f, 0x76, 0x69, - 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x29, 0x0a, 0x0a, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, - 0x42, 0x07, 0x72, 0x05, 0x10, 0x02, 0x18, 0xfe, 0x01, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x04, 0x18, - 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, - 0x28, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x02, 0x18, 0xfe, 0x01, 0x52, 0x09, - 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x12, 0x0a, 0x10, 0x53, 0x4d, 0x53, - 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xe8, 0x06, - 0x0a, 0x12, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x12, 0x50, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, - 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, - 0x69, 0x6c, 0x52, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x46, 0x72, 0x6f, 0x6d, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, - 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, - 0x12, 0x57, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x67, 0x72, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x6e, - 0x64, 0x47, 0x72, 0x69, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, - 0x08, 0x73, 0x65, 0x6e, 0x64, 0x67, 0x72, 0x69, 0x64, 0x12, 0x54, 0x0a, 0x07, 0x6d, 0x61, 0x69, - 0x6c, 0x6a, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x69, 0x6c, 0x4a, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, - 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x61, 0x69, 0x6c, 0x6a, 0x65, 0x74, 0x12, - 0x54, 0x0a, 0x07, 0x6d, 0x61, 0x69, 0x6c, 0x67, 0x75, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x69, 0x6c, 0x67, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x69, 0x6c, 0x4a, 0x65, 0x74, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x55, 0x72, + 0x6c, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x75, 0x72, 0x6c, 0x54, + 0x61, 0x67, 0x73, 0x12, 0x45, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x63, 0x61, + 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, + 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x43, 0x61, 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x1a, 0x3a, 0x0a, 0x0c, 0x55, 0x72, + 0x6c, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x91, 0x01, 0x0a, 0x15, 0x4d, 0x61, 0x69, 0x6c, 0x67, 0x75, 0x6e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x61, - 0x69, 0x6c, 0x67, 0x75, 0x6e, 0x12, 0x54, 0x0a, 0x06, 0x61, 0x6d, 0x61, 0x7a, 0x6f, 0x6e, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x12, 0x26, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x19, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, + 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x12, 0x50, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x46, + 0x72, 0x6f, 0x6d, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xd5, 0x03, 0x0a, 0x17, 0x41, + 0x6d, 0x61, 0x7a, 0x6f, 0x6e, 0x53, 0x45, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2e, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, + 0x42, 0x07, 0x72, 0x05, 0x10, 0x19, 0x18, 0xfe, 0x01, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x19, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, + 0x52, 0x0f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, + 0x79, 0x12, 0x21, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x09, 0xfa, 0x42, 0x06, 0x72, 0x04, 0x10, 0x02, 0x18, 0x14, 0x52, 0x06, 0x72, 0x65, + 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x41, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x0b, 0xfa, 0x42, 0x08, 0x72, 0x06, 0x18, 0xfe, 0x01, 0xd0, 0x01, + 0x01, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x53, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x50, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, - 0x41, 0x6d, 0x61, 0x7a, 0x6f, 0x6e, 0x53, 0x45, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, - 0x01, 0x48, 0x00, 0x52, 0x06, 0x61, 0x6d, 0x61, 0x7a, 0x6f, 0x6e, 0x12, 0x57, 0x0a, 0x12, 0x69, - 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x46, 0x72, + 0x6f, 0x6d, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x58, 0x0a, 0x21, 0x66, 0x65, 0x65, + 0x64, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, + 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x18, 0xf7, 0x03, 0xd0, 0x01, + 0x01, 0x60, 0x01, 0x52, 0x1e, 0x66, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x46, 0x6f, 0x72, + 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x12, 0x3d, 0x0a, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x6f, 0x5f, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x42, + 0x0f, 0xfa, 0x42, 0x0c, 0x92, 0x01, 0x09, 0x22, 0x07, 0x72, 0x05, 0x18, 0xf7, 0x03, 0x60, 0x01, + 0x52, 0x10, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x65, 0x73, 0x22, 0xb7, 0x01, 0x0a, 0x0f, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, + 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4e, 0x0a, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, + 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, + 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x08, 0x74, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x4b, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x11, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x12, 0x5e, 0x0a, 0x16, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x70, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, - 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x14, - 0x72, 0x65, 0x73, 0x65, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x12, 0x5b, 0x0a, 0x14, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0b, 0x20, 0x01, + 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x08, + 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0x96, 0x09, 0x0a, + 0x0d, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x2b, + 0x0a, 0x0b, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x01, 0x18, 0xfe, 0x01, 0x52, + 0x0a, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x49, 0x64, 0x12, 0x53, 0x0a, 0x10, 0x74, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x01, 0x18, 0xfe, 0x01, 0x52, + 0x0f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x32, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, + 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x04, + 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x39, 0x0a, 0x08, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x6f, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x12, + 0x2e, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, + 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x02, 0x74, 0x6f, 0x12, + 0x2e, 0x0a, 0x02, 0x63, 0x63, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, + 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x02, 0x63, 0x63, 0x12, + 0x30, 0x0a, 0x03, 0x62, 0x63, 0x63, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x03, 0x62, 0x63, + 0x63, 0x12, 0x27, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x01, 0x18, 0xf7, 0x03, 0xd0, 0x01, + 0x01, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x4d, 0x0a, 0x07, 0x68, 0x65, + 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x69, 0x6e, + 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x57, 0x0a, 0x0b, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x5f, 0x61, 0x72, 0x67, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, + 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x54, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, 0x67, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, + 0x67, 0x73, 0x12, 0x79, 0x0a, 0x17, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x74, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x0c, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, + 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x79, 0x6e, 0x61, + 0x6d, 0x69, 0x63, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x15, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x54, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x1e, 0x0a, + 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x12, 0x4a, 0x0a, + 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, - 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x76, 0x65, - 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x12, 0x63, 0x0a, 0x19, 0x6f, 0x6e, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x70, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x69, 0x6c, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x61, 0x74, + 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x41, 0x0a, 0x0d, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0c, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x21, 0x0a, 0x0c, + 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x72, 0x6e, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x41, 0x72, 0x6e, 0x1a, + 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, + 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3d, 0x0a, 0x0f, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x69, 0x0a, 0x1a, 0x44, 0x79, + 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x35, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc0, 0x01, 0x0a, 0x0f, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, + 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3b, 0x0a, 0x0a, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x6e, 0x6c, 0x69, 0x6e, + 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0xb3, 0x08, 0x0a, 0x0c, 0x45, 0x6d, 0x61, + 0x69, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x32, 0x0a, 0x04, 0x66, 0x72, 0x6f, + 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x39, 0x0a, + 0x08, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, + 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x12, 0x2e, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, - 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x16, - 0x6f, 0x6e, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x22, 0x50, 0x0a, 0x05, 0x45, 0x6d, 0x61, 0x69, - 0x6c, 0x12, 0x24, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x18, 0xfe, 0x01, 0x60, 0x01, 0x52, 0x07, - 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x21, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x01, 0x18, 0xf7, - 0x03, 0xd0, 0x01, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xf5, 0x01, 0x0a, 0x16, 0x53, - 0x65, 0x6e, 0x64, 0x47, 0x72, 0x69, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x26, 0x0a, 0x07, 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x19, 0x18, - 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x06, 0x61, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x12, 0x21, 0x0a, - 0x0c, 0x73, 0x61, 0x6e, 0x64, 0x62, 0x6f, 0x78, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x61, 0x6e, 0x64, 0x62, 0x6f, 0x78, 0x4d, 0x6f, 0x64, 0x65, - 0x12, 0x4c, 0x0a, 0x0c, 0x69, 0x70, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0c, 0xfa, 0x42, 0x09, 0x72, 0x07, 0x10, 0x02, 0x18, 0x40, 0xd0, - 0x01, 0x01, 0x52, 0x0a, 0x69, 0x70, 0x50, 0x6f, 0x6f, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x42, - 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, - 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x10, 0xfa, 0x42, 0x0d, 0x72, - 0x0b, 0x10, 0x0a, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x88, 0x01, 0x01, 0x52, 0x04, 0x68, 0x6f, - 0x73, 0x74, 0x22, 0xbd, 0x02, 0x0a, 0x15, 0x4d, 0x61, 0x69, 0x6c, 0x4a, 0x65, 0x74, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x26, 0x0a, 0x07, - 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, - 0x42, 0x0a, 0x72, 0x08, 0x10, 0x19, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x06, 0x61, 0x70, - 0x69, 0x4b, 0x65, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x61, 0x6e, 0x64, 0x62, 0x6f, 0x78, 0x5f, - 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x61, 0x6e, 0x64, - 0x62, 0x6f, 0x78, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x56, 0x0a, 0x08, 0x75, 0x72, 0x6c, 0x5f, 0x74, - 0x61, 0x67, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x69, 0x6e, 0x64, 0x79, - 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x61, 0x69, 0x6c, 0x4a, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x76, 0x69, - 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x55, 0x72, 0x6c, 0x54, 0x61, 0x67, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x75, 0x72, 0x6c, 0x54, 0x61, 0x67, 0x73, 0x12, - 0x45, 0x0a, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x63, 0x61, 0x6d, 0x70, 0x61, 0x69, - 0x67, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x43, 0x61, - 0x6d, 0x70, 0x61, 0x69, 0x67, 0x6e, 0x1a, 0x3a, 0x0a, 0x0c, 0x55, 0x72, 0x6c, 0x54, 0x61, 0x67, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0x91, 0x01, 0x0a, 0x15, 0x4d, 0x61, 0x69, 0x6c, 0x67, 0x75, 0x6e, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x26, 0x0a, 0x07, - 0x61, 0x70, 0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, - 0x42, 0x0a, 0x72, 0x08, 0x10, 0x19, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x06, 0x61, 0x70, - 0x69, 0x4b, 0x65, 0x79, 0x12, 0x50, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, - 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, - 0x69, 0x6c, 0x52, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x46, 0x72, 0x6f, 0x6d, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xd5, 0x03, 0x0a, 0x17, 0x41, 0x6d, 0x61, 0x7a, 0x6f, - 0x6e, 0x53, 0x45, 0x53, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x12, 0x2e, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, - 0x10, 0x19, 0x18, 0xfe, 0x01, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, - 0x49, 0x64, 0x12, 0x39, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, - 0x42, 0x0a, 0x72, 0x08, 0x10, 0x19, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x0f, 0x73, 0x65, - 0x63, 0x72, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x21, 0x0a, - 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xfa, - 0x42, 0x06, 0x72, 0x04, 0x10, 0x02, 0x18, 0x14, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, - 0x12, 0x41, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x0b, 0xfa, 0x42, 0x08, 0x72, 0x06, 0x18, 0xfe, 0x01, 0xd0, 0x01, 0x01, 0x52, 0x14, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x50, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x66, - 0x72, 0x6f, 0x6d, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, - 0x6c, 0x52, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x46, 0x72, 0x6f, 0x6d, 0x41, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x58, 0x0a, 0x21, 0x66, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, - 0x6b, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x65, 0x6d, 0x61, - 0x69, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x18, 0xf7, 0x03, 0xd0, 0x01, 0x01, 0x60, 0x01, 0x52, - 0x1e, 0x66, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, - 0x69, 0x6e, 0x67, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x3d, 0x0a, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x42, 0x0f, 0xfa, 0x42, 0x0c, - 0x92, 0x01, 0x09, 0x22, 0x07, 0x72, 0x05, 0x18, 0xf7, 0x03, 0x60, 0x01, 0x52, 0x10, 0x72, 0x65, - 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x22, 0xb7, - 0x01, 0x0a, 0x0f, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x4e, 0x0a, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x2e, 0x0a, 0x02, 0x63, 0x63, 0x18, 0x04, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, - 0x6d, 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x42, 0x08, 0xfa, 0x42, - 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x12, 0x4b, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, - 0x61, 0x69, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, - 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, - 0x07, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0x96, 0x09, 0x0a, 0x0d, 0x45, 0x6d, 0x61, - 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x2b, 0x0a, 0x0b, 0x74, 0x65, - 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x01, 0x18, 0xfe, 0x01, 0x52, 0x0a, 0x74, 0x65, 0x6d, - 0x70, 0x6c, 0x61, 0x74, 0x65, 0x49, 0x64, 0x12, 0x53, 0x0a, 0x10, 0x74, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, - 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x01, 0x18, 0xfe, 0x01, 0x52, 0x0f, 0x74, 0x65, 0x6d, - 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x04, - 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, - 0x12, 0x39, 0x0a, 0x08, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, - 0x69, 0x6c, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x12, 0x2e, 0x0a, 0x02, 0x74, - 0x6f, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x2e, 0x0a, 0x02, 0x63, - 0x63, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x02, 0x63, 0x63, 0x12, 0x30, 0x0a, 0x03, 0x62, - 0x63, 0x63, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, - 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x03, 0x62, 0x63, 0x63, 0x12, 0x27, 0x0a, - 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, - 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x01, 0x18, 0xf7, 0x03, 0xd0, 0x01, 0x01, 0x52, 0x07, 0x73, - 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x4d, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, - 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, - 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, - 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, - 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x57, 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, - 0x61, 0x72, 0x67, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x69, 0x6e, 0x64, + 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x02, 0x63, 0x63, 0x12, 0x30, 0x0a, 0x03, 0x62, 0x63, 0x63, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x03, 0x62, 0x63, 0x63, 0x12, 0x27, 0x0a, 0x07, 0x73, 0x75, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, + 0x72, 0x08, 0x10, 0x01, 0x18, 0xf7, 0x03, 0xd0, 0x01, 0x01, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x65, 0x78, 0x74, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x74, 0x6d, 0x6c, 0x5f, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x68, 0x74, + 0x6d, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x4c, 0x0a, 0x07, 0x68, 0x65, 0x61, + 0x64, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, 0x67, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, 0x67, 0x73, 0x12, 0x79, - 0x0a, 0x17, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x41, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x54, - 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x54, + 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, + 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x56, 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x5f, 0x61, 0x72, 0x67, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x69, + 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, 0x67, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, 0x67, 0x73, 0x12, + 0x78, 0x0a, 0x17, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x40, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x15, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x61, 0x74, - 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, + 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x0b, 0x61, 0x74, 0x74, - 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, + 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x41, 0x0a, 0x0d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, - 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, + 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0c, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x65, 0x6d, 0x70, - 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x72, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x41, 0x72, 0x6e, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, - 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, - 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3d, 0x0a, 0x0f, 0x43, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x41, 0x72, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x69, 0x0a, 0x1a, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, - 0x63, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x35, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, - 0x2e, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x22, 0xc0, 0x01, 0x0a, 0x0f, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x74, 0x74, 0x61, 0x63, - 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, - 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x1b, 0x0a, - 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x22, 0xb3, 0x08, 0x0a, 0x0c, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x32, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, - 0x61, 0x69, 0x6c, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x39, 0x0a, 0x08, 0x72, 0x65, 0x70, - 0x6c, 0x79, 0x5f, 0x74, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, - 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x07, 0x72, 0x65, 0x70, - 0x6c, 0x79, 0x54, 0x6f, 0x12, 0x2e, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, - 0x52, 0x02, 0x74, 0x6f, 0x12, 0x2e, 0x0a, 0x02, 0x63, 0x63, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, - 0x52, 0x02, 0x63, 0x63, 0x12, 0x30, 0x0a, 0x03, 0x62, 0x63, 0x63, 0x18, 0x05, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, - 0x6c, 0x52, 0x03, 0x62, 0x63, 0x63, 0x12, 0x27, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x0a, 0x72, 0x08, 0x10, 0x01, - 0x18, 0xf7, 0x03, 0xd0, 0x01, 0x01, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, - 0x21, 0x0a, 0x0c, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x74, 0x6d, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x68, 0x74, 0x6d, 0x6c, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x4c, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, - 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, - 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x48, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, - 0x65, 0x72, 0x73, 0x12, 0x56, 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x61, 0x72, - 0x67, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, - 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, - 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, - 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, 0x67, 0x73, 0x12, 0x78, 0x0a, 0x17, 0x64, - 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x69, - 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x2e, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x54, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x15, - 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, - 0x69, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, - 0x6f, 0x72, 0x69, 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, - 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, - 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, - 0x73, 0x12, 0x41, 0x0a, 0x0d, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x79, 0x6c, 0x6f, - 0x61, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x79, - 0x6c, 0x6f, 0x61, 0x64, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x1a, 0x3d, 0x0a, 0x0f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, 0x67, 0x73, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, - 0x69, 0x0a, 0x1a, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, - 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, - 0x35, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, - 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x73, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xe9, 0x04, 0x0a, 0x16, 0x50, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x5a, 0x0a, 0x0f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, - 0x65, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, + 0x74, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3d, 0x0a, 0x0f, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x72, + 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x1a, 0x69, 0x0a, 0x1a, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x54, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x6b, 0x65, 0x79, 0x12, 0x35, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x6f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xe9, + 0x04, 0x0a, 0x16, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x5a, 0x0a, 0x0f, 0x75, 0x73, 0x65, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x73, 0x65, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x42, 0x08, 0xfa, 0x42, 0x05, + 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x0e, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x50, + 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x5a, 0x0a, 0x0f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, - 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, - 0x01, 0x52, 0x0e, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, - 0x79, 0x12, 0x5a, 0x0a, 0x0f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x70, 0x6f, - 0x6c, 0x69, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x50, 0x6f, 0x6c, - 0x69, 0x63, 0x79, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x0e, 0x70, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x3e, 0x0a, - 0x0d, 0x66, 0x61, 0x69, 0x6c, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x03, + 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, + 0x01, 0x52, 0x0e, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x50, 0x6f, 0x6c, 0x69, 0x63, + 0x79, 0x12, 0x3e, 0x0a, 0x0d, 0x66, 0x61, 0x69, 0x6c, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, + 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x66, 0x61, 0x69, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, + 0x6c, 0x12, 0x55, 0x0a, 0x19, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x70, 0x61, 0x73, + 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x0c, 0x66, 0x61, 0x69, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x55, 0x0a, - 0x19, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, - 0x64, 0x5f, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x17, 0x6d, 0x69, 0x6e, - 0x69, 0x6d, 0x75, 0x6d, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x4c, 0x69, 0x66, 0x65, - 0x74, 0x69, 0x6d, 0x65, 0x12, 0x55, 0x0a, 0x19, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, - 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x17, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, + 0x4c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x55, 0x0a, 0x19, 0x6d, 0x61, 0x78, 0x69, + 0x6d, 0x75, 0x6d, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x6c, 0x69, 0x66, + 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x17, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x50, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x4c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, + 0x29, 0x0a, 0x10, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, + 0x6f, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x70, 0x61, 0x73, 0x73, 0x77, + 0x6f, 0x72, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x40, 0x0a, 0x1c, 0x6d, 0x61, + 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, + 0x65, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x1a, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, + 0x74, 0x69, 0x76, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x0c, + 0x6c, 0x6f, 0x63, 0x6b, 0x6f, 0x75, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x6c, + 0x6f, 0x63, 0x6b, 0x6f, 0x75, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x8a, 0x03, 0x0a, 0x0e, 0x55, + 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x61, 0x0a, + 0x18, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, + 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, + 0x27, 0xfa, 0x42, 0x24, 0x92, 0x01, 0x21, 0x10, 0x03, 0x18, 0x01, 0x22, 0x1b, 0x72, 0x19, 0x52, + 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x52, 0x08, + 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x16, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, + 0x64, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, + 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x45, 0x6d, 0x61, 0x69, + 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x5f, 0x65, 0x6d, 0x61, 0x69, + 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, + 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x65, 0x0a, 0x19, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x5f, 0x65, + 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x67, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x17, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x50, 0x61, 0x73, 0x73, 0x77, - 0x6f, 0x72, 0x64, 0x4c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x40, 0x0a, 0x1c, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, - 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x66, 0x61, - 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1a, 0x6d, 0x61, - 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, - 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x0c, 0x6c, 0x6f, 0x63, 0x6b, - 0x6f, 0x75, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x6c, 0x6f, 0x63, 0x6b, 0x6f, - 0x75, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x8a, 0x03, 0x0a, 0x0e, 0x55, 0x73, 0x65, 0x72, 0x6e, - 0x61, 0x6d, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x61, 0x0a, 0x18, 0x61, 0x6c, 0x6c, - 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x66, 0x6f, - 0x72, 0x6d, 0x61, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x27, 0xfa, 0x42, 0x24, - 0x92, 0x01, 0x21, 0x10, 0x03, 0x18, 0x01, 0x22, 0x1b, 0x72, 0x19, 0x52, 0x05, 0x65, 0x6d, 0x61, - 0x69, 0x6c, 0x52, 0x06, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x52, 0x16, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x55, 0x73, 0x65, - 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x21, 0x0a, - 0x0c, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0b, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x6d, 0x61, 0x69, 0x6c, - 0x12, 0x65, 0x0a, 0x19, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, - 0x5f, 0x67, 0x72, 0x61, 0x63, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0f, - 0xfa, 0x42, 0x0c, 0xaa, 0x01, 0x09, 0x22, 0x03, 0x08, 0x84, 0x07, 0x32, 0x02, 0x08, 0x05, 0x52, - 0x16, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x47, 0x72, 0x61, 0x63, - 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, - 0x65, 0x64, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x45, - 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x65, - 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x64, - 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x15, 0x65, 0x78, - 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x6f, 0x6d, 0x61, - 0x69, 0x6e, 0x73, 0x22, 0x96, 0x01, 0x0a, 0x18, 0x55, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x50, 0x72, - 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, - 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x75, 0x6e, 0x69, 0x71, 0x75, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x55, - 0x6e, 0x69, 0x71, 0x75, 0x65, 0x12, 0x55, 0x0a, 0x10, 0x63, 0x61, 0x6e, 0x6f, 0x6e, 0x69, 0x63, - 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, - 0x29, 0xfa, 0x42, 0x26, 0x92, 0x01, 0x23, 0x18, 0x01, 0x22, 0x1d, 0x72, 0x1b, 0x52, 0x07, 0x75, - 0x6e, 0x69, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x10, 0x63, 0x61, 0x73, 0x65, 0x2d, 0x69, 0x6e, 0x73, - 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x28, 0x01, 0x52, 0x10, 0x63, 0x61, 0x6e, 0x6f, - 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa1, 0x01, 0x0a, - 0x0e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, - 0x4b, 0x0a, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x2f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x73, 0x73, - 0x77, 0x6f, 0x72, 0x64, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x52, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x42, 0x0a, 0x0e, - 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, - 0x22, 0x99, 0x02, 0x0a, 0x19, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x21, - 0x0a, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, - 0xfa, 0x42, 0x06, 0x72, 0x04, 0x28, 0x80, 0xa0, 0x1f, 0x52, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, - 0x79, 0x12, 0x5b, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x39, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, - 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x08, 0xfa, 0x42, - 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x36, - 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, - 0x1f, 0x92, 0x01, 0x1c, 0x18, 0x01, 0x22, 0x16, 0x72, 0x14, 0x10, 0x01, 0x18, 0x14, 0x32, 0x0e, - 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5d, 0x2b, 0x24, 0x28, 0x01, - 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x22, 0x44, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, - 0x49, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x41, - 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x54, 0x41, 0x54, 0x55, - 0x53, 0x5f, 0x49, 0x4e, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x02, 0x22, 0x3d, 0x0a, 0x1a, - 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1f, 0x0a, 0x06, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, - 0x02, 0x10, 0x01, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, 0x71, 0x0a, 0x1b, 0x4b, - 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x12, 0x29, 0x0a, 0x0b, 0x64, 0x65, - 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x27, 0x0a, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, - 0x10, 0x01, 0x52, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x73, 0x22, 0x6e, - 0x0a, 0x0f, 0x41, 0x75, 0x64, 0x69, 0x74, 0x53, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x12, 0x4a, 0x0a, 0x05, 0x6b, 0x61, 0x66, 0x6b, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, 0x61, 0x66, 0x6b, 0x61, - 0x53, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, - 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x05, 0x6b, 0x61, 0x66, 0x6b, 0x61, 0x42, 0x0f, 0x0a, - 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, 0xf6, - 0x01, 0x0a, 0x0f, 0x4b, 0x61, 0x66, 0x6b, 0x61, 0x53, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x12, 0x2d, 0x0a, 0x07, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x09, 0x42, 0x13, 0xfa, 0x42, 0x10, 0x92, 0x01, 0x0d, 0x18, 0x01, 0x22, 0x07, 0x72, - 0x05, 0x10, 0x08, 0x90, 0x01, 0x01, 0x28, 0x01, 0x52, 0x07, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, - 0x73, 0x12, 0x33, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x1d, 0xfa, 0x42, 0x1a, 0x72, 0x18, 0x10, 0x01, 0x18, 0xf9, 0x01, 0x32, 0x11, 0x5e, 0x5b, - 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x2e, 0x5f, 0x2d, 0x5d, 0x2b, 0x24, 0x52, - 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, - 0x65, 0x5f, 0x74, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, 0x69, 0x73, - 0x61, 0x62, 0x6c, 0x65, 0x54, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, - 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, - 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x2a, 0xa4, 0x0a, 0x0a, 0x0c, 0x50, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x52, 0x4f, 0x56, - 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, - 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x4d, 0x41, 0x5a, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x10, - 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x41, 0x4d, 0x41, 0x5a, 0x4f, 0x4e, 0x43, 0x4f, 0x47, 0x4e, 0x49, 0x54, 0x4f, - 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x22, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, - 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x50, 0x50, 0x4c, 0x45, 0x5f, 0x43, 0x4f, - 0x4d, 0x10, 0x29, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, 0x45, 0x51, 0x5f, 0x43, - 0x4f, 0x4d, 0x10, 0x21, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x41, 0x4e, 0x4b, 0x49, 0x44, 0x5f, 0x43, 0x4f, 0x4d, - 0x10, 0x26, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, - 0x59, 0x50, 0x45, 0x5f, 0x42, 0x41, 0x4e, 0x4b, 0x49, 0x44, 0x5f, 0x4e, 0x4f, 0x10, 0x25, 0x12, - 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x5f, 0x42, 0x49, 0x54, 0x42, 0x55, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, - 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x45, - 0x52, 0x4e, 0x5f, 0x43, 0x48, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x52, 0x4f, 0x56, 0x49, - 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, - 0x27, 0x12, 0x1e, 0x0a, 0x1a, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x46, 0x41, 0x43, 0x45, 0x42, 0x4f, 0x4f, 0x4b, 0x5f, 0x43, 0x4f, 0x4d, 0x10, - 0x04, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x46, 0x49, 0x54, 0x42, 0x49, 0x54, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x05, 0x12, - 0x20, 0x0a, 0x1c, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x5f, 0x46, 0x4f, 0x55, 0x52, 0x53, 0x51, 0x55, 0x41, 0x52, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x10, - 0x06, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x47, 0x49, 0x54, 0x48, 0x55, 0x42, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x07, 0x12, - 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x5f, 0x47, 0x49, 0x54, 0x4c, 0x41, 0x42, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x08, 0x12, 0x1c, 0x0a, - 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x47, - 0x4f, 0x4f, 0x47, 0x4c, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x09, 0x12, 0x1c, 0x0a, 0x18, 0x50, - 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x48, 0x45, 0x52, - 0x4f, 0x4b, 0x55, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x0a, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x52, 0x4f, - 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x48, 0x49, 0x50, 0x43, 0x48, - 0x41, 0x54, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x0b, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x52, 0x4f, 0x56, - 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x44, 0x59, 0x4b, 0x49, - 0x54, 0x45, 0x5f, 0x49, 0x44, 0x10, 0x23, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x52, 0x4f, 0x56, 0x49, - 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x44, 0x59, 0x4b, 0x49, 0x54, - 0x45, 0x5f, 0x4d, 0x45, 0x10, 0x24, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, - 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x53, 0x54, 0x41, 0x47, 0x52, 0x41, - 0x4d, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x0c, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, - 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4b, 0x41, 0x4b, 0x41, 0x4f, 0x5f, 0x43, - 0x4f, 0x4d, 0x10, 0x0d, 0x12, 0x1e, 0x0a, 0x1a, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4c, 0x49, 0x4e, 0x4b, 0x45, 0x44, 0x49, 0x4e, 0x5f, 0x43, - 0x4f, 0x4d, 0x10, 0x0e, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x41, 0x49, 0x4c, 0x43, 0x48, 0x49, 0x4d, 0x50, 0x5f, - 0x43, 0x4f, 0x4d, 0x10, 0x0f, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, - 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x41, 0x49, 0x4c, 0x5f, 0x52, 0x55, 0x10, 0x10, - 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, - 0x45, 0x5f, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x4d, 0x41, 0x54, 0x48, 0x5f, 0x43, 0x4f, 0x4d, 0x10, - 0x11, 0x12, 0x27, 0x0a, 0x23, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x53, 0x41, 0x4e, 0x44, 0x42, 0x4f, 0x58, 0x5f, 0x4d, 0x45, 0x44, 0x49, 0x41, - 0x4d, 0x41, 0x54, 0x48, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x12, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, - 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4c, 0x49, 0x56, 0x45, - 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x20, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, - 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x49, 0x43, 0x52, 0x4f, 0x53, 0x4f, 0x46, - 0x54, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x13, 0x12, 0x22, 0x0a, 0x1e, 0x50, 0x52, 0x4f, 0x56, 0x49, - 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x48, 0x45, 0x41, 0x4c, 0x54, 0x48, 0x5f, - 0x4e, 0x4f, 0x4b, 0x49, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x14, 0x12, 0x22, 0x0a, 0x1e, 0x50, - 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4f, 0x44, 0x4e, - 0x4f, 0x4b, 0x4c, 0x41, 0x53, 0x53, 0x4e, 0x49, 0x4b, 0x49, 0x5f, 0x52, 0x55, 0x10, 0x15, 0x12, + 0x6f, 0x6e, 0x42, 0x0f, 0xfa, 0x42, 0x0c, 0xaa, 0x01, 0x09, 0x22, 0x03, 0x08, 0x84, 0x07, 0x32, + 0x02, 0x08, 0x05, 0x52, 0x16, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x45, 0x6d, 0x61, 0x69, 0x6c, + 0x47, 0x72, 0x61, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x61, + 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x64, 0x6f, 0x6d, + 0x61, 0x69, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, + 0x77, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x12, + 0x36, 0x0a, 0x17, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x65, 0x6d, 0x61, + 0x69, 0x6c, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x15, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x45, 0x6d, 0x61, 0x69, 0x6c, + 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x22, 0x96, 0x01, 0x0a, 0x18, 0x55, 0x6e, 0x69, 0x71, + 0x75, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, + 0x61, 0x69, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x75, + 0x6e, 0x69, 0x71, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x74, 0x65, 0x6e, + 0x61, 0x6e, 0x74, 0x55, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x12, 0x55, 0x0a, 0x10, 0x63, 0x61, 0x6e, + 0x6f, 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x09, 0x42, 0x29, 0xfa, 0x42, 0x26, 0x92, 0x01, 0x23, 0x18, 0x01, 0x22, 0x1d, 0x72, + 0x1b, 0x52, 0x07, 0x75, 0x6e, 0x69, 0x63, 0x6f, 0x64, 0x65, 0x52, 0x10, 0x63, 0x61, 0x73, 0x65, + 0x2d, 0x69, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x28, 0x01, 0x52, 0x10, + 0x63, 0x61, 0x6e, 0x6f, 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0xa1, 0x01, 0x0a, 0x0e, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x50, 0x6f, 0x6c, + 0x69, 0x63, 0x79, 0x12, 0x4b, 0x0a, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x54, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, + 0x12, 0x42, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x22, 0x99, 0x02, 0x0a, 0x19, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, + 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x12, 0x21, 0x0a, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x09, 0xfa, 0x42, 0x06, 0x72, 0x04, 0x28, 0x80, 0xa0, 0x1f, 0x52, 0x06, 0x70, + 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x5b, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, + 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, + 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x42, 0x08, 0xfa, 0x42, 0x05, 0x82, 0x01, 0x02, 0x10, 0x01, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x36, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, + 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x18, 0x01, 0x22, 0x16, 0x72, 0x14, 0x10, 0x01, + 0x18, 0x14, 0x32, 0x0e, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5d, + 0x2b, 0x24, 0x28, 0x01, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x22, 0x44, 0x0a, 0x06, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x49, + 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x54, 0x41, 0x54, + 0x55, 0x53, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x53, + 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x49, 0x4e, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x02, + 0x22, 0x3d, 0x0a, 0x1a, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, + 0x70, 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1f, + 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, + 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x22, + 0x71, 0x0a, 0x1b, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x47, 0x72, 0x61, 0x70, + 0x68, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x48, 0x65, 0x6c, 0x70, 0x65, 0x72, 0x73, 0x12, 0x29, + 0x0a, 0x0b, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0b, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x27, 0x0a, 0x0a, 0x64, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, + 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x73, 0x22, 0x6e, 0x0a, 0x0f, 0x41, 0x75, 0x64, 0x69, 0x74, 0x53, 0x69, 0x6e, 0x6b, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4a, 0x0a, 0x05, 0x6b, 0x61, 0x66, 0x6b, 0x61, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, + 0x61, 0x66, 0x6b, 0x61, 0x53, 0x69, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x08, + 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x48, 0x00, 0x52, 0x05, 0x6b, 0x61, 0x66, 0x6b, + 0x61, 0x42, 0x0f, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x03, 0xf8, + 0x42, 0x01, 0x22, 0xf6, 0x01, 0x0a, 0x0f, 0x4b, 0x61, 0x66, 0x6b, 0x61, 0x53, 0x69, 0x6e, 0x6b, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2d, 0x0a, 0x07, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 0x13, 0xfa, 0x42, 0x10, 0x92, 0x01, 0x0d, 0x18, + 0x01, 0x22, 0x07, 0x72, 0x05, 0x10, 0x08, 0x90, 0x01, 0x01, 0x28, 0x01, 0x52, 0x07, 0x62, 0x72, + 0x6f, 0x6b, 0x65, 0x72, 0x73, 0x12, 0x33, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x1d, 0xfa, 0x42, 0x1a, 0x72, 0x18, 0x10, 0x01, 0x18, 0xf9, 0x01, + 0x32, 0x11, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x2e, 0x5f, 0x2d, + 0x5d, 0x2b, 0x24, 0x52, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0a, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, + 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, + 0x69, 0x66, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x2a, 0xa4, 0x0a, 0x0a, 0x0c, + 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, + 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, + 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, + 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x4d, 0x41, 0x5a, 0x4f, 0x4e, 0x5f, + 0x43, 0x4f, 0x4d, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, + 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x4d, 0x41, 0x5a, 0x4f, 0x4e, 0x43, 0x4f, 0x47, + 0x4e, 0x49, 0x54, 0x4f, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x22, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, + 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x50, 0x50, 0x4c, + 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x29, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x56, 0x49, + 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, + 0x45, 0x51, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x21, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, + 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x41, 0x4e, 0x4b, 0x49, 0x44, + 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x26, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, + 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x41, 0x4e, 0x4b, 0x49, 0x44, 0x5f, 0x4e, + 0x4f, 0x10, 0x25, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x49, 0x54, 0x42, 0x55, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x02, + 0x12, 0x19, 0x0a, 0x15, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, + 0x45, 0x5f, 0x43, 0x45, 0x52, 0x4e, 0x5f, 0x43, 0x48, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x50, + 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x55, 0x53, + 0x54, 0x4f, 0x4d, 0x10, 0x27, 0x12, 0x1e, 0x0a, 0x1a, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, + 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x41, 0x43, 0x45, 0x42, 0x4f, 0x4f, 0x4b, 0x5f, + 0x43, 0x4f, 0x4d, 0x10, 0x04, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, + 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x49, 0x54, 0x42, 0x49, 0x54, 0x5f, 0x43, 0x4f, + 0x4d, 0x10, 0x05, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x4f, 0x55, 0x52, 0x53, 0x51, 0x55, 0x41, 0x52, 0x45, 0x5f, + 0x43, 0x4f, 0x4d, 0x10, 0x06, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, + 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x47, 0x49, 0x54, 0x48, 0x55, 0x42, 0x5f, 0x43, 0x4f, + 0x4d, 0x10, 0x07, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x47, 0x49, 0x54, 0x4c, 0x41, 0x42, 0x5f, 0x43, 0x4f, 0x4d, 0x10, + 0x08, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x47, 0x4f, 0x4f, 0x47, 0x4c, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x09, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x5f, 0x50, 0x41, 0x59, 0x50, 0x41, 0x4c, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x16, 0x12, 0x24, 0x0a, - 0x20, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, - 0x41, 0x4e, 0x44, 0x42, 0x4f, 0x58, 0x5f, 0x50, 0x41, 0x59, 0x50, 0x41, 0x4c, 0x5f, 0x43, 0x4f, - 0x4d, 0x10, 0x17, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x4c, 0x41, 0x43, 0x4b, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x18, - 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, - 0x45, 0x5f, 0x53, 0x50, 0x4f, 0x54, 0x49, 0x46, 0x59, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x19, 0x12, - 0x23, 0x0a, 0x1f, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x5f, 0x53, 0x54, 0x41, 0x43, 0x4b, 0x4f, 0x56, 0x45, 0x52, 0x46, 0x4c, 0x4f, 0x57, 0x5f, 0x43, - 0x4f, 0x4d, 0x10, 0x1a, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x57, 0x49, 0x54, 0x43, 0x48, 0x5f, 0x54, 0x56, 0x10, - 0x1b, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, - 0x50, 0x45, 0x5f, 0x55, 0x42, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x1c, 0x12, 0x1a, 0x0a, - 0x16, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x56, - 0x49, 0x50, 0x50, 0x53, 0x5f, 0x4e, 0x4f, 0x10, 0x28, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x52, 0x4f, - 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x56, 0x4b, 0x5f, 0x43, 0x4f, - 0x4d, 0x10, 0x1d, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x59, 0x41, 0x48, 0x4f, 0x4f, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x1e, - 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, - 0x45, 0x5f, 0x59, 0x41, 0x4e, 0x44, 0x45, 0x58, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x1f, 0x2a, 0x73, - 0x0a, 0x09, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x41, - 0x55, 0x54, 0x48, 0x5f, 0x53, 0x54, 0x59, 0x4c, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, - 0x44, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x53, 0x54, 0x59, 0x4c, - 0x45, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x10, 0x01, 0x12, - 0x18, 0x0a, 0x14, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x53, 0x54, 0x59, 0x4c, 0x45, 0x5f, 0x49, 0x4e, - 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x53, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x55, 0x54, - 0x48, 0x5f, 0x53, 0x54, 0x59, 0x4c, 0x45, 0x5f, 0x49, 0x4e, 0x5f, 0x48, 0x45, 0x41, 0x44, 0x45, - 0x52, 0x10, 0x03, 0x2a, 0xb9, 0x01, 0x0a, 0x09, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x16, 0x0a, 0x12, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, - 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x47, 0x52, 0x41, - 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x4f, 0x52, 0x49, 0x5a, - 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, - 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4d, 0x50, 0x4c, 0x49, - 0x43, 0x49, 0x54, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, - 0x59, 0x50, 0x45, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, 0x10, 0x03, 0x12, 0x21, - 0x0a, 0x1d, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x4c, 0x49, - 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x52, 0x45, 0x44, 0x45, 0x4e, 0x54, 0x49, 0x41, 0x4c, 0x53, 0x10, - 0x04, 0x12, 0x1c, 0x0a, 0x18, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, - 0x52, 0x45, 0x46, 0x52, 0x45, 0x53, 0x48, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x05, 0x2a, - 0x76, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x19, 0x0a, 0x15, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, - 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x45, - 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x4f, 0x4b, 0x45, - 0x4e, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x52, - 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x44, 0x5f, - 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x03, 0x2a, 0x76, 0x0a, 0x11, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x1b, - 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x55, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, - 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, - 0x1a, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x55, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x10, 0x01, 0x12, 0x20, 0x0a, - 0x1c, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x55, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x41, 0x49, 0x52, 0x57, 0x49, 0x53, 0x45, 0x10, 0x02, 0x2a, - 0xfd, 0x01, 0x0a, 0x17, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, - 0x74, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x26, 0x0a, 0x22, 0x54, - 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x55, - 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, - 0x44, 0x10, 0x00, 0x12, 0x32, 0x0a, 0x2e, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, - 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, - 0x44, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x5f, - 0x42, 0x41, 0x53, 0x49, 0x43, 0x10, 0x01, 0x12, 0x31, 0x0a, 0x2d, 0x54, 0x4f, 0x4b, 0x45, 0x4e, + 0x5f, 0x48, 0x45, 0x52, 0x4f, 0x4b, 0x55, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x0a, 0x12, 0x1d, 0x0a, + 0x19, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x48, + 0x49, 0x50, 0x43, 0x48, 0x41, 0x54, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x0b, 0x12, 0x1d, 0x0a, 0x19, + 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, + 0x44, 0x59, 0x4b, 0x49, 0x54, 0x45, 0x5f, 0x49, 0x44, 0x10, 0x23, 0x12, 0x1d, 0x0a, 0x19, 0x50, + 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x44, + 0x59, 0x4b, 0x49, 0x54, 0x45, 0x5f, 0x4d, 0x45, 0x10, 0x24, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, + 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x53, 0x54, + 0x41, 0x47, 0x52, 0x41, 0x4d, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x0c, 0x12, 0x1b, 0x0a, 0x17, 0x50, + 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4b, 0x41, 0x4b, + 0x41, 0x4f, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x0d, 0x12, 0x1e, 0x0a, 0x1a, 0x50, 0x52, 0x4f, 0x56, + 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4c, 0x49, 0x4e, 0x4b, 0x45, 0x44, + 0x49, 0x4e, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x0e, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x56, + 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x41, 0x49, 0x4c, 0x43, 0x48, + 0x49, 0x4d, 0x50, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x0f, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x52, 0x4f, + 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x41, 0x49, 0x4c, 0x5f, + 0x52, 0x55, 0x10, 0x10, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x4d, 0x41, 0x54, 0x48, 0x5f, + 0x43, 0x4f, 0x4d, 0x10, 0x11, 0x12, 0x27, 0x0a, 0x23, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, + 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x41, 0x4e, 0x44, 0x42, 0x4f, 0x58, 0x5f, 0x4d, + 0x45, 0x44, 0x49, 0x41, 0x4d, 0x41, 0x54, 0x48, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x12, 0x12, 0x1a, + 0x0a, 0x16, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x4c, 0x49, 0x56, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x20, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, + 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x49, 0x43, 0x52, + 0x4f, 0x53, 0x4f, 0x46, 0x54, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x13, 0x12, 0x22, 0x0a, 0x1e, 0x50, + 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x48, 0x45, 0x41, + 0x4c, 0x54, 0x48, 0x5f, 0x4e, 0x4f, 0x4b, 0x49, 0x41, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x14, 0x12, + 0x22, 0x0a, 0x1e, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x4f, 0x44, 0x4e, 0x4f, 0x4b, 0x4c, 0x41, 0x53, 0x53, 0x4e, 0x49, 0x4b, 0x49, 0x5f, 0x52, + 0x55, 0x10, 0x15, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x41, 0x59, 0x50, 0x41, 0x4c, 0x5f, 0x43, 0x4f, 0x4d, 0x10, + 0x16, 0x12, 0x24, 0x0a, 0x20, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x53, 0x41, 0x4e, 0x44, 0x42, 0x4f, 0x58, 0x5f, 0x50, 0x41, 0x59, 0x50, 0x41, + 0x4c, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x17, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, + 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x4c, 0x41, 0x43, 0x4b, 0x5f, 0x43, + 0x4f, 0x4d, 0x10, 0x18, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x50, 0x4f, 0x54, 0x49, 0x46, 0x59, 0x5f, 0x43, 0x4f, + 0x4d, 0x10, 0x19, 0x12, 0x23, 0x0a, 0x1f, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x43, 0x4b, 0x4f, 0x56, 0x45, 0x52, 0x46, 0x4c, + 0x4f, 0x57, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x1a, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, + 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x54, 0x57, 0x49, 0x54, 0x43, 0x48, + 0x5f, 0x54, 0x56, 0x10, 0x1b, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, + 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x42, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4d, 0x10, + 0x1c, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x56, 0x49, 0x50, 0x50, 0x53, 0x5f, 0x4e, 0x4f, 0x10, 0x28, 0x12, 0x18, 0x0a, + 0x14, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x56, + 0x4b, 0x5f, 0x43, 0x4f, 0x4d, 0x10, 0x1d, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x52, 0x4f, 0x56, 0x49, + 0x44, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x59, 0x41, 0x48, 0x4f, 0x4f, 0x5f, 0x43, + 0x4f, 0x4d, 0x10, 0x1e, 0x12, 0x1c, 0x0a, 0x18, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x59, 0x41, 0x4e, 0x44, 0x45, 0x58, 0x5f, 0x43, 0x4f, 0x4d, + 0x10, 0x1f, 0x2a, 0x73, 0x0a, 0x09, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x12, + 0x16, 0x0a, 0x12, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x53, 0x54, 0x59, 0x4c, 0x45, 0x5f, 0x49, 0x4e, + 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x55, 0x54, 0x48, 0x5f, + 0x53, 0x54, 0x59, 0x4c, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, + 0x54, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x53, 0x54, 0x59, 0x4c, + 0x45, 0x5f, 0x49, 0x4e, 0x5f, 0x50, 0x41, 0x52, 0x41, 0x4d, 0x53, 0x10, 0x02, 0x12, 0x18, 0x0a, + 0x14, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x53, 0x54, 0x59, 0x4c, 0x45, 0x5f, 0x49, 0x4e, 0x5f, 0x48, + 0x45, 0x41, 0x44, 0x45, 0x52, 0x10, 0x03, 0x2a, 0xb9, 0x01, 0x0a, 0x09, 0x47, 0x72, 0x61, 0x6e, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x21, 0x0a, + 0x1d, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x48, + 0x4f, 0x52, 0x49, 0x5a, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x10, 0x01, + 0x12, 0x17, 0x0a, 0x13, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, + 0x4d, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x47, 0x52, 0x41, + 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, + 0x10, 0x03, 0x12, 0x21, 0x0a, 0x1d, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x52, 0x45, 0x44, 0x45, 0x4e, 0x54, 0x49, + 0x41, 0x4c, 0x53, 0x10, 0x04, 0x12, 0x1c, 0x0a, 0x18, 0x47, 0x52, 0x41, 0x4e, 0x54, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x52, 0x45, 0x46, 0x52, 0x45, 0x53, 0x48, 0x5f, 0x54, 0x4f, 0x4b, 0x45, + 0x4e, 0x10, 0x05, 0x2a, 0x76, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x17, + 0x0a, 0x13, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x52, 0x45, 0x53, 0x50, 0x4f, + 0x4e, 0x53, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x10, 0x02, 0x12, + 0x1a, 0x0a, 0x16, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x49, 0x44, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x03, 0x2a, 0x76, 0x0a, 0x11, 0x43, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x1f, 0x0a, 0x1b, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x55, 0x42, 0x4a, 0x45, + 0x43, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, + 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x55, 0x42, 0x4a, + 0x45, 0x43, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x10, + 0x01, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x55, 0x42, 0x4a, + 0x45, 0x43, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x41, 0x49, 0x52, 0x57, 0x49, 0x53, + 0x45, 0x10, 0x02, 0x2a, 0xfd, 0x01, 0x0a, 0x17, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, + 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, + 0x26, 0x0a, 0x22, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, + 0x54, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x49, 0x4e, + 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x32, 0x0a, 0x2e, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x45, 0x43, - 0x52, 0x45, 0x54, 0x5f, 0x50, 0x4f, 0x53, 0x54, 0x10, 0x02, 0x12, 0x2e, 0x0a, 0x2a, 0x54, 0x4f, - 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x55, 0x54, - 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, - 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x4a, 0x57, 0x54, 0x10, 0x03, 0x12, 0x23, 0x0a, 0x1f, 0x54, 0x4f, - 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x55, 0x54, - 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x04, 0x2a, - 0x9f, 0x01, 0x0a, 0x14, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x79, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x72, - 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x4f, 0x4e, 0x56, - 0x45, 0x59, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, - 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x43, - 0x4f, 0x4e, 0x56, 0x45, 0x59, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x46, 0x45, 0x52, - 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x43, - 0x4f, 0x4e, 0x56, 0x45, 0x59, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x46, 0x45, 0x52, - 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x49, 0x4e, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x10, 0x02, 0x12, - 0x20, 0x0a, 0x1c, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x59, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, - 0x45, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x10, - 0x03, 0x2a, 0xb9, 0x01, 0x0a, 0x17, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, - 0x74, 0x6f, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x24, 0x0a, - 0x20, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x41, - 0x54, 0x54, 0x41, 0x43, 0x48, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, - 0x44, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, - 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, 0x48, 0x4d, 0x45, 0x4e, 0x54, 0x5f, - 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, 0x12, 0x25, 0x0a, 0x21, 0x41, 0x55, 0x54, - 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, - 0x48, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x10, 0x02, - 0x12, 0x2b, 0x0a, 0x27, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x4f, - 0x52, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, 0x48, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x52, 0x4f, - 0x53, 0x53, 0x5f, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x10, 0x03, 0x2a, 0xd0, 0x01, - 0x0a, 0x1b, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, - 0x25, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x56, 0x45, 0x52, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, - 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x49, - 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x2b, 0x0a, 0x27, 0x55, 0x53, 0x45, 0x52, - 0x5f, 0x56, 0x45, 0x52, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, - 0x51, 0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x52, 0x45, 0x46, 0x45, 0x52, - 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x2a, 0x0a, 0x26, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x56, 0x45, - 0x52, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, - 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x10, - 0x02, 0x12, 0x2d, 0x0a, 0x29, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x56, 0x45, 0x52, 0x49, 0x46, 0x49, + 0x52, 0x45, 0x54, 0x5f, 0x42, 0x41, 0x53, 0x49, 0x43, 0x10, 0x01, 0x12, 0x31, 0x0a, 0x2d, 0x54, + 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x55, + 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, + 0x5f, 0x53, 0x45, 0x43, 0x52, 0x45, 0x54, 0x5f, 0x50, 0x4f, 0x53, 0x54, 0x10, 0x02, 0x12, 0x2e, + 0x0a, 0x2a, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, + 0x5f, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x50, 0x52, 0x49, + 0x56, 0x41, 0x54, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x5f, 0x4a, 0x57, 0x54, 0x10, 0x03, 0x12, 0x23, + 0x0a, 0x1f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x45, 0x4e, 0x44, 0x50, 0x4f, 0x49, 0x4e, 0x54, + 0x5f, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x4e, 0x4f, 0x4e, + 0x45, 0x10, 0x04, 0x2a, 0x9f, 0x01, 0x0a, 0x14, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x79, 0x61, 0x6e, + 0x63, 0x65, 0x50, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x1d, + 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x59, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, 0x45, 0x46, 0x45, + 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, + 0x1e, 0x0a, 0x1a, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x59, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, + 0x45, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, + 0x22, 0x0a, 0x1e, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x59, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x50, 0x52, + 0x45, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x49, 0x4e, 0x44, 0x49, 0x52, 0x45, 0x43, + 0x54, 0x10, 0x02, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x59, 0x41, 0x4e, 0x43, + 0x45, 0x5f, 0x50, 0x52, 0x45, 0x46, 0x45, 0x52, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x44, 0x49, 0x52, + 0x45, 0x43, 0x54, 0x10, 0x03, 0x2a, 0xb9, 0x01, 0x0a, 0x17, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, + 0x74, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, + 0x74, 0x12, 0x24, 0x0a, 0x20, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, + 0x4f, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, 0x48, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x49, 0x4e, + 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x24, 0x0a, 0x20, 0x41, 0x55, 0x54, 0x48, 0x45, + 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, 0x48, 0x4d, + 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, 0x12, 0x25, 0x0a, + 0x21, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x41, + 0x54, 0x54, 0x41, 0x43, 0x48, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, + 0x52, 0x4d, 0x10, 0x02, 0x12, 0x2b, 0x0a, 0x27, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, + 0x43, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x41, 0x54, 0x54, 0x41, 0x43, 0x48, 0x4d, 0x45, 0x4e, 0x54, + 0x5f, 0x43, 0x52, 0x4f, 0x53, 0x53, 0x5f, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x10, + 0x03, 0x2a, 0xd0, 0x01, 0x0a, 0x1b, 0x55, 0x73, 0x65, 0x72, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x12, 0x29, 0x0a, 0x25, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x56, 0x45, 0x52, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, - 0x4e, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x55, 0x52, 0x41, 0x47, 0x45, 0x44, 0x10, 0x03, - 0x2a, 0x86, 0x01, 0x0a, 0x16, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x50, 0x6f, 0x6c, - 0x69, 0x63, 0x79, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x20, 0x50, - 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x54, - 0x45, 0x4d, 0x50, 0x4c, 0x41, 0x54, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, - 0x00, 0x12, 0x23, 0x0a, 0x1f, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, 0x5f, 0x50, 0x4f, - 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x54, 0x45, 0x4d, 0x50, 0x4c, 0x41, 0x54, 0x45, 0x5f, 0x43, 0x55, - 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, - 0x52, 0x44, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x54, 0x45, 0x4d, 0x50, 0x4c, 0x41, - 0x54, 0x45, 0x5f, 0x4e, 0x49, 0x53, 0x54, 0x10, 0x02, 0x42, 0xf6, 0x01, 0x0a, 0x1b, 0x63, 0x6f, - 0x6d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x0a, 0x4d, 0x6f, 0x64, 0x65, 0x6c, - 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2f, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2d, 0x73, 0x64, 0x6b, 0x2d, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, - 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x49, 0x43, 0x58, 0xaa, 0x02, 0x17, 0x49, - 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x56, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x17, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, - 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0xe2, 0x02, 0x23, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x19, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, - 0x65, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x4e, 0x54, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x2b, 0x0a, 0x27, + 0x55, 0x53, 0x45, 0x52, 0x5f, 0x56, 0x45, 0x52, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, + 0x4e, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x52, + 0x45, 0x46, 0x45, 0x52, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x2a, 0x0a, 0x26, 0x55, 0x53, 0x45, + 0x52, 0x5f, 0x56, 0x45, 0x52, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, + 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, + 0x52, 0x45, 0x44, 0x10, 0x02, 0x12, 0x2d, 0x0a, 0x29, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x56, 0x45, + 0x52, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, + 0x52, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x55, 0x52, 0x41, 0x47, + 0x45, 0x44, 0x10, 0x03, 0x2a, 0x86, 0x01, 0x0a, 0x16, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, + 0x24, 0x0a, 0x20, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, 0x5f, 0x50, 0x4f, 0x4c, 0x49, + 0x43, 0x59, 0x5f, 0x54, 0x45, 0x4d, 0x50, 0x4c, 0x41, 0x54, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, + 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x23, 0x0a, 0x1f, 0x50, 0x41, 0x53, 0x53, 0x57, 0x4f, 0x52, + 0x44, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x54, 0x45, 0x4d, 0x50, 0x4c, 0x41, 0x54, + 0x45, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x01, 0x12, 0x21, 0x0a, 0x1d, 0x50, 0x41, + 0x53, 0x53, 0x57, 0x4f, 0x52, 0x44, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x54, 0x45, + 0x4d, 0x50, 0x4c, 0x41, 0x54, 0x45, 0x5f, 0x4e, 0x49, 0x53, 0x54, 0x10, 0x02, 0x42, 0xf6, 0x01, + 0x0a, 0x1b, 0x63, 0x6f, 0x6d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x0a, 0x4d, + 0x6f, 0x64, 0x65, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4d, 0x67, 0x69, 0x74, + 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2d, 0x73, 0x64, 0x6b, 0x2d, 0x67, 0x6f, + 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2f, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x49, 0x43, 0x58, + 0xaa, 0x02, 0x17, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x17, 0x49, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5c, 0x56, 0x31, 0x62, + 0x65, 0x74, 0x61, 0x31, 0xe2, 0x02, 0x23, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x5c, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x5c, 0x47, + 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x19, 0x49, 0x6e, 0x64, + 0x79, 0x6b, 0x69, 0x74, 0x65, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x3a, 0x56, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -7605,7 +7403,7 @@ func file_indykite_config_v1beta1_model_proto_rawDescGZIP() []byte { } var file_indykite_config_v1beta1_model_proto_enumTypes = make([]protoimpl.EnumInfo, 12) -var file_indykite_config_v1beta1_model_proto_msgTypes = make([]protoimpl.MessageInfo, 57) +var file_indykite_config_v1beta1_model_proto_msgTypes = make([]protoimpl.MessageInfo, 54) var file_indykite_config_v1beta1_model_proto_goTypes = []interface{}{ (ProviderType)(0), // 0: indykite.config.v1beta1.ProviderType (AuthStyle)(0), // 1: indykite.config.v1beta1.AuthStyle @@ -7641,193 +7439,187 @@ var file_indykite_config_v1beta1_model_proto_goTypes = []interface{}{ (*WebAuthnSiteDefinition)(nil), // 31: indykite.config.v1beta1.WebAuthnSiteDefinition (*AuthFlowConfig)(nil), // 32: indykite.config.v1beta1.AuthFlowConfig (*AuthenteqProviderConfig)(nil), // 33: indykite.config.v1beta1.AuthenteqProviderConfig - (*ReadIDProviderConfig)(nil), // 34: indykite.config.v1beta1.ReadIDProviderConfig - (*SAFRProviderConfig)(nil), // 35: indykite.config.v1beta1.SAFRProviderConfig - (*SMSServiceConfig)(nil), // 36: indykite.config.v1beta1.SMSServiceConfig - (*EmailServiceConfig)(nil), // 37: indykite.config.v1beta1.EmailServiceConfig - (*Email)(nil), // 38: indykite.config.v1beta1.Email - (*SendGridProviderConfig)(nil), // 39: indykite.config.v1beta1.SendGridProviderConfig - (*MailJetProviderConfig)(nil), // 40: indykite.config.v1beta1.MailJetProviderConfig - (*MailgunProviderConfig)(nil), // 41: indykite.config.v1beta1.MailgunProviderConfig - (*AmazonSESProviderConfig)(nil), // 42: indykite.config.v1beta1.AmazonSESProviderConfig - (*EmailDefinition)(nil), // 43: indykite.config.v1beta1.EmailDefinition - (*EmailTemplate)(nil), // 44: indykite.config.v1beta1.EmailTemplate - (*EmailAttachment)(nil), // 45: indykite.config.v1beta1.EmailAttachment - (*EmailMessage)(nil), // 46: indykite.config.v1beta1.EmailMessage - (*PasswordProviderConfig)(nil), // 47: indykite.config.v1beta1.PasswordProviderConfig - (*UsernamePolicy)(nil), // 48: indykite.config.v1beta1.UsernamePolicy - (*UniquePropertyConstraint)(nil), // 49: indykite.config.v1beta1.UniquePropertyConstraint - (*PasswordPolicy)(nil), // 50: indykite.config.v1beta1.PasswordPolicy - (*AuthorizationPolicyConfig)(nil), // 51: indykite.config.v1beta1.AuthorizationPolicyConfig - (*KnowledgeGraphSchemaConfig)(nil), // 52: indykite.config.v1beta1.KnowledgeGraphSchemaConfig - (*KnowledgeGraphSchemaHelpers)(nil), // 53: indykite.config.v1beta1.KnowledgeGraphSchemaHelpers - (*AuditSinkConfig)(nil), // 54: indykite.config.v1beta1.AuditSinkConfig - (*KafkaSinkConfig)(nil), // 55: indykite.config.v1beta1.KafkaSinkConfig - nil, // 56: indykite.config.v1beta1.ApplicationSpaceConfig.UniquePropertyConstraintsEntry - nil, // 57: indykite.config.v1beta1.OAuth2ProviderConfig.FrontChannelLoginUriEntry - nil, // 58: indykite.config.v1beta1.OAuth2ProviderConfig.FrontChannelConsentUriEntry - nil, // 59: indykite.config.v1beta1.WebAuthnProviderConfig.RelyingPartiesEntry - (*ReadIDProviderConfig_Property)(nil), // 60: indykite.config.v1beta1.ReadIDProviderConfig.Property - nil, // 61: indykite.config.v1beta1.ReadIDProviderConfig.PropertyMapEntry - nil, // 62: indykite.config.v1beta1.MailJetProviderConfig.UrlTagsEntry - nil, // 63: indykite.config.v1beta1.EmailTemplate.HeadersEntry - nil, // 64: indykite.config.v1beta1.EmailTemplate.CustomArgsEntry - nil, // 65: indykite.config.v1beta1.EmailTemplate.DynamicTemplateValuesEntry - nil, // 66: indykite.config.v1beta1.EmailMessage.HeadersEntry - nil, // 67: indykite.config.v1beta1.EmailMessage.CustomArgsEntry - nil, // 68: indykite.config.v1beta1.EmailMessage.DynamicTemplateValuesEntry - (*wrapperspb.StringValue)(nil), // 69: google.protobuf.StringValue - (*timestamppb.Timestamp)(nil), // 70: google.protobuf.Timestamp - (*durationpb.Duration)(nil), // 71: google.protobuf.Duration - (*wrapperspb.Int64Value)(nil), // 72: google.protobuf.Int64Value - (*v1beta1.Value)(nil), // 73: indykite.objects.v1beta1.Value + (*SAFRProviderConfig)(nil), // 34: indykite.config.v1beta1.SAFRProviderConfig + (*SMSServiceConfig)(nil), // 35: indykite.config.v1beta1.SMSServiceConfig + (*EmailServiceConfig)(nil), // 36: indykite.config.v1beta1.EmailServiceConfig + (*Email)(nil), // 37: indykite.config.v1beta1.Email + (*SendGridProviderConfig)(nil), // 38: indykite.config.v1beta1.SendGridProviderConfig + (*MailJetProviderConfig)(nil), // 39: indykite.config.v1beta1.MailJetProviderConfig + (*MailgunProviderConfig)(nil), // 40: indykite.config.v1beta1.MailgunProviderConfig + (*AmazonSESProviderConfig)(nil), // 41: indykite.config.v1beta1.AmazonSESProviderConfig + (*EmailDefinition)(nil), // 42: indykite.config.v1beta1.EmailDefinition + (*EmailTemplate)(nil), // 43: indykite.config.v1beta1.EmailTemplate + (*EmailAttachment)(nil), // 44: indykite.config.v1beta1.EmailAttachment + (*EmailMessage)(nil), // 45: indykite.config.v1beta1.EmailMessage + (*PasswordProviderConfig)(nil), // 46: indykite.config.v1beta1.PasswordProviderConfig + (*UsernamePolicy)(nil), // 47: indykite.config.v1beta1.UsernamePolicy + (*UniquePropertyConstraint)(nil), // 48: indykite.config.v1beta1.UniquePropertyConstraint + (*PasswordPolicy)(nil), // 49: indykite.config.v1beta1.PasswordPolicy + (*AuthorizationPolicyConfig)(nil), // 50: indykite.config.v1beta1.AuthorizationPolicyConfig + (*KnowledgeGraphSchemaConfig)(nil), // 51: indykite.config.v1beta1.KnowledgeGraphSchemaConfig + (*KnowledgeGraphSchemaHelpers)(nil), // 52: indykite.config.v1beta1.KnowledgeGraphSchemaHelpers + (*AuditSinkConfig)(nil), // 53: indykite.config.v1beta1.AuditSinkConfig + (*KafkaSinkConfig)(nil), // 54: indykite.config.v1beta1.KafkaSinkConfig + nil, // 55: indykite.config.v1beta1.ApplicationSpaceConfig.UniquePropertyConstraintsEntry + nil, // 56: indykite.config.v1beta1.OAuth2ProviderConfig.FrontChannelLoginUriEntry + nil, // 57: indykite.config.v1beta1.OAuth2ProviderConfig.FrontChannelConsentUriEntry + nil, // 58: indykite.config.v1beta1.WebAuthnProviderConfig.RelyingPartiesEntry + nil, // 59: indykite.config.v1beta1.MailJetProviderConfig.UrlTagsEntry + nil, // 60: indykite.config.v1beta1.EmailTemplate.HeadersEntry + nil, // 61: indykite.config.v1beta1.EmailTemplate.CustomArgsEntry + nil, // 62: indykite.config.v1beta1.EmailTemplate.DynamicTemplateValuesEntry + nil, // 63: indykite.config.v1beta1.EmailMessage.HeadersEntry + nil, // 64: indykite.config.v1beta1.EmailMessage.CustomArgsEntry + nil, // 65: indykite.config.v1beta1.EmailMessage.DynamicTemplateValuesEntry + (*wrapperspb.StringValue)(nil), // 66: google.protobuf.StringValue + (*timestamppb.Timestamp)(nil), // 67: google.protobuf.Timestamp + (*durationpb.Duration)(nil), // 68: google.protobuf.Duration + (*wrapperspb.Int64Value)(nil), // 69: google.protobuf.Int64Value + (*v1beta1.Value)(nil), // 70: indykite.objects.v1beta1.Value } var file_indykite_config_v1beta1_model_proto_depIdxs = []int32{ - 69, // 0: indykite.config.v1beta1.Customer.description:type_name -> google.protobuf.StringValue - 70, // 1: indykite.config.v1beta1.Customer.create_time:type_name -> google.protobuf.Timestamp - 70, // 2: indykite.config.v1beta1.Customer.update_time:type_name -> google.protobuf.Timestamp - 70, // 3: indykite.config.v1beta1.Customer.destroy_time:type_name -> google.protobuf.Timestamp - 70, // 4: indykite.config.v1beta1.Customer.delete_time:type_name -> google.protobuf.Timestamp - 69, // 5: indykite.config.v1beta1.ApplicationSpace.description:type_name -> google.protobuf.StringValue - 70, // 6: indykite.config.v1beta1.ApplicationSpace.create_time:type_name -> google.protobuf.Timestamp - 70, // 7: indykite.config.v1beta1.ApplicationSpace.update_time:type_name -> google.protobuf.Timestamp - 70, // 8: indykite.config.v1beta1.ApplicationSpace.destroy_time:type_name -> google.protobuf.Timestamp - 70, // 9: indykite.config.v1beta1.ApplicationSpace.delete_time:type_name -> google.protobuf.Timestamp - 56, // 10: indykite.config.v1beta1.ApplicationSpaceConfig.unique_property_constraints:type_name -> indykite.config.v1beta1.ApplicationSpaceConfig.UniquePropertyConstraintsEntry - 48, // 11: indykite.config.v1beta1.ApplicationSpaceConfig.username_policy:type_name -> indykite.config.v1beta1.UsernamePolicy - 69, // 12: indykite.config.v1beta1.Tenant.description:type_name -> google.protobuf.StringValue - 70, // 13: indykite.config.v1beta1.Tenant.create_time:type_name -> google.protobuf.Timestamp - 70, // 14: indykite.config.v1beta1.Tenant.update_time:type_name -> google.protobuf.Timestamp - 70, // 15: indykite.config.v1beta1.Tenant.destroy_time:type_name -> google.protobuf.Timestamp - 70, // 16: indykite.config.v1beta1.Tenant.delete_time:type_name -> google.protobuf.Timestamp - 48, // 17: indykite.config.v1beta1.TenantConfig.username_policy:type_name -> indykite.config.v1beta1.UsernamePolicy - 69, // 18: indykite.config.v1beta1.Application.description:type_name -> google.protobuf.StringValue - 70, // 19: indykite.config.v1beta1.Application.create_time:type_name -> google.protobuf.Timestamp - 70, // 20: indykite.config.v1beta1.Application.update_time:type_name -> google.protobuf.Timestamp - 70, // 21: indykite.config.v1beta1.Application.destroy_time:type_name -> google.protobuf.Timestamp - 70, // 22: indykite.config.v1beta1.Application.delete_time:type_name -> google.protobuf.Timestamp - 69, // 23: indykite.config.v1beta1.ApplicationAgent.description:type_name -> google.protobuf.StringValue - 70, // 24: indykite.config.v1beta1.ApplicationAgent.create_time:type_name -> google.protobuf.Timestamp - 70, // 25: indykite.config.v1beta1.ApplicationAgent.update_time:type_name -> google.protobuf.Timestamp - 70, // 26: indykite.config.v1beta1.ApplicationAgent.destroy_time:type_name -> google.protobuf.Timestamp - 70, // 27: indykite.config.v1beta1.ApplicationAgent.delete_time:type_name -> google.protobuf.Timestamp - 70, // 28: indykite.config.v1beta1.ApplicationAgentCredential.create_time:type_name -> google.protobuf.Timestamp - 70, // 29: indykite.config.v1beta1.ApplicationAgentCredential.destroy_time:type_name -> google.protobuf.Timestamp - 70, // 30: indykite.config.v1beta1.ApplicationAgentCredential.delete_time:type_name -> google.protobuf.Timestamp - 69, // 31: indykite.config.v1beta1.ServiceAccount.description:type_name -> google.protobuf.StringValue - 70, // 32: indykite.config.v1beta1.ServiceAccount.create_time:type_name -> google.protobuf.Timestamp - 70, // 33: indykite.config.v1beta1.ServiceAccount.update_time:type_name -> google.protobuf.Timestamp - 70, // 34: indykite.config.v1beta1.ServiceAccount.destroy_time:type_name -> google.protobuf.Timestamp - 70, // 35: indykite.config.v1beta1.ServiceAccount.delete_time:type_name -> google.protobuf.Timestamp - 70, // 36: indykite.config.v1beta1.ServiceAccountCredential.create_time:type_name -> google.protobuf.Timestamp - 70, // 37: indykite.config.v1beta1.ServiceAccountCredential.destroy_time:type_name -> google.protobuf.Timestamp - 70, // 38: indykite.config.v1beta1.ServiceAccountCredential.delete_time:type_name -> google.protobuf.Timestamp - 69, // 39: indykite.config.v1beta1.ConfigNode.description:type_name -> google.protobuf.StringValue - 70, // 40: indykite.config.v1beta1.ConfigNode.create_time:type_name -> google.protobuf.Timestamp - 70, // 41: indykite.config.v1beta1.ConfigNode.update_time:type_name -> google.protobuf.Timestamp - 70, // 42: indykite.config.v1beta1.ConfigNode.destroy_time:type_name -> google.protobuf.Timestamp - 70, // 43: indykite.config.v1beta1.ConfigNode.delete_time:type_name -> google.protobuf.Timestamp + 66, // 0: indykite.config.v1beta1.Customer.description:type_name -> google.protobuf.StringValue + 67, // 1: indykite.config.v1beta1.Customer.create_time:type_name -> google.protobuf.Timestamp + 67, // 2: indykite.config.v1beta1.Customer.update_time:type_name -> google.protobuf.Timestamp + 67, // 3: indykite.config.v1beta1.Customer.destroy_time:type_name -> google.protobuf.Timestamp + 67, // 4: indykite.config.v1beta1.Customer.delete_time:type_name -> google.protobuf.Timestamp + 66, // 5: indykite.config.v1beta1.ApplicationSpace.description:type_name -> google.protobuf.StringValue + 67, // 6: indykite.config.v1beta1.ApplicationSpace.create_time:type_name -> google.protobuf.Timestamp + 67, // 7: indykite.config.v1beta1.ApplicationSpace.update_time:type_name -> google.protobuf.Timestamp + 67, // 8: indykite.config.v1beta1.ApplicationSpace.destroy_time:type_name -> google.protobuf.Timestamp + 67, // 9: indykite.config.v1beta1.ApplicationSpace.delete_time:type_name -> google.protobuf.Timestamp + 55, // 10: indykite.config.v1beta1.ApplicationSpaceConfig.unique_property_constraints:type_name -> indykite.config.v1beta1.ApplicationSpaceConfig.UniquePropertyConstraintsEntry + 47, // 11: indykite.config.v1beta1.ApplicationSpaceConfig.username_policy:type_name -> indykite.config.v1beta1.UsernamePolicy + 66, // 12: indykite.config.v1beta1.Tenant.description:type_name -> google.protobuf.StringValue + 67, // 13: indykite.config.v1beta1.Tenant.create_time:type_name -> google.protobuf.Timestamp + 67, // 14: indykite.config.v1beta1.Tenant.update_time:type_name -> google.protobuf.Timestamp + 67, // 15: indykite.config.v1beta1.Tenant.destroy_time:type_name -> google.protobuf.Timestamp + 67, // 16: indykite.config.v1beta1.Tenant.delete_time:type_name -> google.protobuf.Timestamp + 47, // 17: indykite.config.v1beta1.TenantConfig.username_policy:type_name -> indykite.config.v1beta1.UsernamePolicy + 66, // 18: indykite.config.v1beta1.Application.description:type_name -> google.protobuf.StringValue + 67, // 19: indykite.config.v1beta1.Application.create_time:type_name -> google.protobuf.Timestamp + 67, // 20: indykite.config.v1beta1.Application.update_time:type_name -> google.protobuf.Timestamp + 67, // 21: indykite.config.v1beta1.Application.destroy_time:type_name -> google.protobuf.Timestamp + 67, // 22: indykite.config.v1beta1.Application.delete_time:type_name -> google.protobuf.Timestamp + 66, // 23: indykite.config.v1beta1.ApplicationAgent.description:type_name -> google.protobuf.StringValue + 67, // 24: indykite.config.v1beta1.ApplicationAgent.create_time:type_name -> google.protobuf.Timestamp + 67, // 25: indykite.config.v1beta1.ApplicationAgent.update_time:type_name -> google.protobuf.Timestamp + 67, // 26: indykite.config.v1beta1.ApplicationAgent.destroy_time:type_name -> google.protobuf.Timestamp + 67, // 27: indykite.config.v1beta1.ApplicationAgent.delete_time:type_name -> google.protobuf.Timestamp + 67, // 28: indykite.config.v1beta1.ApplicationAgentCredential.create_time:type_name -> google.protobuf.Timestamp + 67, // 29: indykite.config.v1beta1.ApplicationAgentCredential.destroy_time:type_name -> google.protobuf.Timestamp + 67, // 30: indykite.config.v1beta1.ApplicationAgentCredential.delete_time:type_name -> google.protobuf.Timestamp + 66, // 31: indykite.config.v1beta1.ServiceAccount.description:type_name -> google.protobuf.StringValue + 67, // 32: indykite.config.v1beta1.ServiceAccount.create_time:type_name -> google.protobuf.Timestamp + 67, // 33: indykite.config.v1beta1.ServiceAccount.update_time:type_name -> google.protobuf.Timestamp + 67, // 34: indykite.config.v1beta1.ServiceAccount.destroy_time:type_name -> google.protobuf.Timestamp + 67, // 35: indykite.config.v1beta1.ServiceAccount.delete_time:type_name -> google.protobuf.Timestamp + 67, // 36: indykite.config.v1beta1.ServiceAccountCredential.create_time:type_name -> google.protobuf.Timestamp + 67, // 37: indykite.config.v1beta1.ServiceAccountCredential.destroy_time:type_name -> google.protobuf.Timestamp + 67, // 38: indykite.config.v1beta1.ServiceAccountCredential.delete_time:type_name -> google.protobuf.Timestamp + 66, // 39: indykite.config.v1beta1.ConfigNode.description:type_name -> google.protobuf.StringValue + 67, // 40: indykite.config.v1beta1.ConfigNode.create_time:type_name -> google.protobuf.Timestamp + 67, // 41: indykite.config.v1beta1.ConfigNode.update_time:type_name -> google.protobuf.Timestamp + 67, // 42: indykite.config.v1beta1.ConfigNode.destroy_time:type_name -> google.protobuf.Timestamp + 67, // 43: indykite.config.v1beta1.ConfigNode.delete_time:type_name -> google.protobuf.Timestamp 32, // 44: indykite.config.v1beta1.ConfigNode.auth_flow_config:type_name -> indykite.config.v1beta1.AuthFlowConfig - 37, // 45: indykite.config.v1beta1.ConfigNode.email_service_config:type_name -> indykite.config.v1beta1.EmailServiceConfig - 54, // 46: indykite.config.v1beta1.ConfigNode.audit_sink_config:type_name -> indykite.config.v1beta1.AuditSinkConfig + 36, // 45: indykite.config.v1beta1.ConfigNode.email_service_config:type_name -> indykite.config.v1beta1.EmailServiceConfig + 53, // 46: indykite.config.v1beta1.ConfigNode.audit_sink_config:type_name -> indykite.config.v1beta1.AuditSinkConfig 25, // 47: indykite.config.v1beta1.ConfigNode.oauth2_client_config:type_name -> indykite.config.v1beta1.OAuth2ClientConfig - 47, // 48: indykite.config.v1beta1.ConfigNode.password_provider_config:type_name -> indykite.config.v1beta1.PasswordProviderConfig + 46, // 48: indykite.config.v1beta1.ConfigNode.password_provider_config:type_name -> indykite.config.v1beta1.PasswordProviderConfig 30, // 49: indykite.config.v1beta1.ConfigNode.webauthn_provider_config:type_name -> indykite.config.v1beta1.WebAuthnProviderConfig 33, // 50: indykite.config.v1beta1.ConfigNode.authenteq_provider_config:type_name -> indykite.config.v1beta1.AuthenteqProviderConfig - 35, // 51: indykite.config.v1beta1.ConfigNode.safr_provider_config:type_name -> indykite.config.v1beta1.SAFRProviderConfig - 51, // 52: indykite.config.v1beta1.ConfigNode.authorization_policy_config:type_name -> indykite.config.v1beta1.AuthorizationPolicyConfig - 52, // 53: indykite.config.v1beta1.ConfigNode.knowledge_graph_schema_config:type_name -> indykite.config.v1beta1.KnowledgeGraphSchemaConfig - 34, // 54: indykite.config.v1beta1.ConfigNode.readid_provider_config:type_name -> indykite.config.v1beta1.ReadIDProviderConfig - 0, // 55: indykite.config.v1beta1.OAuth2ClientConfig.provider_type:type_name -> indykite.config.v1beta1.ProviderType - 1, // 56: indykite.config.v1beta1.OAuth2ClientConfig.auth_style:type_name -> indykite.config.v1beta1.AuthStyle - 69, // 57: indykite.config.v1beta1.OAuth2Application.description:type_name -> google.protobuf.StringValue - 70, // 58: indykite.config.v1beta1.OAuth2Application.create_time:type_name -> google.protobuf.Timestamp - 70, // 59: indykite.config.v1beta1.OAuth2Application.update_time:type_name -> google.protobuf.Timestamp - 70, // 60: indykite.config.v1beta1.OAuth2Application.destroy_time:type_name -> google.protobuf.Timestamp - 70, // 61: indykite.config.v1beta1.OAuth2Application.delete_time:type_name -> google.protobuf.Timestamp - 27, // 62: indykite.config.v1beta1.OAuth2Application.config:type_name -> indykite.config.v1beta1.OAuth2ApplicationConfig - 4, // 63: indykite.config.v1beta1.OAuth2ApplicationConfig.subject_type:type_name -> indykite.config.v1beta1.ClientSubjectType - 2, // 64: indykite.config.v1beta1.OAuth2ApplicationConfig.grant_types:type_name -> indykite.config.v1beta1.GrantType - 3, // 65: indykite.config.v1beta1.OAuth2ApplicationConfig.response_types:type_name -> indykite.config.v1beta1.ResponseType - 5, // 66: indykite.config.v1beta1.OAuth2ApplicationConfig.token_endpoint_auth_method:type_name -> indykite.config.v1beta1.TokenEndpointAuthMethod - 69, // 67: indykite.config.v1beta1.OAuth2Provider.description:type_name -> google.protobuf.StringValue - 70, // 68: indykite.config.v1beta1.OAuth2Provider.create_time:type_name -> google.protobuf.Timestamp - 70, // 69: indykite.config.v1beta1.OAuth2Provider.update_time:type_name -> google.protobuf.Timestamp - 70, // 70: indykite.config.v1beta1.OAuth2Provider.destroy_time:type_name -> google.protobuf.Timestamp - 70, // 71: indykite.config.v1beta1.OAuth2Provider.delete_time:type_name -> google.protobuf.Timestamp - 29, // 72: indykite.config.v1beta1.OAuth2Provider.config:type_name -> indykite.config.v1beta1.OAuth2ProviderConfig - 2, // 73: indykite.config.v1beta1.OAuth2ProviderConfig.grant_types:type_name -> indykite.config.v1beta1.GrantType - 3, // 74: indykite.config.v1beta1.OAuth2ProviderConfig.response_types:type_name -> indykite.config.v1beta1.ResponseType - 5, // 75: indykite.config.v1beta1.OAuth2ProviderConfig.token_endpoint_auth_method:type_name -> indykite.config.v1beta1.TokenEndpointAuthMethod - 57, // 76: indykite.config.v1beta1.OAuth2ProviderConfig.front_channel_login_uri:type_name -> indykite.config.v1beta1.OAuth2ProviderConfig.FrontChannelLoginUriEntry - 58, // 77: indykite.config.v1beta1.OAuth2ProviderConfig.front_channel_consent_uri:type_name -> indykite.config.v1beta1.OAuth2ProviderConfig.FrontChannelConsentUriEntry - 59, // 78: indykite.config.v1beta1.WebAuthnProviderConfig.relying_parties:type_name -> indykite.config.v1beta1.WebAuthnProviderConfig.RelyingPartiesEntry - 6, // 79: indykite.config.v1beta1.WebAuthnProviderConfig.attestation_preference:type_name -> indykite.config.v1beta1.ConveyancePreference - 7, // 80: indykite.config.v1beta1.WebAuthnProviderConfig.authenticator_attachment:type_name -> indykite.config.v1beta1.AuthenticatorAttachment - 8, // 81: indykite.config.v1beta1.WebAuthnProviderConfig.user_verification:type_name -> indykite.config.v1beta1.UserVerificationRequirement - 71, // 82: indykite.config.v1beta1.WebAuthnProviderConfig.registration_timeout:type_name -> google.protobuf.Duration - 71, // 83: indykite.config.v1beta1.WebAuthnProviderConfig.authentication_timeout:type_name -> google.protobuf.Duration - 10, // 84: indykite.config.v1beta1.AuthFlowConfig.source_format:type_name -> indykite.config.v1beta1.AuthFlowConfig.Format - 61, // 85: indykite.config.v1beta1.ReadIDProviderConfig.property_map:type_name -> indykite.config.v1beta1.ReadIDProviderConfig.PropertyMapEntry - 38, // 86: indykite.config.v1beta1.EmailServiceConfig.default_from_address:type_name -> indykite.config.v1beta1.Email - 39, // 87: indykite.config.v1beta1.EmailServiceConfig.sendgrid:type_name -> indykite.config.v1beta1.SendGridProviderConfig - 40, // 88: indykite.config.v1beta1.EmailServiceConfig.mailjet:type_name -> indykite.config.v1beta1.MailJetProviderConfig - 41, // 89: indykite.config.v1beta1.EmailServiceConfig.mailgun:type_name -> indykite.config.v1beta1.MailgunProviderConfig - 42, // 90: indykite.config.v1beta1.EmailServiceConfig.amazon:type_name -> indykite.config.v1beta1.AmazonSESProviderConfig - 43, // 91: indykite.config.v1beta1.EmailServiceConfig.invitation_message:type_name -> indykite.config.v1beta1.EmailDefinition - 43, // 92: indykite.config.v1beta1.EmailServiceConfig.reset_password_message:type_name -> indykite.config.v1beta1.EmailDefinition - 43, // 93: indykite.config.v1beta1.EmailServiceConfig.verification_message:type_name -> indykite.config.v1beta1.EmailDefinition - 43, // 94: indykite.config.v1beta1.EmailServiceConfig.one_time_password_message:type_name -> indykite.config.v1beta1.EmailDefinition - 69, // 95: indykite.config.v1beta1.SendGridProviderConfig.ip_pool_name:type_name -> google.protobuf.StringValue - 69, // 96: indykite.config.v1beta1.SendGridProviderConfig.host:type_name -> google.protobuf.StringValue - 62, // 97: indykite.config.v1beta1.MailJetProviderConfig.url_tags:type_name -> indykite.config.v1beta1.MailJetProviderConfig.UrlTagsEntry - 69, // 98: indykite.config.v1beta1.MailJetProviderConfig.custom_campaign:type_name -> google.protobuf.StringValue - 38, // 99: indykite.config.v1beta1.MailgunProviderConfig.default_from_address:type_name -> indykite.config.v1beta1.Email - 38, // 100: indykite.config.v1beta1.AmazonSESProviderConfig.default_from_address:type_name -> indykite.config.v1beta1.Email - 44, // 101: indykite.config.v1beta1.EmailDefinition.template:type_name -> indykite.config.v1beta1.EmailTemplate - 46, // 102: indykite.config.v1beta1.EmailDefinition.message:type_name -> indykite.config.v1beta1.EmailMessage - 69, // 103: indykite.config.v1beta1.EmailTemplate.template_version:type_name -> google.protobuf.StringValue - 38, // 104: indykite.config.v1beta1.EmailTemplate.from:type_name -> indykite.config.v1beta1.Email - 38, // 105: indykite.config.v1beta1.EmailTemplate.reply_to:type_name -> indykite.config.v1beta1.Email - 38, // 106: indykite.config.v1beta1.EmailTemplate.to:type_name -> indykite.config.v1beta1.Email - 38, // 107: indykite.config.v1beta1.EmailTemplate.cc:type_name -> indykite.config.v1beta1.Email - 38, // 108: indykite.config.v1beta1.EmailTemplate.bcc:type_name -> indykite.config.v1beta1.Email - 63, // 109: indykite.config.v1beta1.EmailTemplate.headers:type_name -> indykite.config.v1beta1.EmailTemplate.HeadersEntry - 64, // 110: indykite.config.v1beta1.EmailTemplate.custom_args:type_name -> indykite.config.v1beta1.EmailTemplate.CustomArgsEntry - 65, // 111: indykite.config.v1beta1.EmailTemplate.dynamic_template_values:type_name -> indykite.config.v1beta1.EmailTemplate.DynamicTemplateValuesEntry - 45, // 112: indykite.config.v1beta1.EmailTemplate.attachments:type_name -> indykite.config.v1beta1.EmailAttachment - 69, // 113: indykite.config.v1beta1.EmailTemplate.event_payload:type_name -> google.protobuf.StringValue - 69, // 114: indykite.config.v1beta1.EmailAttachment.content_id:type_name -> google.protobuf.StringValue - 38, // 115: indykite.config.v1beta1.EmailMessage.from:type_name -> indykite.config.v1beta1.Email - 38, // 116: indykite.config.v1beta1.EmailMessage.reply_to:type_name -> indykite.config.v1beta1.Email - 38, // 117: indykite.config.v1beta1.EmailMessage.to:type_name -> indykite.config.v1beta1.Email - 38, // 118: indykite.config.v1beta1.EmailMessage.cc:type_name -> indykite.config.v1beta1.Email - 38, // 119: indykite.config.v1beta1.EmailMessage.bcc:type_name -> indykite.config.v1beta1.Email - 66, // 120: indykite.config.v1beta1.EmailMessage.headers:type_name -> indykite.config.v1beta1.EmailMessage.HeadersEntry - 67, // 121: indykite.config.v1beta1.EmailMessage.custom_args:type_name -> indykite.config.v1beta1.EmailMessage.CustomArgsEntry - 68, // 122: indykite.config.v1beta1.EmailMessage.dynamic_template_values:type_name -> indykite.config.v1beta1.EmailMessage.DynamicTemplateValuesEntry - 45, // 123: indykite.config.v1beta1.EmailMessage.attachments:type_name -> indykite.config.v1beta1.EmailAttachment - 69, // 124: indykite.config.v1beta1.EmailMessage.event_payload:type_name -> google.protobuf.StringValue - 48, // 125: indykite.config.v1beta1.PasswordProviderConfig.username_policy:type_name -> indykite.config.v1beta1.UsernamePolicy - 50, // 126: indykite.config.v1beta1.PasswordProviderConfig.password_policy:type_name -> indykite.config.v1beta1.PasswordPolicy - 71, // 127: indykite.config.v1beta1.PasswordProviderConfig.fail_interval:type_name -> google.protobuf.Duration - 71, // 128: indykite.config.v1beta1.PasswordProviderConfig.minimum_password_lifetime:type_name -> google.protobuf.Duration - 71, // 129: indykite.config.v1beta1.PasswordProviderConfig.maximum_password_lifetime:type_name -> google.protobuf.Duration - 71, // 130: indykite.config.v1beta1.PasswordProviderConfig.lockout_time:type_name -> google.protobuf.Duration - 71, // 131: indykite.config.v1beta1.UsernamePolicy.verify_email_grace_period:type_name -> google.protobuf.Duration - 9, // 132: indykite.config.v1beta1.PasswordPolicy.template:type_name -> indykite.config.v1beta1.PasswordPolicyTemplate - 72, // 133: indykite.config.v1beta1.PasswordPolicy.minimum_length:type_name -> google.protobuf.Int64Value - 11, // 134: indykite.config.v1beta1.AuthorizationPolicyConfig.status:type_name -> indykite.config.v1beta1.AuthorizationPolicyConfig.Status - 55, // 135: indykite.config.v1beta1.AuditSinkConfig.kafka:type_name -> indykite.config.v1beta1.KafkaSinkConfig - 49, // 136: indykite.config.v1beta1.ApplicationSpaceConfig.UniquePropertyConstraintsEntry.value:type_name -> indykite.config.v1beta1.UniquePropertyConstraint - 60, // 137: indykite.config.v1beta1.ReadIDProviderConfig.PropertyMapEntry.value:type_name -> indykite.config.v1beta1.ReadIDProviderConfig.Property - 73, // 138: indykite.config.v1beta1.EmailTemplate.DynamicTemplateValuesEntry.value:type_name -> indykite.objects.v1beta1.Value - 73, // 139: indykite.config.v1beta1.EmailMessage.DynamicTemplateValuesEntry.value:type_name -> indykite.objects.v1beta1.Value - 140, // [140:140] is the sub-list for method output_type - 140, // [140:140] is the sub-list for method input_type - 140, // [140:140] is the sub-list for extension type_name - 140, // [140:140] is the sub-list for extension extendee - 0, // [0:140] is the sub-list for field type_name + 34, // 51: indykite.config.v1beta1.ConfigNode.safr_provider_config:type_name -> indykite.config.v1beta1.SAFRProviderConfig + 50, // 52: indykite.config.v1beta1.ConfigNode.authorization_policy_config:type_name -> indykite.config.v1beta1.AuthorizationPolicyConfig + 51, // 53: indykite.config.v1beta1.ConfigNode.knowledge_graph_schema_config:type_name -> indykite.config.v1beta1.KnowledgeGraphSchemaConfig + 0, // 54: indykite.config.v1beta1.OAuth2ClientConfig.provider_type:type_name -> indykite.config.v1beta1.ProviderType + 1, // 55: indykite.config.v1beta1.OAuth2ClientConfig.auth_style:type_name -> indykite.config.v1beta1.AuthStyle + 66, // 56: indykite.config.v1beta1.OAuth2Application.description:type_name -> google.protobuf.StringValue + 67, // 57: indykite.config.v1beta1.OAuth2Application.create_time:type_name -> google.protobuf.Timestamp + 67, // 58: indykite.config.v1beta1.OAuth2Application.update_time:type_name -> google.protobuf.Timestamp + 67, // 59: indykite.config.v1beta1.OAuth2Application.destroy_time:type_name -> google.protobuf.Timestamp + 67, // 60: indykite.config.v1beta1.OAuth2Application.delete_time:type_name -> google.protobuf.Timestamp + 27, // 61: indykite.config.v1beta1.OAuth2Application.config:type_name -> indykite.config.v1beta1.OAuth2ApplicationConfig + 4, // 62: indykite.config.v1beta1.OAuth2ApplicationConfig.subject_type:type_name -> indykite.config.v1beta1.ClientSubjectType + 2, // 63: indykite.config.v1beta1.OAuth2ApplicationConfig.grant_types:type_name -> indykite.config.v1beta1.GrantType + 3, // 64: indykite.config.v1beta1.OAuth2ApplicationConfig.response_types:type_name -> indykite.config.v1beta1.ResponseType + 5, // 65: indykite.config.v1beta1.OAuth2ApplicationConfig.token_endpoint_auth_method:type_name -> indykite.config.v1beta1.TokenEndpointAuthMethod + 66, // 66: indykite.config.v1beta1.OAuth2Provider.description:type_name -> google.protobuf.StringValue + 67, // 67: indykite.config.v1beta1.OAuth2Provider.create_time:type_name -> google.protobuf.Timestamp + 67, // 68: indykite.config.v1beta1.OAuth2Provider.update_time:type_name -> google.protobuf.Timestamp + 67, // 69: indykite.config.v1beta1.OAuth2Provider.destroy_time:type_name -> google.protobuf.Timestamp + 67, // 70: indykite.config.v1beta1.OAuth2Provider.delete_time:type_name -> google.protobuf.Timestamp + 29, // 71: indykite.config.v1beta1.OAuth2Provider.config:type_name -> indykite.config.v1beta1.OAuth2ProviderConfig + 2, // 72: indykite.config.v1beta1.OAuth2ProviderConfig.grant_types:type_name -> indykite.config.v1beta1.GrantType + 3, // 73: indykite.config.v1beta1.OAuth2ProviderConfig.response_types:type_name -> indykite.config.v1beta1.ResponseType + 5, // 74: indykite.config.v1beta1.OAuth2ProviderConfig.token_endpoint_auth_method:type_name -> indykite.config.v1beta1.TokenEndpointAuthMethod + 56, // 75: indykite.config.v1beta1.OAuth2ProviderConfig.front_channel_login_uri:type_name -> indykite.config.v1beta1.OAuth2ProviderConfig.FrontChannelLoginUriEntry + 57, // 76: indykite.config.v1beta1.OAuth2ProviderConfig.front_channel_consent_uri:type_name -> indykite.config.v1beta1.OAuth2ProviderConfig.FrontChannelConsentUriEntry + 58, // 77: indykite.config.v1beta1.WebAuthnProviderConfig.relying_parties:type_name -> indykite.config.v1beta1.WebAuthnProviderConfig.RelyingPartiesEntry + 6, // 78: indykite.config.v1beta1.WebAuthnProviderConfig.attestation_preference:type_name -> indykite.config.v1beta1.ConveyancePreference + 7, // 79: indykite.config.v1beta1.WebAuthnProviderConfig.authenticator_attachment:type_name -> indykite.config.v1beta1.AuthenticatorAttachment + 8, // 80: indykite.config.v1beta1.WebAuthnProviderConfig.user_verification:type_name -> indykite.config.v1beta1.UserVerificationRequirement + 68, // 81: indykite.config.v1beta1.WebAuthnProviderConfig.registration_timeout:type_name -> google.protobuf.Duration + 68, // 82: indykite.config.v1beta1.WebAuthnProviderConfig.authentication_timeout:type_name -> google.protobuf.Duration + 10, // 83: indykite.config.v1beta1.AuthFlowConfig.source_format:type_name -> indykite.config.v1beta1.AuthFlowConfig.Format + 37, // 84: indykite.config.v1beta1.EmailServiceConfig.default_from_address:type_name -> indykite.config.v1beta1.Email + 38, // 85: indykite.config.v1beta1.EmailServiceConfig.sendgrid:type_name -> indykite.config.v1beta1.SendGridProviderConfig + 39, // 86: indykite.config.v1beta1.EmailServiceConfig.mailjet:type_name -> indykite.config.v1beta1.MailJetProviderConfig + 40, // 87: indykite.config.v1beta1.EmailServiceConfig.mailgun:type_name -> indykite.config.v1beta1.MailgunProviderConfig + 41, // 88: indykite.config.v1beta1.EmailServiceConfig.amazon:type_name -> indykite.config.v1beta1.AmazonSESProviderConfig + 42, // 89: indykite.config.v1beta1.EmailServiceConfig.invitation_message:type_name -> indykite.config.v1beta1.EmailDefinition + 42, // 90: indykite.config.v1beta1.EmailServiceConfig.reset_password_message:type_name -> indykite.config.v1beta1.EmailDefinition + 42, // 91: indykite.config.v1beta1.EmailServiceConfig.verification_message:type_name -> indykite.config.v1beta1.EmailDefinition + 42, // 92: indykite.config.v1beta1.EmailServiceConfig.one_time_password_message:type_name -> indykite.config.v1beta1.EmailDefinition + 66, // 93: indykite.config.v1beta1.SendGridProviderConfig.ip_pool_name:type_name -> google.protobuf.StringValue + 66, // 94: indykite.config.v1beta1.SendGridProviderConfig.host:type_name -> google.protobuf.StringValue + 59, // 95: indykite.config.v1beta1.MailJetProviderConfig.url_tags:type_name -> indykite.config.v1beta1.MailJetProviderConfig.UrlTagsEntry + 66, // 96: indykite.config.v1beta1.MailJetProviderConfig.custom_campaign:type_name -> google.protobuf.StringValue + 37, // 97: indykite.config.v1beta1.MailgunProviderConfig.default_from_address:type_name -> indykite.config.v1beta1.Email + 37, // 98: indykite.config.v1beta1.AmazonSESProviderConfig.default_from_address:type_name -> indykite.config.v1beta1.Email + 43, // 99: indykite.config.v1beta1.EmailDefinition.template:type_name -> indykite.config.v1beta1.EmailTemplate + 45, // 100: indykite.config.v1beta1.EmailDefinition.message:type_name -> indykite.config.v1beta1.EmailMessage + 66, // 101: indykite.config.v1beta1.EmailTemplate.template_version:type_name -> google.protobuf.StringValue + 37, // 102: indykite.config.v1beta1.EmailTemplate.from:type_name -> indykite.config.v1beta1.Email + 37, // 103: indykite.config.v1beta1.EmailTemplate.reply_to:type_name -> indykite.config.v1beta1.Email + 37, // 104: indykite.config.v1beta1.EmailTemplate.to:type_name -> indykite.config.v1beta1.Email + 37, // 105: indykite.config.v1beta1.EmailTemplate.cc:type_name -> indykite.config.v1beta1.Email + 37, // 106: indykite.config.v1beta1.EmailTemplate.bcc:type_name -> indykite.config.v1beta1.Email + 60, // 107: indykite.config.v1beta1.EmailTemplate.headers:type_name -> indykite.config.v1beta1.EmailTemplate.HeadersEntry + 61, // 108: indykite.config.v1beta1.EmailTemplate.custom_args:type_name -> indykite.config.v1beta1.EmailTemplate.CustomArgsEntry + 62, // 109: indykite.config.v1beta1.EmailTemplate.dynamic_template_values:type_name -> indykite.config.v1beta1.EmailTemplate.DynamicTemplateValuesEntry + 44, // 110: indykite.config.v1beta1.EmailTemplate.attachments:type_name -> indykite.config.v1beta1.EmailAttachment + 66, // 111: indykite.config.v1beta1.EmailTemplate.event_payload:type_name -> google.protobuf.StringValue + 66, // 112: indykite.config.v1beta1.EmailAttachment.content_id:type_name -> google.protobuf.StringValue + 37, // 113: indykite.config.v1beta1.EmailMessage.from:type_name -> indykite.config.v1beta1.Email + 37, // 114: indykite.config.v1beta1.EmailMessage.reply_to:type_name -> indykite.config.v1beta1.Email + 37, // 115: indykite.config.v1beta1.EmailMessage.to:type_name -> indykite.config.v1beta1.Email + 37, // 116: indykite.config.v1beta1.EmailMessage.cc:type_name -> indykite.config.v1beta1.Email + 37, // 117: indykite.config.v1beta1.EmailMessage.bcc:type_name -> indykite.config.v1beta1.Email + 63, // 118: indykite.config.v1beta1.EmailMessage.headers:type_name -> indykite.config.v1beta1.EmailMessage.HeadersEntry + 64, // 119: indykite.config.v1beta1.EmailMessage.custom_args:type_name -> indykite.config.v1beta1.EmailMessage.CustomArgsEntry + 65, // 120: indykite.config.v1beta1.EmailMessage.dynamic_template_values:type_name -> indykite.config.v1beta1.EmailMessage.DynamicTemplateValuesEntry + 44, // 121: indykite.config.v1beta1.EmailMessage.attachments:type_name -> indykite.config.v1beta1.EmailAttachment + 66, // 122: indykite.config.v1beta1.EmailMessage.event_payload:type_name -> google.protobuf.StringValue + 47, // 123: indykite.config.v1beta1.PasswordProviderConfig.username_policy:type_name -> indykite.config.v1beta1.UsernamePolicy + 49, // 124: indykite.config.v1beta1.PasswordProviderConfig.password_policy:type_name -> indykite.config.v1beta1.PasswordPolicy + 68, // 125: indykite.config.v1beta1.PasswordProviderConfig.fail_interval:type_name -> google.protobuf.Duration + 68, // 126: indykite.config.v1beta1.PasswordProviderConfig.minimum_password_lifetime:type_name -> google.protobuf.Duration + 68, // 127: indykite.config.v1beta1.PasswordProviderConfig.maximum_password_lifetime:type_name -> google.protobuf.Duration + 68, // 128: indykite.config.v1beta1.PasswordProviderConfig.lockout_time:type_name -> google.protobuf.Duration + 68, // 129: indykite.config.v1beta1.UsernamePolicy.verify_email_grace_period:type_name -> google.protobuf.Duration + 9, // 130: indykite.config.v1beta1.PasswordPolicy.template:type_name -> indykite.config.v1beta1.PasswordPolicyTemplate + 69, // 131: indykite.config.v1beta1.PasswordPolicy.minimum_length:type_name -> google.protobuf.Int64Value + 11, // 132: indykite.config.v1beta1.AuthorizationPolicyConfig.status:type_name -> indykite.config.v1beta1.AuthorizationPolicyConfig.Status + 54, // 133: indykite.config.v1beta1.AuditSinkConfig.kafka:type_name -> indykite.config.v1beta1.KafkaSinkConfig + 48, // 134: indykite.config.v1beta1.ApplicationSpaceConfig.UniquePropertyConstraintsEntry.value:type_name -> indykite.config.v1beta1.UniquePropertyConstraint + 70, // 135: indykite.config.v1beta1.EmailTemplate.DynamicTemplateValuesEntry.value:type_name -> indykite.objects.v1beta1.Value + 70, // 136: indykite.config.v1beta1.EmailMessage.DynamicTemplateValuesEntry.value:type_name -> indykite.objects.v1beta1.Value + 137, // [137:137] is the sub-list for method output_type + 137, // [137:137] is the sub-list for method input_type + 137, // [137:137] is the sub-list for extension type_name + 137, // [137:137] is the sub-list for extension extendee + 0, // [0:137] is the sub-list for field type_name } func init() { file_indykite_config_v1beta1_model_proto_init() } @@ -8101,18 +7893,6 @@ func file_indykite_config_v1beta1_model_proto_init() { } } file_indykite_config_v1beta1_model_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReadIDProviderConfig); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_indykite_config_v1beta1_model_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SAFRProviderConfig); i { case 0: return &v.state @@ -8124,7 +7904,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SMSServiceConfig); i { case 0: return &v.state @@ -8136,7 +7916,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EmailServiceConfig); i { case 0: return &v.state @@ -8148,7 +7928,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Email); i { case 0: return &v.state @@ -8160,7 +7940,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SendGridProviderConfig); i { case 0: return &v.state @@ -8172,7 +7952,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MailJetProviderConfig); i { case 0: return &v.state @@ -8184,7 +7964,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MailgunProviderConfig); i { case 0: return &v.state @@ -8196,7 +7976,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AmazonSESProviderConfig); i { case 0: return &v.state @@ -8208,7 +7988,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EmailDefinition); i { case 0: return &v.state @@ -8220,7 +8000,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EmailTemplate); i { case 0: return &v.state @@ -8232,7 +8012,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EmailAttachment); i { case 0: return &v.state @@ -8244,7 +8024,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EmailMessage); i { case 0: return &v.state @@ -8256,7 +8036,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PasswordProviderConfig); i { case 0: return &v.state @@ -8268,7 +8048,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UsernamePolicy); i { case 0: return &v.state @@ -8280,7 +8060,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UniquePropertyConstraint); i { case 0: return &v.state @@ -8292,7 +8072,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PasswordPolicy); i { case 0: return &v.state @@ -8304,7 +8084,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AuthorizationPolicyConfig); i { case 0: return &v.state @@ -8316,7 +8096,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*KnowledgeGraphSchemaConfig); i { case 0: return &v.state @@ -8328,7 +8108,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*KnowledgeGraphSchemaHelpers); i { case 0: return &v.state @@ -8340,7 +8120,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AuditSinkConfig); i { case 0: return &v.state @@ -8352,7 +8132,7 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + file_indykite_config_v1beta1_model_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*KafkaSinkConfig); i { case 0: return &v.state @@ -8364,18 +8144,6 @@ func file_indykite_config_v1beta1_model_proto_init() { return nil } } - file_indykite_config_v1beta1_model_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReadIDProviderConfig_Property); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } } file_indykite_config_v1beta1_model_proto_msgTypes[12].OneofWrappers = []interface{}{ (*ConfigNode_AuthFlowConfig)(nil), @@ -8388,19 +8156,18 @@ func file_indykite_config_v1beta1_model_proto_init() { (*ConfigNode_SafrProviderConfig)(nil), (*ConfigNode_AuthorizationPolicyConfig)(nil), (*ConfigNode_KnowledgeGraphSchemaConfig)(nil), - (*ConfigNode_ReadidProviderConfig)(nil), } - file_indykite_config_v1beta1_model_proto_msgTypes[25].OneofWrappers = []interface{}{ + file_indykite_config_v1beta1_model_proto_msgTypes[24].OneofWrappers = []interface{}{ (*EmailServiceConfig_Sendgrid)(nil), (*EmailServiceConfig_Mailjet)(nil), (*EmailServiceConfig_Mailgun)(nil), (*EmailServiceConfig_Amazon)(nil), } - file_indykite_config_v1beta1_model_proto_msgTypes[31].OneofWrappers = []interface{}{ + file_indykite_config_v1beta1_model_proto_msgTypes[30].OneofWrappers = []interface{}{ (*EmailDefinition_Template)(nil), (*EmailDefinition_Message)(nil), } - file_indykite_config_v1beta1_model_proto_msgTypes[42].OneofWrappers = []interface{}{ + file_indykite_config_v1beta1_model_proto_msgTypes[41].OneofWrappers = []interface{}{ (*AuditSinkConfig_Kafka)(nil), } type x struct{} @@ -8409,7 +8176,7 @@ func file_indykite_config_v1beta1_model_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_indykite_config_v1beta1_model_proto_rawDesc, NumEnums: 12, - NumMessages: 57, + NumMessages: 54, NumExtensions: 0, NumServices: 0, }, diff --git a/gen/indykite/config/v1beta1/model.pb.validate.go b/gen/indykite/config/v1beta1/model.pb.validate.go index 2b769582..562b9139 100644 --- a/gen/indykite/config/v1beta1/model.pb.validate.go +++ b/gen/indykite/config/v1beta1/model.pb.validate.go @@ -4374,59 +4374,6 @@ func (m *ConfigNode) validate(all bool) error { } } - case *ConfigNode_ReadidProviderConfig: - if v == nil { - err := ConfigNodeValidationError{ - field: "Config", - reason: "oneof value cannot be a typed-nil", - } - if !all { - return err - } - errors = append(errors, err) - } - oneofConfigPresent = true - - if m.GetReadidProviderConfig() == nil { - err := ConfigNodeValidationError{ - field: "ReadidProviderConfig", - reason: "value is required", - } - if !all { - return err - } - errors = append(errors, err) - } - - if all { - switch v := interface{}(m.GetReadidProviderConfig()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ConfigNodeValidationError{ - field: "ReadidProviderConfig", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ConfigNodeValidationError{ - field: "ReadidProviderConfig", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetReadidProviderConfig()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ConfigNodeValidationError{ - field: "ReadidProviderConfig", - reason: "embedded message failed validation", - cause: err, - } - } - } - default: _ = v // ensures v is used } @@ -7971,229 +7918,6 @@ var _ interface { ErrorName() string } = AuthenteqProviderConfigValidationError{} -// Validate checks the field values on ReadIDProviderConfig with the rules -// defined in the proto definition for this message. If any rules are -// violated, the first error encountered is returned, or nil if there are no violations. -func (m *ReadIDProviderConfig) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on ReadIDProviderConfig with the rules -// defined in the proto definition for this message. If any rules are -// violated, the result is a list of violation errors wrapped in -// ReadIDProviderConfigMultiError, or nil if none found. -func (m *ReadIDProviderConfig) ValidateAll() error { - return m.validate(true) -} - -func (m *ReadIDProviderConfig) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if m.GetSubmitterSecret() != "" { - - if utf8.RuneCountInString(m.GetSubmitterSecret()) < 36 { - err := ReadIDProviderConfigValidationError{ - field: "SubmitterSecret", - reason: "value length must be at least 36 runes", - } - if !all { - return err - } - errors = append(errors, err) - } - - } - - if m.GetManagerSecret() != "" { - - if utf8.RuneCountInString(m.GetManagerSecret()) < 36 { - err := ReadIDProviderConfigValidationError{ - field: "ManagerSecret", - reason: "value length must be at least 36 runes", - } - if !all { - return err - } - errors = append(errors, err) - } - - } - - if m.GetSubmitterPassword() != "" { - - if l := utf8.RuneCountInString(m.GetSubmitterPassword()); l < 4 || l > 254 { - err := ReadIDProviderConfigValidationError{ - field: "SubmitterPassword", - reason: "value length must be between 4 and 254 runes, inclusive", - } - if !all { - return err - } - errors = append(errors, err) - } - - } - - if m.GetHostAddress() != "" { - - if l := utf8.RuneCountInString(m.GetHostAddress()); l < 4 || l > 254 { - err := ReadIDProviderConfigValidationError{ - field: "HostAddress", - reason: "value length must be between 4 and 254 runes, inclusive", - } - if !all { - return err - } - errors = append(errors, err) - } - - } - - { - sorted_keys := make([]string, len(m.GetPropertyMap())) - i := 0 - for key := range m.GetPropertyMap() { - sorted_keys[i] = key - i++ - } - sort.Slice(sorted_keys, func(i, j int) bool { return sorted_keys[i] < sorted_keys[j] }) - for _, key := range sorted_keys { - val := m.GetPropertyMap()[key] - _ = val - - // no validation rules for PropertyMap[key] - - if all { - switch v := interface{}(val).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ReadIDProviderConfigValidationError{ - field: fmt.Sprintf("PropertyMap[%v]", key), - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ReadIDProviderConfigValidationError{ - field: fmt.Sprintf("PropertyMap[%v]", key), - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(val).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ReadIDProviderConfigValidationError{ - field: fmt.Sprintf("PropertyMap[%v]", key), - reason: "embedded message failed validation", - cause: err, - } - } - } - - } - } - - if m.GetUniquePropertyName() != "" { - - if l := utf8.RuneCountInString(m.GetUniquePropertyName()); l < 4 || l > 512 { - err := ReadIDProviderConfigValidationError{ - field: "UniquePropertyName", - reason: "value length must be between 4 and 512 runes, inclusive", - } - if !all { - return err - } - errors = append(errors, err) - } - - } - - if len(errors) > 0 { - return ReadIDProviderConfigMultiError(errors) - } - - return nil -} - -// ReadIDProviderConfigMultiError is an error wrapping multiple validation -// errors returned by ReadIDProviderConfig.ValidateAll() if the designated -// constraints aren't met. -type ReadIDProviderConfigMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m ReadIDProviderConfigMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m ReadIDProviderConfigMultiError) AllErrors() []error { return m } - -// ReadIDProviderConfigValidationError is the validation error returned by -// ReadIDProviderConfig.Validate if the designated constraints aren't met. -type ReadIDProviderConfigValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e ReadIDProviderConfigValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e ReadIDProviderConfigValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e ReadIDProviderConfigValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e ReadIDProviderConfigValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e ReadIDProviderConfigValidationError) ErrorName() string { - return "ReadIDProviderConfigValidationError" -} - -// Error satisfies the builtin error interface -func (e ReadIDProviderConfigValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sReadIDProviderConfig.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = ReadIDProviderConfigValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = ReadIDProviderConfigValidationError{} - // Validate checks the field values on SAFRProviderConfig with the rules // defined in the proto definition for this message. If any rules are // violated, the first error encountered is returned, or nil if there are no violations. @@ -12513,119 +12237,3 @@ var _ interface { } = KafkaSinkConfigValidationError{} var _KafkaSinkConfig_Topic_Pattern = regexp.MustCompile("^[a-zA-Z0-9._-]+$") - -// Validate checks the field values on ReadIDProviderConfig_Property with the -// rules defined in the proto definition for this message. If any rules are -// violated, the first error encountered is returned, or nil if there are no violations. -func (m *ReadIDProviderConfig_Property) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on ReadIDProviderConfig_Property with -// the rules defined in the proto definition for this message. If any rules -// are violated, the result is a list of violation errors wrapped in -// ReadIDProviderConfig_PropertyMultiError, or nil if none found. -func (m *ReadIDProviderConfig_Property) ValidateAll() error { - return m.validate(true) -} - -func (m *ReadIDProviderConfig_Property) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if l := utf8.RuneCountInString(m.GetExpression()); l < 4 || l > 512 { - err := ReadIDProviderConfig_PropertyValidationError{ - field: "Expression", - reason: "value length must be between 4 and 512 runes, inclusive", - } - if !all { - return err - } - errors = append(errors, err) - } - - // no validation rules for Enabled - - if len(errors) > 0 { - return ReadIDProviderConfig_PropertyMultiError(errors) - } - - return nil -} - -// ReadIDProviderConfig_PropertyMultiError is an error wrapping multiple -// validation errors returned by ReadIDProviderConfig_Property.ValidateAll() -// if the designated constraints aren't met. -type ReadIDProviderConfig_PropertyMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m ReadIDProviderConfig_PropertyMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m ReadIDProviderConfig_PropertyMultiError) AllErrors() []error { return m } - -// ReadIDProviderConfig_PropertyValidationError is the validation error -// returned by ReadIDProviderConfig_Property.Validate if the designated -// constraints aren't met. -type ReadIDProviderConfig_PropertyValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e ReadIDProviderConfig_PropertyValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e ReadIDProviderConfig_PropertyValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e ReadIDProviderConfig_PropertyValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e ReadIDProviderConfig_PropertyValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e ReadIDProviderConfig_PropertyValidationError) ErrorName() string { - return "ReadIDProviderConfig_PropertyValidationError" -} - -// Error satisfies the builtin error interface -func (e ReadIDProviderConfig_PropertyValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sReadIDProviderConfig_Property.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = ReadIDProviderConfig_PropertyValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = ReadIDProviderConfig_PropertyValidationError{} diff --git a/gen/indykite/ingest/v1beta2/model.pb.go b/gen/indykite/ingest/v1beta2/model.pb.go index 7b44353f..f01060dd 100644 --- a/gen/indykite/ingest/v1beta2/model.pb.go +++ b/gen/indykite/ingest/v1beta2/model.pb.go @@ -376,10 +376,12 @@ type DigitalTwin struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ExternalId string `protobuf:"bytes,1,opt,name=external_id,json=externalId,proto3" json:"external_id,omitempty"` - Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"` - Tags []string `protobuf:"bytes,3,rep,name=tags,proto3" json:"tags,omitempty"` - TenantId string `protobuf:"bytes,5,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"` + ExternalId string `protobuf:"bytes,1,opt,name=external_id,json=externalId,proto3" json:"external_id,omitempty"` + Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"` + Tags []string `protobuf:"bytes,3,rep,name=tags,proto3" json:"tags,omitempty"` + // Deprecated: Marked as deprecated in indykite/ingest/v1beta2/model.proto. + TenantId string `protobuf:"bytes,5,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"` + // Deprecated: Marked as deprecated in indykite/ingest/v1beta2/model.proto. IdentityProperties []*IdentityProperty `protobuf:"bytes,6,rep,name=identity_properties,json=identityProperties,proto3" json:"identity_properties,omitempty"` Properties []*Property `protobuf:"bytes,7,rep,name=properties,proto3" json:"properties,omitempty"` Id string `protobuf:"bytes,8,opt,name=id,proto3" json:"id,omitempty"` @@ -438,6 +440,7 @@ func (x *DigitalTwin) GetTags() []string { return nil } +// Deprecated: Marked as deprecated in indykite/ingest/v1beta2/model.proto. func (x *DigitalTwin) GetTenantId() string { if x != nil { return x.TenantId @@ -445,6 +448,7 @@ func (x *DigitalTwin) GetTenantId() string { return "" } +// Deprecated: Marked as deprecated in indykite/ingest/v1beta2/model.proto. func (x *DigitalTwin) GetIdentityProperties() []*IdentityProperty { if x != nil { return x.IdentityProperties @@ -1280,7 +1284,7 @@ var file_indykite_ingest_v1beta2_model_proto_rawDesc = []byte{ 0xfa, 0x42, 0x22, 0x72, 0x20, 0x28, 0x80, 0x02, 0x32, 0x18, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x5f, 0x5d, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2b, 0x24, 0xd0, 0x01, 0x01, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x42, 0x0b, 0x0a, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, 0xbc, 0x03, 0x0a, 0x0b, 0x44, 0x69, 0x67, 0x69, + 0x74, 0x61, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, 0xc3, 0x03, 0x0a, 0x0b, 0x44, 0x69, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x54, 0x77, 0x69, 0x6e, 0x12, 0x2b, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x01, 0x18, 0x80, 0x02, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, @@ -1290,147 +1294,148 @@ var file_indykite_ingest_v1beta2_model_proto_rawDesc = []byte{ 0x79, 0x70, 0x65, 0x12, 0x36, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x10, 0x20, 0x18, 0x01, 0x22, 0x16, 0x72, 0x14, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x28, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, 0x61, 0x2d, 0x7a, - 0x5d, 0x2b, 0x29, 0x2b, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x41, 0x0a, 0x09, 0x74, - 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, - 0xfa, 0x42, 0x21, 0x72, 0x1f, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, + 0x5d, 0x2b, 0x29, 0x2b, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x46, 0x0a, 0x09, 0x74, + 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, + 0xfa, 0x42, 0x24, 0x72, 0x22, 0x10, 0x16, 0x18, 0xfe, 0x01, 0x32, 0x18, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x2d, 0x5f, 0x3a, 0x5d, 0x7b, 0x32, 0x32, 0x2c, 0x32, - 0x35, 0x34, 0x7d, 0x24, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x64, - 0x0a, 0x13, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x65, - 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, - 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x72, - 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x10, 0x0a, - 0x52, 0x12, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, - 0x74, 0x69, 0x65, 0x73, 0x12, 0x4b, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, - 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, - 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x32, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x42, 0x08, 0xfa, 0x42, 0x05, - 0x92, 0x01, 0x02, 0x10, 0x0a, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, - 0x73, 0x12, 0x23, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x13, 0xfa, - 0x42, 0x10, 0x72, 0x0e, 0x10, 0x16, 0x18, 0x80, 0x02, 0x3a, 0x04, 0x67, 0x69, 0x64, 0x3a, 0xd0, - 0x01, 0x01, 0x52, 0x02, 0x69, 0x64, 0x22, 0xeb, 0x01, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x12, 0x2b, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, - 0x01, 0x18, 0x80, 0x02, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x64, - 0x12, 0x2d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, - 0xfa, 0x42, 0x16, 0x72, 0x14, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x28, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, - 0x5b, 0x61, 0x2d, 0x7a, 0x5d, 0x2b, 0x29, 0x2b, 0x24, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, - 0x36, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, - 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x10, 0x20, 0x18, 0x01, 0x22, 0x16, 0x72, 0x14, 0x18, 0x40, 0x32, - 0x10, 0x5e, 0x28, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, 0x61, 0x2d, 0x7a, 0x5d, 0x2b, 0x29, 0x2b, - 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x4b, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, - 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, - 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x42, 0x08, - 0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x10, 0x32, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, - 0x74, 0x69, 0x65, 0x73, 0x22, 0x82, 0x01, 0x0a, 0x10, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x79, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x37, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xfa, 0x42, 0x22, 0x72, 0x20, 0x28, 0x80, 0x02, - 0x32, 0x18, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x5f, 0x5d, 0x5b, 0x61, 0x2d, 0x7a, - 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2b, 0x24, 0xd0, 0x01, 0x01, 0x52, 0x03, 0x6b, - 0x65, 0x79, 0x12, 0x35, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x6f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x04, 0x4e, 0x6f, - 0x64, 0x65, 0x12, 0x49, 0x0a, 0x0c, 0x64, 0x69, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x77, - 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, - 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x32, 0x2e, 0x44, 0x69, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x54, 0x77, 0x69, 0x6e, 0x48, 0x00, - 0x52, 0x0b, 0x64, 0x69, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x54, 0x77, 0x69, 0x6e, 0x12, 0x3f, 0x0a, - 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x35, 0x34, 0x7d, 0x24, 0xd0, 0x01, 0x01, 0x18, 0x01, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x66, 0x0a, 0x13, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, + 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, + 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x42, 0x0a, 0xfa, 0x42, 0x05, + 0x92, 0x01, 0x02, 0x10, 0x0a, 0x18, 0x01, 0x52, 0x12, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x4b, 0x0a, 0x0a, 0x70, + 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, - 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x0b, - 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x03, 0xf8, 0x42, 0x01, 0x22, 0x7a, 0x0a, 0x08, 0x50, - 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x37, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xfa, 0x42, 0x22, 0x72, 0x20, 0x28, 0x80, 0x02, 0x32, 0x18, - 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x5f, 0x5d, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, - 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2b, 0x24, 0xd0, 0x01, 0x01, 0x52, 0x03, 0x6b, 0x65, 0x79, - 0x12, 0x35, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x6f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x73, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x08, 0x52, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, - 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x52, 0x65, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x08, 0xfa, 0x42, 0x05, - 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x4b, 0x0a, 0x0a, - 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, - 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, - 0x72, 0x74, 0x79, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x10, 0x32, 0x52, 0x0a, 0x70, - 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x22, 0x67, 0x0a, 0x09, 0x4e, 0x6f, 0x64, - 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x2b, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, - 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, - 0x72, 0x05, 0x10, 0x01, 0x18, 0x80, 0x02, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, - 0x6c, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x19, 0xfa, 0x42, 0x16, 0x72, 0x14, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x28, 0x5b, 0x41, - 0x2d, 0x5a, 0x5d, 0x5b, 0x61, 0x2d, 0x7a, 0x5d, 0x2b, 0x29, 0x2b, 0x24, 0x52, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x22, 0xe5, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x12, 0x4f, 0x0a, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x64, + 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, + 0x74, 0x79, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x10, 0x0a, 0x52, 0x0a, 0x70, 0x72, + 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x13, 0xfa, 0x42, 0x10, 0x72, 0x0e, 0x10, 0x16, 0x18, 0x80, 0x02, + 0x3a, 0x04, 0x67, 0x69, 0x64, 0x3a, 0xd0, 0x01, 0x01, 0x52, 0x02, 0x69, 0x64, 0x22, 0xeb, 0x01, + 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2b, 0x0a, 0x0b, 0x65, 0x78, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x01, 0x18, 0x80, 0x02, 0x52, 0x0a, 0x65, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, 0xfa, 0x42, 0x16, 0x72, 0x14, 0x18, 0x40, 0x32, 0x10, + 0x5e, 0x28, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, 0x61, 0x2d, 0x7a, 0x5d, 0x2b, 0x29, 0x2b, 0x24, + 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x36, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x09, 0x42, 0x22, 0xfa, 0x42, 0x1f, 0x92, 0x01, 0x1c, 0x10, 0x20, 0x18, 0x01, + 0x22, 0x16, 0x72, 0x14, 0x18, 0x40, 0x32, 0x10, 0x5e, 0x28, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, + 0x61, 0x2d, 0x7a, 0x5d, 0x2b, 0x29, 0x2b, 0x24, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x4b, + 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, + 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x50, 0x72, 0x6f, + 0x70, 0x65, 0x72, 0x74, 0x79, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x92, 0x01, 0x02, 0x10, 0x32, 0x52, + 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x22, 0x82, 0x01, 0x0a, 0x10, + 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, + 0x12, 0x37, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xfa, + 0x42, 0x22, 0x72, 0x20, 0x28, 0x80, 0x02, 0x32, 0x18, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, + 0x5a, 0x5f, 0x5d, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2b, + 0x24, 0xd0, 0x01, 0x01, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x35, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2e, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x22, 0x9f, 0x01, 0x0a, 0x04, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x49, 0x0a, 0x0c, 0x64, 0x69, 0x67, + 0x69, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x77, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x24, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, + 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x44, 0x69, 0x67, 0x69, 0x74, 0x61, + 0x6c, 0x54, 0x77, 0x69, 0x6e, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x69, 0x67, 0x69, 0x74, 0x61, 0x6c, + 0x54, 0x77, 0x69, 0x6e, 0x12, 0x3f, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, + 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x0b, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x03, 0xf8, + 0x42, 0x01, 0x22, 0x7a, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x37, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xfa, 0x42, 0x22, + 0x72, 0x20, 0x28, 0x80, 0x02, 0x32, 0x18, 0x5e, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x5f, + 0x5d, 0x5b, 0x61, 0x2d, 0x7a, 0x41, 0x2d, 0x5a, 0x30, 0x2d, 0x39, 0x5f, 0x5d, 0x2b, 0x24, 0xd0, + 0x01, 0x01, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x35, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x65, 0x2e, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x9f, + 0x01, 0x0a, 0x08, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x05, 0x6d, + 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, - 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x08, - 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x4f, 0x0a, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, - 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, - 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, - 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, - 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x32, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xfa, 0x42, 0x1b, 0x72, 0x19, 0x18, 0x80, 0x01, 0x32, 0x14, - 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x2b, 0x28, 0x3f, 0x3a, 0x5f, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, - 0x2b, 0x29, 0x2a, 0x24, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2b, 0x0a, 0x0d, 0x50, 0x72, - 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0xdb, 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x63, 0x6f, - 0x72, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x61, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x65, - 0x72, 0x74, 0x79, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x38, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, - 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x72, - 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, - 0x72, 0x72, 0x6f, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x70, - 0x65, 0x72, 0x74, 0x79, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x1a, 0x69, 0x0a, 0x13, 0x50, 0x72, + 0x65, 0x74, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x05, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x12, 0x4b, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x32, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x92, + 0x01, 0x02, 0x10, 0x32, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, + 0x22, 0x67, 0x0a, 0x09, 0x4e, 0x6f, 0x64, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x2b, 0x0a, + 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x0a, 0xfa, 0x42, 0x07, 0x72, 0x05, 0x10, 0x01, 0x18, 0x80, 0x02, 0x52, 0x0a, + 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, 0xfa, 0x42, 0x16, 0x72, 0x14, 0x18, + 0x40, 0x32, 0x10, 0x5e, 0x28, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x5b, 0x61, 0x2d, 0x7a, 0x5d, 0x2b, + 0x29, 0x2b, 0x24, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xe5, 0x01, 0x0a, 0x0d, 0x52, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x4f, 0x0a, 0x0c, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, + 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4e, 0x6f, 0x64, 0x65, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, + 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x4f, 0x0a, 0x0c, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, + 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x4e, 0x6f, 0x64, + 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, + 0x52, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x32, 0x0a, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xfa, 0x42, 0x1b, + 0x72, 0x19, 0x18, 0x80, 0x01, 0x32, 0x14, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x2b, 0x28, 0x3f, + 0x3a, 0x5f, 0x5b, 0x41, 0x2d, 0x5a, 0x5d, 0x2b, 0x29, 0x2a, 0x24, 0x52, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x2b, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0xdb, + 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x61, + 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x32, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x3c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, - 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x50, 0x72, 0x6f, - 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x41, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x39, 0x0a, - 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, - 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, - 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, - 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x22, 0xce, 0x01, 0x0a, 0x06, 0x43, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x45, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, + 0x79, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x73, 0x1a, 0x69, 0x0a, 0x13, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3c, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x64, 0x79, + 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, + 0x74, 0x61, 0x32, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x72, 0x72, 0x6f, + 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x41, 0x0a, 0x04, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x39, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x22, + 0xce, 0x01, 0x0a, 0x06, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x45, 0x0a, 0x09, 0x64, 0x61, + 0x74, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x28, 0x2e, + 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, + 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x44, + 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, + 0x65, 0x22, 0x6d, 0x0a, 0x08, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, + 0x11, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, + 0x49, 0x44, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x54, 0x59, 0x50, + 0x45, 0x5f, 0x44, 0x49, 0x47, 0x49, 0x54, 0x41, 0x4c, 0x5f, 0x54, 0x57, 0x49, 0x4e, 0x10, 0x01, + 0x12, 0x16, 0x0a, 0x12, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x52, 0x45, + 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x41, 0x54, 0x41, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x52, 0x45, 0x4c, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, + 0x42, 0xf6, 0x01, 0x0a, 0x1b, 0x63, 0x6f, 0x6d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, - 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, - 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x22, 0x6d, 0x0a, 0x08, 0x44, 0x61, - 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x54, - 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x1a, 0x0a, - 0x16, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, 0x49, 0x47, 0x49, 0x54, - 0x41, 0x4c, 0x5f, 0x54, 0x57, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x41, 0x54, - 0x41, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x10, - 0x02, 0x12, 0x16, 0x0a, 0x12, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x52, - 0x45, 0x4c, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x42, 0xf6, 0x01, 0x0a, 0x1b, 0x63, 0x6f, - 0x6d, 0x2e, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x69, 0x6e, 0x67, 0x65, 0x73, - 0x74, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x42, 0x0a, 0x4d, 0x6f, 0x64, 0x65, 0x6c, - 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2f, 0x69, 0x6e, 0x64, - 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2d, 0x73, 0x64, 0x6b, 0x2d, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, - 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2f, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, - 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x3b, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x76, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0xa2, 0x02, 0x03, 0x49, 0x49, 0x58, 0xaa, 0x02, 0x17, 0x49, - 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x49, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x56, - 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0xca, 0x02, 0x17, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, - 0x65, 0x5c, 0x49, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, - 0xe2, 0x02, 0x23, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x5c, 0x49, 0x6e, 0x67, 0x65, - 0x73, 0x74, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x19, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, - 0x65, 0x3a, 0x3a, 0x49, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65, 0x74, - 0x61, 0x32, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x42, 0x0a, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4d, + 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, + 0x69, 0x74, 0x65, 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2d, 0x73, 0x64, 0x6b, + 0x2d, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x69, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, + 0x2f, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x3b, + 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0xa2, 0x02, 0x03, + 0x49, 0x49, 0x58, 0xaa, 0x02, 0x17, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x2e, 0x49, + 0x6e, 0x67, 0x65, 0x73, 0x74, 0x2e, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0xca, 0x02, 0x17, + 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x5c, 0x49, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x5c, + 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0xe2, 0x02, 0x23, 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, + 0x74, 0x65, 0x5c, 0x49, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x32, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x19, + 0x49, 0x6e, 0x64, 0x79, 0x6b, 0x69, 0x74, 0x65, 0x3a, 0x3a, 0x49, 0x6e, 0x67, 0x65, 0x73, 0x74, + 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x32, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, } var ( diff --git a/gen/indykite/ingest/v1beta2/model.pb.validate.go b/gen/indykite/ingest/v1beta2/model.pb.validate.go index 42a181bc..9bb0a9c3 100644 --- a/gen/indykite/ingest/v1beta2/model.pb.validate.go +++ b/gen/indykite/ingest/v1beta2/model.pb.validate.go @@ -834,26 +834,30 @@ func (m *DigitalTwin) validate(all bool) error { } - if l := utf8.RuneCountInString(m.GetTenantId()); l < 22 || l > 254 { - err := DigitalTwinValidationError{ - field: "TenantId", - reason: "value length must be between 22 and 254 runes, inclusive", - } - if !all { - return err - } - errors = append(errors, err) - } + if m.GetTenantId() != "" { - if !_DigitalTwin_TenantId_Pattern.MatchString(m.GetTenantId()) { - err := DigitalTwinValidationError{ - field: "TenantId", - reason: "value does not match regex pattern \"^[A-Za-z0-9-_:]{22,254}$\"", + if l := utf8.RuneCountInString(m.GetTenantId()); l < 22 || l > 254 { + err := DigitalTwinValidationError{ + field: "TenantId", + reason: "value length must be between 22 and 254 runes, inclusive", + } + if !all { + return err + } + errors = append(errors, err) } - if !all { - return err + + if !_DigitalTwin_TenantId_Pattern.MatchString(m.GetTenantId()) { + err := DigitalTwinValidationError{ + field: "TenantId", + reason: "value does not match regex pattern \"^[A-Za-z0-9-_:]{22,254}$\"", + } + if !all { + return err + } + errors = append(errors, err) } - errors = append(errors, err) + } if len(m.GetIdentityProperties()) > 10 { diff --git a/go.work.sum b/go.work.sum index 6230fdb6..c1de8c01 100644 --- a/go.work.sum +++ b/go.work.sum @@ -195,6 +195,7 @@ golang.org/x/oauth2 v0.11.0/go.mod h1:LdF7O/8bLR/qWK9DrpXmbHLTouvRHK0SgJl0GmDBch golang.org/x/oauth2 v0.12.0/go.mod h1:A74bZ3aGXgCY0qaIC9Ahg6Lglin4AMAco8cIv9baba4= golang.org/x/sync v0.2.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= +golang.org/x/sync v0.4.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/text v0.12.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= diff --git a/ingest/ingest_integration_test.go b/ingest/ingest_integration_test.go index 16c27c52..fe4addf7 100644 --- a/ingest/ingest_integration_test.go +++ b/ingest/ingest_integration_test.go @@ -123,38 +123,6 @@ var _ = Describe("Ingestion", func() { }))) }) - It("UpsertNodeWrongTenant", func() { - var err error - ingestClient, err := integration.InitConfigIngest() - Expect(err).To(Succeed()) - - record, externalID := integration.CreateRecordIndividual(integration.WrongTenant, "Employee") - resp, err := ingestClient.IngestRecord( - context.Background(), - record, - retry.WithMax(2), - ) - Expect(externalID).NotTo(BeNil()) - Expect(err).To(MatchError(ContainSubstring("server was unable to complete the request"))) - Expect(resp).To(BeNil()) - }) - - It("UpsertNodeWrongTenantOtherAppSpace", func() { - var err error - ingestClient, err := integration.InitConfigIngest() - Expect(err).To(Succeed()) - - record, externalID := integration.CreateRecordIndividual(integration.WrongTenantOtherAppSpace, "Employee") - resp, err := ingestClient.IngestRecord( - context.Background(), - record, - retry.WithMax(2), - ) - Expect(externalID).NotTo(BeNil()) - Expect(err).To(MatchError(ContainSubstring("server was unable to complete the request"))) - Expect(resp).To(BeNil()) - }) - It("UpsertNodeDuplicateSameType", func() { var err error ingestClient, err := integration.InitConfigIngest() @@ -225,9 +193,10 @@ var _ = Describe("Ingestion", func() { recordb, retry.WithMax(2), ) - Expect(err).To(MatchError(ContainSubstring( - "a Digital Twin node with this id, externalId and type already exists"))) - Expect(resp2).To(BeNil()) + Expect(err).To(Succeed()) + Expect(resp2).NotTo(BeNil()) + id2 := resp2.Info.Changes[0].Id + Expect(id2).NotTo(Equal(id)) delRecord := integration.DeleteRecord(externalID, "Individual") del, err := ingestClient.IngestRecord( @@ -246,6 +215,24 @@ var _ = Describe("Ingestion", func() { }))), })), }))) + + delRecord2 := integration.DeleteRecord(externalID, "Cat") + del2, err := ingestClient.IngestRecord( + context.Background(), + delRecord2, + retry.WithMax(2), + ) + Expect(err).To(Succeed()) + Expect(del2).To(PointTo(MatchFields(IgnoreExtras, Fields{ + "RecordId": Not(BeNil()), + "Error": BeNil(), + "Info": PointTo(MatchFields(IgnoreExtras, Fields{ + "Changes": ContainElement(PointTo(MatchFields(IgnoreExtras, Fields{ + "Id": Equal(id2), + "DataType": Equal(ingestpb.Change_DATA_TYPE_DIGITAL_TWIN), + }))), + })), + }))) }) It("UpsertNodeResource", func() { @@ -1221,18 +1208,18 @@ var _ = Describe("Ingestion", func() { })), }))) id2 := resp2.Info.Changes[0].Id + rel := integration.GenerateRandomString(10) - record3 := integration.CreateRecordRelation("whateveragain", "Individual", externalID2, "Asset", "CAN_SEE") + record3 := integration.CreateRecordRelation(rel, "Individual", externalID2, "Asset", "CAN_SEE") resp3, err := ingestClient.IngestRecord( context.Background(), record3, retry.WithMax(2), ) - Expect(err).To(Succeed()) Expect(resp3).NotTo(BeNil()) - match := integration.GetRelationMatch("whateveragain", "Individual", externalID2, "Asset", "CAN_SEE") + match := integration.GetRelationMatch(rel, "Individual", externalID2, "Asset", "CAN_SEE") delRecord3 := integration.DeleteRecordRelation(match) del3, err := ingestClient.IngestRecord( context.Background(), diff --git a/test/constants.go b/test/constants.go index 18a3e6d2..ec72554b 100644 --- a/test/constants.go +++ b/test/constants.go @@ -51,7 +51,7 @@ var ( Resource1 = []*authorizationpb.IsAuthorizedRequest_Resource{ { - ExternalId: "wMDazKCQPNEyETp", + ExternalId: "LPcearawBJWDQLR", Type: "Asset", Actions: []string{"SUBSCRIBES_TO"}, }, @@ -59,14 +59,14 @@ var ( Resource2 = []*authorizationpb.IsAuthorizedRequest_Resource{ { - ExternalId: "wMDazKCQPNEyETp", + ExternalId: "LPcearawBJWDQLR", Actions: []string{"SUBSCRIBES_TO"}, }, } Resource3 = []*authorizationpb.IsAuthorizedRequest_Resource{ { - ExternalId: "wMDazKCQPNEyETp", + ExternalId: "LPcearawBJWDQLR", Type: "Asset", Actions: []string{"DEMANDS"}, }, @@ -74,7 +74,7 @@ var ( Resource4 = []*authorizationpb.IsAuthorizedRequest_Resource{ { - ExternalId: "uqGEnybFZhYYpIf", + ExternalId: "mfYbpowiNPJQCBY", Type: "Asset", Actions: []string{"SUBSCRIBES_TO"}, }, @@ -82,7 +82,7 @@ var ( Resource5 = []*authorizationpb.IsAuthorizedRequest_Resource{ { - ExternalId: "qlUxezErcaweWss", + ExternalId: "CCbJwkQtLOmCdLq", Type: "Asset", Actions: []string{"SUBSCRIBES_TO"}, }, @@ -90,7 +90,7 @@ var ( Resource6 = []*authorizationpb.IsAuthorizedRequest_Resource{ { - ExternalId: "YPDAQWzzJNlBruc", + ExternalId: "aXQMRIcTzyIyeKC", Type: "Asset", Actions: []string{"SUBSCRIBES_TO"}, }, @@ -98,7 +98,7 @@ var ( Resource7 = []*authorizationpb.IsAuthorizedRequest_Resource{ { - ExternalId: "spriFKHyoNJZMjk", + ExternalId: "EvfDHrEObtYVleh", Type: "Asset", Actions: []string{"SUBSCRIBES_TO"}, }, @@ -106,7 +106,7 @@ var ( Resource8 = []*authorizationpb.IsAuthorizedRequest_Resource{ { - ExternalId: "qVdKKwVYYOHVYSW", + ExternalId: "BLOXgHAvWFMHDsS", Type: "Asset", Actions: []string{"SUBSCRIBES_TO"}, }, @@ -114,12 +114,12 @@ var ( Resource9 = []*authorizationpb.IsAuthorizedRequest_Resource{ { - ExternalId: "qVdKKwVYYOHVYSW", + ExternalId: "LPcearawBJWDQLR", Type: "Asset", Actions: []string{"SUBSCRIBES_TO"}, }, { - ExternalId: "YlBquyKoVSYflIx", + ExternalId: "CCbJwkQtLOmCdLq", Type: "Asset", Actions: []string{"SUBSCRIBES_TO"}, }, @@ -138,7 +138,7 @@ var ( } ResourceWho1 = []*authorizationpb.WhoAuthorizedRequest_Resource{ - {ExternalId: "wMDazKCQPNEyETp", Type: "Asset", Actions: []string{"SUBSCRIBES_TO", "OWNS"}}, + {ExternalId: "LPcearawBJWDQLR", Type: "Asset", Actions: []string{"SUBSCRIBES_TO", "OWNS"}}, } ResourceWho2 = []*authorizationpb.WhoAuthorizedRequest_Resource{ @@ -146,35 +146,33 @@ var ( } ResourceWho3 = []*authorizationpb.WhoAuthorizedRequest_Resource{ - {ExternalId: "wMDazKCQPNEyETp", Type: "Asset", Actions: []string{"DEMANDS", "REPELS"}}, + {ExternalId: "LPcearawBJWDQLR", Type: "Asset", Actions: []string{"DEMANDS", "REPELS"}}, } DigitalTwinBad = "id" DigitalTwinNotInDB = "gid:AAAAGaiIPzg6L0DKkbIh22crsFg" - DigitalTwin1 = "gid:AAAAFcrHH-xwlEAhr_DYdY-Djj0" - DigitalTwin2 = "gid:AAAAFeKd8SojW0HrvpmZU8z4aIY" + DigitalTwin1 = "gid:AAAAFR3royp640c-gXRGdusXM4Y" + DigitalTwin2 = "gid:AAAAFf6Y9ZMWhEdsr3INueqfRLU" EmailBad = "test@example.com" - EmailGood = "colas@yahoo.uk" + EmailGood = "paulo@yahoo.uk" - ExternalIDGood = "bbbSNydqZpeRiGH" + ExternalIDGood = "TrSFiLuoSLGiCIo" - Asset1 = "qlUxezErcaweWss" - Asset2 = "wMDazKCQPNEyETp" - Asset3 = "qVdKKwVYYOHVYSW" + Asset1 = "CCbJwkQtLOmCdLq" + Asset2 = "LPcearawBJWDQLR" + Asset3 = "zBiBMaYOaDmdCyX" + Asset4 = "BLOXgHAvWFMHDsS" - Subject1 = "QNcLrJCLGjIbpYO" - Subject2 = "bbbSNydqZpeRiGH" - Subject3 = "uKcftQKZQfvvGoC" + Subject1 = "HLEgiljrtoNEiyX" + Subject2 = "zvPYDXxXyVgeZHw" + Subject3 = "TrSFiLuoSLGiCIo" // TokenGoodFormat is a valid format for jwt. TokenGoodFormat = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9." + "eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9." + "dyt0CoTl4WoVjAHI9Q_CwSKhl6d_9rhM3NrXuJttkao" // #nosec G101 TokenBad = "token_invalid_format" - - WrongTenant = "gid:AAAAA8YwJJujqkUAuTA6pR0AVbM" - WrongTenantOtherAppSpace = "gid:AAAAA_2EBAWjakSCo5hf_WIi1oI" ) func GenerateRandomString(length int) string {