diff --git a/horizon/internal/externalcall/gcs_client.go b/horizon/internal/externalcall/gcs_client.go index 08a38ef5..768c6512 100644 --- a/horizon/internal/externalcall/gcs_client.go +++ b/horizon/internal/externalcall/gcs_client.go @@ -9,14 +9,15 @@ import ( "os" "path" "path/filepath" - "regexp" "strings" "sync" "time" "cloud.google.com/go/storage" + "github.com/Meesho/BharatMLStack/horizon/internal/predator/proto/protogen" "github.com/rs/zerolog/log" "google.golang.org/api/iterator" + "google.golang.org/protobuf/encoding/prototext" ) type GCSClientInterface interface { @@ -268,7 +269,10 @@ func (g *GCSClient) transferSingleConfigFile(objAttrs storage.ObjectAttrs, srcBu // Replace model name log.Info().Msgf("Processing config.pbtxt file: %s -> %s", objAttrs.Name, destObjectPath) - modified := replaceModelNameInConfig(content, destModelName) + modified, err := ReplaceModelNameInConfig(content, destModelName) + if err != nil { + return fmt.Errorf("failed to replace model name: %w", err) + } // Upload modified content destWriter := g.client.Bucket(destBucket).Object(destObjectPath).NewWriter(g.ctx) @@ -464,49 +468,36 @@ func (g *GCSClient) TransferAndDeleteFolder(srcBucket, srcPath, srcModelName, de // replaceModelNameInConfig modifies only the top-level `name:` field in config.pbtxt content // It replaces only the first occurrence to avoid modifying nested names in inputs/outputs/instance_groups -func replaceModelNameInConfig(data []byte, destModelName string) []byte { - content := string(data) - lines := strings.Split(content, "\n") - - for i, line := range lines { - trimmed := strings.TrimSpace(line) - // Match top-level "name:" field - should be at the start of line (or minimal indentation) - // Skip nested names which are typically indented with 2+ spaces - if strings.HasPrefix(trimmed, "name:") { - // Check indentation: top-level fields have minimal/no indentation - leadingWhitespace := len(line) - len(strings.TrimLeft(line, " \t")) - // Skip if heavily indented (nested field) - if leadingWhitespace >= 2 { - continue - } +func ReplaceModelNameInConfig(data []byte, destModelName string) ([]byte, error) { + if destModelName == "" { + return nil, fmt.Errorf("destination model name cannot be empty") + } - // Match the first occurrence of name: "value" pattern - namePattern := regexp.MustCompile(`name\s*:\s*"([^"]+)"`) - matches := namePattern.FindStringSubmatch(line) - if len(matches) > 1 { - oldModelName := matches[1] - // Replace only the FIRST occurrence to avoid replacing nested names - loc := namePattern.FindStringIndex(line) - if loc != nil { - // Replace only the matched portion (first occurrence) - before := line[:loc[0]] - matched := line[loc[0]:loc[1]] - after := line[loc[1]:] - // Replace the value inside quotes while preserving the "name:" format - valuePattern := regexp.MustCompile(`"([^"]+)"`) - valueReplaced := valuePattern.ReplaceAllString(matched, fmt.Sprintf(`"%s"`, destModelName)) - lines[i] = before + valueReplaced + after - } else { - // Fallback: replace all (shouldn't happen with valid input) - lines[i] = namePattern.ReplaceAllString(line, fmt.Sprintf(`name: "%s"`, destModelName)) - } - log.Info().Msgf("Replacing top-level model name in config.pbtxt: '%s' -> '%s'", oldModelName, destModelName) - break - } - } + var modelConfig protogen.ModelConfig + + if err := prototext.Unmarshal(data, &modelConfig); err != nil { + return nil, fmt.Errorf("failed to parse config.pbtxt: %w", err) } - return []byte(strings.Join(lines, "\n")) + oldModelName := modelConfig.Name + modelConfig.Name = destModelName + + opts := prototext.MarshalOptions{ + Multiline: true, + Indent: " ", + } + + out, err := opts.Marshal(&modelConfig) + if err != nil { + return nil, fmt.Errorf("failed to marshal updated config.pbtxt: %w", err) + } + + log.Info(). + Str("old_model_name", oldModelName). + Str("new_model_name", destModelName). + Msg("replaced top-level model name in config.pbtxt") + + return out, nil } func (g *GCSClient) ListFolders(bucket, prefix string) ([]string, error) { diff --git a/horizon/internal/externalcall/gcs_client_test.go b/horizon/internal/externalcall/gcs_client_test.go index f92ed913..b1c4a662 100644 --- a/horizon/internal/externalcall/gcs_client_test.go +++ b/horizon/internal/externalcall/gcs_client_test.go @@ -10,50 +10,60 @@ import ( func TestReplaceModelNameInConfig(t *testing.T) { tests := []struct { - name string - data []byte - destModelName string - expectContains string + name string + data []byte + destModelName string + wantTopLevel string + wantNested string + expectError bool }{ { name: "replaces top-level name only", - data: []byte(`name: "old_model" + data: []byte(` +name: "old_model" instance_group { - name: "old_model" + name: "nested_model" } `), - destModelName: "new_model", - expectContains: `name: "new_model"`, + destModelName: "new_model", + wantTopLevel: `"new_model"`, + wantNested: "nested_model", }, { - name: "preserves nested name with indentation", - data: []byte(`name: "top_level" - instance_group { - name: "nested_name" - } -`), - destModelName: "replaced", - expectContains: `name: "replaced"`, + name: "single line config", + data: []byte(`name: "single_model"` + "\n"), + destModelName: "replaced_model", + wantTopLevel: `"replaced_model"`, }, { - name: "single line config", - data: []byte(`name: "single_model"` + "\n"), - destModelName: "replaced_model", - expectContains: `name: "replaced_model"`, + name: "empty dest model name returns error", + data: []byte(`name: "some_model"`), + destModelName: "", + expectError: true, }, { - name: "no name field returns unchanged", - data: []byte(`platform: "tensorflow" -version: 1 -`), + name: "malformed pbtxt returns error", + data: []byte(`name: "unclosed`), destModelName: "any", - expectContains: `platform: "tensorflow"`, + expectError: true, }, } + for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - got := replaceModelNameInConfig(tt.data, tt.destModelName) - assert.Contains(t, string(got), tt.expectContains) + got, err := ReplaceModelNameInConfig(tt.data, tt.destModelName) + + if tt.expectError { + require.Error(t, err) + return + } + + require.NoError(t, err) + assert.Contains(t, string(got), tt.wantTopLevel) + + if tt.wantNested != "" { + assert.Contains(t, string(got), tt.wantNested) + } }) } } diff --git a/horizon/internal/predator/handler/model.go b/horizon/internal/predator/handler/model.go index c05cb329..90945647 100644 --- a/horizon/internal/predator/handler/model.go +++ b/horizon/internal/predator/handler/model.go @@ -3,6 +3,8 @@ package handler import ( "encoding/json" "time" + + "github.com/Meesho/BharatMLStack/horizon/internal/predator/proto/protogen" ) type Payload struct { @@ -169,7 +171,7 @@ type ModelParamsResponse struct { Backend string `json:"backend"` DynamicBatchingEnabled bool `json:"dynamic_batching_enabled"` Platform string `json:"platform"` - EnsembleScheduling *ModelEnsembling `json:"ensemble_scheduling,omitempty"` + EnsembleScheduling *protogen.ModelEnsembling `json:"ensemble_scheduling,omitempty"` } type RequestGenerationRequest struct { diff --git a/horizon/internal/predator/handler/predator.go b/horizon/internal/predator/handler/predator.go index a2459cdf..73870b84 100644 --- a/horizon/internal/predator/handler/predator.go +++ b/horizon/internal/predator/handler/predator.go @@ -36,6 +36,7 @@ import ( "github.com/Meesho/BharatMLStack/horizon/pkg/random" "github.com/Meesho/BharatMLStack/horizon/pkg/serializer" "github.com/rs/zerolog/log" + "github.com/Meesho/BharatMLStack/horizon/internal/predator/proto/protogen" ) type Predator struct { @@ -353,7 +354,7 @@ func (p *Predator) FetchModelConfig(req FetchModelConfigRequest) (ModelParamsRes } } - var modelConfig ModelConfig + var modelConfig protogen.ModelConfig if err := prototext.Unmarshal(configData, &modelConfig); err != nil { return ModelParamsResponse{}, http.StatusInternalServerError, fmt.Errorf(errUnmarshalProtoFormat, err) } @@ -391,7 +392,7 @@ func parseModelPath(modelPath string) (bucket, objectPath string) { return parts[0], parts[1] } -func validateModelConfig(cfg *ModelConfig) error { +func validateModelConfig(cfg *protogen.ModelConfig) error { switch { case cfg.Name == constant.EmptyString: return errors.New(errModelNameMissing) @@ -423,7 +424,7 @@ func convertFields(name string, dims []int64, dataType string) (IO, bool) { }, true } -func convertInputWithFeatures(fields []*ModelInput, featureMap map[string][]string) []IO { +func convertInputWithFeatures(fields []*protogen.ModelInput, featureMap map[string][]string) []IO { ios := make([]IO, 0, len(fields)) for _, f := range fields { if io, ok := convertFields(f.Name, f.Dims, f.DataType.String()); ok { @@ -437,7 +438,7 @@ func convertInputWithFeatures(fields []*ModelInput, featureMap map[string][]stri return ios } -func convertOutput(fields []*ModelOutput) []IO { +func convertOutput(fields []*protogen.ModelOutput) []IO { ios := make([]IO, 0, len(fields)) for _, f := range fields { if io, ok := convertFields(f.Name, f.Dims, f.DataType.String()); ok { @@ -447,7 +448,7 @@ func convertOutput(fields []*ModelOutput) []IO { return ios } -func createModelParamsResponse(modelConfig *ModelConfig, objectPath string, inputs, outputs []IO) ModelParamsResponse { +func createModelParamsResponse(modelConfig *protogen.ModelConfig, objectPath string, inputs, outputs []IO) ModelParamsResponse { var resp ModelParamsResponse if len(modelConfig.InstanceGroup) > 0 { diff --git a/horizon/internal/predator/handler/predator_approval.go b/horizon/internal/predator/handler/predator_approval.go index fce8ab0a..33183447 100644 --- a/horizon/internal/predator/handler/predator_approval.go +++ b/horizon/internal/predator/handler/predator_approval.go @@ -4,6 +4,7 @@ import ( "encoding/json" "errors" "fmt" + "path" "strings" "time" @@ -13,7 +14,9 @@ import ( "github.com/Meesho/BharatMLStack/horizon/internal/repositories/sql/predatorconfig" "github.com/Meesho/BharatMLStack/horizon/internal/repositories/sql/predatorrequest" "github.com/rs/zerolog/log" + "google.golang.org/protobuf/encoding/prototext" "gorm.io/gorm" + "github.com/Meesho/BharatMLStack/horizon/internal/predator/proto/protogen" ) func (p *Predator) processRequest(requestIdPayloadMap map[uint]*Payload, predatorRequestList []predatorrequest.PredatorRequest, req ApproveRequest) { @@ -191,6 +194,12 @@ func (p *Predator) processEditGCSCopyStage(requestIdPayloadMap map[uint]*Payload } else { configBucket := pred.GcsConfigBucket configPath := pred.GcsConfigBasePath + if configBucket != "" && configPath != "" && payload.MetaData.InstanceCount > 0 { + if err := p.updateInstanceCountInConfigSource(configBucket, configPath, modelName, payload.MetaData.InstanceCount); err != nil { + log.Error().Err(err).Msgf("Failed to update instance count in config-source for model %s", modelName) + return transferredGcsModelData, err + } + } if err := p.GcsClient.TransferFolderWithSplitSources( sourceBucket, sourceBasePath, configBucket, configPath, sourceModelName, targetBucket, targetPath, modelName, @@ -212,6 +221,53 @@ func (p *Predator) processEditGCSCopyStage(requestIdPayloadMap map[uint]*Payload return transferredGcsModelData, nil } +func (p *Predator) updateInstanceCountInConfigSource(bucket, basePath, modelName string, instanceCount int) error { + if modelName == "" { + return fmt.Errorf("model name is empty, required to update instance count in config-source") + } + + configPath := path.Join(basePath, modelName, configFile) + configData, err := p.GcsClient.ReadFile(bucket, configPath) + if err != nil { + return fmt.Errorf("failed to read config.pbtxt from config-source for model %s: %w", modelName, err) + } + + var modelConfig protogen.ModelConfig + if err := prototext.Unmarshal(configData, &modelConfig); err != nil { + return fmt.Errorf("failed to parse config.pbtxt from config-source for model %s: %w", modelName, err) + } + if len(modelConfig.InstanceGroup) == 0 { + return fmt.Errorf("%s (model %s)", errNoInstanceGroup, modelName) + } + + currentCount := modelConfig.InstanceGroup[0].Count + if currentCount == int32(instanceCount) { + log.Info(). + Str("model", modelName). + Int("instance_count", instanceCount). + Msg("instance_count unchanged, skipping config update") + return nil + } + + modelConfig.InstanceGroup[0].Count = int32(instanceCount) + + opts := prototext.MarshalOptions{ + Multiline: true, + Indent: " ", + } + + newConfigData, err := opts.Marshal(&modelConfig) + if err != nil { + return fmt.Errorf("failed to marshal config.pbtxt for model %s: %w", modelName, err) + } + if err := p.GcsClient.UploadFile(bucket, configPath, newConfigData); err != nil { + return fmt.Errorf("failed to upload config.pbtxt to config-source for model %s: %w", modelName, err) + } + + log.Info().Msgf("Updated instance_count to %d in config-source for model %s", instanceCount, modelName) + return nil +} + // processEditDBUpdateStage updates predator config for edit approval // This updates the existing predator config with new config.pbtxt and metadata.json changes func (p *Predator) processEditDBUpdateStage(requestIdPayloadMap map[uint]*Payload, predatorRequestList []predatorrequest.PredatorRequest, approvedBy string) error { diff --git a/horizon/internal/predator/handler/predator_upload.go b/horizon/internal/predator/handler/predator_upload.go index 9015f352..a08c8286 100644 --- a/horizon/internal/predator/handler/predator_upload.go +++ b/horizon/internal/predator/handler/predator_upload.go @@ -10,6 +10,7 @@ import ( "github.com/Meesho/BharatMLStack/horizon/internal/externalcall" pred "github.com/Meesho/BharatMLStack/horizon/internal/predator" + "github.com/Meesho/BharatMLStack/horizon/internal/predator/proto/protogen" "github.com/rs/zerolog/log" "google.golang.org/protobuf/encoding/prototext" ) @@ -88,8 +89,10 @@ func (p *Predator) copyConfigToProdConfigSource(gcsPath, modelName string) error return fmt.Errorf("failed to read config.pbtxt from source: %w", err) } - updatedConfigData := p.replaceModelNameInConfigPreservingFormat(configData, modelName) - + updatedConfigData, err := externalcall.ReplaceModelNameInConfig(configData, modelName) + if err != nil { + return fmt.Errorf("failed to replace model name in config: %w", err) + } destConfigPath := path.Join(pred.GcsConfigBasePath, modelName, configFile) if err := p.GcsClient.UploadFile(pred.GcsConfigBucket, destConfigPath, updatedConfigData); err != nil { return fmt.Errorf("failed to upload config.pbtxt to config source: %w", err) @@ -437,7 +440,7 @@ func (p *Predator) validateModelConfiguration(gcsPath string) error { return fmt.Errorf("failed to read config.pbtxt from %s/%s: %w", srcBucket, configPath, err) } - var modelConfig ModelConfig + var modelConfig protogen.ModelConfig if err := prototext.Unmarshal(configData, &modelConfig); err != nil { return fmt.Errorf("failed to parse config.pbtxt as proto: %w", err) } @@ -481,8 +484,10 @@ func (p *Predator) copyConfigToNewNameInConfigSource(oldModelName, newModelName return fmt.Errorf("failed to read config.pbtxt from %s: %w", srcConfigPath, err) } - updatedConfigData := p.replaceModelNameInConfigPreservingFormat(configData, newModelName) - + updatedConfigData, err := externalcall.ReplaceModelNameInConfig(configData, newModelName) + if err != nil { + return fmt.Errorf("failed to replace model name in config: %w", err) + } if err := p.GcsClient.UploadFile(pred.GcsConfigBucket, destConfigPath, updatedConfigData); err != nil { return fmt.Errorf("failed to upload config.pbtxt to %s: %w", destConfigPath, err) } diff --git a/horizon/internal/predator/proto/model_config.proto b/horizon/internal/predator/proto/model_config.proto index f6ef8944..f9149096 100644 --- a/horizon/internal/predator/proto/model_config.proto +++ b/horizon/internal/predator/proto/model_config.proto @@ -2,7 +2,7 @@ syntax = "proto3"; package proto; -option go_package = "horizon/internal/predator"; +option go_package = "github.com/Meesho/BharatMLStack/horizon/internal/predator/proto/protogen"; enum DataType { TYPE_INVALID = 0; diff --git a/horizon/internal/predator/handler/model_config.pb.go b/horizon/internal/predator/proto/protogen/model_config.pb.go similarity index 60% rename from horizon/internal/predator/handler/model_config.pb.go rename to horizon/internal/predator/proto/protogen/model_config.pb.go index 8d3f485f..c8c48024 100644 --- a/horizon/internal/predator/handler/model_config.pb.go +++ b/horizon/internal/predator/proto/protogen/model_config.pb.go @@ -1,16 +1,17 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.1 -// protoc v5.29.3 -// source: proto/model_config.proto +// protoc-gen-go v1.36.11 +// protoc v6.33.4 +// source: internal/predator/proto/model_config.proto -package handler +package protogen import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" + unsafe "unsafe" ) const ( @@ -89,11 +90,11 @@ func (x DataType) String() string { } func (DataType) Descriptor() protoreflect.EnumDescriptor { - return file_proto_model_config_proto_enumTypes[0].Descriptor() + return file_internal_predator_proto_model_config_proto_enumTypes[0].Descriptor() } func (DataType) Type() protoreflect.EnumType { - return &file_proto_model_config_proto_enumTypes[0] + return &file_internal_predator_proto_model_config_proto_enumTypes[0] } func (x DataType) Number() protoreflect.EnumNumber { @@ -102,7 +103,7 @@ func (x DataType) Number() protoreflect.EnumNumber { // Deprecated: Use DataType.Descriptor instead. func (DataType) EnumDescriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{0} } type ModelInstanceGroup_Kind int32 @@ -141,11 +142,11 @@ func (x ModelInstanceGroup_Kind) String() string { } func (ModelInstanceGroup_Kind) Descriptor() protoreflect.EnumDescriptor { - return file_proto_model_config_proto_enumTypes[1].Descriptor() + return file_internal_predator_proto_model_config_proto_enumTypes[1].Descriptor() } func (ModelInstanceGroup_Kind) Type() protoreflect.EnumType { - return &file_proto_model_config_proto_enumTypes[1] + return &file_internal_predator_proto_model_config_proto_enumTypes[1] } func (x ModelInstanceGroup_Kind) Number() protoreflect.EnumNumber { @@ -154,7 +155,7 @@ func (x ModelInstanceGroup_Kind) Number() protoreflect.EnumNumber { // Deprecated: Use ModelInstanceGroup_Kind.Descriptor instead. func (ModelInstanceGroup_Kind) EnumDescriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{1, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{1, 0} } type ModelInstanceGroup_SecondaryDevice_SecondaryDeviceKind int32 @@ -184,11 +185,11 @@ func (x ModelInstanceGroup_SecondaryDevice_SecondaryDeviceKind) String() string } func (ModelInstanceGroup_SecondaryDevice_SecondaryDeviceKind) Descriptor() protoreflect.EnumDescriptor { - return file_proto_model_config_proto_enumTypes[2].Descriptor() + return file_internal_predator_proto_model_config_proto_enumTypes[2].Descriptor() } func (ModelInstanceGroup_SecondaryDevice_SecondaryDeviceKind) Type() protoreflect.EnumType { - return &file_proto_model_config_proto_enumTypes[2] + return &file_internal_predator_proto_model_config_proto_enumTypes[2] } func (x ModelInstanceGroup_SecondaryDevice_SecondaryDeviceKind) Number() protoreflect.EnumNumber { @@ -197,7 +198,7 @@ func (x ModelInstanceGroup_SecondaryDevice_SecondaryDeviceKind) Number() protore // Deprecated: Use ModelInstanceGroup_SecondaryDevice_SecondaryDeviceKind.Descriptor instead. func (ModelInstanceGroup_SecondaryDevice_SecondaryDeviceKind) EnumDescriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{1, 0, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{1, 0, 0} } type ModelInput_Format int32 @@ -233,11 +234,11 @@ func (x ModelInput_Format) String() string { } func (ModelInput_Format) Descriptor() protoreflect.EnumDescriptor { - return file_proto_model_config_proto_enumTypes[3].Descriptor() + return file_internal_predator_proto_model_config_proto_enumTypes[3].Descriptor() } func (ModelInput_Format) Type() protoreflect.EnumType { - return &file_proto_model_config_proto_enumTypes[3] + return &file_internal_predator_proto_model_config_proto_enumTypes[3] } func (x ModelInput_Format) Number() protoreflect.EnumNumber { @@ -246,7 +247,7 @@ func (x ModelInput_Format) Number() protoreflect.EnumNumber { // Deprecated: Use ModelInput_Format.Descriptor instead. func (ModelInput_Format) EnumDescriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{3, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{3, 0} } type BatchInput_Kind int32 @@ -291,11 +292,11 @@ func (x BatchInput_Kind) String() string { } func (BatchInput_Kind) Descriptor() protoreflect.EnumDescriptor { - return file_proto_model_config_proto_enumTypes[4].Descriptor() + return file_internal_predator_proto_model_config_proto_enumTypes[4].Descriptor() } func (BatchInput_Kind) Type() protoreflect.EnumType { - return &file_proto_model_config_proto_enumTypes[4] + return &file_internal_predator_proto_model_config_proto_enumTypes[4] } func (x BatchInput_Kind) Number() protoreflect.EnumNumber { @@ -304,7 +305,7 @@ func (x BatchInput_Kind) Number() protoreflect.EnumNumber { // Deprecated: Use BatchInput_Kind.Descriptor instead. func (BatchInput_Kind) EnumDescriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{5, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{5, 0} } type BatchOutput_Kind int32 @@ -334,11 +335,11 @@ func (x BatchOutput_Kind) String() string { } func (BatchOutput_Kind) Descriptor() protoreflect.EnumDescriptor { - return file_proto_model_config_proto_enumTypes[5].Descriptor() + return file_internal_predator_proto_model_config_proto_enumTypes[5].Descriptor() } func (BatchOutput_Kind) Type() protoreflect.EnumType { - return &file_proto_model_config_proto_enumTypes[5] + return &file_internal_predator_proto_model_config_proto_enumTypes[5] } func (x BatchOutput_Kind) Number() protoreflect.EnumNumber { @@ -347,7 +348,7 @@ func (x BatchOutput_Kind) Number() protoreflect.EnumNumber { // Deprecated: Use BatchOutput_Kind.Descriptor instead. func (BatchOutput_Kind) EnumDescriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{6, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{6, 0} } type ModelOptimizationPolicy_ModelPriority int32 @@ -383,11 +384,11 @@ func (x ModelOptimizationPolicy_ModelPriority) String() string { } func (ModelOptimizationPolicy_ModelPriority) Descriptor() protoreflect.EnumDescriptor { - return file_proto_model_config_proto_enumTypes[6].Descriptor() + return file_internal_predator_proto_model_config_proto_enumTypes[6].Descriptor() } func (ModelOptimizationPolicy_ModelPriority) Type() protoreflect.EnumType { - return &file_proto_model_config_proto_enumTypes[6] + return &file_internal_predator_proto_model_config_proto_enumTypes[6] } func (x ModelOptimizationPolicy_ModelPriority) Number() protoreflect.EnumNumber { @@ -396,7 +397,7 @@ func (x ModelOptimizationPolicy_ModelPriority) Number() protoreflect.EnumNumber // Deprecated: Use ModelOptimizationPolicy_ModelPriority.Descriptor instead. func (ModelOptimizationPolicy_ModelPriority) EnumDescriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{8, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{8, 0} } type ModelQueuePolicy_TimeoutAction int32 @@ -429,11 +430,11 @@ func (x ModelQueuePolicy_TimeoutAction) String() string { } func (ModelQueuePolicy_TimeoutAction) Descriptor() protoreflect.EnumDescriptor { - return file_proto_model_config_proto_enumTypes[7].Descriptor() + return file_internal_predator_proto_model_config_proto_enumTypes[7].Descriptor() } func (ModelQueuePolicy_TimeoutAction) Type() protoreflect.EnumType { - return &file_proto_model_config_proto_enumTypes[7] + return &file_internal_predator_proto_model_config_proto_enumTypes[7] } func (x ModelQueuePolicy_TimeoutAction) Number() protoreflect.EnumNumber { @@ -442,7 +443,7 @@ func (x ModelQueuePolicy_TimeoutAction) Number() protoreflect.EnumNumber { // Deprecated: Use ModelQueuePolicy_TimeoutAction.Descriptor instead. func (ModelQueuePolicy_TimeoutAction) EnumDescriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{9, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{9, 0} } type ModelSequenceBatching_Control_Kind int32 @@ -481,11 +482,11 @@ func (x ModelSequenceBatching_Control_Kind) String() string { } func (ModelSequenceBatching_Control_Kind) Descriptor() protoreflect.EnumDescriptor { - return file_proto_model_config_proto_enumTypes[8].Descriptor() + return file_internal_predator_proto_model_config_proto_enumTypes[8].Descriptor() } func (ModelSequenceBatching_Control_Kind) Type() protoreflect.EnumType { - return &file_proto_model_config_proto_enumTypes[8] + return &file_internal_predator_proto_model_config_proto_enumTypes[8] } func (x ModelSequenceBatching_Control_Kind) Number() protoreflect.EnumNumber { @@ -494,7 +495,7 @@ func (x ModelSequenceBatching_Control_Kind) Number() protoreflect.EnumNumber { // Deprecated: Use ModelSequenceBatching_Control_Kind.Descriptor instead. func (ModelSequenceBatching_Control_Kind) EnumDescriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{11, 0, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{11, 0, 0} } type ModelRateLimiter struct { @@ -507,7 +508,7 @@ type ModelRateLimiter struct { func (x *ModelRateLimiter) Reset() { *x = ModelRateLimiter{} - mi := &file_proto_model_config_proto_msgTypes[0] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -519,7 +520,7 @@ func (x *ModelRateLimiter) String() string { func (*ModelRateLimiter) ProtoMessage() {} func (x *ModelRateLimiter) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[0] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[0] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -532,7 +533,7 @@ func (x *ModelRateLimiter) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelRateLimiter.ProtoReflect.Descriptor instead. func (*ModelRateLimiter) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{0} } func (x *ModelRateLimiter) GetResources() []*ModelRateLimiter_Resource { @@ -566,7 +567,7 @@ type ModelInstanceGroup struct { func (x *ModelInstanceGroup) Reset() { *x = ModelInstanceGroup{} - mi := &file_proto_model_config_proto_msgTypes[1] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -578,7 +579,7 @@ func (x *ModelInstanceGroup) String() string { func (*ModelInstanceGroup) ProtoMessage() {} func (x *ModelInstanceGroup) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[1] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[1] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -591,7 +592,7 @@ func (x *ModelInstanceGroup) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelInstanceGroup.ProtoReflect.Descriptor instead. func (*ModelInstanceGroup) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{1} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{1} } func (x *ModelInstanceGroup) GetName() string { @@ -666,7 +667,7 @@ type ModelTensorReshape struct { func (x *ModelTensorReshape) Reset() { *x = ModelTensorReshape{} - mi := &file_proto_model_config_proto_msgTypes[2] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -678,7 +679,7 @@ func (x *ModelTensorReshape) String() string { func (*ModelTensorReshape) ProtoMessage() {} func (x *ModelTensorReshape) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[2] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[2] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -691,7 +692,7 @@ func (x *ModelTensorReshape) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelTensorReshape.ProtoReflect.Descriptor instead. func (*ModelTensorReshape) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{2} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{2} } func (x *ModelTensorReshape) GetShape() []int64 { @@ -718,7 +719,7 @@ type ModelInput struct { func (x *ModelInput) Reset() { *x = ModelInput{} - mi := &file_proto_model_config_proto_msgTypes[3] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -730,7 +731,7 @@ func (x *ModelInput) String() string { func (*ModelInput) ProtoMessage() {} func (x *ModelInput) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[3] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[3] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -743,7 +744,7 @@ func (x *ModelInput) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelInput.ProtoReflect.Descriptor instead. func (*ModelInput) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{3} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{3} } func (x *ModelInput) GetName() string { @@ -824,7 +825,7 @@ type ModelOutput struct { func (x *ModelOutput) Reset() { *x = ModelOutput{} - mi := &file_proto_model_config_proto_msgTypes[4] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -836,7 +837,7 @@ func (x *ModelOutput) String() string { func (*ModelOutput) ProtoMessage() {} func (x *ModelOutput) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[4] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[4] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -849,7 +850,7 @@ func (x *ModelOutput) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelOutput.ProtoReflect.Descriptor instead. func (*ModelOutput) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{4} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{4} } func (x *ModelOutput) GetName() string { @@ -913,7 +914,7 @@ type BatchInput struct { func (x *BatchInput) Reset() { *x = BatchInput{} - mi := &file_proto_model_config_proto_msgTypes[5] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -925,7 +926,7 @@ func (x *BatchInput) String() string { func (*BatchInput) ProtoMessage() {} func (x *BatchInput) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[5] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[5] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -938,7 +939,7 @@ func (x *BatchInput) ProtoReflect() protoreflect.Message { // Deprecated: Use BatchInput.ProtoReflect.Descriptor instead. func (*BatchInput) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{5} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{5} } func (x *BatchInput) GetKind() BatchInput_Kind { @@ -980,7 +981,7 @@ type BatchOutput struct { func (x *BatchOutput) Reset() { *x = BatchOutput{} - mi := &file_proto_model_config_proto_msgTypes[6] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -992,7 +993,7 @@ func (x *BatchOutput) String() string { func (*BatchOutput) ProtoMessage() {} func (x *BatchOutput) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[6] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[6] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1005,7 +1006,7 @@ func (x *BatchOutput) ProtoReflect() protoreflect.Message { // Deprecated: Use BatchOutput.ProtoReflect.Descriptor instead. func (*BatchOutput) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{6} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{6} } func (x *BatchOutput) GetTargetName() []string { @@ -1043,7 +1044,7 @@ type ModelVersionPolicy struct { func (x *ModelVersionPolicy) Reset() { *x = ModelVersionPolicy{} - mi := &file_proto_model_config_proto_msgTypes[7] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1055,7 +1056,7 @@ func (x *ModelVersionPolicy) String() string { func (*ModelVersionPolicy) ProtoMessage() {} func (x *ModelVersionPolicy) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[7] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1068,7 +1069,7 @@ func (x *ModelVersionPolicy) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelVersionPolicy.ProtoReflect.Descriptor instead. func (*ModelVersionPolicy) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{7} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{7} } func (x *ModelVersionPolicy) GetPolicyChoice() isModelVersionPolicy_PolicyChoice { @@ -1143,7 +1144,7 @@ type ModelOptimizationPolicy struct { func (x *ModelOptimizationPolicy) Reset() { *x = ModelOptimizationPolicy{} - mi := &file_proto_model_config_proto_msgTypes[8] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1155,7 +1156,7 @@ func (x *ModelOptimizationPolicy) String() string { func (*ModelOptimizationPolicy) ProtoMessage() {} func (x *ModelOptimizationPolicy) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[8] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[8] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1168,7 +1169,7 @@ func (x *ModelOptimizationPolicy) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelOptimizationPolicy.ProtoReflect.Descriptor instead. func (*ModelOptimizationPolicy) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{8} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{8} } func (x *ModelOptimizationPolicy) GetGraph() *ModelOptimizationPolicy_Graph { @@ -1239,7 +1240,7 @@ type ModelQueuePolicy struct { func (x *ModelQueuePolicy) Reset() { *x = ModelQueuePolicy{} - mi := &file_proto_model_config_proto_msgTypes[9] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1251,7 +1252,7 @@ func (x *ModelQueuePolicy) String() string { func (*ModelQueuePolicy) ProtoMessage() {} func (x *ModelQueuePolicy) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[9] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[9] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1264,7 +1265,7 @@ func (x *ModelQueuePolicy) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelQueuePolicy.ProtoReflect.Descriptor instead. func (*ModelQueuePolicy) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{9} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{9} } func (x *ModelQueuePolicy) GetTimeoutAction() ModelQueuePolicy_TimeoutAction { @@ -1310,7 +1311,7 @@ type ModelDynamicBatching struct { func (x *ModelDynamicBatching) Reset() { *x = ModelDynamicBatching{} - mi := &file_proto_model_config_proto_msgTypes[10] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1322,7 +1323,7 @@ func (x *ModelDynamicBatching) String() string { func (*ModelDynamicBatching) ProtoMessage() {} func (x *ModelDynamicBatching) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[10] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[10] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1335,7 +1336,7 @@ func (x *ModelDynamicBatching) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelDynamicBatching.ProtoReflect.Descriptor instead. func (*ModelDynamicBatching) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{10} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{10} } func (x *ModelDynamicBatching) GetPreferredBatchSize() []int32 { @@ -1404,7 +1405,7 @@ type ModelSequenceBatching struct { func (x *ModelSequenceBatching) Reset() { *x = ModelSequenceBatching{} - mi := &file_proto_model_config_proto_msgTypes[11] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1416,7 +1417,7 @@ func (x *ModelSequenceBatching) String() string { func (*ModelSequenceBatching) ProtoMessage() {} func (x *ModelSequenceBatching) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[11] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[11] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1429,7 +1430,7 @@ func (x *ModelSequenceBatching) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelSequenceBatching.ProtoReflect.Descriptor instead. func (*ModelSequenceBatching) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{11} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{11} } func (x *ModelSequenceBatching) GetStrategyChoice() isModelSequenceBatching_StrategyChoice { @@ -1510,7 +1511,7 @@ type ModelEnsembling struct { func (x *ModelEnsembling) Reset() { *x = ModelEnsembling{} - mi := &file_proto_model_config_proto_msgTypes[12] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1522,7 +1523,7 @@ func (x *ModelEnsembling) String() string { func (*ModelEnsembling) ProtoMessage() {} func (x *ModelEnsembling) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[12] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[12] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1535,7 +1536,7 @@ func (x *ModelEnsembling) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelEnsembling.ProtoReflect.Descriptor instead. func (*ModelEnsembling) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{12} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{12} } func (x *ModelEnsembling) GetStep() []*ModelEnsembling_Step { @@ -1554,7 +1555,7 @@ type ModelParameter struct { func (x *ModelParameter) Reset() { *x = ModelParameter{} - mi := &file_proto_model_config_proto_msgTypes[13] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1566,7 +1567,7 @@ func (x *ModelParameter) String() string { func (*ModelParameter) ProtoMessage() {} func (x *ModelParameter) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[13] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[13] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1579,7 +1580,7 @@ func (x *ModelParameter) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelParameter.ProtoReflect.Descriptor instead. func (*ModelParameter) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{13} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{13} } func (x *ModelParameter) GetStringValue() string { @@ -1601,7 +1602,7 @@ type ModelWarmup struct { func (x *ModelWarmup) Reset() { *x = ModelWarmup{} - mi := &file_proto_model_config_proto_msgTypes[14] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1613,7 +1614,7 @@ func (x *ModelWarmup) String() string { func (*ModelWarmup) ProtoMessage() {} func (x *ModelWarmup) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[14] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[14] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1626,7 +1627,7 @@ func (x *ModelWarmup) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelWarmup.ProtoReflect.Descriptor instead. func (*ModelWarmup) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{14} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{14} } func (x *ModelWarmup) GetName() string { @@ -1666,7 +1667,7 @@ type ModelOperations struct { func (x *ModelOperations) Reset() { *x = ModelOperations{} - mi := &file_proto_model_config_proto_msgTypes[15] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1678,7 +1679,7 @@ func (x *ModelOperations) String() string { func (*ModelOperations) ProtoMessage() {} func (x *ModelOperations) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[15] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[15] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1691,7 +1692,7 @@ func (x *ModelOperations) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelOperations.ProtoReflect.Descriptor instead. func (*ModelOperations) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{15} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{15} } func (x *ModelOperations) GetOpLibraryFilename() []string { @@ -1710,7 +1711,7 @@ type ModelTransactionPolicy struct { func (x *ModelTransactionPolicy) Reset() { *x = ModelTransactionPolicy{} - mi := &file_proto_model_config_proto_msgTypes[16] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1722,7 +1723,7 @@ func (x *ModelTransactionPolicy) String() string { func (*ModelTransactionPolicy) ProtoMessage() {} func (x *ModelTransactionPolicy) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[16] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[16] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1735,7 +1736,7 @@ func (x *ModelTransactionPolicy) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelTransactionPolicy.ProtoReflect.Descriptor instead. func (*ModelTransactionPolicy) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{16} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{16} } func (x *ModelTransactionPolicy) GetDecoupled() bool { @@ -1754,7 +1755,7 @@ type ModelRepositoryAgents struct { func (x *ModelRepositoryAgents) Reset() { *x = ModelRepositoryAgents{} - mi := &file_proto_model_config_proto_msgTypes[17] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1766,7 +1767,7 @@ func (x *ModelRepositoryAgents) String() string { func (*ModelRepositoryAgents) ProtoMessage() {} func (x *ModelRepositoryAgents) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[17] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[17] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1779,7 +1780,7 @@ func (x *ModelRepositoryAgents) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelRepositoryAgents.ProtoReflect.Descriptor instead. func (*ModelRepositoryAgents) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{17} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{17} } func (x *ModelRepositoryAgents) GetAgents() []*ModelRepositoryAgents_Agent { @@ -1798,7 +1799,7 @@ type ModelResponseCache struct { func (x *ModelResponseCache) Reset() { *x = ModelResponseCache{} - mi := &file_proto_model_config_proto_msgTypes[18] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1810,7 +1811,7 @@ func (x *ModelResponseCache) String() string { func (*ModelResponseCache) ProtoMessage() {} func (x *ModelResponseCache) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[18] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[18] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1823,7 +1824,7 @@ func (x *ModelResponseCache) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelResponseCache.ProtoReflect.Descriptor instead. func (*ModelResponseCache) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{18} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{18} } func (x *ModelResponseCache) GetEnable() bool { @@ -1842,7 +1843,7 @@ type ModelMetrics struct { func (x *ModelMetrics) Reset() { *x = ModelMetrics{} - mi := &file_proto_model_config_proto_msgTypes[19] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1854,7 +1855,7 @@ func (x *ModelMetrics) String() string { func (*ModelMetrics) ProtoMessage() {} func (x *ModelMetrics) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[19] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[19] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1867,7 +1868,7 @@ func (x *ModelMetrics) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelMetrics.ProtoReflect.Descriptor instead. func (*ModelMetrics) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{19} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{19} } func (x *ModelMetrics) GetMetricControl() []*ModelMetrics_MetricControl { @@ -1913,7 +1914,7 @@ type ModelConfig struct { func (x *ModelConfig) Reset() { *x = ModelConfig{} - mi := &file_proto_model_config_proto_msgTypes[20] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1925,7 +1926,7 @@ func (x *ModelConfig) String() string { func (*ModelConfig) ProtoMessage() {} func (x *ModelConfig) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[20] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[20] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1938,7 +1939,7 @@ func (x *ModelConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelConfig.ProtoReflect.Descriptor instead. func (*ModelConfig) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{20} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{20} } func (x *ModelConfig) GetName() string { @@ -2162,7 +2163,7 @@ type ModelRateLimiter_Resource struct { func (x *ModelRateLimiter_Resource) Reset() { *x = ModelRateLimiter_Resource{} - mi := &file_proto_model_config_proto_msgTypes[21] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2174,7 +2175,7 @@ func (x *ModelRateLimiter_Resource) String() string { func (*ModelRateLimiter_Resource) ProtoMessage() {} func (x *ModelRateLimiter_Resource) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[21] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[21] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2187,7 +2188,7 @@ func (x *ModelRateLimiter_Resource) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelRateLimiter_Resource.ProtoReflect.Descriptor instead. func (*ModelRateLimiter_Resource) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{0, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{0, 0} } func (x *ModelRateLimiter_Resource) GetName() string { @@ -2221,7 +2222,7 @@ type ModelInstanceGroup_SecondaryDevice struct { func (x *ModelInstanceGroup_SecondaryDevice) Reset() { *x = ModelInstanceGroup_SecondaryDevice{} - mi := &file_proto_model_config_proto_msgTypes[22] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2233,7 +2234,7 @@ func (x *ModelInstanceGroup_SecondaryDevice) String() string { func (*ModelInstanceGroup_SecondaryDevice) ProtoMessage() {} func (x *ModelInstanceGroup_SecondaryDevice) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[22] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[22] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2246,7 +2247,7 @@ func (x *ModelInstanceGroup_SecondaryDevice) ProtoReflect() protoreflect.Message // Deprecated: Use ModelInstanceGroup_SecondaryDevice.ProtoReflect.Descriptor instead. func (*ModelInstanceGroup_SecondaryDevice) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{1, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{1, 0} } func (x *ModelInstanceGroup_SecondaryDevice) GetKind() ModelInstanceGroup_SecondaryDevice_SecondaryDeviceKind { @@ -2272,7 +2273,7 @@ type ModelVersionPolicy_Latest struct { func (x *ModelVersionPolicy_Latest) Reset() { *x = ModelVersionPolicy_Latest{} - mi := &file_proto_model_config_proto_msgTypes[23] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2284,7 +2285,7 @@ func (x *ModelVersionPolicy_Latest) String() string { func (*ModelVersionPolicy_Latest) ProtoMessage() {} func (x *ModelVersionPolicy_Latest) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[23] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[23] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2297,7 +2298,7 @@ func (x *ModelVersionPolicy_Latest) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelVersionPolicy_Latest.ProtoReflect.Descriptor instead. func (*ModelVersionPolicy_Latest) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{7, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{7, 0} } func (x *ModelVersionPolicy_Latest) GetNumVersions() uint32 { @@ -2315,7 +2316,7 @@ type ModelVersionPolicy_All struct { func (x *ModelVersionPolicy_All) Reset() { *x = ModelVersionPolicy_All{} - mi := &file_proto_model_config_proto_msgTypes[24] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2327,7 +2328,7 @@ func (x *ModelVersionPolicy_All) String() string { func (*ModelVersionPolicy_All) ProtoMessage() {} func (x *ModelVersionPolicy_All) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[24] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[24] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2340,7 +2341,7 @@ func (x *ModelVersionPolicy_All) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelVersionPolicy_All.ProtoReflect.Descriptor instead. func (*ModelVersionPolicy_All) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{7, 1} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{7, 1} } type ModelVersionPolicy_Specific struct { @@ -2352,7 +2353,7 @@ type ModelVersionPolicy_Specific struct { func (x *ModelVersionPolicy_Specific) Reset() { *x = ModelVersionPolicy_Specific{} - mi := &file_proto_model_config_proto_msgTypes[25] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2364,7 +2365,7 @@ func (x *ModelVersionPolicy_Specific) String() string { func (*ModelVersionPolicy_Specific) ProtoMessage() {} func (x *ModelVersionPolicy_Specific) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[25] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[25] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2377,7 +2378,7 @@ func (x *ModelVersionPolicy_Specific) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelVersionPolicy_Specific.ProtoReflect.Descriptor instead. func (*ModelVersionPolicy_Specific) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{7, 2} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{7, 2} } func (x *ModelVersionPolicy_Specific) GetVersions() []int64 { @@ -2396,7 +2397,7 @@ type ModelOptimizationPolicy_Graph struct { func (x *ModelOptimizationPolicy_Graph) Reset() { *x = ModelOptimizationPolicy_Graph{} - mi := &file_proto_model_config_proto_msgTypes[26] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2408,7 +2409,7 @@ func (x *ModelOptimizationPolicy_Graph) String() string { func (*ModelOptimizationPolicy_Graph) ProtoMessage() {} func (x *ModelOptimizationPolicy_Graph) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[26] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[26] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2421,7 +2422,7 @@ func (x *ModelOptimizationPolicy_Graph) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelOptimizationPolicy_Graph.ProtoReflect.Descriptor instead. func (*ModelOptimizationPolicy_Graph) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{8, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{8, 0} } func (x *ModelOptimizationPolicy_Graph) GetLevel() int32 { @@ -2443,7 +2444,7 @@ type ModelOptimizationPolicy_Cuda struct { func (x *ModelOptimizationPolicy_Cuda) Reset() { *x = ModelOptimizationPolicy_Cuda{} - mi := &file_proto_model_config_proto_msgTypes[27] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2455,7 +2456,7 @@ func (x *ModelOptimizationPolicy_Cuda) String() string { func (*ModelOptimizationPolicy_Cuda) ProtoMessage() {} func (x *ModelOptimizationPolicy_Cuda) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[27] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[27] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2468,7 +2469,7 @@ func (x *ModelOptimizationPolicy_Cuda) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelOptimizationPolicy_Cuda.ProtoReflect.Descriptor instead. func (*ModelOptimizationPolicy_Cuda) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{8, 1} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{8, 1} } func (x *ModelOptimizationPolicy_Cuda) GetGraphs() bool { @@ -2509,7 +2510,7 @@ type ModelOptimizationPolicy_ExecutionAccelerators struct { func (x *ModelOptimizationPolicy_ExecutionAccelerators) Reset() { *x = ModelOptimizationPolicy_ExecutionAccelerators{} - mi := &file_proto_model_config_proto_msgTypes[28] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2521,7 +2522,7 @@ func (x *ModelOptimizationPolicy_ExecutionAccelerators) String() string { func (*ModelOptimizationPolicy_ExecutionAccelerators) ProtoMessage() {} func (x *ModelOptimizationPolicy_ExecutionAccelerators) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[28] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[28] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2534,7 +2535,7 @@ func (x *ModelOptimizationPolicy_ExecutionAccelerators) ProtoReflect() protorefl // Deprecated: Use ModelOptimizationPolicy_ExecutionAccelerators.ProtoReflect.Descriptor instead. func (*ModelOptimizationPolicy_ExecutionAccelerators) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{8, 2} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{8, 2} } func (x *ModelOptimizationPolicy_ExecutionAccelerators) GetGpuExecutionAccelerator() []*ModelOptimizationPolicy_ExecutionAccelerators_Accelerator { @@ -2560,7 +2561,7 @@ type ModelOptimizationPolicy_PinnedMemoryBuffer struct { func (x *ModelOptimizationPolicy_PinnedMemoryBuffer) Reset() { *x = ModelOptimizationPolicy_PinnedMemoryBuffer{} - mi := &file_proto_model_config_proto_msgTypes[29] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2572,7 +2573,7 @@ func (x *ModelOptimizationPolicy_PinnedMemoryBuffer) String() string { func (*ModelOptimizationPolicy_PinnedMemoryBuffer) ProtoMessage() {} func (x *ModelOptimizationPolicy_PinnedMemoryBuffer) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[29] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[29] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2585,7 +2586,7 @@ func (x *ModelOptimizationPolicy_PinnedMemoryBuffer) ProtoReflect() protoreflect // Deprecated: Use ModelOptimizationPolicy_PinnedMemoryBuffer.ProtoReflect.Descriptor instead. func (*ModelOptimizationPolicy_PinnedMemoryBuffer) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{8, 3} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{8, 3} } func (x *ModelOptimizationPolicy_PinnedMemoryBuffer) GetEnable() bool { @@ -2606,7 +2607,7 @@ type ModelOptimizationPolicy_Cuda_GraphSpec struct { func (x *ModelOptimizationPolicy_Cuda_GraphSpec) Reset() { *x = ModelOptimizationPolicy_Cuda_GraphSpec{} - mi := &file_proto_model_config_proto_msgTypes[30] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2618,7 +2619,7 @@ func (x *ModelOptimizationPolicy_Cuda_GraphSpec) String() string { func (*ModelOptimizationPolicy_Cuda_GraphSpec) ProtoMessage() {} func (x *ModelOptimizationPolicy_Cuda_GraphSpec) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[30] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[30] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2631,7 +2632,7 @@ func (x *ModelOptimizationPolicy_Cuda_GraphSpec) ProtoReflect() protoreflect.Mes // Deprecated: Use ModelOptimizationPolicy_Cuda_GraphSpec.ProtoReflect.Descriptor instead. func (*ModelOptimizationPolicy_Cuda_GraphSpec) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{8, 1, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{8, 1, 0} } func (x *ModelOptimizationPolicy_Cuda_GraphSpec) GetBatchSize() int32 { @@ -2664,7 +2665,7 @@ type ModelOptimizationPolicy_Cuda_GraphSpec_Shape struct { func (x *ModelOptimizationPolicy_Cuda_GraphSpec_Shape) Reset() { *x = ModelOptimizationPolicy_Cuda_GraphSpec_Shape{} - mi := &file_proto_model_config_proto_msgTypes[31] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2676,7 +2677,7 @@ func (x *ModelOptimizationPolicy_Cuda_GraphSpec_Shape) String() string { func (*ModelOptimizationPolicy_Cuda_GraphSpec_Shape) ProtoMessage() {} func (x *ModelOptimizationPolicy_Cuda_GraphSpec_Shape) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[31] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[31] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2689,7 +2690,7 @@ func (x *ModelOptimizationPolicy_Cuda_GraphSpec_Shape) ProtoReflect() protorefle // Deprecated: Use ModelOptimizationPolicy_Cuda_GraphSpec_Shape.ProtoReflect.Descriptor instead. func (*ModelOptimizationPolicy_Cuda_GraphSpec_Shape) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{8, 1, 0, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{8, 1, 0, 0} } func (x *ModelOptimizationPolicy_Cuda_GraphSpec_Shape) GetDim() []int64 { @@ -2709,7 +2710,7 @@ type ModelOptimizationPolicy_Cuda_GraphSpec_LowerBound struct { func (x *ModelOptimizationPolicy_Cuda_GraphSpec_LowerBound) Reset() { *x = ModelOptimizationPolicy_Cuda_GraphSpec_LowerBound{} - mi := &file_proto_model_config_proto_msgTypes[32] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2721,7 +2722,7 @@ func (x *ModelOptimizationPolicy_Cuda_GraphSpec_LowerBound) String() string { func (*ModelOptimizationPolicy_Cuda_GraphSpec_LowerBound) ProtoMessage() {} func (x *ModelOptimizationPolicy_Cuda_GraphSpec_LowerBound) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[32] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[32] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2734,7 +2735,7 @@ func (x *ModelOptimizationPolicy_Cuda_GraphSpec_LowerBound) ProtoReflect() proto // Deprecated: Use ModelOptimizationPolicy_Cuda_GraphSpec_LowerBound.ProtoReflect.Descriptor instead. func (*ModelOptimizationPolicy_Cuda_GraphSpec_LowerBound) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{8, 1, 0, 1} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{8, 1, 0, 1} } func (x *ModelOptimizationPolicy_Cuda_GraphSpec_LowerBound) GetBatchSize() int32 { @@ -2761,7 +2762,7 @@ type ModelOptimizationPolicy_ExecutionAccelerators_Accelerator struct { func (x *ModelOptimizationPolicy_ExecutionAccelerators_Accelerator) Reset() { *x = ModelOptimizationPolicy_ExecutionAccelerators_Accelerator{} - mi := &file_proto_model_config_proto_msgTypes[35] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2773,7 +2774,7 @@ func (x *ModelOptimizationPolicy_ExecutionAccelerators_Accelerator) String() str func (*ModelOptimizationPolicy_ExecutionAccelerators_Accelerator) ProtoMessage() {} func (x *ModelOptimizationPolicy_ExecutionAccelerators_Accelerator) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[35] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[35] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2786,7 +2787,7 @@ func (x *ModelOptimizationPolicy_ExecutionAccelerators_Accelerator) ProtoReflect // Deprecated: Use ModelOptimizationPolicy_ExecutionAccelerators_Accelerator.ProtoReflect.Descriptor instead. func (*ModelOptimizationPolicy_ExecutionAccelerators_Accelerator) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{8, 2, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{8, 2, 0} } func (x *ModelOptimizationPolicy_ExecutionAccelerators_Accelerator) GetName() string { @@ -2816,7 +2817,7 @@ type ModelSequenceBatching_Control struct { func (x *ModelSequenceBatching_Control) Reset() { *x = ModelSequenceBatching_Control{} - mi := &file_proto_model_config_proto_msgTypes[38] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2828,7 +2829,7 @@ func (x *ModelSequenceBatching_Control) String() string { func (*ModelSequenceBatching_Control) ProtoMessage() {} func (x *ModelSequenceBatching_Control) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[38] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[38] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2841,7 +2842,7 @@ func (x *ModelSequenceBatching_Control) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelSequenceBatching_Control.ProtoReflect.Descriptor instead. func (*ModelSequenceBatching_Control) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{11, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{11, 0} } func (x *ModelSequenceBatching_Control) GetKind() ModelSequenceBatching_Control_Kind { @@ -2889,7 +2890,7 @@ type ModelSequenceBatching_ControlInput struct { func (x *ModelSequenceBatching_ControlInput) Reset() { *x = ModelSequenceBatching_ControlInput{} - mi := &file_proto_model_config_proto_msgTypes[39] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2901,7 +2902,7 @@ func (x *ModelSequenceBatching_ControlInput) String() string { func (*ModelSequenceBatching_ControlInput) ProtoMessage() {} func (x *ModelSequenceBatching_ControlInput) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[39] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[39] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2914,7 +2915,7 @@ func (x *ModelSequenceBatching_ControlInput) ProtoReflect() protoreflect.Message // Deprecated: Use ModelSequenceBatching_ControlInput.ProtoReflect.Descriptor instead. func (*ModelSequenceBatching_ControlInput) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{11, 1} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{11, 1} } func (x *ModelSequenceBatching_ControlInput) GetName() string { @@ -2947,7 +2948,7 @@ type ModelSequenceBatching_InitialState struct { func (x *ModelSequenceBatching_InitialState) Reset() { *x = ModelSequenceBatching_InitialState{} - mi := &file_proto_model_config_proto_msgTypes[40] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2959,7 +2960,7 @@ func (x *ModelSequenceBatching_InitialState) String() string { func (*ModelSequenceBatching_InitialState) ProtoMessage() {} func (x *ModelSequenceBatching_InitialState) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[40] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[40] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2972,7 +2973,7 @@ func (x *ModelSequenceBatching_InitialState) ProtoReflect() protoreflect.Message // Deprecated: Use ModelSequenceBatching_InitialState.ProtoReflect.Descriptor instead. func (*ModelSequenceBatching_InitialState) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{11, 2} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{11, 2} } func (x *ModelSequenceBatching_InitialState) GetDataType() DataType { @@ -3054,7 +3055,7 @@ type ModelSequenceBatching_State struct { func (x *ModelSequenceBatching_State) Reset() { *x = ModelSequenceBatching_State{} - mi := &file_proto_model_config_proto_msgTypes[41] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3066,7 +3067,7 @@ func (x *ModelSequenceBatching_State) String() string { func (*ModelSequenceBatching_State) ProtoMessage() {} func (x *ModelSequenceBatching_State) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[41] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[41] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3079,7 +3080,7 @@ func (x *ModelSequenceBatching_State) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelSequenceBatching_State.ProtoReflect.Descriptor instead. func (*ModelSequenceBatching_State) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{11, 3} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{11, 3} } func (x *ModelSequenceBatching_State) GetInputName() string { @@ -3141,7 +3142,7 @@ type ModelSequenceBatching_StrategyDirect struct { func (x *ModelSequenceBatching_StrategyDirect) Reset() { *x = ModelSequenceBatching_StrategyDirect{} - mi := &file_proto_model_config_proto_msgTypes[42] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3153,7 +3154,7 @@ func (x *ModelSequenceBatching_StrategyDirect) String() string { func (*ModelSequenceBatching_StrategyDirect) ProtoMessage() {} func (x *ModelSequenceBatching_StrategyDirect) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[42] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[42] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3166,7 +3167,7 @@ func (x *ModelSequenceBatching_StrategyDirect) ProtoReflect() protoreflect.Messa // Deprecated: Use ModelSequenceBatching_StrategyDirect.ProtoReflect.Descriptor instead. func (*ModelSequenceBatching_StrategyDirect) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{11, 4} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{11, 4} } func (x *ModelSequenceBatching_StrategyDirect) GetMaxQueueDelayMicroseconds() uint64 { @@ -3195,7 +3196,7 @@ type ModelSequenceBatching_StrategyOldest struct { func (x *ModelSequenceBatching_StrategyOldest) Reset() { *x = ModelSequenceBatching_StrategyOldest{} - mi := &file_proto_model_config_proto_msgTypes[43] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3207,7 +3208,7 @@ func (x *ModelSequenceBatching_StrategyOldest) String() string { func (*ModelSequenceBatching_StrategyOldest) ProtoMessage() {} func (x *ModelSequenceBatching_StrategyOldest) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[43] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[43] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3220,7 +3221,7 @@ func (x *ModelSequenceBatching_StrategyOldest) ProtoReflect() protoreflect.Messa // Deprecated: Use ModelSequenceBatching_StrategyOldest.ProtoReflect.Descriptor instead. func (*ModelSequenceBatching_StrategyOldest) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{11, 5} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{11, 5} } func (x *ModelSequenceBatching_StrategyOldest) GetMaxCandidateSequences() int32 { @@ -3264,7 +3265,7 @@ type ModelEnsembling_Step struct { func (x *ModelEnsembling_Step) Reset() { *x = ModelEnsembling_Step{} - mi := &file_proto_model_config_proto_msgTypes[44] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3276,7 +3277,7 @@ func (x *ModelEnsembling_Step) String() string { func (*ModelEnsembling_Step) ProtoMessage() {} func (x *ModelEnsembling_Step) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[44] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[44] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3289,7 +3290,7 @@ func (x *ModelEnsembling_Step) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelEnsembling_Step.ProtoReflect.Descriptor instead. func (*ModelEnsembling_Step) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{12, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{12, 0} } func (x *ModelEnsembling_Step) GetModelName() string { @@ -3343,7 +3344,7 @@ type ModelWarmup_Input struct { func (x *ModelWarmup_Input) Reset() { *x = ModelWarmup_Input{} - mi := &file_proto_model_config_proto_msgTypes[47] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3355,7 +3356,7 @@ func (x *ModelWarmup_Input) String() string { func (*ModelWarmup_Input) ProtoMessage() {} func (x *ModelWarmup_Input) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[47] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[47] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3368,7 +3369,7 @@ func (x *ModelWarmup_Input) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelWarmup_Input.ProtoReflect.Descriptor instead. func (*ModelWarmup_Input) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{14, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{14, 0} } func (x *ModelWarmup_Input) GetDataType() DataType { @@ -3451,7 +3452,7 @@ type ModelRepositoryAgents_Agent struct { func (x *ModelRepositoryAgents_Agent) Reset() { *x = ModelRepositoryAgents_Agent{} - mi := &file_proto_model_config_proto_msgTypes[49] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3463,7 +3464,7 @@ func (x *ModelRepositoryAgents_Agent) String() string { func (*ModelRepositoryAgents_Agent) ProtoMessage() {} func (x *ModelRepositoryAgents_Agent) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[49] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[49] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3476,7 +3477,7 @@ func (x *ModelRepositoryAgents_Agent) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelRepositoryAgents_Agent.ProtoReflect.Descriptor instead. func (*ModelRepositoryAgents_Agent) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{17, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{17, 0} } func (x *ModelRepositoryAgents_Agent) GetName() string { @@ -3506,7 +3507,7 @@ type ModelMetrics_MetricControl struct { func (x *ModelMetrics_MetricControl) Reset() { *x = ModelMetrics_MetricControl{} - mi := &file_proto_model_config_proto_msgTypes[51] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3518,7 +3519,7 @@ func (x *ModelMetrics_MetricControl) String() string { func (*ModelMetrics_MetricControl) ProtoMessage() {} func (x *ModelMetrics_MetricControl) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[51] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[51] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3531,7 +3532,7 @@ func (x *ModelMetrics_MetricControl) ProtoReflect() protoreflect.Message { // Deprecated: Use ModelMetrics_MetricControl.ProtoReflect.Descriptor instead. func (*ModelMetrics_MetricControl) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{19, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{19, 0} } func (x *ModelMetrics_MetricControl) GetMetricIdentifier() *ModelMetrics_MetricControl_MetricIdentifier { @@ -3576,7 +3577,7 @@ type ModelMetrics_MetricControl_MetricIdentifier struct { func (x *ModelMetrics_MetricControl_MetricIdentifier) Reset() { *x = ModelMetrics_MetricControl_MetricIdentifier{} - mi := &file_proto_model_config_proto_msgTypes[52] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3588,7 +3589,7 @@ func (x *ModelMetrics_MetricControl_MetricIdentifier) String() string { func (*ModelMetrics_MetricControl_MetricIdentifier) ProtoMessage() {} func (x *ModelMetrics_MetricControl_MetricIdentifier) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[52] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[52] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3601,7 +3602,7 @@ func (x *ModelMetrics_MetricControl_MetricIdentifier) ProtoReflect() protoreflec // Deprecated: Use ModelMetrics_MetricControl_MetricIdentifier.ProtoReflect.Descriptor instead. func (*ModelMetrics_MetricControl_MetricIdentifier) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{19, 0, 0} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{19, 0, 0} } func (x *ModelMetrics_MetricControl_MetricIdentifier) GetFamily() string { @@ -3620,7 +3621,7 @@ type ModelMetrics_MetricControl_HistogramOptions struct { func (x *ModelMetrics_MetricControl_HistogramOptions) Reset() { *x = ModelMetrics_MetricControl_HistogramOptions{} - mi := &file_proto_model_config_proto_msgTypes[53] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3632,7 +3633,7 @@ func (x *ModelMetrics_MetricControl_HistogramOptions) String() string { func (*ModelMetrics_MetricControl_HistogramOptions) ProtoMessage() {} func (x *ModelMetrics_MetricControl_HistogramOptions) ProtoReflect() protoreflect.Message { - mi := &file_proto_model_config_proto_msgTypes[53] + mi := &file_internal_predator_proto_model_config_proto_msgTypes[53] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3645,7 +3646,7 @@ func (x *ModelMetrics_MetricControl_HistogramOptions) ProtoReflect() protoreflec // Deprecated: Use ModelMetrics_MetricControl_HistogramOptions.ProtoReflect.Descriptor instead. func (*ModelMetrics_MetricControl_HistogramOptions) Descriptor() ([]byte, []int) { - return file_proto_model_config_proto_rawDescGZIP(), []int{19, 0, 1} + return file_internal_predator_proto_model_config_proto_rawDescGZIP(), []int{19, 0, 1} } func (x *ModelMetrics_MetricControl_HistogramOptions) GetBuckets() []float64 { @@ -3655,714 +3656,358 @@ func (x *ModelMetrics_MetricControl_HistogramOptions) GetBuckets() []float64 { return nil } -var File_proto_model_config_proto protoreflect.FileDescriptor - -var file_proto_model_config_proto_rawDesc = []byte{ - 0x0a, 0x18, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x22, 0xbc, 0x01, 0x0a, 0x10, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x61, 0x74, 0x65, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 0x65, 0x72, 0x12, 0x3e, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, - 0x65, 0x72, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x09, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, - 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, - 0x74, 0x79, 0x1a, 0x4c, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x06, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x22, 0xdd, 0x04, 0x0a, 0x12, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, - 0x63, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x04, 0x6b, - 0x69, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, - 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x0c, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6c, 0x69, - 0x6d, 0x69, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, - 0x69, 0x74, 0x65, 0x72, 0x52, 0x0b, 0x72, 0x61, 0x74, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x65, - 0x72, 0x12, 0x12, 0x0a, 0x04, 0x67, 0x70, 0x75, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, - 0x04, 0x67, 0x70, 0x75, 0x73, 0x12, 0x56, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, - 0x72, 0x79, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x53, 0x65, 0x63, 0x6f, - 0x6e, 0x64, 0x61, 0x72, 0x79, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x10, 0x73, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x18, 0x0a, - 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, - 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x73, 0x73, 0x69, - 0x76, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x61, 0x73, 0x73, 0x69, 0x76, - 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, - 0x63, 0x79, 0x1a, 0xa8, 0x01, 0x0a, 0x0f, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, - 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x51, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, - 0x65, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x2e, - 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2e, - 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4b, - 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, - 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x64, 0x65, - 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x22, 0x25, 0x0a, 0x13, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x61, 0x72, 0x79, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x0e, 0x0a, - 0x0a, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4e, 0x56, 0x44, 0x4c, 0x41, 0x10, 0x00, 0x22, 0x41, 0x0a, - 0x04, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x0d, 0x0a, 0x09, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, - 0x54, 0x4f, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x47, 0x50, 0x55, - 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x43, 0x50, 0x55, 0x10, 0x02, - 0x12, 0x0e, 0x0a, 0x0a, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x10, 0x03, - 0x22, 0x2a, 0x0a, 0x12, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x52, - 0x65, 0x73, 0x68, 0x61, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x68, 0x61, 0x70, 0x65, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x05, 0x73, 0x68, 0x61, 0x70, 0x65, 0x22, 0xae, 0x03, 0x0a, - 0x0a, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x2c, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x30, 0x0a, - 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x70, 0x75, 0x74, - 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, - 0x12, 0x0a, 0x04, 0x64, 0x69, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x03, 0x52, 0x04, 0x64, - 0x69, 0x6d, 0x73, 0x12, 0x33, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x68, 0x61, 0x70, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, - 0x65, 0x6c, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x68, 0x61, 0x70, 0x65, 0x52, - 0x07, 0x72, 0x65, 0x73, 0x68, 0x61, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x73, - 0x68, 0x61, 0x70, 0x65, 0x5f, 0x74, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0d, 0x69, 0x73, 0x53, 0x68, 0x61, 0x70, 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, - 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x72, 0x61, 0x67, 0x67, 0x65, 0x64, - 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x61, 0x6c, - 0x6c, 0x6f, 0x77, 0x52, 0x61, 0x67, 0x67, 0x65, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x1a, - 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x08, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x34, 0x0a, 0x17, 0x69, 0x73, - 0x5f, 0x6e, 0x6f, 0x6e, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x5f, 0x66, 0x6f, 0x72, 0x6d, - 0x61, 0x74, 0x5f, 0x69, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x69, 0x73, 0x4e, - 0x6f, 0x6e, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x49, 0x6f, - 0x22, 0x3b, 0x0a, 0x06, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x0f, 0x0a, 0x0b, 0x46, 0x4f, - 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x46, - 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x4e, 0x48, 0x57, 0x43, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, - 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x4e, 0x43, 0x48, 0x57, 0x10, 0x02, 0x22, 0x9d, 0x02, - 0x0a, 0x0b, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x61, 0x74, - 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x12, 0x0a, 0x04, 0x64, 0x69, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52, 0x04, 0x64, - 0x69, 0x6d, 0x73, 0x12, 0x33, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x68, 0x61, 0x70, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, - 0x65, 0x6c, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x68, 0x61, 0x70, 0x65, 0x52, - 0x07, 0x72, 0x65, 0x73, 0x68, 0x61, 0x70, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x61, 0x62, 0x65, - 0x6c, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0d, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x73, 0x68, 0x61, 0x70, 0x65, 0x5f, 0x74, 0x65, 0x6e, 0x73, - 0x6f, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x53, 0x68, 0x61, 0x70, - 0x65, 0x54, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x12, 0x34, 0x0a, 0x17, 0x69, 0x73, 0x5f, 0x6e, 0x6f, - 0x6e, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x5f, - 0x69, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x69, 0x73, 0x4e, 0x6f, 0x6e, 0x4c, - 0x69, 0x6e, 0x65, 0x61, 0x72, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x49, 0x6f, 0x22, 0xfa, 0x02, - 0x0a, 0x0a, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x2a, 0x0a, 0x04, - 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x2e, 0x4b, 0x69, - 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, - 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x64, 0x61, 0x74, - 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, - 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x22, 0xcd, 0x01, 0x0a, 0x04, 0x4b, - 0x69, 0x6e, 0x64, 0x12, 0x17, 0x0a, 0x13, 0x42, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x45, 0x4c, 0x45, - 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x00, 0x12, 0x23, 0x0a, 0x1f, - 0x42, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x41, 0x43, 0x43, 0x55, 0x4d, 0x55, 0x4c, 0x41, 0x54, 0x45, - 0x44, 0x5f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, - 0x01, 0x12, 0x2d, 0x0a, 0x29, 0x42, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x41, 0x43, 0x43, 0x55, 0x4d, - 0x55, 0x4c, 0x41, 0x54, 0x45, 0x44, 0x5f, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x43, - 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x57, 0x49, 0x54, 0x48, 0x5f, 0x5a, 0x45, 0x52, 0x4f, 0x10, 0x02, - 0x12, 0x24, 0x0a, 0x20, 0x42, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4d, 0x41, 0x58, 0x5f, 0x45, 0x4c, - 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x41, 0x53, 0x5f, 0x53, - 0x48, 0x41, 0x50, 0x45, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x42, 0x41, 0x54, 0x43, 0x48, 0x5f, - 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x53, 0x48, 0x41, 0x50, 0x45, 0x10, 0x04, 0x12, 0x1c, 0x0a, 0x18, - 0x42, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x53, 0x48, 0x41, 0x50, 0x45, - 0x5f, 0x46, 0x4c, 0x41, 0x54, 0x54, 0x45, 0x4e, 0x10, 0x05, 0x22, 0xaa, 0x01, 0x0a, 0x0b, 0x42, - 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x04, 0x6b, - 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2e, 0x4b, 0x69, - 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x2a, 0x0a, 0x04, 0x4b, - 0x69, 0x6e, 0x64, 0x12, 0x22, 0x0a, 0x1e, 0x42, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x53, 0x43, 0x41, - 0x54, 0x54, 0x45, 0x52, 0x5f, 0x57, 0x49, 0x54, 0x48, 0x5f, 0x49, 0x4e, 0x50, 0x55, 0x54, 0x5f, - 0x53, 0x48, 0x41, 0x50, 0x45, 0x10, 0x00, 0x22, 0xb2, 0x02, 0x0a, 0x12, 0x4d, 0x6f, 0x64, 0x65, - 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x3a, - 0x0a, 0x06, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x56, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, - 0x48, 0x00, 0x52, 0x06, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x03, 0x61, 0x6c, - 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, - 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, - 0x63, 0x79, 0x2e, 0x41, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x03, 0x61, 0x6c, 0x6c, 0x12, 0x40, 0x0a, - 0x08, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x56, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x53, 0x70, 0x65, 0x63, 0x69, - 0x66, 0x69, 0x63, 0x48, 0x00, 0x52, 0x08, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x1a, - 0x2b, 0x0a, 0x06, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, - 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x6e, 0x75, 0x6d, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x05, 0x0a, 0x03, - 0x41, 0x6c, 0x6c, 0x1a, 0x26, 0x0a, 0x08, 0x53, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x12, - 0x1a, 0x0a, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x03, 0x52, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x0f, 0x0a, 0x0d, 0x70, - 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x22, 0xa8, 0x10, 0x0a, - 0x17, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x3a, 0x0a, 0x05, 0x67, 0x72, 0x61, 0x70, - 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, - 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x52, 0x05, 0x67, - 0x72, 0x61, 0x70, 0x68, 0x12, 0x48, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, - 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x50, 0x72, 0x69, 0x6f, - 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x37, - 0x0a, 0x04, 0x63, 0x75, 0x64, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, - 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x43, 0x75, 0x64, - 0x61, 0x52, 0x04, 0x63, 0x75, 0x64, 0x61, 0x12, 0x6b, 0x0a, 0x16, 0x65, 0x78, 0x65, 0x63, 0x75, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, - 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, - 0x6e, 0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x15, 0x65, - 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, - 0x74, 0x6f, 0x72, 0x73, 0x12, 0x61, 0x0a, 0x13, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x70, 0x69, - 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, - 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, - 0x79, 0x2e, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x42, 0x75, - 0x66, 0x66, 0x65, 0x72, 0x52, 0x11, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x50, 0x69, 0x6e, 0x6e, 0x65, - 0x64, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, 0x63, 0x0a, 0x14, 0x6f, 0x75, 0x74, 0x70, 0x75, - 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, - 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, - 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x6f, - 0x72, 0x79, 0x42, 0x75, 0x66, 0x66, 0x65, 0x72, 0x52, 0x12, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, - 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, 0x43, 0x0a, 0x1e, - 0x67, 0x61, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x5f, 0x62, 0x75, - 0x66, 0x66, 0x65, 0x72, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, 0x67, 0x61, 0x74, 0x68, 0x65, 0x72, 0x4b, 0x65, 0x72, 0x6e, - 0x65, 0x6c, 0x42, 0x75, 0x66, 0x66, 0x65, 0x72, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, - 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x61, 0x67, 0x65, 0x72, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, - 0x69, 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x65, 0x61, 0x67, 0x65, 0x72, - 0x42, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x1a, 0x1d, 0x0a, 0x05, 0x47, 0x72, 0x61, 0x70, - 0x68, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0xa9, 0x06, 0x0a, 0x04, 0x43, 0x75, 0x64, 0x61, - 0x12, 0x16, 0x0a, 0x06, 0x67, 0x72, 0x61, 0x70, 0x68, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x06, 0x67, 0x72, 0x61, 0x70, 0x68, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x75, 0x73, 0x79, - 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0e, 0x62, 0x75, 0x73, 0x79, 0x57, 0x61, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x73, 0x12, 0x4c, 0x0a, 0x0a, 0x67, 0x72, 0x61, 0x70, 0x68, 0x5f, 0x73, 0x70, 0x65, 0x63, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, - 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x43, 0x75, 0x64, 0x61, 0x2e, 0x47, 0x72, 0x61, 0x70, - 0x68, 0x53, 0x70, 0x65, 0x63, 0x52, 0x09, 0x67, 0x72, 0x61, 0x70, 0x68, 0x53, 0x70, 0x65, 0x63, - 0x12, 0x2c, 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x70, 0x79, 0x5f, - 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x6f, 0x75, - 0x74, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x70, 0x79, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x1a, 0xe2, - 0x04, 0x0a, 0x09, 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x70, 0x65, 0x63, 0x12, 0x1d, 0x0a, 0x0a, - 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x4e, 0x0a, 0x05, 0x69, - 0x6e, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x43, 0x75, 0x64, 0x61, 0x2e, - 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x64, 0x0a, 0x11, 0x67, - 0x72, 0x61, 0x70, 0x68, 0x5f, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, - 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x43, 0x75, 0x64, 0x61, 0x2e, 0x47, 0x72, 0x61, 0x70, - 0x68, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x42, 0x6f, 0x75, 0x6e, 0x64, - 0x52, 0x0f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x42, 0x6f, 0x75, 0x6e, - 0x64, 0x1a, 0x19, 0x0a, 0x05, 0x53, 0x68, 0x61, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x69, - 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x03, 0x64, 0x69, 0x6d, 0x1a, 0xf5, 0x01, 0x0a, - 0x0a, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x62, - 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x59, 0x0a, 0x05, 0x69, 0x6e, - 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x43, 0x75, 0x64, 0x61, 0x2e, 0x47, - 0x72, 0x61, 0x70, 0x68, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x42, 0x6f, - 0x75, 0x6e, 0x64, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, - 0x69, 0x6e, 0x70, 0x75, 0x74, 0x1a, 0x6d, 0x0a, 0x0a, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x49, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, - 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, - 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x43, 0x75, 0x64, 0x61, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, - 0x70, 0x65, 0x63, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x6d, 0x0a, 0x0a, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x6b, 0x65, 0x79, 0x12, 0x49, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, - 0x6c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, - 0x69, 0x63, 0x79, 0x2e, 0x43, 0x75, 0x64, 0x61, 0x2e, 0x47, 0x72, 0x61, 0x70, 0x68, 0x53, 0x70, - 0x65, 0x63, 0x2e, 0x53, 0x68, 0x61, 0x70, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x1a, 0xe8, 0x03, 0x0a, 0x15, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, - 0x6e, 0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x7c, 0x0a, - 0x19, 0x67, 0x70, 0x75, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, - 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x40, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, - 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, - 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x2e, 0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, - 0x6f, 0x72, 0x52, 0x17, 0x67, 0x70, 0x75, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, - 0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x7c, 0x0a, 0x19, 0x63, - 0x70, 0x75, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x63, 0x63, - 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x74, 0x69, - 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x45, - 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, - 0x74, 0x6f, 0x72, 0x73, 0x2e, 0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x52, 0x17, 0x63, 0x70, 0x75, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, - 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x1a, 0xd2, 0x01, 0x0a, 0x0b, 0x41, 0x63, - 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x70, 0x0a, - 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x50, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, - 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, - 0x79, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x6c, - 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x2e, 0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, - 0x74, 0x6f, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x1a, - 0x3d, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 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, 0x2c, - 0x0a, 0x12, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x42, 0x75, - 0x66, 0x66, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x49, 0x0a, 0x0d, - 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, - 0x10, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, - 0x54, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, - 0x4d, 0x41, 0x58, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, - 0x59, 0x5f, 0x4d, 0x49, 0x4e, 0x10, 0x02, 0x22, 0xa6, 0x02, 0x0a, 0x10, 0x4d, 0x6f, 0x64, 0x65, - 0x6c, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x4c, 0x0a, 0x0e, - 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, - 0x65, 0x6c, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x54, 0x69, - 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x74, 0x69, 0x6d, - 0x65, 0x6f, 0x75, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x1c, 0x64, 0x65, - 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x69, - 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x1a, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, - 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x34, 0x0a, 0x16, - 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x76, - 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x61, 0x6c, - 0x6c, 0x6f, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, - 0x64, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, - 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x51, - 0x75, 0x65, 0x75, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x26, 0x0a, 0x0d, 0x54, 0x69, 0x6d, 0x65, - 0x6f, 0x75, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x4a, - 0x45, 0x43, 0x54, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x45, 0x4c, 0x41, 0x59, 0x10, 0x01, - 0x22, 0xab, 0x04, 0x0a, 0x14, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, - 0x63, 0x42, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x72, 0x65, - 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x69, 0x7a, - 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x12, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, - 0x65, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x3f, 0x0a, 0x1c, 0x6d, - 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x6d, - 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x19, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x6c, 0x61, 0x79, - 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x2b, 0x0a, 0x11, - 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x69, 0x6e, - 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x69, - 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0e, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, - 0x6c, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x70, 0x72, - 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x14, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x69, 0x6f, 0x72, - 0x69, 0x74, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x49, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, - 0x6f, 0x64, 0x65, 0x6c, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, - 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x6f, 0x6c, - 0x69, 0x63, 0x79, 0x12, 0x68, 0x0a, 0x15, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, - 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x07, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, - 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x42, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x2e, - 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x6f, 0x6c, - 0x69, 0x63, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x13, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, - 0x74, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x1a, 0x5f, 0x0a, - 0x18, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x6f, - 0x6c, 0x69, 0x63, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2d, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x51, 0x75, 0x65, 0x75, 0x65, 0x50, 0x6f, 0x6c, - 0x69, 0x63, 0x79, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x83, - 0x0e, 0x0a, 0x15, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, - 0x42, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x12, 0x45, 0x0a, 0x06, 0x64, 0x69, 0x72, 0x65, - 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, - 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x2e, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x44, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x48, 0x00, 0x52, 0x06, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, - 0x45, 0x0a, 0x06, 0x6f, 0x6c, 0x64, 0x65, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x65, 0x71, - 0x75, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x2e, 0x53, 0x74, - 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x4f, 0x6c, 0x64, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x06, - 0x6f, 0x6c, 0x64, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x1e, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x65, - 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x6c, 0x65, 0x5f, 0x6d, 0x69, 0x63, 0x72, - 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x1b, - 0x6d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x6c, 0x65, 0x4d, - 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x4e, 0x0a, 0x0d, 0x63, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, - 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, - 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x0c, 0x63, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x38, 0x0a, 0x05, 0x73, - 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, - 0x42, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, - 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x11, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x71, 0x75, - 0x65, 0x6e, 0x63, 0x65, 0x1a, 0xe7, 0x02, 0x0a, 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, - 0x12, 0x3d, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x65, 0x71, 0x75, - 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x2e, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, - 0x28, 0x0a, 0x10, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x5f, 0x74, - 0x72, 0x75, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0e, 0x69, 0x6e, 0x74, 0x33, 0x32, - 0x46, 0x61, 0x6c, 0x73, 0x65, 0x54, 0x72, 0x75, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x66, 0x70, 0x33, - 0x32, 0x5f, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x5f, 0x74, 0x72, 0x75, 0x65, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x02, 0x52, 0x0d, 0x66, 0x70, 0x33, 0x32, 0x46, 0x61, 0x6c, 0x73, 0x65, 0x54, 0x72, 0x75, - 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x5f, - 0x74, 0x72, 0x75, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x08, 0x52, 0x0d, 0x62, 0x6f, 0x6f, 0x6c, - 0x46, 0x61, 0x6c, 0x73, 0x65, 0x54, 0x72, 0x75, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x64, 0x61, 0x74, - 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, - 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x22, 0x75, 0x0a, 0x04, 0x4b, 0x69, 0x6e, 0x64, 0x12, - 0x1a, 0x0a, 0x16, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x53, 0x45, 0x51, 0x55, 0x45, - 0x4e, 0x43, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x43, - 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x53, 0x45, 0x51, 0x55, 0x45, 0x4e, 0x43, 0x45, 0x5f, - 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x4e, 0x54, 0x52, - 0x4f, 0x4c, 0x5f, 0x53, 0x45, 0x51, 0x55, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x45, 0x4e, 0x44, 0x10, - 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x53, 0x45, 0x51, - 0x55, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x43, 0x4f, 0x52, 0x52, 0x49, 0x44, 0x10, 0x03, 0x1a, 0x62, - 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, - 0x6c, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, - 0x67, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x1a, 0xb0, 0x01, 0x0a, 0x0c, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, - 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x69, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, - 0x04, 0x64, 0x69, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x09, 0x7a, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x08, 0x7a, 0x65, 0x72, 0x6f, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x66, 0x69, 0x6c, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x46, - 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x5f, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xd0, 0x02, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, - 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, - 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x2c, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, - 0x04, 0x64, 0x69, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x03, 0x52, 0x04, 0x64, 0x69, 0x6d, - 0x73, 0x12, 0x4e, 0x0a, 0x0d, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x61, - 0x74, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, - 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x2e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x52, 0x0c, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x12, 0x45, 0x0a, 0x20, 0x75, 0x73, 0x65, 0x5f, 0x73, 0x61, 0x6d, 0x65, 0x5f, 0x62, 0x75, - 0x66, 0x66, 0x65, 0x72, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x6f, - 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1b, 0x75, 0x73, 0x65, - 0x53, 0x61, 0x6d, 0x65, 0x42, 0x75, 0x66, 0x66, 0x65, 0x72, 0x46, 0x6f, 0x72, 0x49, 0x6e, 0x70, - 0x75, 0x74, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x75, 0x73, 0x65, 0x5f, - 0x67, 0x72, 0x6f, 0x77, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x75, 0x73, 0x65, 0x47, 0x72, 0x6f, 0x77, 0x61, 0x62, - 0x6c, 0x65, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x1a, 0x8b, 0x01, 0x0a, 0x0e, 0x53, 0x74, 0x72, - 0x61, 0x74, 0x65, 0x67, 0x79, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x3f, 0x0a, 0x1c, 0x6d, - 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x6d, - 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x19, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x75, 0x65, 0x44, 0x65, 0x6c, 0x61, 0x79, - 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x38, 0x0a, 0x18, - 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x75, 0x74, 0x69, - 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x16, - 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x53, 0x6c, 0x6f, 0x74, 0x55, 0x74, 0x69, 0x6c, 0x69, - 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xe8, 0x01, 0x0a, 0x0e, 0x53, 0x74, 0x72, 0x61, 0x74, - 0x65, 0x67, 0x79, 0x4f, 0x6c, 0x64, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x17, 0x6d, 0x61, 0x78, - 0x5f, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, - 0x6e, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x15, 0x6d, 0x61, 0x78, 0x43, - 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, - 0x73, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x5f, 0x62, - 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, - 0x12, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, - 0x69, 0x7a, 0x65, 0x12, 0x3f, 0x0a, 0x1c, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, - 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, 0x6f, - 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x19, 0x6d, 0x61, 0x78, 0x51, 0x75, - 0x65, 0x75, 0x65, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x10, 0x70, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x69, 0x6e, - 0x67, 0x42, 0x11, 0x0a, 0x0f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x5f, 0x63, 0x68, - 0x6f, 0x69, 0x63, 0x65, 0x22, 0xc6, 0x03, 0x0a, 0x0f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x45, 0x6e, - 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x2f, 0x0a, 0x04, 0x73, 0x74, 0x65, 0x70, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, - 0x6f, 0x64, 0x65, 0x6c, 0x45, 0x6e, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x53, - 0x74, 0x65, 0x70, 0x52, 0x04, 0x73, 0x74, 0x65, 0x70, 0x1a, 0x81, 0x03, 0x0a, 0x04, 0x53, 0x74, - 0x65, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x56, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, - 0x6d, 0x61, 0x70, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x45, 0x6e, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x69, 0x6e, - 0x67, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x4d, 0x61, 0x70, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x4d, 0x61, 0x70, 0x12, 0x49, - 0x0a, 0x0a, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x04, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, - 0x45, 0x6e, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x2e, - 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, - 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4d, 0x61, 0x70, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x6f, 0x64, - 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x1a, 0x3b, 0x0a, 0x0d, 0x49, 0x6e, 0x70, 0x75, 0x74, 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, 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, - 0x3c, 0x0a, 0x0e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 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, 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, 0x33, 0x0a, - 0x0e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, - 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x22, 0xae, 0x03, 0x0a, 0x0b, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x57, 0x61, 0x72, 0x6d, - 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, - 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, - 0x68, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x36, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, - 0x64, 0x65, 0x6c, 0x57, 0x61, 0x72, 0x6d, 0x75, 0x70, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x14, 0x0a, - 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x1a, 0xc8, 0x01, 0x0a, 0x05, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x2c, 0x0a, - 0x09, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, - 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, - 0x69, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x04, 0x64, 0x69, 0x6d, 0x73, 0x12, - 0x1d, 0x0a, 0x09, 0x7a, 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x08, 0x48, 0x00, 0x52, 0x08, 0x7a, 0x65, 0x72, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x12, 0x21, - 0x0a, 0x0b, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x44, 0x61, 0x74, - 0x61, 0x12, 0x28, 0x0a, 0x0f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, - 0x66, 0x69, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0d, 0x69, 0x6e, - 0x70, 0x75, 0x74, 0x44, 0x61, 0x74, 0x61, 0x46, 0x69, 0x6c, 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x69, - 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x1a, 0x53, - 0x0a, 0x0b, 0x49, 0x6e, 0x70, 0x75, 0x74, 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, - 0x2e, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x57, 0x61, 0x72, 0x6d, - 0x75, 0x70, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x22, 0x41, 0x0a, 0x0f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x70, 0x5f, 0x6c, 0x69, 0x62, - 0x72, 0x61, 0x72, 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x11, 0x6f, 0x70, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x46, 0x69, - 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x36, 0x0a, 0x16, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x54, - 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, - 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x63, 0x6f, 0x75, 0x70, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x09, 0x64, 0x65, 0x63, 0x6f, 0x75, 0x70, 0x6c, 0x65, 0x64, 0x22, 0x84, - 0x02, 0x0a, 0x15, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, - 0x72, 0x79, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x3a, 0x0a, 0x06, 0x61, 0x67, 0x65, 0x6e, - 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x73, 0x1a, 0xae, 0x01, 0x0a, 0x05, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x52, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, - 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x65, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x1a, 0x3d, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, - 0x74, 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, 0x22, 0x2c, 0x0a, 0x12, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x65, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x6e, 0x61, - 0x62, 0x6c, 0x65, 0x22, 0x9a, 0x03, 0x0a, 0x0c, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x65, 0x74, - 0x72, 0x69, 0x63, 0x73, 0x12, 0x48, 0x0a, 0x0e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x63, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, - 0x73, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, - 0x0d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x1a, 0xbf, - 0x02, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, - 0x12, 0x5f, 0x0a, 0x11, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, 0x4d, - 0x65, 0x74, 0x72, 0x69, 0x63, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, - 0x10, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, - 0x72, 0x12, 0x61, 0x0a, 0x11, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, - 0x73, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2e, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x48, 0x00, 0x52, 0x10, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x4f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x2a, 0x0a, 0x10, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x49, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x61, 0x6d, 0x69, - 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, - 0x1a, 0x2c, 0x0a, 0x10, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x4f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x01, 0x52, 0x07, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x42, 0x10, - 0x0a, 0x0e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x22, 0xac, 0x0d, 0x0a, 0x0b, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x75, - 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x75, 0x6e, - 0x74, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, - 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0d, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x61, - 0x74, 0x63, 0x68, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, - 0x6d, 0x61, 0x78, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x27, 0x0a, 0x05, - 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x05, - 0x69, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x2a, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, - 0x64, 0x65, 0x6c, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, - 0x74, 0x12, 0x32, 0x0a, 0x0b, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, - 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x42, - 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, - 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x35, 0x0a, 0x0c, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6f, - 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x15, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, - 0x0b, 0x62, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x42, 0x0a, 0x0c, - 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, - 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, - 0x63, 0x79, 0x52, 0x0c, 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x48, 0x0a, 0x10, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x62, 0x61, 0x74, 0x63, - 0x68, 0x69, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x42, - 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x0f, 0x64, 0x79, 0x6e, 0x61, 0x6d, - 0x69, 0x63, 0x42, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x12, 0x4b, 0x0a, 0x11, 0x73, 0x65, - 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, - 0x64, 0x65, 0x6c, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, - 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x10, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x42, - 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x12, 0x49, 0x0a, 0x13, 0x65, 0x6e, 0x73, 0x65, 0x6d, - 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, - 0x65, 0x6c, 0x45, 0x6e, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x12, - 0x65, 0x6e, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, - 0x6e, 0x67, 0x12, 0x40, 0x0a, 0x0e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x0d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x12, 0x34, 0x0a, 0x16, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, - 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4d, 0x6f, 0x64, - 0x65, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x56, 0x0a, 0x12, 0x63, 0x63, - 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x73, - 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, - 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x63, 0x4d, 0x6f, 0x64, - 0x65, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x52, 0x10, 0x63, 0x63, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, - 0x65, 0x73, 0x12, 0x43, 0x0a, 0x0b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x74, 0x61, 0x67, - 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, - 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4d, 0x65, 0x74, 0x72, - 0x69, 0x63, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x6d, 0x65, 0x74, - 0x72, 0x69, 0x63, 0x54, 0x61, 0x67, 0x73, 0x12, 0x42, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, - 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x35, 0x0a, 0x0c, 0x6d, - 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x77, 0x61, 0x72, 0x6d, 0x75, 0x70, 0x18, 0x10, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x57, - 0x61, 0x72, 0x6d, 0x75, 0x70, 0x52, 0x0b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x57, 0x61, 0x72, 0x6d, - 0x75, 0x70, 0x12, 0x41, 0x0a, 0x10, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x57, 0x0a, 0x18, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x74, - 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, - 0x79, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, - 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x16, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x54, 0x72, 0x61, - 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x54, - 0x0a, 0x17, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, - 0x72, 0x79, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x15, 0x6d, - 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x73, 0x12, 0x40, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x38, 0x0a, 0x0d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, - 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x65, 0x74, 0x72, 0x69, - 0x63, 0x73, 0x52, 0x0c, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x1a, 0x43, 0x0a, 0x15, 0x43, 0x63, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x6e, - 0x61, 0x6d, 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, 0x1a, 0x3d, 0x0a, 0x0f, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 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, 0x1a, 0x54, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 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, 0x2b, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x13, 0x0a, 0x11, 0x73, 0x63, - 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x2a, - 0xfa, 0x01, 0x0a, 0x08, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x10, 0x00, 0x12, 0x0d, - 0x0a, 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x01, 0x12, 0x0e, 0x0a, - 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x49, 0x4e, 0x54, 0x38, 0x10, 0x02, 0x12, 0x0f, 0x0a, - 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x49, 0x4e, 0x54, 0x31, 0x36, 0x10, 0x03, 0x12, 0x0f, - 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x04, 0x12, - 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x05, - 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x38, 0x10, 0x06, 0x12, - 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x31, 0x36, 0x10, 0x07, 0x12, - 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x08, 0x12, - 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x09, 0x12, - 0x0d, 0x0a, 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x50, 0x31, 0x36, 0x10, 0x0a, 0x12, 0x0d, - 0x0a, 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x50, 0x33, 0x32, 0x10, 0x0b, 0x12, 0x0d, 0x0a, - 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x50, 0x36, 0x34, 0x10, 0x0c, 0x12, 0x0f, 0x0a, 0x0b, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x0d, 0x12, 0x0d, 0x0a, - 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x46, 0x31, 0x36, 0x10, 0x0e, 0x42, 0x1b, 0x5a, 0x19, - 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, - 0x2f, 0x70, 0x72, 0x65, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x33, -} +var File_internal_predator_proto_model_config_proto protoreflect.FileDescriptor + +const file_internal_predator_proto_model_config_proto_rawDesc = "" + + "\n" + + "*internal/predator/proto/model_config.proto\x12\x05proto\"\xbc\x01\n" + + "\x10ModelRateLimiter\x12>\n" + + "\tresources\x18\x01 \x03(\v2 .proto.ModelRateLimiter.ResourceR\tresources\x12\x1a\n" + + "\bpriority\x18\x02 \x01(\rR\bpriority\x1aL\n" + + "\bResource\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12\x16\n" + + "\x06global\x18\x02 \x01(\bR\x06global\x12\x14\n" + + "\x05count\x18\x03 \x01(\rR\x05count\"\xdd\x04\n" + + "\x12ModelInstanceGroup\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x122\n" + + "\x04kind\x18\x04 \x01(\x0e2\x1e.proto.ModelInstanceGroup.KindR\x04kind\x12\x14\n" + + "\x05count\x18\x02 \x01(\x05R\x05count\x12:\n" + + "\frate_limiter\x18\x06 \x01(\v2\x17.proto.ModelRateLimiterR\vrateLimiter\x12\x12\n" + + "\x04gpus\x18\x03 \x03(\x05R\x04gpus\x12V\n" + + "\x11secondary_devices\x18\b \x03(\v2).proto.ModelInstanceGroup.SecondaryDeviceR\x10secondaryDevices\x12\x18\n" + + "\aprofile\x18\x05 \x03(\tR\aprofile\x12\x18\n" + + "\apassive\x18\a \x01(\bR\apassive\x12\x1f\n" + + "\vhost_policy\x18\t \x01(\tR\n" + + "hostPolicy\x1a\xa8\x01\n" + + "\x0fSecondaryDevice\x12Q\n" + + "\x04kind\x18\x01 \x01(\x0e2=.proto.ModelInstanceGroup.SecondaryDevice.SecondaryDeviceKindR\x04kind\x12\x1b\n" + + "\tdevice_id\x18\x02 \x01(\x03R\bdeviceId\"%\n" + + "\x13SecondaryDeviceKind\x12\x0e\n" + + "\n" + + "KIND_NVDLA\x10\x00\"A\n" + + "\x04Kind\x12\r\n" + + "\tKIND_AUTO\x10\x00\x12\f\n" + + "\bKIND_GPU\x10\x01\x12\f\n" + + "\bKIND_CPU\x10\x02\x12\x0e\n" + + "\n" + + "KIND_MODEL\x10\x03\"*\n" + + "\x12ModelTensorReshape\x12\x14\n" + + "\x05shape\x18\x01 \x03(\x03R\x05shape\"\xae\x03\n" + + "\n" + + "ModelInput\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12,\n" + + "\tdata_type\x18\x02 \x01(\x0e2\x0f.proto.DataTypeR\bdataType\x120\n" + + "\x06format\x18\x03 \x01(\x0e2\x18.proto.ModelInput.FormatR\x06format\x12\x12\n" + + "\x04dims\x18\x04 \x03(\x03R\x04dims\x123\n" + + "\areshape\x18\x05 \x01(\v2\x19.proto.ModelTensorReshapeR\areshape\x12&\n" + + "\x0fis_shape_tensor\x18\x06 \x01(\bR\risShapeTensor\x12,\n" + + "\x12allow_ragged_batch\x18\a \x01(\bR\x10allowRaggedBatch\x12\x1a\n" + + "\boptional\x18\b \x01(\bR\boptional\x124\n" + + "\x17is_non_linear_format_io\x18\t \x01(\bR\x13isNonLinearFormatIo\";\n" + + "\x06Format\x12\x0f\n" + + "\vFORMAT_NONE\x10\x00\x12\x0f\n" + + "\vFORMAT_NHWC\x10\x01\x12\x0f\n" + + "\vFORMAT_NCHW\x10\x02\"\x9d\x02\n" + + "\vModelOutput\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12,\n" + + "\tdata_type\x18\x02 \x01(\x0e2\x0f.proto.DataTypeR\bdataType\x12\x12\n" + + "\x04dims\x18\x03 \x03(\x03R\x04dims\x123\n" + + "\areshape\x18\x05 \x01(\v2\x19.proto.ModelTensorReshapeR\areshape\x12%\n" + + "\x0elabel_filename\x18\x04 \x01(\tR\rlabelFilename\x12&\n" + + "\x0fis_shape_tensor\x18\x06 \x01(\bR\risShapeTensor\x124\n" + + "\x17is_non_linear_format_io\x18\a \x01(\bR\x13isNonLinearFormatIo\"\xfa\x02\n" + + "\n" + + "BatchInput\x12*\n" + + "\x04kind\x18\x01 \x01(\x0e2\x16.proto.BatchInput.KindR\x04kind\x12\x1f\n" + + "\vtarget_name\x18\x02 \x03(\tR\n" + + "targetName\x12,\n" + + "\tdata_type\x18\x03 \x01(\x0e2\x0f.proto.DataTypeR\bdataType\x12!\n" + + "\fsource_input\x18\x04 \x03(\tR\vsourceInput\"\xcd\x01\n" + + "\x04Kind\x12\x17\n" + + "\x13BATCH_ELEMENT_COUNT\x10\x00\x12#\n" + + "\x1fBATCH_ACCUMULATED_ELEMENT_COUNT\x10\x01\x12-\n" + + ")BATCH_ACCUMULATED_ELEMENT_COUNT_WITH_ZERO\x10\x02\x12$\n" + + " BATCH_MAX_ELEMENT_COUNT_AS_SHAPE\x10\x03\x12\x14\n" + + "\x10BATCH_ITEM_SHAPE\x10\x04\x12\x1c\n" + + "\x18BATCH_ITEM_SHAPE_FLATTEN\x10\x05\"\xaa\x01\n" + + "\vBatchOutput\x12\x1f\n" + + "\vtarget_name\x18\x01 \x03(\tR\n" + + "targetName\x12+\n" + + "\x04kind\x18\x02 \x01(\x0e2\x17.proto.BatchOutput.KindR\x04kind\x12!\n" + + "\fsource_input\x18\x03 \x03(\tR\vsourceInput\"*\n" + + "\x04Kind\x12\"\n" + + "\x1eBATCH_SCATTER_WITH_INPUT_SHAPE\x10\x00\"\xb2\x02\n" + + "\x12ModelVersionPolicy\x12:\n" + + "\x06latest\x18\x01 \x01(\v2 .proto.ModelVersionPolicy.LatestH\x00R\x06latest\x121\n" + + "\x03all\x18\x02 \x01(\v2\x1d.proto.ModelVersionPolicy.AllH\x00R\x03all\x12@\n" + + "\bspecific\x18\x03 \x01(\v2\".proto.ModelVersionPolicy.SpecificH\x00R\bspecific\x1a+\n" + + "\x06Latest\x12!\n" + + "\fnum_versions\x18\x01 \x01(\rR\vnumVersions\x1a\x05\n" + + "\x03All\x1a&\n" + + "\bSpecific\x12\x1a\n" + + "\bversions\x18\x01 \x03(\x03R\bversionsB\x0f\n" + + "\rpolicy_choice\"\xa8\x10\n" + + "\x17ModelOptimizationPolicy\x12:\n" + + "\x05graph\x18\x01 \x01(\v2$.proto.ModelOptimizationPolicy.GraphR\x05graph\x12H\n" + + "\bpriority\x18\x02 \x01(\x0e2,.proto.ModelOptimizationPolicy.ModelPriorityR\bpriority\x127\n" + + "\x04cuda\x18\x03 \x01(\v2#.proto.ModelOptimizationPolicy.CudaR\x04cuda\x12k\n" + + "\x16execution_accelerators\x18\x04 \x01(\v24.proto.ModelOptimizationPolicy.ExecutionAcceleratorsR\x15executionAccelerators\x12a\n" + + "\x13input_pinned_memory\x18\x05 \x01(\v21.proto.ModelOptimizationPolicy.PinnedMemoryBufferR\x11inputPinnedMemory\x12c\n" + + "\x14output_pinned_memory\x18\x06 \x01(\v21.proto.ModelOptimizationPolicy.PinnedMemoryBufferR\x12outputPinnedMemory\x12C\n" + + "\x1egather_kernel_buffer_threshold\x18\a \x01(\rR\x1bgatherKernelBufferThreshold\x12%\n" + + "\x0eeager_batching\x18\b \x01(\bR\reagerBatching\x1a\x1d\n" + + "\x05Graph\x12\x14\n" + + "\x05level\x18\x01 \x01(\x05R\x05level\x1a\xa9\x06\n" + + "\x04Cuda\x12\x16\n" + + "\x06graphs\x18\x01 \x01(\bR\x06graphs\x12(\n" + + "\x10busy_wait_events\x18\x02 \x01(\bR\x0ebusyWaitEvents\x12L\n" + + "\n" + + "graph_spec\x18\x03 \x03(\v2-.proto.ModelOptimizationPolicy.Cuda.GraphSpecR\tgraphSpec\x12,\n" + + "\x12output_copy_stream\x18\x04 \x01(\bR\x10outputCopyStream\x1a\xe2\x04\n" + + "\tGraphSpec\x12\x1d\n" + + "\n" + + "batch_size\x18\x01 \x01(\x05R\tbatchSize\x12N\n" + + "\x05input\x18\x02 \x03(\v28.proto.ModelOptimizationPolicy.Cuda.GraphSpec.InputEntryR\x05input\x12d\n" + + "\x11graph_lower_bound\x18\x03 \x01(\v28.proto.ModelOptimizationPolicy.Cuda.GraphSpec.LowerBoundR\x0fgraphLowerBound\x1a\x19\n" + + "\x05Shape\x12\x10\n" + + "\x03dim\x18\x01 \x03(\x03R\x03dim\x1a\xf5\x01\n" + + "\n" + + "LowerBound\x12\x1d\n" + + "\n" + + "batch_size\x18\x01 \x01(\x05R\tbatchSize\x12Y\n" + + "\x05input\x18\x02 \x03(\v2C.proto.ModelOptimizationPolicy.Cuda.GraphSpec.LowerBound.InputEntryR\x05input\x1am\n" + + "\n" + + "InputEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12I\n" + + "\x05value\x18\x02 \x01(\v23.proto.ModelOptimizationPolicy.Cuda.GraphSpec.ShapeR\x05value:\x028\x01\x1am\n" + + "\n" + + "InputEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12I\n" + + "\x05value\x18\x02 \x01(\v23.proto.ModelOptimizationPolicy.Cuda.GraphSpec.ShapeR\x05value:\x028\x01\x1a\xe8\x03\n" + + "\x15ExecutionAccelerators\x12|\n" + + "\x19gpu_execution_accelerator\x18\x01 \x03(\v2@.proto.ModelOptimizationPolicy.ExecutionAccelerators.AcceleratorR\x17gpuExecutionAccelerator\x12|\n" + + "\x19cpu_execution_accelerator\x18\x02 \x03(\v2@.proto.ModelOptimizationPolicy.ExecutionAccelerators.AcceleratorR\x17cpuExecutionAccelerator\x1a\xd2\x01\n" + + "\vAccelerator\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12p\n" + + "\n" + + "parameters\x18\x02 \x03(\v2P.proto.ModelOptimizationPolicy.ExecutionAccelerators.Accelerator.ParametersEntryR\n" + + "parameters\x1a=\n" + + "\x0fParametersEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\x1a,\n" + + "\x12PinnedMemoryBuffer\x12\x16\n" + + "\x06enable\x18\x01 \x01(\bR\x06enable\"I\n" + + "\rModelPriority\x12\x14\n" + + "\x10PRIORITY_DEFAULT\x10\x00\x12\x10\n" + + "\fPRIORITY_MAX\x10\x01\x12\x10\n" + + "\fPRIORITY_MIN\x10\x02\"\xa6\x02\n" + + "\x10ModelQueuePolicy\x12L\n" + + "\x0etimeout_action\x18\x01 \x01(\x0e2%.proto.ModelQueuePolicy.TimeoutActionR\rtimeoutAction\x12@\n" + + "\x1cdefault_timeout_microseconds\x18\x02 \x01(\x04R\x1adefaultTimeoutMicroseconds\x124\n" + + "\x16allow_timeout_override\x18\x03 \x01(\bR\x14allowTimeoutOverride\x12$\n" + + "\x0emax_queue_size\x18\x04 \x01(\rR\fmaxQueueSize\"&\n" + + "\rTimeoutAction\x12\n" + + "\n" + + "\x06REJECT\x10\x00\x12\t\n" + + "\x05DELAY\x10\x01\"\xab\x04\n" + + "\x14ModelDynamicBatching\x120\n" + + "\x14preferred_batch_size\x18\x01 \x03(\x05R\x12preferredBatchSize\x12?\n" + + "\x1cmax_queue_delay_microseconds\x18\x02 \x01(\x04R\x19maxQueueDelayMicroseconds\x12+\n" + + "\x11preserve_ordering\x18\x03 \x01(\bR\x10preserveOrdering\x12'\n" + + "\x0fpriority_levels\x18\x04 \x01(\x04R\x0epriorityLevels\x124\n" + + "\x16default_priority_level\x18\x05 \x01(\x04R\x14defaultPriorityLevel\x12I\n" + + "\x14default_queue_policy\x18\x06 \x01(\v2\x17.proto.ModelQueuePolicyR\x12defaultQueuePolicy\x12h\n" + + "\x15priority_queue_policy\x18\a \x03(\v24.proto.ModelDynamicBatching.PriorityQueuePolicyEntryR\x13priorityQueuePolicy\x1a_\n" + + "\x18PriorityQueuePolicyEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\x04R\x03key\x12-\n" + + "\x05value\x18\x02 \x01(\v2\x17.proto.ModelQueuePolicyR\x05value:\x028\x01\"\x83\x0e\n" + + "\x15ModelSequenceBatching\x12E\n" + + "\x06direct\x18\x03 \x01(\v2+.proto.ModelSequenceBatching.StrategyDirectH\x00R\x06direct\x12E\n" + + "\x06oldest\x18\x04 \x01(\v2+.proto.ModelSequenceBatching.StrategyOldestH\x00R\x06oldest\x12C\n" + + "\x1emax_sequence_idle_microseconds\x18\x01 \x01(\x04R\x1bmaxSequenceIdleMicroseconds\x12N\n" + + "\rcontrol_input\x18\x02 \x03(\v2).proto.ModelSequenceBatching.ControlInputR\fcontrolInput\x128\n" + + "\x05state\x18\x05 \x03(\v2\".proto.ModelSequenceBatching.StateR\x05state\x12-\n" + + "\x12iterative_sequence\x18\x06 \x01(\bR\x11iterativeSequence\x1a\xe7\x02\n" + + "\aControl\x12=\n" + + "\x04kind\x18\x01 \x01(\x0e2).proto.ModelSequenceBatching.Control.KindR\x04kind\x12(\n" + + "\x10int32_false_true\x18\x02 \x03(\x05R\x0eint32FalseTrue\x12&\n" + + "\x0ffp32_false_true\x18\x03 \x03(\x02R\rfp32FalseTrue\x12&\n" + + "\x0fbool_false_true\x18\x05 \x03(\bR\rboolFalseTrue\x12,\n" + + "\tdata_type\x18\x04 \x01(\x0e2\x0f.proto.DataTypeR\bdataType\"u\n" + + "\x04Kind\x12\x1a\n" + + "\x16CONTROL_SEQUENCE_START\x10\x00\x12\x1a\n" + + "\x16CONTROL_SEQUENCE_READY\x10\x01\x12\x18\n" + + "\x14CONTROL_SEQUENCE_END\x10\x02\x12\x1b\n" + + "\x17CONTROL_SEQUENCE_CORRID\x10\x03\x1ab\n" + + "\fControlInput\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12>\n" + + "\acontrol\x18\x02 \x03(\v2$.proto.ModelSequenceBatching.ControlR\acontrol\x1a\xb0\x01\n" + + "\fInitialState\x12,\n" + + "\tdata_type\x18\x01 \x01(\x0e2\x0f.proto.DataTypeR\bdataType\x12\x12\n" + + "\x04dims\x18\x02 \x03(\x03R\x04dims\x12\x1d\n" + + "\tzero_data\x18\x03 \x01(\bH\x00R\bzeroData\x12\x1d\n" + + "\tdata_file\x18\x04 \x01(\tH\x00R\bdataFile\x12\x12\n" + + "\x04name\x18\x05 \x01(\tR\x04nameB\f\n" + + "\n" + + "state_data\x1a\xd0\x02\n" + + "\x05State\x12\x1d\n" + + "\n" + + "input_name\x18\x01 \x01(\tR\tinputName\x12\x1f\n" + + "\voutput_name\x18\x02 \x01(\tR\n" + + "outputName\x12,\n" + + "\tdata_type\x18\x03 \x01(\x0e2\x0f.proto.DataTypeR\bdataType\x12\x12\n" + + "\x04dims\x18\x04 \x03(\x03R\x04dims\x12N\n" + + "\rinitial_state\x18\x05 \x03(\v2).proto.ModelSequenceBatching.InitialStateR\finitialState\x12E\n" + + " use_same_buffer_for_input_output\x18\x06 \x01(\bR\x1buseSameBufferForInputOutput\x12.\n" + + "\x13use_growable_memory\x18\a \x01(\bR\x11useGrowableMemory\x1a\x8b\x01\n" + + "\x0eStrategyDirect\x12?\n" + + "\x1cmax_queue_delay_microseconds\x18\x01 \x01(\x04R\x19maxQueueDelayMicroseconds\x128\n" + + "\x18minimum_slot_utilization\x18\x02 \x01(\x02R\x16minimumSlotUtilization\x1a\xe8\x01\n" + + "\x0eStrategyOldest\x126\n" + + "\x17max_candidate_sequences\x18\x01 \x01(\x05R\x15maxCandidateSequences\x120\n" + + "\x14preferred_batch_size\x18\x02 \x03(\x05R\x12preferredBatchSize\x12?\n" + + "\x1cmax_queue_delay_microseconds\x18\x03 \x01(\x04R\x19maxQueueDelayMicroseconds\x12+\n" + + "\x11preserve_ordering\x18\x04 \x01(\bR\x10preserveOrderingB\x11\n" + + "\x0fstrategy_choice\"\xc6\x03\n" + + "\x0fModelEnsembling\x12/\n" + + "\x04step\x18\x01 \x03(\v2\x1b.proto.ModelEnsembling.StepR\x04step\x1a\x81\x03\n" + + "\x04Step\x12\x1d\n" + + "\n" + + "model_name\x18\x01 \x01(\tR\tmodelName\x12#\n" + + "\rmodel_version\x18\x02 \x01(\x03R\fmodelVersion\x12F\n" + + "\tinput_map\x18\x03 \x03(\v2).proto.ModelEnsembling.Step.InputMapEntryR\binputMap\x12I\n" + + "\n" + + "output_map\x18\x04 \x03(\v2*.proto.ModelEnsembling.Step.OutputMapEntryR\toutputMap\x12'\n" + + "\x0fmodel_namespace\x18\x05 \x01(\tR\x0emodelNamespace\x1a;\n" + + "\rInputMapEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\x1a<\n" + + "\x0eOutputMapEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"3\n" + + "\x0eModelParameter\x12!\n" + + "\fstring_value\x18\x01 \x01(\tR\vstringValue\"\xae\x03\n" + + "\vModelWarmup\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12\x1d\n" + + "\n" + + "batch_size\x18\x02 \x01(\rR\tbatchSize\x126\n" + + "\x06inputs\x18\x03 \x03(\v2\x1e.proto.ModelWarmup.InputsEntryR\x06inputs\x12\x14\n" + + "\x05count\x18\x04 \x01(\rR\x05count\x1a\xc8\x01\n" + + "\x05Input\x12,\n" + + "\tdata_type\x18\x01 \x01(\x0e2\x0f.proto.DataTypeR\bdataType\x12\x12\n" + + "\x04dims\x18\x02 \x03(\x03R\x04dims\x12\x1d\n" + + "\tzero_data\x18\x03 \x01(\bH\x00R\bzeroData\x12!\n" + + "\vrandom_data\x18\x04 \x01(\bH\x00R\n" + + "randomData\x12(\n" + + "\x0finput_data_file\x18\x05 \x01(\tH\x00R\rinputDataFileB\x11\n" + + "\x0finput_data_type\x1aS\n" + + "\vInputsEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12.\n" + + "\x05value\x18\x02 \x01(\v2\x18.proto.ModelWarmup.InputR\x05value:\x028\x01\"A\n" + + "\x0fModelOperations\x12.\n" + + "\x13op_library_filename\x18\x01 \x03(\tR\x11opLibraryFilename\"6\n" + + "\x16ModelTransactionPolicy\x12\x1c\n" + + "\tdecoupled\x18\x01 \x01(\bR\tdecoupled\"\x84\x02\n" + + "\x15ModelRepositoryAgents\x12:\n" + + "\x06agents\x18\x01 \x03(\v2\".proto.ModelRepositoryAgents.AgentR\x06agents\x1a\xae\x01\n" + + "\x05Agent\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12R\n" + + "\n" + + "parameters\x18\x02 \x03(\v22.proto.ModelRepositoryAgents.Agent.ParametersEntryR\n" + + "parameters\x1a=\n" + + "\x0fParametersEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\",\n" + + "\x12ModelResponseCache\x12\x16\n" + + "\x06enable\x18\x01 \x01(\bR\x06enable\"\x9a\x03\n" + + "\fModelMetrics\x12H\n" + + "\x0emetric_control\x18\x01 \x03(\v2!.proto.ModelMetrics.MetricControlR\rmetricControl\x1a\xbf\x02\n" + + "\rMetricControl\x12_\n" + + "\x11metric_identifier\x18\x01 \x01(\v22.proto.ModelMetrics.MetricControl.MetricIdentifierR\x10metricIdentifier\x12a\n" + + "\x11histogram_options\x18\x02 \x01(\v22.proto.ModelMetrics.MetricControl.HistogramOptionsH\x00R\x10histogramOptions\x1a*\n" + + "\x10MetricIdentifier\x12\x16\n" + + "\x06family\x18\x01 \x01(\tR\x06family\x1a,\n" + + "\x10HistogramOptions\x12\x18\n" + + "\abuckets\x18\x01 \x03(\x01R\abucketsB\x10\n" + + "\x0emetric_options\"\xac\r\n" + + "\vModelConfig\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12\x1a\n" + + "\bplatform\x18\x02 \x01(\tR\bplatform\x12\x18\n" + + "\abackend\x18\x11 \x01(\tR\abackend\x12\x18\n" + + "\aruntime\x18\x19 \x01(\tR\aruntime\x12@\n" + + "\x0eversion_policy\x18\x03 \x01(\v2\x19.proto.ModelVersionPolicyR\rversionPolicy\x12$\n" + + "\x0emax_batch_size\x18\x04 \x01(\x05R\fmaxBatchSize\x12'\n" + + "\x05input\x18\x05 \x03(\v2\x11.proto.ModelInputR\x05input\x12*\n" + + "\x06output\x18\x06 \x03(\v2\x12.proto.ModelOutputR\x06output\x122\n" + + "\vbatch_input\x18\x14 \x03(\v2\x11.proto.BatchInputR\n" + + "batchInput\x125\n" + + "\fbatch_output\x18\x15 \x03(\v2\x12.proto.BatchOutputR\vbatchOutput\x12B\n" + + "\foptimization\x18\f \x01(\v2\x1e.proto.ModelOptimizationPolicyR\foptimization\x12H\n" + + "\x10dynamic_batching\x18\v \x01(\v2\x1b.proto.ModelDynamicBatchingH\x00R\x0fdynamicBatching\x12K\n" + + "\x11sequence_batching\x18\r \x01(\v2\x1c.proto.ModelSequenceBatchingH\x00R\x10sequenceBatching\x12I\n" + + "\x13ensemble_scheduling\x18\x0f \x01(\v2\x16.proto.ModelEnsemblingH\x00R\x12ensembleScheduling\x12@\n" + + "\x0einstance_group\x18\a \x03(\v2\x19.proto.ModelInstanceGroupR\rinstanceGroup\x124\n" + + "\x16default_model_filename\x18\b \x01(\tR\x14defaultModelFilename\x12V\n" + + "\x12cc_model_filenames\x18\t \x03(\v2(.proto.ModelConfig.CcModelFilenamesEntryR\x10ccModelFilenames\x12C\n" + + "\vmetric_tags\x18\n" + + " \x03(\v2\".proto.ModelConfig.MetricTagsEntryR\n" + + "metricTags\x12B\n" + + "\n" + + "parameters\x18\x0e \x03(\v2\".proto.ModelConfig.ParametersEntryR\n" + + "parameters\x125\n" + + "\fmodel_warmup\x18\x10 \x03(\v2\x12.proto.ModelWarmupR\vmodelWarmup\x12A\n" + + "\x10model_operations\x18\x12 \x01(\v2\x16.proto.ModelOperationsR\x0fmodelOperations\x12W\n" + + "\x18model_transaction_policy\x18\x13 \x01(\v2\x1d.proto.ModelTransactionPolicyR\x16modelTransactionPolicy\x12T\n" + + "\x17model_repository_agents\x18\x17 \x01(\v2\x1c.proto.ModelRepositoryAgentsR\x15modelRepositoryAgents\x12@\n" + + "\x0eresponse_cache\x18\x18 \x01(\v2\x19.proto.ModelResponseCacheR\rresponseCache\x128\n" + + "\rmodel_metrics\x18\x1a \x01(\v2\x13.proto.ModelMetricsR\fmodelMetrics\x1aC\n" + + "\x15CcModelFilenamesEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\x1a=\n" + + "\x0fMetricTagsEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\x1aT\n" + + "\x0fParametersEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12+\n" + + "\x05value\x18\x02 \x01(\v2\x15.proto.ModelParameterR\x05value:\x028\x01B\x13\n" + + "\x11scheduling_choice*\xfa\x01\n" + + "\bDataType\x12\x10\n" + + "\fTYPE_INVALID\x10\x00\x12\r\n" + + "\tTYPE_BOOL\x10\x01\x12\x0e\n" + + "\n" + + "TYPE_UINT8\x10\x02\x12\x0f\n" + + "\vTYPE_UINT16\x10\x03\x12\x0f\n" + + "\vTYPE_UINT32\x10\x04\x12\x0f\n" + + "\vTYPE_UINT64\x10\x05\x12\r\n" + + "\tTYPE_INT8\x10\x06\x12\x0e\n" + + "\n" + + "TYPE_INT16\x10\a\x12\x0e\n" + + "\n" + + "TYPE_INT32\x10\b\x12\x0e\n" + + "\n" + + "TYPE_INT64\x10\t\x12\r\n" + + "\tTYPE_FP16\x10\n" + + "\x12\r\n" + + "\tTYPE_FP32\x10\v\x12\r\n" + + "\tTYPE_FP64\x10\f\x12\x0f\n" + + "\vTYPE_STRING\x10\r\x12\r\n" + + "\tTYPE_BF16\x10\x0eBJZHgithub.com/Meesho/BharatMLStack/horizon/internal/predator/proto/protogenb\x06proto3" var ( - file_proto_model_config_proto_rawDescOnce sync.Once - file_proto_model_config_proto_rawDescData = file_proto_model_config_proto_rawDesc + file_internal_predator_proto_model_config_proto_rawDescOnce sync.Once + file_internal_predator_proto_model_config_proto_rawDescData []byte ) -func file_proto_model_config_proto_rawDescGZIP() []byte { - file_proto_model_config_proto_rawDescOnce.Do(func() { - file_proto_model_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_proto_model_config_proto_rawDescData) +func file_internal_predator_proto_model_config_proto_rawDescGZIP() []byte { + file_internal_predator_proto_model_config_proto_rawDescOnce.Do(func() { + file_internal_predator_proto_model_config_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_internal_predator_proto_model_config_proto_rawDesc), len(file_internal_predator_proto_model_config_proto_rawDesc))) }) - return file_proto_model_config_proto_rawDescData + return file_internal_predator_proto_model_config_proto_rawDescData } -var file_proto_model_config_proto_enumTypes = make([]protoimpl.EnumInfo, 9) -var file_proto_model_config_proto_msgTypes = make([]protoimpl.MessageInfo, 57) -var file_proto_model_config_proto_goTypes = []any{ +var file_internal_predator_proto_model_config_proto_enumTypes = make([]protoimpl.EnumInfo, 9) +var file_internal_predator_proto_model_config_proto_msgTypes = make([]protoimpl.MessageInfo, 57) +var file_internal_predator_proto_model_config_proto_goTypes = []any{ (DataType)(0), // 0: proto.DataType (ModelInstanceGroup_Kind)(0), // 1: proto.ModelInstanceGroup.Kind (ModelInstanceGroup_SecondaryDevice_SecondaryDeviceKind)(0), // 2: proto.ModelInstanceGroup.SecondaryDevice.SecondaryDeviceKind @@ -4430,7 +4075,7 @@ var file_proto_model_config_proto_goTypes = []any{ nil, // 64: proto.ModelConfig.MetricTagsEntry nil, // 65: proto.ModelConfig.ParametersEntry } -var file_proto_model_config_proto_depIdxs = []int32{ +var file_internal_predator_proto_model_config_proto_depIdxs = []int32{ 30, // 0: proto.ModelRateLimiter.resources:type_name -> proto.ModelRateLimiter.Resource 1, // 1: proto.ModelInstanceGroup.kind:type_name -> proto.ModelInstanceGroup.Kind 9, // 2: proto.ModelInstanceGroup.rate_limiter:type_name -> proto.ModelRateLimiter @@ -4514,54 +4159,53 @@ var file_proto_model_config_proto_depIdxs = []int32{ 0, // [0:76] is the sub-list for field type_name } -func init() { file_proto_model_config_proto_init() } -func file_proto_model_config_proto_init() { - if File_proto_model_config_proto != nil { +func init() { file_internal_predator_proto_model_config_proto_init() } +func file_internal_predator_proto_model_config_proto_init() { + if File_internal_predator_proto_model_config_proto != nil { return } - file_proto_model_config_proto_msgTypes[7].OneofWrappers = []any{ + file_internal_predator_proto_model_config_proto_msgTypes[7].OneofWrappers = []any{ (*ModelVersionPolicy_Latest_)(nil), (*ModelVersionPolicy_All_)(nil), (*ModelVersionPolicy_Specific_)(nil), } - file_proto_model_config_proto_msgTypes[11].OneofWrappers = []any{ + file_internal_predator_proto_model_config_proto_msgTypes[11].OneofWrappers = []any{ (*ModelSequenceBatching_Direct)(nil), (*ModelSequenceBatching_Oldest)(nil), } - file_proto_model_config_proto_msgTypes[20].OneofWrappers = []any{ + file_internal_predator_proto_model_config_proto_msgTypes[20].OneofWrappers = []any{ (*ModelConfig_DynamicBatching)(nil), (*ModelConfig_SequenceBatching)(nil), (*ModelConfig_EnsembleScheduling)(nil), } - file_proto_model_config_proto_msgTypes[40].OneofWrappers = []any{ + file_internal_predator_proto_model_config_proto_msgTypes[40].OneofWrappers = []any{ (*ModelSequenceBatching_InitialState_ZeroData)(nil), (*ModelSequenceBatching_InitialState_DataFile)(nil), } - file_proto_model_config_proto_msgTypes[47].OneofWrappers = []any{ + file_internal_predator_proto_model_config_proto_msgTypes[47].OneofWrappers = []any{ (*ModelWarmup_Input_ZeroData)(nil), (*ModelWarmup_Input_RandomData)(nil), (*ModelWarmup_Input_InputDataFile)(nil), } - file_proto_model_config_proto_msgTypes[51].OneofWrappers = []any{ + file_internal_predator_proto_model_config_proto_msgTypes[51].OneofWrappers = []any{ (*ModelMetrics_MetricControl_HistogramOptions_)(nil), } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_proto_model_config_proto_rawDesc, + RawDescriptor: unsafe.Slice(unsafe.StringData(file_internal_predator_proto_model_config_proto_rawDesc), len(file_internal_predator_proto_model_config_proto_rawDesc)), NumEnums: 9, NumMessages: 57, NumExtensions: 0, NumServices: 0, }, - GoTypes: file_proto_model_config_proto_goTypes, - DependencyIndexes: file_proto_model_config_proto_depIdxs, - EnumInfos: file_proto_model_config_proto_enumTypes, - MessageInfos: file_proto_model_config_proto_msgTypes, + GoTypes: file_internal_predator_proto_model_config_proto_goTypes, + DependencyIndexes: file_internal_predator_proto_model_config_proto_depIdxs, + EnumInfos: file_internal_predator_proto_model_config_proto_enumTypes, + MessageInfos: file_internal_predator_proto_model_config_proto_msgTypes, }.Build() - File_proto_model_config_proto = out.File - file_proto_model_config_proto_rawDesc = nil - file_proto_model_config_proto_goTypes = nil - file_proto_model_config_proto_depIdxs = nil + File_internal_predator_proto_model_config_proto = out.File + file_internal_predator_proto_model_config_proto_goTypes = nil + file_internal_predator_proto_model_config_proto_depIdxs = nil }