// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.33.0
// 	protoc        v5.27.0
// source: segcore.proto

package segcorepb

import (
	commonpb "github.com/milvus-io/milvus-proto/go-api/v3/commonpb"
	schemapb "github.com/milvus-io/milvus-proto/go-api/v3/schemapb"
	indexpb "github.com/milvus-io/milvus/pkg/v3/proto/indexpb"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type Binlog struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	EntriesNum    int64  `protobuf:"varint,1,opt,name=entries_num,json=entriesNum,proto3" json:"entries_num,omitempty"`
	TimestampFrom uint64 `protobuf:"varint,2,opt,name=timestamp_from,json=timestampFrom,proto3" json:"timestamp_from,omitempty"`
	TimestampTo   uint64 `protobuf:"varint,3,opt,name=timestamp_to,json=timestampTo,proto3" json:"timestamp_to,omitempty"`
	LogPath       string `protobuf:"bytes,4,opt,name=log_path,json=logPath,proto3" json:"log_path,omitempty"`
	LogSize       int64  `protobuf:"varint,5,opt,name=log_size,json=logSize,proto3" json:"log_size,omitempty"`
	LogID         int64  `protobuf:"varint,6,opt,name=logID,proto3" json:"logID,omitempty"`
	MemorySize    int64  `protobuf:"varint,7,opt,name=memory_size,json=memorySize,proto3" json:"memory_size,omitempty"`
}

func (x *Binlog) Reset() {
	*x = Binlog{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Binlog) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Binlog) ProtoMessage() {}

func (x *Binlog) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Binlog.ProtoReflect.Descriptor instead.
func (*Binlog) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{0}
}

func (x *Binlog) GetEntriesNum() int64 {
	if x != nil {
		return x.EntriesNum
	}
	return 0
}

func (x *Binlog) GetTimestampFrom() uint64 {
	if x != nil {
		return x.TimestampFrom
	}
	return 0
}

func (x *Binlog) GetTimestampTo() uint64 {
	if x != nil {
		return x.TimestampTo
	}
	return 0
}

func (x *Binlog) GetLogPath() string {
	if x != nil {
		return x.LogPath
	}
	return ""
}

func (x *Binlog) GetLogSize() int64 {
	if x != nil {
		return x.LogSize
	}
	return 0
}

func (x *Binlog) GetLogID() int64 {
	if x != nil {
		return x.LogID
	}
	return 0
}

func (x *Binlog) GetMemorySize() int64 {
	if x != nil {
		return x.MemorySize
	}
	return 0
}

type FieldBinlog struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FieldID     int64     `protobuf:"varint,1,opt,name=fieldID,proto3" json:"fieldID,omitempty"`
	Binlogs     []*Binlog `protobuf:"bytes,2,rep,name=binlogs,proto3" json:"binlogs,omitempty"`
	ChildFields []int64   `protobuf:"varint,3,rep,packed,name=child_fields,json=childFields,proto3" json:"child_fields,omitempty"`
}

func (x *FieldBinlog) Reset() {
	*x = FieldBinlog{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FieldBinlog) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FieldBinlog) ProtoMessage() {}

func (x *FieldBinlog) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FieldBinlog.ProtoReflect.Descriptor instead.
func (*FieldBinlog) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{1}
}

func (x *FieldBinlog) GetFieldID() int64 {
	if x != nil {
		return x.FieldID
	}
	return 0
}

func (x *FieldBinlog) GetBinlogs() []*Binlog {
	if x != nil {
		return x.Binlogs
	}
	return nil
}

func (x *FieldBinlog) GetChildFields() []int64 {
	if x != nil {
		return x.ChildFields
	}
	return nil
}

type TextIndexStats struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FieldID                   int64    `protobuf:"varint,1,opt,name=fieldID,proto3" json:"fieldID,omitempty"`
	Version                   int64    `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"`
	Files                     []string `protobuf:"bytes,3,rep,name=files,proto3" json:"files,omitempty"`
	LogSize                   int64    `protobuf:"varint,4,opt,name=log_size,json=logSize,proto3" json:"log_size,omitempty"`
	MemorySize                int64    `protobuf:"varint,5,opt,name=memory_size,json=memorySize,proto3" json:"memory_size,omitempty"`
	BuildID                   int64    `protobuf:"varint,6,opt,name=buildID,proto3" json:"buildID,omitempty"`
	CurrentScalarIndexVersion int32    `protobuf:"varint,7,opt,name=current_scalar_index_version,json=currentScalarIndexVersion,proto3" json:"current_scalar_index_version,omitempty"`
	BasePath                  string   `protobuf:"bytes,8,opt,name=base_path,json=basePath,proto3" json:"base_path,omitempty"` // remote base path; files are relative to this path
}

func (x *TextIndexStats) Reset() {
	*x = TextIndexStats{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *TextIndexStats) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TextIndexStats) ProtoMessage() {}

func (x *TextIndexStats) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TextIndexStats.ProtoReflect.Descriptor instead.
func (*TextIndexStats) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{2}
}

func (x *TextIndexStats) GetFieldID() int64 {
	if x != nil {
		return x.FieldID
	}
	return 0
}

func (x *TextIndexStats) GetVersion() int64 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *TextIndexStats) GetFiles() []string {
	if x != nil {
		return x.Files
	}
	return nil
}

func (x *TextIndexStats) GetLogSize() int64 {
	if x != nil {
		return x.LogSize
	}
	return 0
}

func (x *TextIndexStats) GetMemorySize() int64 {
	if x != nil {
		return x.MemorySize
	}
	return 0
}

func (x *TextIndexStats) GetBuildID() int64 {
	if x != nil {
		return x.BuildID
	}
	return 0
}

func (x *TextIndexStats) GetCurrentScalarIndexVersion() int32 {
	if x != nil {
		return x.CurrentScalarIndexVersion
	}
	return 0
}

func (x *TextIndexStats) GetBasePath() string {
	if x != nil {
		return x.BasePath
	}
	return ""
}

type JsonKeyStats struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FieldID                int64    `protobuf:"varint,1,opt,name=fieldID,proto3" json:"fieldID,omitempty"`
	Version                int64    `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"`
	Files                  []string `protobuf:"bytes,3,rep,name=files,proto3" json:"files,omitempty"`
	LogSize                int64    `protobuf:"varint,4,opt,name=log_size,json=logSize,proto3" json:"log_size,omitempty"`
	MemorySize             int64    `protobuf:"varint,5,opt,name=memory_size,json=memorySize,proto3" json:"memory_size,omitempty"`
	BuildID                int64    `protobuf:"varint,6,opt,name=buildID,proto3" json:"buildID,omitempty"`
	JsonKeyStatsDataFormat int64    `protobuf:"varint,7,opt,name=json_key_stats_data_format,json=jsonKeyStatsDataFormat,proto3" json:"json_key_stats_data_format,omitempty"`
	BasePath               string   `protobuf:"bytes,8,opt,name=base_path,json=basePath,proto3" json:"base_path,omitempty"` // remote base path; files are relative to this path
}

func (x *JsonKeyStats) Reset() {
	*x = JsonKeyStats{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *JsonKeyStats) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*JsonKeyStats) ProtoMessage() {}

func (x *JsonKeyStats) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[3]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use JsonKeyStats.ProtoReflect.Descriptor instead.
func (*JsonKeyStats) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{3}
}

func (x *JsonKeyStats) GetFieldID() int64 {
	if x != nil {
		return x.FieldID
	}
	return 0
}

func (x *JsonKeyStats) GetVersion() int64 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *JsonKeyStats) GetFiles() []string {
	if x != nil {
		return x.Files
	}
	return nil
}

func (x *JsonKeyStats) GetLogSize() int64 {
	if x != nil {
		return x.LogSize
	}
	return 0
}

func (x *JsonKeyStats) GetMemorySize() int64 {
	if x != nil {
		return x.MemorySize
	}
	return 0
}

func (x *JsonKeyStats) GetBuildID() int64 {
	if x != nil {
		return x.BuildID
	}
	return 0
}

func (x *JsonKeyStats) GetJsonKeyStatsDataFormat() int64 {
	if x != nil {
		return x.JsonKeyStatsDataFormat
	}
	return 0
}

func (x *JsonKeyStats) GetBasePath() string {
	if x != nil {
		return x.BasePath
	}
	return ""
}

// Element indices for a single document in element-level query
type ElementIndices struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Indices []int32 `protobuf:"varint,1,rep,packed,name=indices,proto3" json:"indices,omitempty"`
}

func (x *ElementIndices) Reset() {
	*x = ElementIndices{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ElementIndices) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ElementIndices) ProtoMessage() {}

func (x *ElementIndices) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[4]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ElementIndices.ProtoReflect.Descriptor instead.
func (*ElementIndices) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{4}
}

func (x *ElementIndices) GetIndices() []int32 {
	if x != nil {
		return x.Indices
	}
	return nil
}

type RetrieveResults struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Ids                *schemapb.IDs         `protobuf:"bytes,1,opt,name=ids,proto3" json:"ids,omitempty"`
	Offset             []int64               `protobuf:"varint,2,rep,packed,name=offset,proto3" json:"offset,omitempty"`
	FieldsData         []*schemapb.FieldData `protobuf:"bytes,3,rep,name=fields_data,json=fieldsData,proto3" json:"fields_data,omitempty"`
	AllRetrieveCount   int64                 `protobuf:"varint,4,opt,name=all_retrieve_count,json=allRetrieveCount,proto3" json:"all_retrieve_count,omitempty"`
	HasMoreResult      bool                  `protobuf:"varint,5,opt,name=has_more_result,json=hasMoreResult,proto3" json:"has_more_result,omitempty"`
	ScannedRemoteBytes int64                 `protobuf:"varint,6,opt,name=scanned_remote_bytes,json=scannedRemoteBytes,proto3" json:"scanned_remote_bytes,omitempty"`
	ScannedTotalBytes  int64                 `protobuf:"varint,7,opt,name=scanned_total_bytes,json=scannedTotalBytes,proto3" json:"scanned_total_bytes,omitempty"`
	// Element-level query support
	ElementLevel bool `protobuf:"varint,8,opt,name=element_level,json=elementLevel,proto3" json:"element_level,omitempty"`
	// Element indices per document (aligned with offset array)
	// element_indices[i] contains all matching element indices for offset[i]
	ElementIndices []*ElementIndices `protobuf:"bytes,9,rep,name=element_indices,json=elementIndices,proto3" json:"element_indices,omitempty"`
}

func (x *RetrieveResults) Reset() {
	*x = RetrieveResults{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RetrieveResults) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RetrieveResults) ProtoMessage() {}

func (x *RetrieveResults) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[5]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RetrieveResults.ProtoReflect.Descriptor instead.
func (*RetrieveResults) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{5}
}

func (x *RetrieveResults) GetIds() *schemapb.IDs {
	if x != nil {
		return x.Ids
	}
	return nil
}

func (x *RetrieveResults) GetOffset() []int64 {
	if x != nil {
		return x.Offset
	}
	return nil
}

func (x *RetrieveResults) GetFieldsData() []*schemapb.FieldData {
	if x != nil {
		return x.FieldsData
	}
	return nil
}

func (x *RetrieveResults) GetAllRetrieveCount() int64 {
	if x != nil {
		return x.AllRetrieveCount
	}
	return 0
}

func (x *RetrieveResults) GetHasMoreResult() bool {
	if x != nil {
		return x.HasMoreResult
	}
	return false
}

func (x *RetrieveResults) GetScannedRemoteBytes() int64 {
	if x != nil {
		return x.ScannedRemoteBytes
	}
	return 0
}

func (x *RetrieveResults) GetScannedTotalBytes() int64 {
	if x != nil {
		return x.ScannedTotalBytes
	}
	return 0
}

func (x *RetrieveResults) GetElementLevel() bool {
	if x != nil {
		return x.ElementLevel
	}
	return false
}

func (x *RetrieveResults) GetElementIndices() []*ElementIndices {
	if x != nil {
		return x.ElementIndices
	}
	return nil
}

type LoadFieldMeta struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	MinTimestamp int64 `protobuf:"varint,1,opt,name=min_timestamp,json=minTimestamp,proto3" json:"min_timestamp,omitempty"`
	MaxTimestamp int64 `protobuf:"varint,2,opt,name=max_timestamp,json=maxTimestamp,proto3" json:"max_timestamp,omitempty"`
	RowCount     int64 `protobuf:"varint,3,opt,name=row_count,json=rowCount,proto3" json:"row_count,omitempty"`
}

func (x *LoadFieldMeta) Reset() {
	*x = LoadFieldMeta{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *LoadFieldMeta) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*LoadFieldMeta) ProtoMessage() {}

func (x *LoadFieldMeta) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[6]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use LoadFieldMeta.ProtoReflect.Descriptor instead.
func (*LoadFieldMeta) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{6}
}

func (x *LoadFieldMeta) GetMinTimestamp() int64 {
	if x != nil {
		return x.MinTimestamp
	}
	return 0
}

func (x *LoadFieldMeta) GetMaxTimestamp() int64 {
	if x != nil {
		return x.MaxTimestamp
	}
	return 0
}

func (x *LoadFieldMeta) GetRowCount() int64 {
	if x != nil {
		return x.RowCount
	}
	return 0
}

type LoadSegmentMeta struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// TODOs
	Metas     []*LoadFieldMeta `protobuf:"bytes,1,rep,name=metas,proto3" json:"metas,omitempty"`
	TotalSize int64            `protobuf:"varint,2,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
}

func (x *LoadSegmentMeta) Reset() {
	*x = LoadSegmentMeta{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *LoadSegmentMeta) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*LoadSegmentMeta) ProtoMessage() {}

func (x *LoadSegmentMeta) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[7]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use LoadSegmentMeta.ProtoReflect.Descriptor instead.
func (*LoadSegmentMeta) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{7}
}

func (x *LoadSegmentMeta) GetMetas() []*LoadFieldMeta {
	if x != nil {
		return x.Metas
	}
	return nil
}

func (x *LoadSegmentMeta) GetTotalSize() int64 {
	if x != nil {
		return x.TotalSize
	}
	return 0
}

type InsertRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FieldsData []*schemapb.FieldData `protobuf:"bytes,1,rep,name=fields_data,json=fieldsData,proto3" json:"fields_data,omitempty"`
	NumRows    int64                 `protobuf:"varint,2,opt,name=num_rows,json=numRows,proto3" json:"num_rows,omitempty"`
}

func (x *InsertRecord) Reset() {
	*x = InsertRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *InsertRecord) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*InsertRecord) ProtoMessage() {}

func (x *InsertRecord) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[8]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use InsertRecord.ProtoReflect.Descriptor instead.
func (*InsertRecord) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{8}
}

func (x *InsertRecord) GetFieldsData() []*schemapb.FieldData {
	if x != nil {
		return x.FieldsData
	}
	return nil
}

func (x *InsertRecord) GetNumRows() int64 {
	if x != nil {
		return x.NumRows
	}
	return 0
}

type FieldIndexMeta struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FieldID         int64                    `protobuf:"varint,1,opt,name=fieldID,proto3" json:"fieldID,omitempty"`
	CollectionID    int64                    `protobuf:"varint,2,opt,name=collectionID,proto3" json:"collectionID,omitempty"`
	IndexName       string                   `protobuf:"bytes,3,opt,name=index_name,json=indexName,proto3" json:"index_name,omitempty"`
	TypeParams      []*commonpb.KeyValuePair `protobuf:"bytes,4,rep,name=type_params,json=typeParams,proto3" json:"type_params,omitempty"`
	IndexParams     []*commonpb.KeyValuePair `protobuf:"bytes,5,rep,name=index_params,json=indexParams,proto3" json:"index_params,omitempty"`
	IsAutoIndex     bool                     `protobuf:"varint,6,opt,name=is_auto_index,json=isAutoIndex,proto3" json:"is_auto_index,omitempty"`
	UserIndexParams []*commonpb.KeyValuePair `protobuf:"bytes,7,rep,name=user_index_params,json=userIndexParams,proto3" json:"user_index_params,omitempty"`
	IndexId         int64                    `protobuf:"varint,8,opt,name=index_id,json=indexId,proto3" json:"index_id,omitempty"`
}

func (x *FieldIndexMeta) Reset() {
	*x = FieldIndexMeta{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[9]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FieldIndexMeta) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FieldIndexMeta) ProtoMessage() {}

func (x *FieldIndexMeta) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[9]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FieldIndexMeta.ProtoReflect.Descriptor instead.
func (*FieldIndexMeta) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{9}
}

func (x *FieldIndexMeta) GetFieldID() int64 {
	if x != nil {
		return x.FieldID
	}
	return 0
}

func (x *FieldIndexMeta) GetCollectionID() int64 {
	if x != nil {
		return x.CollectionID
	}
	return 0
}

func (x *FieldIndexMeta) GetIndexName() string {
	if x != nil {
		return x.IndexName
	}
	return ""
}

func (x *FieldIndexMeta) GetTypeParams() []*commonpb.KeyValuePair {
	if x != nil {
		return x.TypeParams
	}
	return nil
}

func (x *FieldIndexMeta) GetIndexParams() []*commonpb.KeyValuePair {
	if x != nil {
		return x.IndexParams
	}
	return nil
}

func (x *FieldIndexMeta) GetIsAutoIndex() bool {
	if x != nil {
		return x.IsAutoIndex
	}
	return false
}

func (x *FieldIndexMeta) GetUserIndexParams() []*commonpb.KeyValuePair {
	if x != nil {
		return x.UserIndexParams
	}
	return nil
}

func (x *FieldIndexMeta) GetIndexId() int64 {
	if x != nil {
		return x.IndexId
	}
	return 0
}

type CollectionIndexMeta struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	MaxIndexRowCount int64             `protobuf:"varint,1,opt,name=maxIndexRowCount,proto3" json:"maxIndexRowCount,omitempty"`
	IndexMetas       []*FieldIndexMeta `protobuf:"bytes,2,rep,name=index_metas,json=indexMetas,proto3" json:"index_metas,omitempty"`
}

func (x *CollectionIndexMeta) Reset() {
	*x = CollectionIndexMeta{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[10]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CollectionIndexMeta) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CollectionIndexMeta) ProtoMessage() {}

func (x *CollectionIndexMeta) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[10]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CollectionIndexMeta.ProtoReflect.Descriptor instead.
func (*CollectionIndexMeta) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{10}
}

func (x *CollectionIndexMeta) GetMaxIndexRowCount() int64 {
	if x != nil {
		return x.MaxIndexRowCount
	}
	return 0
}

func (x *CollectionIndexMeta) GetIndexMetas() []*FieldIndexMeta {
	if x != nil {
		return x.IndexMetas
	}
	return nil
}

type FieldIndexInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FieldID int64 `protobuf:"varint,1,opt,name=fieldID,proto3" json:"fieldID,omitempty"`
	// Deprecated: Marked as deprecated in segcore.proto.
	EnableIndex         bool                     `protobuf:"varint,2,opt,name=enable_index,json=enableIndex,proto3" json:"enable_index,omitempty"`
	IndexName           string                   `protobuf:"bytes,3,opt,name=index_name,json=indexName,proto3" json:"index_name,omitempty"`
	IndexID             int64                    `protobuf:"varint,4,opt,name=indexID,proto3" json:"indexID,omitempty"`
	BuildID             int64                    `protobuf:"varint,5,opt,name=buildID,proto3" json:"buildID,omitempty"`
	IndexParams         []*commonpb.KeyValuePair `protobuf:"bytes,6,rep,name=index_params,json=indexParams,proto3" json:"index_params,omitempty"`
	IndexFilePaths      []string                 `protobuf:"bytes,7,rep,name=index_file_paths,json=indexFilePaths,proto3" json:"index_file_paths,omitempty"`
	IndexSize           int64                    `protobuf:"varint,8,opt,name=index_size,json=indexSize,proto3" json:"index_size,omitempty"`
	IndexVersion        int64                    `protobuf:"varint,9,opt,name=index_version,json=indexVersion,proto3" json:"index_version,omitempty"`
	NumRows             int64                    `protobuf:"varint,10,opt,name=num_rows,json=numRows,proto3" json:"num_rows,omitempty"`
	CurrentIndexVersion int32                    `protobuf:"varint,11,opt,name=current_index_version,json=currentIndexVersion,proto3" json:"current_index_version,omitempty"`
	// Deprecated: Marked as deprecated in segcore.proto.
	IndexStoreVersion         int64                         `protobuf:"varint,12,opt,name=index_store_version,json=indexStoreVersion,proto3" json:"index_store_version,omitempty"`
	CurrentScalarIndexVersion int32                         `protobuf:"varint,13,opt,name=current_scalar_index_version,json=currentScalarIndexVersion,proto3" json:"current_scalar_index_version,omitempty"`
	IndexStorePathVersion     indexpb.IndexStorePathVersion `protobuf:"varint,14,opt,name=index_store_path_version,json=indexStorePathVersion,proto3,enum=milvus.proto.index.IndexStorePathVersion" json:"index_store_path_version,omitempty"`
}

func (x *FieldIndexInfo) Reset() {
	*x = FieldIndexInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[11]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *FieldIndexInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FieldIndexInfo) ProtoMessage() {}

func (x *FieldIndexInfo) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[11]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FieldIndexInfo.ProtoReflect.Descriptor instead.
func (*FieldIndexInfo) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{11}
}

func (x *FieldIndexInfo) GetFieldID() int64 {
	if x != nil {
		return x.FieldID
	}
	return 0
}

// Deprecated: Marked as deprecated in segcore.proto.
func (x *FieldIndexInfo) GetEnableIndex() bool {
	if x != nil {
		return x.EnableIndex
	}
	return false
}

func (x *FieldIndexInfo) GetIndexName() string {
	if x != nil {
		return x.IndexName
	}
	return ""
}

func (x *FieldIndexInfo) GetIndexID() int64 {
	if x != nil {
		return x.IndexID
	}
	return 0
}

func (x *FieldIndexInfo) GetBuildID() int64 {
	if x != nil {
		return x.BuildID
	}
	return 0
}

func (x *FieldIndexInfo) GetIndexParams() []*commonpb.KeyValuePair {
	if x != nil {
		return x.IndexParams
	}
	return nil
}

func (x *FieldIndexInfo) GetIndexFilePaths() []string {
	if x != nil {
		return x.IndexFilePaths
	}
	return nil
}

func (x *FieldIndexInfo) GetIndexSize() int64 {
	if x != nil {
		return x.IndexSize
	}
	return 0
}

func (x *FieldIndexInfo) GetIndexVersion() int64 {
	if x != nil {
		return x.IndexVersion
	}
	return 0
}

func (x *FieldIndexInfo) GetNumRows() int64 {
	if x != nil {
		return x.NumRows
	}
	return 0
}

func (x *FieldIndexInfo) GetCurrentIndexVersion() int32 {
	if x != nil {
		return x.CurrentIndexVersion
	}
	return 0
}

// Deprecated: Marked as deprecated in segcore.proto.
func (x *FieldIndexInfo) GetIndexStoreVersion() int64 {
	if x != nil {
		return x.IndexStoreVersion
	}
	return 0
}

func (x *FieldIndexInfo) GetCurrentScalarIndexVersion() int32 {
	if x != nil {
		return x.CurrentScalarIndexVersion
	}
	return 0
}

func (x *FieldIndexInfo) GetIndexStorePathVersion() indexpb.IndexStorePathVersion {
	if x != nil {
		return x.IndexStorePathVersion
	}
	return indexpb.IndexStorePathVersion(0)
}

type SegmentLoadInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	SegmentID      int64             `protobuf:"varint,1,opt,name=segmentID,proto3" json:"segmentID,omitempty"`
	PartitionID    int64             `protobuf:"varint,2,opt,name=partitionID,proto3" json:"partitionID,omitempty"`
	CollectionID   int64             `protobuf:"varint,3,opt,name=collectionID,proto3" json:"collectionID,omitempty"`
	DbID           int64             `protobuf:"varint,4,opt,name=dbID,proto3" json:"dbID,omitempty"`
	FlushTime      int64             `protobuf:"varint,5,opt,name=flush_time,json=flushTime,proto3" json:"flush_time,omitempty"`
	BinlogPaths    []*FieldBinlog    `protobuf:"bytes,6,rep,name=binlog_paths,json=binlogPaths,proto3" json:"binlog_paths,omitempty"`
	NumOfRows      int64             `protobuf:"varint,7,opt,name=num_of_rows,json=numOfRows,proto3" json:"num_of_rows,omitempty"`
	Statslogs      []*FieldBinlog    `protobuf:"bytes,8,rep,name=statslogs,proto3" json:"statslogs,omitempty"`
	Deltalogs      []*FieldBinlog    `protobuf:"bytes,9,rep,name=deltalogs,proto3" json:"deltalogs,omitempty"`
	CompactionFrom []int64           `protobuf:"varint,10,rep,packed,name=compactionFrom,proto3" json:"compactionFrom,omitempty"` // segmentIDs compacted from
	IndexInfos     []*FieldIndexInfo `protobuf:"bytes,11,rep,name=index_infos,json=indexInfos,proto3" json:"index_infos,omitempty"`
	// Deprecated: Marked as deprecated in segcore.proto.
	SegmentSize          int64                     `protobuf:"varint,12,opt,name=segment_size,json=segmentSize,proto3" json:"segment_size,omitempty"`
	InsertChannel        string                    `protobuf:"bytes,13,opt,name=insert_channel,json=insertChannel,proto3" json:"insert_channel,omitempty"`
	ReadableVersion      int64                     `protobuf:"varint,14,opt,name=readableVersion,proto3" json:"readableVersion,omitempty"`
	StorageVersion       int64                     `protobuf:"varint,15,opt,name=storageVersion,proto3" json:"storageVersion,omitempty"`
	IsSorted             bool                      `protobuf:"varint,16,opt,name=is_sorted,json=isSorted,proto3" json:"is_sorted,omitempty"`
	TextStatsLogs        map[int64]*TextIndexStats `protobuf:"bytes,17,rep,name=textStatsLogs,proto3" json:"textStatsLogs,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Bm25Logs             []*FieldBinlog            `protobuf:"bytes,18,rep,name=bm25logs,proto3" json:"bm25logs,omitempty"`
	JsonKeyStatsLogs     map[int64]*JsonKeyStats   `protobuf:"bytes,19,rep,name=jsonKeyStatsLogs,proto3" json:"jsonKeyStatsLogs,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Priority             commonpb.LoadPriority     `protobuf:"varint,20,opt,name=priority,proto3,enum=milvus.proto.common.LoadPriority" json:"priority,omitempty"`
	ManifestPath         string                    `protobuf:"bytes,21,opt,name=manifest_path,json=manifestPath,proto3" json:"manifest_path,omitempty"`
	UseTakeForOutput     bool                      `protobuf:"varint,22,opt,name=use_take_for_output,json=useTakeForOutput,proto3" json:"use_take_for_output,omitempty"`             // when true, use take() API for output field retrieval instead of bulk_subscript
	EstimatedBytesPerRow int64                     `protobuf:"varint,23,opt,name=estimated_bytes_per_row,json=estimatedBytesPerRow,proto3" json:"estimated_bytes_per_row,omitempty"` // sampled avg memory bytes per row (from Take API); used as fallback when format metadata lacks size stats
	// commit_timestamp is the transaction timestamp for import/CDC segments.
	// When non-zero, segcore overwrites the in-memory timestamp column so all
	// MVCC/TTL/delete logic uses the commit time instead of raw row timestamps.
	CommitTimestamp uint64 `protobuf:"varint,24,opt,name=commit_timestamp,json=commitTimestamp,proto3" json:"commit_timestamp,omitempty"`
}

func (x *SegmentLoadInfo) Reset() {
	*x = SegmentLoadInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_segcore_proto_msgTypes[12]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *SegmentLoadInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SegmentLoadInfo) ProtoMessage() {}

func (x *SegmentLoadInfo) ProtoReflect() protoreflect.Message {
	mi := &file_segcore_proto_msgTypes[12]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SegmentLoadInfo.ProtoReflect.Descriptor instead.
func (*SegmentLoadInfo) Descriptor() ([]byte, []int) {
	return file_segcore_proto_rawDescGZIP(), []int{12}
}

func (x *SegmentLoadInfo) GetSegmentID() int64 {
	if x != nil {
		return x.SegmentID
	}
	return 0
}

func (x *SegmentLoadInfo) GetPartitionID() int64 {
	if x != nil {
		return x.PartitionID
	}
	return 0
}

func (x *SegmentLoadInfo) GetCollectionID() int64 {
	if x != nil {
		return x.CollectionID
	}
	return 0
}

func (x *SegmentLoadInfo) GetDbID() int64 {
	if x != nil {
		return x.DbID
	}
	return 0
}

func (x *SegmentLoadInfo) GetFlushTime() int64 {
	if x != nil {
		return x.FlushTime
	}
	return 0
}

func (x *SegmentLoadInfo) GetBinlogPaths() []*FieldBinlog {
	if x != nil {
		return x.BinlogPaths
	}
	return nil
}

func (x *SegmentLoadInfo) GetNumOfRows() int64 {
	if x != nil {
		return x.NumOfRows
	}
	return 0
}

func (x *SegmentLoadInfo) GetStatslogs() []*FieldBinlog {
	if x != nil {
		return x.Statslogs
	}
	return nil
}

func (x *SegmentLoadInfo) GetDeltalogs() []*FieldBinlog {
	if x != nil {
		return x.Deltalogs
	}
	return nil
}

func (x *SegmentLoadInfo) GetCompactionFrom() []int64 {
	if x != nil {
		return x.CompactionFrom
	}
	return nil
}

func (x *SegmentLoadInfo) GetIndexInfos() []*FieldIndexInfo {
	if x != nil {
		return x.IndexInfos
	}
	return nil
}

// Deprecated: Marked as deprecated in segcore.proto.
func (x *SegmentLoadInfo) GetSegmentSize() int64 {
	if x != nil {
		return x.SegmentSize
	}
	return 0
}

func (x *SegmentLoadInfo) GetInsertChannel() string {
	if x != nil {
		return x.InsertChannel
	}
	return ""
}

func (x *SegmentLoadInfo) GetReadableVersion() int64 {
	if x != nil {
		return x.ReadableVersion
	}
	return 0
}

func (x *SegmentLoadInfo) GetStorageVersion() int64 {
	if x != nil {
		return x.StorageVersion
	}
	return 0
}

func (x *SegmentLoadInfo) GetIsSorted() bool {
	if x != nil {
		return x.IsSorted
	}
	return false
}

func (x *SegmentLoadInfo) GetTextStatsLogs() map[int64]*TextIndexStats {
	if x != nil {
		return x.TextStatsLogs
	}
	return nil
}

func (x *SegmentLoadInfo) GetBm25Logs() []*FieldBinlog {
	if x != nil {
		return x.Bm25Logs
	}
	return nil
}

func (x *SegmentLoadInfo) GetJsonKeyStatsLogs() map[int64]*JsonKeyStats {
	if x != nil {
		return x.JsonKeyStatsLogs
	}
	return nil
}

func (x *SegmentLoadInfo) GetPriority() commonpb.LoadPriority {
	if x != nil {
		return x.Priority
	}
	return commonpb.LoadPriority(0)
}

func (x *SegmentLoadInfo) GetManifestPath() string {
	if x != nil {
		return x.ManifestPath
	}
	return ""
}

func (x *SegmentLoadInfo) GetUseTakeForOutput() bool {
	if x != nil {
		return x.UseTakeForOutput
	}
	return false
}

func (x *SegmentLoadInfo) GetEstimatedBytesPerRow() int64 {
	if x != nil {
		return x.EstimatedBytesPerRow
	}
	return 0
}

func (x *SegmentLoadInfo) GetCommitTimestamp() uint64 {
	if x != nil {
		return x.CommitTimestamp
	}
	return 0
}

var File_segcore_proto protoreflect.FileDescriptor

var file_segcore_proto_rawDesc = []byte{
	0x0a, 0x0d, 0x73, 0x65, 0x67, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
	0x14, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x73, 0x65,
	0x67, 0x63, 0x6f, 0x72, 0x65, 0x1a, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x1a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x1a, 0x11, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x22, 0xe0, 0x01, 0x0a, 0x06, 0x42, 0x69, 0x6e, 0x6c, 0x6f, 0x67, 0x12,
	0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x4e, 0x75, 0x6d,
	0x12, 0x25, 0x0a, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x66, 0x72,
	0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
	0x61, 0x6d, 0x70, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x73,
	0x74, 0x61, 0x6d, 0x70, 0x5f, 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x74,
	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x54, 0x6f, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f,
	0x67, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, 0x6f,
	0x67, 0x50, 0x61, 0x74, 0x68, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, 0x73, 0x69, 0x7a,
	0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x53, 0x69, 0x7a, 0x65,
	0x12, 0x14, 0x0a, 0x05, 0x6c, 0x6f, 0x67, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x05, 0x6c, 0x6f, 0x67, 0x49, 0x44, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79,
	0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6d, 0x65, 0x6d,
	0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x82, 0x01, 0x0a, 0x0b, 0x46, 0x69, 0x65, 0x6c,
	0x64, 0x42, 0x69, 0x6e, 0x6c, 0x6f, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x69, 0x65, 0x6c, 0x64,
	0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x49,
	0x44, 0x12, 0x36, 0x0a, 0x07, 0x62, 0x69, 0x6e, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x2e, 0x73, 0x65, 0x67, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x42, 0x69, 0x6e, 0x6c, 0x6f, 0x67,
	0x52, 0x07, 0x62, 0x69, 0x6e, 0x6c, 0x6f, 0x67, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x69,
	0x6c, 0x64, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52,
	0x0b, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x22, 0x8e, 0x02, 0x0a,
	0x0e, 0x54, 0x65, 0x78, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12,
	0x18, 0x0a, 0x07, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x07, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72,
	0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73,
	0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03,
	0x28, 0x09, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x67,
	0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6c, 0x6f, 0x67,
	0x53, 0x69, 0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x73,
	0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6d, 0x65, 0x6d, 0x6f, 0x72,
	0x79, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x44,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x44, 0x12,
	0x3f, 0x0a, 0x1c, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x61,
	0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x19, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x63,
	0x61, 0x6c, 0x61, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x08, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x61, 0x73, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x87, 0x02,
	0x0a, 0x0c, 0x4a, 0x73, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x18,
	0x0a, 0x07, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x07, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73,
	0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
	0x09, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f,
	0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x53,
	0x69, 0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x73, 0x69,
	0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79,
	0x53, 0x69, 0x7a, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x44, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x44, 0x12, 0x3a,
	0x0a, 0x1a, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73,
	0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x16, 0x6a, 0x73, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73,
	0x44, 0x61, 0x74, 0x61, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61,
	0x73, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62,
	0x61, 0x73, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x2a, 0x0a, 0x0e, 0x45, 0x6c, 0x65, 0x6d, 0x65,
	0x6e, 0x74, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, 0x64,
	0x69, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x69, 0x6e, 0x64, 0x69,
	0x63, 0x65, 0x73, 0x22, 0xc2, 0x03, 0x0a, 0x0f, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65,
	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x49, 0x44, 0x73, 0x52, 0x03,
	0x69, 0x64, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20,
	0x03, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x3f, 0x0a, 0x0b, 0x66,
	0x69, 0x65, 0x6c, 0x64, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x1e, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e,
	0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x61,
	0x52, 0x0a, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2c, 0x0a, 0x12,
	0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x5f, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x74,
	0x72, 0x69, 0x65, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x68, 0x61,
	0x73, 0x5f, 0x6d, 0x6f, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x0d, 0x68, 0x61, 0x73, 0x4d, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x72, 0x65,
	0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x12, 0x73, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42,
	0x79, 0x74, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f,
	0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x11, 0x73, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x42,
	0x79, 0x74, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f,
	0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x65, 0x6c, 0x65,
	0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x4d, 0x0a, 0x0f, 0x65, 0x6c, 0x65,
	0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x2e, 0x73, 0x65, 0x67, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e,
	0x74, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x52, 0x0e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e,
	0x74, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 0x22, 0x76, 0x0a, 0x0d, 0x4c, 0x6f, 0x61, 0x64,
	0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x69, 0x6e,
	0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x23,
	0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
	0x61, 0x6d, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x72, 0x6f, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x22, 0x6b, 0x0a, 0x0f, 0x4c, 0x6f, 0x61, 0x64, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x4d,
	0x65, 0x74, 0x61, 0x12, 0x39, 0x0a, 0x05, 0x6d, 0x65, 0x74, 0x61, 0x73, 0x18, 0x01, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x2e, 0x73, 0x65, 0x67, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4c, 0x6f, 0x61, 0x64, 0x46, 0x69,
	0x65, 0x6c, 0x64, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x05, 0x6d, 0x65, 0x74, 0x61, 0x73, 0x12, 0x1d,
	0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x03, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x6a, 0x0a,
	0x0c, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x3f, 0x0a,
	0x0b, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x2e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x61,
	0x74, 0x61, 0x52, 0x0a, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x19,
	0x0a, 0x08, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x07, 0x6e, 0x75, 0x6d, 0x52, 0x6f, 0x77, 0x73, 0x22, 0x85, 0x03, 0x0a, 0x0e, 0x46, 0x69,
	0x65, 0x6c, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07,
	0x66, 0x69, 0x65, 0x6c, 0x64, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x66,
	0x69, 0x65, 0x6c, 0x64, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
	0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x63, 0x6f,
	0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e,
	0x64, 0x65, 0x78, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x69, 0x6e, 0x64, 0x65, 0x78, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x0b, 0x74, 0x79, 0x70,
	0x65, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21,
	0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x63, 0x6f,
	0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x50, 0x61, 0x69,
	0x72, 0x52, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x44, 0x0a,
	0x0c, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x05, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c,
	0x75, 0x65, 0x50, 0x61, 0x69, 0x72, 0x52, 0x0b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x50, 0x61, 0x72,
	0x61, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x69,
	0x6e, 0x64, 0x65, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x41, 0x75,
	0x74, 0x6f, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x4d, 0x0a, 0x11, 0x75, 0x73, 0x65, 0x72, 0x5f,
	0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75,
	0x65, 0x50, 0x61, 0x69, 0x72, 0x52, 0x0f, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78,
	0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f,
	0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x49,
	0x64, 0x22, 0x88, 0x01, 0x0a, 0x13, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x49, 0x6e, 0x64, 0x65, 0x78, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x61, 0x78,
	0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x6f, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x10, 0x6d, 0x61, 0x78, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x52, 0x6f, 0x77,
	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x45, 0x0a, 0x0b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6d,
	0x65, 0x74, 0x61, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x69, 0x6c,
	0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x73, 0x65, 0x67, 0x63, 0x6f, 0x72,
	0x65, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x4d, 0x65, 0x74, 0x61,
	0x52, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4d, 0x65, 0x74, 0x61, 0x73, 0x22, 0x80, 0x05, 0x0a,
	0x0e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x49, 0x6e, 0x66, 0x6f, 0x12,
	0x18, 0x0a, 0x07, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x07, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x49, 0x44, 0x12, 0x25, 0x0a, 0x0c, 0x65, 0x6e, 0x61,
	0x62, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42,
	0x02, 0x18, 0x01, 0x52, 0x0b, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78,
	0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4e, 0x61, 0x6d, 0x65, 0x12,
	0x18, 0x0a, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x75, 0x69,
	0x6c, 0x64, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x62, 0x75, 0x69, 0x6c,
	0x64, 0x49, 0x44, 0x12, 0x44, 0x0a, 0x0c, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x70, 0x61, 0x72,
	0x61, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x69, 0x6c, 0x76,
	0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e,
	0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x50, 0x61, 0x69, 0x72, 0x52, 0x0b, 0x69, 0x6e,
	0x64, 0x65, 0x78, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x28, 0x0a, 0x10, 0x69, 0x6e, 0x64,
	0x65, 0x78, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x07, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61,
	0x74, 0x68, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x73, 0x69, 0x7a,
	0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x69,
	0x7a, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x76, 0x65, 0x72, 0x73,
	0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x69, 0x6e, 0x64, 0x65, 0x78,
	0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x75, 0x6d, 0x5f, 0x72,
	0x6f, 0x77, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6e, 0x75, 0x6d, 0x52, 0x6f,
	0x77, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e,
	0x64, 0x65, 0x78, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x13, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x56,
	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x13, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f,
	0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20,
	0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x11, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x74,
	0x6f, 0x72, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x1c, 0x63, 0x75,
	0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x5f, 0x69, 0x6e, 0x64,
	0x65, 0x78, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x19, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x49,
	0x6e, 0x64, 0x65, 0x78, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x62, 0x0a, 0x18, 0x69,
	0x6e, 0x64, 0x65, 0x78, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f,
	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e,
	0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x69, 0x6e, 0x64,
	0x65, 0x78, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x61, 0x74,
	0x68, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x15, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x53,
	0x74, 0x6f, 0x72, 0x65, 0x50, 0x61, 0x74, 0x68, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22,
	0x8a, 0x0b, 0x0a, 0x0f, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x61, 0x64, 0x49,
	0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x44,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49,
	0x44, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f,
	0x6e, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f,
	0x6e, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65,
	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x62, 0x49, 0x44, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x64, 0x62, 0x49, 0x44, 0x12, 0x1d, 0x0a, 0x0a, 0x66,
	0x6c, 0x75, 0x73, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x09, 0x66, 0x6c, 0x75, 0x73, 0x68, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x44, 0x0a, 0x0c, 0x62, 0x69,
	0x6e, 0x6c, 0x6f, 0x67, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x21, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e,
	0x73, 0x65, 0x67, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x42, 0x69, 0x6e,
	0x6c, 0x6f, 0x67, 0x52, 0x0b, 0x62, 0x69, 0x6e, 0x6c, 0x6f, 0x67, 0x50, 0x61, 0x74, 0x68, 0x73,
	0x12, 0x1e, 0x0a, 0x0b, 0x6e, 0x75, 0x6d, 0x5f, 0x6f, 0x66, 0x5f, 0x72, 0x6f, 0x77, 0x73, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x6e, 0x75, 0x6d, 0x4f, 0x66, 0x52, 0x6f, 0x77, 0x73,
	0x12, 0x3f, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x74, 0x73, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x08, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x2e, 0x73, 0x65, 0x67, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64,
	0x42, 0x69, 0x6e, 0x6c, 0x6f, 0x67, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x73, 0x6c, 0x6f, 0x67,
	0x73, 0x12, 0x3f, 0x0a, 0x09, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x09,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x2e, 0x73, 0x65, 0x67, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x46, 0x69, 0x65, 0x6c,
	0x64, 0x42, 0x69, 0x6e, 0x6c, 0x6f, 0x67, 0x52, 0x09, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x6c, 0x6f,
	0x67, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
	0x46, 0x72, 0x6f, 0x6d, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x70,
	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x45, 0x0a, 0x0b, 0x69, 0x6e,
	0x64, 0x65, 0x78, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x24, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x73,
	0x65, 0x67, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x49, 0x6e, 0x64, 0x65,
	0x78, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x49, 0x6e, 0x66, 0x6f,
	0x73, 0x12, 0x25, 0x0a, 0x0c, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x69, 0x7a,
	0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0b, 0x73, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x6e, 0x73, 0x65,
	0x72, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0d, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12,
	0x28, 0x0a, 0x0f, 0x72, 0x65, 0x61, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x72, 0x65, 0x61, 0x64, 0x61, 0x62,
	0x6c, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x74, 0x6f,
	0x72, 0x61, 0x67, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28,
	0x03, 0x52, 0x0e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
	0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x73, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x10,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x12, 0x5e,
	0x0a, 0x0d, 0x74, 0x65, 0x78, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4c, 0x6f, 0x67, 0x73, 0x18,
	0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x73, 0x65, 0x67, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x67,
	0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x61, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x54, 0x65, 0x78,
	0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4c, 0x6f, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
	0x0d, 0x74, 0x65, 0x78, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x3d,
	0x0a, 0x08, 0x62, 0x6d, 0x32, 0x35, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x21, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e,
	0x73, 0x65, 0x67, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x42, 0x69, 0x6e,
	0x6c, 0x6f, 0x67, 0x52, 0x08, 0x62, 0x6d, 0x32, 0x35, 0x6c, 0x6f, 0x67, 0x73, 0x12, 0x67, 0x0a,
	0x10, 0x6a, 0x73, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4c, 0x6f, 0x67,
	0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x73, 0x65, 0x67, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x53,
	0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x61, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x4a,
	0x73, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4c, 0x6f, 0x67, 0x73, 0x45,
	0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x6a, 0x73, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x74, 0x61,
	0x74, 0x73, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x3d, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69,
	0x74, 0x79, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75,
	0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c,
	0x6f, 0x61, 0x64, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x70, 0x72, 0x69,
	0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73,
	0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x61,
	0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, 0x2d, 0x0a, 0x13, 0x75, 0x73,
	0x65, 0x5f, 0x74, 0x61, 0x6b, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75,
	0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x75, 0x73, 0x65, 0x54, 0x61, 0x6b, 0x65,
	0x46, 0x6f, 0x72, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x35, 0x0a, 0x17, 0x65, 0x73, 0x74,
	0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72,
	0x5f, 0x72, 0x6f, 0x77, 0x18, 0x17, 0x20, 0x01, 0x28, 0x03, 0x52, 0x14, 0x65, 0x73, 0x74, 0x69,
	0x6d, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x50, 0x65, 0x72, 0x52, 0x6f, 0x77,
	0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73,
	0x74, 0x61, 0x6d, 0x70, 0x18, 0x18, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x63, 0x6f, 0x6d, 0x6d,
	0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x1a, 0x66, 0x0a, 0x12, 0x54,
	0x65, 0x78, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x4c, 0x6f, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72,
	0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03,
	0x6b, 0x65, 0x79, 0x12, 0x3a, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x2e, 0x73, 0x65, 0x67, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x49, 0x6e,
	0x64, 0x65, 0x78, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
	0x02, 0x38, 0x01, 0x1a, 0x67, 0x0a, 0x15, 0x4a, 0x73, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x74,
	0x61, 0x74, 0x73, 0x4c, 0x6f, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
	0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x38,
	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e,
	0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x73, 0x65, 0x67,
	0x63, 0x6f, 0x72, 0x65, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x74, 0x61, 0x74,
	0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x34, 0x5a, 0x32,
	0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x69, 0x6c, 0x76, 0x75,
	0x73, 0x2d, 0x69, 0x6f, 0x2f, 0x6d, 0x69, 0x6c, 0x76, 0x75, 0x73, 0x2f, 0x70, 0x6b, 0x67, 0x2f,
	0x76, 0x33, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x73, 0x65, 0x67, 0x63, 0x6f, 0x72, 0x65,
	0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_segcore_proto_rawDescOnce sync.Once
	file_segcore_proto_rawDescData = file_segcore_proto_rawDesc
)

func file_segcore_proto_rawDescGZIP() []byte {
	file_segcore_proto_rawDescOnce.Do(func() {
		file_segcore_proto_rawDescData = protoimpl.X.CompressGZIP(file_segcore_proto_rawDescData)
	})
	return file_segcore_proto_rawDescData
}

var file_segcore_proto_msgTypes = make([]protoimpl.MessageInfo, 15)
var file_segcore_proto_goTypes = []interface{}{
	(*Binlog)(nil),                     // 0: milvus.proto.segcore.Binlog
	(*FieldBinlog)(nil),                // 1: milvus.proto.segcore.FieldBinlog
	(*TextIndexStats)(nil),             // 2: milvus.proto.segcore.TextIndexStats
	(*JsonKeyStats)(nil),               // 3: milvus.proto.segcore.JsonKeyStats
	(*ElementIndices)(nil),             // 4: milvus.proto.segcore.ElementIndices
	(*RetrieveResults)(nil),            // 5: milvus.proto.segcore.RetrieveResults
	(*LoadFieldMeta)(nil),              // 6: milvus.proto.segcore.LoadFieldMeta
	(*LoadSegmentMeta)(nil),            // 7: milvus.proto.segcore.LoadSegmentMeta
	(*InsertRecord)(nil),               // 8: milvus.proto.segcore.InsertRecord
	(*FieldIndexMeta)(nil),             // 9: milvus.proto.segcore.FieldIndexMeta
	(*CollectionIndexMeta)(nil),        // 10: milvus.proto.segcore.CollectionIndexMeta
	(*FieldIndexInfo)(nil),             // 11: milvus.proto.segcore.FieldIndexInfo
	(*SegmentLoadInfo)(nil),            // 12: milvus.proto.segcore.SegmentLoadInfo
	nil,                                // 13: milvus.proto.segcore.SegmentLoadInfo.TextStatsLogsEntry
	nil,                                // 14: milvus.proto.segcore.SegmentLoadInfo.JsonKeyStatsLogsEntry
	(*schemapb.IDs)(nil),               // 15: milvus.proto.schema.IDs
	(*schemapb.FieldData)(nil),         // 16: milvus.proto.schema.FieldData
	(*commonpb.KeyValuePair)(nil),      // 17: milvus.proto.common.KeyValuePair
	(indexpb.IndexStorePathVersion)(0), // 18: milvus.proto.index.IndexStorePathVersion
	(commonpb.LoadPriority)(0),         // 19: milvus.proto.common.LoadPriority
}
var file_segcore_proto_depIdxs = []int32{
	0,  // 0: milvus.proto.segcore.FieldBinlog.binlogs:type_name -> milvus.proto.segcore.Binlog
	15, // 1: milvus.proto.segcore.RetrieveResults.ids:type_name -> milvus.proto.schema.IDs
	16, // 2: milvus.proto.segcore.RetrieveResults.fields_data:type_name -> milvus.proto.schema.FieldData
	4,  // 3: milvus.proto.segcore.RetrieveResults.element_indices:type_name -> milvus.proto.segcore.ElementIndices
	6,  // 4: milvus.proto.segcore.LoadSegmentMeta.metas:type_name -> milvus.proto.segcore.LoadFieldMeta
	16, // 5: milvus.proto.segcore.InsertRecord.fields_data:type_name -> milvus.proto.schema.FieldData
	17, // 6: milvus.proto.segcore.FieldIndexMeta.type_params:type_name -> milvus.proto.common.KeyValuePair
	17, // 7: milvus.proto.segcore.FieldIndexMeta.index_params:type_name -> milvus.proto.common.KeyValuePair
	17, // 8: milvus.proto.segcore.FieldIndexMeta.user_index_params:type_name -> milvus.proto.common.KeyValuePair
	9,  // 9: milvus.proto.segcore.CollectionIndexMeta.index_metas:type_name -> milvus.proto.segcore.FieldIndexMeta
	17, // 10: milvus.proto.segcore.FieldIndexInfo.index_params:type_name -> milvus.proto.common.KeyValuePair
	18, // 11: milvus.proto.segcore.FieldIndexInfo.index_store_path_version:type_name -> milvus.proto.index.IndexStorePathVersion
	1,  // 12: milvus.proto.segcore.SegmentLoadInfo.binlog_paths:type_name -> milvus.proto.segcore.FieldBinlog
	1,  // 13: milvus.proto.segcore.SegmentLoadInfo.statslogs:type_name -> milvus.proto.segcore.FieldBinlog
	1,  // 14: milvus.proto.segcore.SegmentLoadInfo.deltalogs:type_name -> milvus.proto.segcore.FieldBinlog
	11, // 15: milvus.proto.segcore.SegmentLoadInfo.index_infos:type_name -> milvus.proto.segcore.FieldIndexInfo
	13, // 16: milvus.proto.segcore.SegmentLoadInfo.textStatsLogs:type_name -> milvus.proto.segcore.SegmentLoadInfo.TextStatsLogsEntry
	1,  // 17: milvus.proto.segcore.SegmentLoadInfo.bm25logs:type_name -> milvus.proto.segcore.FieldBinlog
	14, // 18: milvus.proto.segcore.SegmentLoadInfo.jsonKeyStatsLogs:type_name -> milvus.proto.segcore.SegmentLoadInfo.JsonKeyStatsLogsEntry
	19, // 19: milvus.proto.segcore.SegmentLoadInfo.priority:type_name -> milvus.proto.common.LoadPriority
	2,  // 20: milvus.proto.segcore.SegmentLoadInfo.TextStatsLogsEntry.value:type_name -> milvus.proto.segcore.TextIndexStats
	3,  // 21: milvus.proto.segcore.SegmentLoadInfo.JsonKeyStatsLogsEntry.value:type_name -> milvus.proto.segcore.JsonKeyStats
	22, // [22:22] is the sub-list for method output_type
	22, // [22:22] is the sub-list for method input_type
	22, // [22:22] is the sub-list for extension type_name
	22, // [22:22] is the sub-list for extension extendee
	0,  // [0:22] is the sub-list for field type_name
}

func init() { file_segcore_proto_init() }
func file_segcore_proto_init() {
	if File_segcore_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_segcore_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Binlog); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_segcore_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FieldBinlog); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_segcore_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TextIndexStats); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_segcore_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*JsonKeyStats); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_segcore_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ElementIndices); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_segcore_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RetrieveResults); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_segcore_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LoadFieldMeta); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_segcore_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LoadSegmentMeta); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_segcore_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InsertRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_segcore_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FieldIndexMeta); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_segcore_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CollectionIndexMeta); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_segcore_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FieldIndexInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_segcore_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SegmentLoadInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_segcore_proto_rawDesc,
			NumEnums:      0,
			NumMessages:   15,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_segcore_proto_goTypes,
		DependencyIndexes: file_segcore_proto_depIdxs,
		MessageInfos:      file_segcore_proto_msgTypes,
	}.Build()
	File_segcore_proto = out.File
	file_segcore_proto_rawDesc = nil
	file_segcore_proto_goTypes = nil
	file_segcore_proto_depIdxs = nil
}
