// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.33.0
// 	protoc        v4.23.4
// source: wandb/proto/wandb_internal.proto

package service_go_proto

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	emptypb "google.golang.org/protobuf/types/known/emptypb"
	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
	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 ErrorInfo_ErrorCode int32

const (
	ErrorInfo_UNKNOWN        ErrorInfo_ErrorCode = 0
	ErrorInfo_COMMUNICATION  ErrorInfo_ErrorCode = 1
	ErrorInfo_AUTHENTICATION ErrorInfo_ErrorCode = 2
	ErrorInfo_USAGE          ErrorInfo_ErrorCode = 3
	ErrorInfo_UNSUPPORTED    ErrorInfo_ErrorCode = 4
)

// Enum value maps for ErrorInfo_ErrorCode.
var (
	ErrorInfo_ErrorCode_name = map[int32]string{
		0: "UNKNOWN",
		1: "COMMUNICATION",
		2: "AUTHENTICATION",
		3: "USAGE",
		4: "UNSUPPORTED",
	}
	ErrorInfo_ErrorCode_value = map[string]int32{
		"UNKNOWN":        0,
		"COMMUNICATION":  1,
		"AUTHENTICATION": 2,
		"USAGE":          3,
		"UNSUPPORTED":    4,
	}
)

func (x ErrorInfo_ErrorCode) Enum() *ErrorInfo_ErrorCode {
	p := new(ErrorInfo_ErrorCode)
	*p = x
	return p
}

func (x ErrorInfo_ErrorCode) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ErrorInfo_ErrorCode) Descriptor() protoreflect.EnumDescriptor {
	return file_wandb_proto_wandb_internal_proto_enumTypes[0].Descriptor()
}

func (ErrorInfo_ErrorCode) Type() protoreflect.EnumType {
	return &file_wandb_proto_wandb_internal_proto_enumTypes[0]
}

func (x ErrorInfo_ErrorCode) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ErrorInfo_ErrorCode.Descriptor instead.
func (ErrorInfo_ErrorCode) EnumDescriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{10, 0}
}

type OutputRecord_OutputType int32

const (
	OutputRecord_STDERR OutputRecord_OutputType = 0
	OutputRecord_STDOUT OutputRecord_OutputType = 1
)

// Enum value maps for OutputRecord_OutputType.
var (
	OutputRecord_OutputType_name = map[int32]string{
		0: "STDERR",
		1: "STDOUT",
	}
	OutputRecord_OutputType_value = map[string]int32{
		"STDERR": 0,
		"STDOUT": 1,
	}
)

func (x OutputRecord_OutputType) Enum() *OutputRecord_OutputType {
	p := new(OutputRecord_OutputType)
	*p = x
	return p
}

func (x OutputRecord_OutputType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (OutputRecord_OutputType) Descriptor() protoreflect.EnumDescriptor {
	return file_wandb_proto_wandb_internal_proto_enumTypes[1].Descriptor()
}

func (OutputRecord_OutputType) Type() protoreflect.EnumType {
	return &file_wandb_proto_wandb_internal_proto_enumTypes[1]
}

func (x OutputRecord_OutputType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use OutputRecord_OutputType.Descriptor instead.
func (OutputRecord_OutputType) EnumDescriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{21, 0}
}

type OutputRawRecord_OutputType int32

const (
	OutputRawRecord_STDERR OutputRawRecord_OutputType = 0
	OutputRawRecord_STDOUT OutputRawRecord_OutputType = 1
)

// Enum value maps for OutputRawRecord_OutputType.
var (
	OutputRawRecord_OutputType_name = map[int32]string{
		0: "STDERR",
		1: "STDOUT",
	}
	OutputRawRecord_OutputType_value = map[string]int32{
		"STDERR": 0,
		"STDOUT": 1,
	}
)

func (x OutputRawRecord_OutputType) Enum() *OutputRawRecord_OutputType {
	p := new(OutputRawRecord_OutputType)
	*p = x
	return p
}

func (x OutputRawRecord_OutputType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (OutputRawRecord_OutputType) Descriptor() protoreflect.EnumDescriptor {
	return file_wandb_proto_wandb_internal_proto_enumTypes[2].Descriptor()
}

func (OutputRawRecord_OutputType) Type() protoreflect.EnumType {
	return &file_wandb_proto_wandb_internal_proto_enumTypes[2]
}

func (x OutputRawRecord_OutputType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use OutputRawRecord_OutputType.Descriptor instead.
func (OutputRawRecord_OutputType) EnumDescriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{23, 0}
}

type MetricRecord_MetricGoal int32

const (
	MetricRecord_GOAL_UNSET    MetricRecord_MetricGoal = 0
	MetricRecord_GOAL_MINIMIZE MetricRecord_MetricGoal = 1
	MetricRecord_GOAL_MAXIMIZE MetricRecord_MetricGoal = 2
)

// Enum value maps for MetricRecord_MetricGoal.
var (
	MetricRecord_MetricGoal_name = map[int32]string{
		0: "GOAL_UNSET",
		1: "GOAL_MINIMIZE",
		2: "GOAL_MAXIMIZE",
	}
	MetricRecord_MetricGoal_value = map[string]int32{
		"GOAL_UNSET":    0,
		"GOAL_MINIMIZE": 1,
		"GOAL_MAXIMIZE": 2,
	}
)

func (x MetricRecord_MetricGoal) Enum() *MetricRecord_MetricGoal {
	p := new(MetricRecord_MetricGoal)
	*p = x
	return p
}

func (x MetricRecord_MetricGoal) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (MetricRecord_MetricGoal) Descriptor() protoreflect.EnumDescriptor {
	return file_wandb_proto_wandb_internal_proto_enumTypes[3].Descriptor()
}

func (MetricRecord_MetricGoal) Type() protoreflect.EnumType {
	return &file_wandb_proto_wandb_internal_proto_enumTypes[3]
}

func (x MetricRecord_MetricGoal) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use MetricRecord_MetricGoal.Descriptor instead.
func (MetricRecord_MetricGoal) EnumDescriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{25, 0}
}

type FilesItem_PolicyType int32

const (
	// Upload the file immediately.
	FilesItem_NOW FilesItem_PolicyType = 0
	// Upload the file during run.finish().
	FilesItem_END FilesItem_PolicyType = 1
	// Re-upload the file continuously as it changes.
	FilesItem_LIVE FilesItem_PolicyType = 2
)

// Enum value maps for FilesItem_PolicyType.
var (
	FilesItem_PolicyType_name = map[int32]string{
		0: "NOW",
		1: "END",
		2: "LIVE",
	}
	FilesItem_PolicyType_value = map[string]int32{
		"NOW":  0,
		"END":  1,
		"LIVE": 2,
	}
)

func (x FilesItem_PolicyType) Enum() *FilesItem_PolicyType {
	p := new(FilesItem_PolicyType)
	*p = x
	return p
}

func (x FilesItem_PolicyType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (FilesItem_PolicyType) Descriptor() protoreflect.EnumDescriptor {
	return file_wandb_proto_wandb_internal_proto_enumTypes[4].Descriptor()
}

func (FilesItem_PolicyType) Type() protoreflect.EnumType {
	return &file_wandb_proto_wandb_internal_proto_enumTypes[4]
}

func (x FilesItem_PolicyType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use FilesItem_PolicyType.Descriptor instead.
func (FilesItem_PolicyType) EnumDescriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{37, 0}
}

type FilesItem_FileType int32

const (
	FilesItem_OTHER    FilesItem_FileType = 0
	FilesItem_WANDB    FilesItem_FileType = 1
	FilesItem_MEDIA    FilesItem_FileType = 2
	FilesItem_ARTIFACT FilesItem_FileType = 3
)

// Enum value maps for FilesItem_FileType.
var (
	FilesItem_FileType_name = map[int32]string{
		0: "OTHER",
		1: "WANDB",
		2: "MEDIA",
		3: "ARTIFACT",
	}
	FilesItem_FileType_value = map[string]int32{
		"OTHER":    0,
		"WANDB":    1,
		"MEDIA":    2,
		"ARTIFACT": 3,
	}
)

func (x FilesItem_FileType) Enum() *FilesItem_FileType {
	p := new(FilesItem_FileType)
	*p = x
	return p
}

func (x FilesItem_FileType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (FilesItem_FileType) Descriptor() protoreflect.EnumDescriptor {
	return file_wandb_proto_wandb_internal_proto_enumTypes[5].Descriptor()
}

func (FilesItem_FileType) Type() protoreflect.EnumType {
	return &file_wandb_proto_wandb_internal_proto_enumTypes[5]
}

func (x FilesItem_FileType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use FilesItem_FileType.Descriptor instead.
func (FilesItem_FileType) EnumDescriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{37, 1}
}

type StatsRecord_StatsType int32

const (
	StatsRecord_SYSTEM StatsRecord_StatsType = 0
)

// Enum value maps for StatsRecord_StatsType.
var (
	StatsRecord_StatsType_name = map[int32]string{
		0: "SYSTEM",
	}
	StatsRecord_StatsType_value = map[string]int32{
		"SYSTEM": 0,
	}
)

func (x StatsRecord_StatsType) Enum() *StatsRecord_StatsType {
	p := new(StatsRecord_StatsType)
	*p = x
	return p
}

func (x StatsRecord_StatsType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (StatsRecord_StatsType) Descriptor() protoreflect.EnumDescriptor {
	return file_wandb_proto_wandb_internal_proto_enumTypes[6].Descriptor()
}

func (StatsRecord_StatsType) Type() protoreflect.EnumType {
	return &file_wandb_proto_wandb_internal_proto_enumTypes[6]
}

func (x StatsRecord_StatsType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use StatsRecord_StatsType.Descriptor instead.
func (StatsRecord_StatsType) EnumDescriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{39, 0}
}

type DeferRequest_DeferState int32

const (
	DeferRequest_BEGIN                 DeferRequest_DeferState = 0
	DeferRequest_FLUSH_RUN             DeferRequest_DeferState = 1
	DeferRequest_FLUSH_STATS           DeferRequest_DeferState = 2
	DeferRequest_FLUSH_PARTIAL_HISTORY DeferRequest_DeferState = 3
	DeferRequest_FLUSH_TB              DeferRequest_DeferState = 4
	DeferRequest_FLUSH_SUM             DeferRequest_DeferState = 5
	DeferRequest_FLUSH_DEBOUNCER       DeferRequest_DeferState = 6
	DeferRequest_FLUSH_OUTPUT          DeferRequest_DeferState = 7
	DeferRequest_FLUSH_JOB             DeferRequest_DeferState = 8
	DeferRequest_FLUSH_DIR             DeferRequest_DeferState = 9
	DeferRequest_FLUSH_FP              DeferRequest_DeferState = 10
	DeferRequest_JOIN_FP               DeferRequest_DeferState = 11
	DeferRequest_FLUSH_FS              DeferRequest_DeferState = 12
	DeferRequest_FLUSH_FINAL           DeferRequest_DeferState = 13
	DeferRequest_END                   DeferRequest_DeferState = 14
)

// Enum value maps for DeferRequest_DeferState.
var (
	DeferRequest_DeferState_name = map[int32]string{
		0:  "BEGIN",
		1:  "FLUSH_RUN",
		2:  "FLUSH_STATS",
		3:  "FLUSH_PARTIAL_HISTORY",
		4:  "FLUSH_TB",
		5:  "FLUSH_SUM",
		6:  "FLUSH_DEBOUNCER",
		7:  "FLUSH_OUTPUT",
		8:  "FLUSH_JOB",
		9:  "FLUSH_DIR",
		10: "FLUSH_FP",
		11: "JOIN_FP",
		12: "FLUSH_FS",
		13: "FLUSH_FINAL",
		14: "END",
	}
	DeferRequest_DeferState_value = map[string]int32{
		"BEGIN":                 0,
		"FLUSH_RUN":             1,
		"FLUSH_STATS":           2,
		"FLUSH_PARTIAL_HISTORY": 3,
		"FLUSH_TB":              4,
		"FLUSH_SUM":             5,
		"FLUSH_DEBOUNCER":       6,
		"FLUSH_OUTPUT":          7,
		"FLUSH_JOB":             8,
		"FLUSH_DIR":             9,
		"FLUSH_FP":              10,
		"JOIN_FP":               11,
		"FLUSH_FS":              12,
		"FLUSH_FINAL":           13,
		"END":                   14,
	}
)

func (x DeferRequest_DeferState) Enum() *DeferRequest_DeferState {
	p := new(DeferRequest_DeferState)
	*p = x
	return p
}

func (x DeferRequest_DeferState) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (DeferRequest_DeferState) Descriptor() protoreflect.EnumDescriptor {
	return file_wandb_proto_wandb_internal_proto_enumTypes[7].Descriptor()
}

func (DeferRequest_DeferState) Type() protoreflect.EnumType {
	return &file_wandb_proto_wandb_internal_proto_enumTypes[7]
}

func (x DeferRequest_DeferState) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use DeferRequest_DeferState.Descriptor instead.
func (DeferRequest_DeferState) EnumDescriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{56, 0}
}

type FileTransferInfoRequest_TransferType int32

const (
	FileTransferInfoRequest_Upload   FileTransferInfoRequest_TransferType = 0
	FileTransferInfoRequest_Download FileTransferInfoRequest_TransferType = 1
)

// Enum value maps for FileTransferInfoRequest_TransferType.
var (
	FileTransferInfoRequest_TransferType_name = map[int32]string{
		0: "Upload",
		1: "Download",
	}
	FileTransferInfoRequest_TransferType_value = map[string]int32{
		"Upload":   0,
		"Download": 1,
	}
)

func (x FileTransferInfoRequest_TransferType) Enum() *FileTransferInfoRequest_TransferType {
	p := new(FileTransferInfoRequest_TransferType)
	*p = x
	return p
}

func (x FileTransferInfoRequest_TransferType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (FileTransferInfoRequest_TransferType) Descriptor() protoreflect.EnumDescriptor {
	return file_wandb_proto_wandb_internal_proto_enumTypes[8].Descriptor()
}

func (FileTransferInfoRequest_TransferType) Type() protoreflect.EnumType {
	return &file_wandb_proto_wandb_internal_proto_enumTypes[8]
}

func (x FileTransferInfoRequest_TransferType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use FileTransferInfoRequest_TransferType.Descriptor instead.
func (FileTransferInfoRequest_TransferType) EnumDescriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{97, 0}
}

// Record: joined record for message passing and persistence
type Record struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Num int64 `protobuf:"varint,1,opt,name=num,proto3" json:"num,omitempty"`
	// Types that are assignable to RecordType:
	//
	//	*Record_History
	//	*Record_Summary
	//	*Record_Output
	//	*Record_Config
	//	*Record_Files
	//	*Record_Stats
	//	*Record_Artifact
	//	*Record_Tbrecord
	//	*Record_Alert
	//	*Record_Telemetry
	//	*Record_Metric
	//	*Record_OutputRaw
	//	*Record_Run
	//	*Record_Exit
	//	*Record_Final
	//	*Record_Header
	//	*Record_Footer
	//	*Record_Preempting
	//	*Record_NoopLinkArtifact
	//	*Record_UseArtifact
	//	*Record_Request
	RecordType isRecord_RecordType `protobuf_oneof:"record_type"`
	Control    *Control            `protobuf:"bytes,16,opt,name=control,proto3" json:"control,omitempty"`
	Uuid       string              `protobuf:"bytes,19,opt,name=uuid,proto3" json:"uuid,omitempty"`
	XInfo      *XRecordInfo        `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

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

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

func (*Record) ProtoMessage() {}

func (x *Record) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 Record.ProtoReflect.Descriptor instead.
func (*Record) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{0}
}

func (x *Record) GetNum() int64 {
	if x != nil {
		return x.Num
	}
	return 0
}

func (m *Record) GetRecordType() isRecord_RecordType {
	if m != nil {
		return m.RecordType
	}
	return nil
}

func (x *Record) GetHistory() *HistoryRecord {
	if x, ok := x.GetRecordType().(*Record_History); ok {
		return x.History
	}
	return nil
}

func (x *Record) GetSummary() *SummaryRecord {
	if x, ok := x.GetRecordType().(*Record_Summary); ok {
		return x.Summary
	}
	return nil
}

func (x *Record) GetOutput() *OutputRecord {
	if x, ok := x.GetRecordType().(*Record_Output); ok {
		return x.Output
	}
	return nil
}

func (x *Record) GetConfig() *ConfigRecord {
	if x, ok := x.GetRecordType().(*Record_Config); ok {
		return x.Config
	}
	return nil
}

func (x *Record) GetFiles() *FilesRecord {
	if x, ok := x.GetRecordType().(*Record_Files); ok {
		return x.Files
	}
	return nil
}

func (x *Record) GetStats() *StatsRecord {
	if x, ok := x.GetRecordType().(*Record_Stats); ok {
		return x.Stats
	}
	return nil
}

func (x *Record) GetArtifact() *ArtifactRecord {
	if x, ok := x.GetRecordType().(*Record_Artifact); ok {
		return x.Artifact
	}
	return nil
}

func (x *Record) GetTbrecord() *TBRecord {
	if x, ok := x.GetRecordType().(*Record_Tbrecord); ok {
		return x.Tbrecord
	}
	return nil
}

func (x *Record) GetAlert() *AlertRecord {
	if x, ok := x.GetRecordType().(*Record_Alert); ok {
		return x.Alert
	}
	return nil
}

func (x *Record) GetTelemetry() *TelemetryRecord {
	if x, ok := x.GetRecordType().(*Record_Telemetry); ok {
		return x.Telemetry
	}
	return nil
}

func (x *Record) GetMetric() *MetricRecord {
	if x, ok := x.GetRecordType().(*Record_Metric); ok {
		return x.Metric
	}
	return nil
}

func (x *Record) GetOutputRaw() *OutputRawRecord {
	if x, ok := x.GetRecordType().(*Record_OutputRaw); ok {
		return x.OutputRaw
	}
	return nil
}

func (x *Record) GetRun() *RunRecord {
	if x, ok := x.GetRecordType().(*Record_Run); ok {
		return x.Run
	}
	return nil
}

func (x *Record) GetExit() *RunExitRecord {
	if x, ok := x.GetRecordType().(*Record_Exit); ok {
		return x.Exit
	}
	return nil
}

func (x *Record) GetFinal() *FinalRecord {
	if x, ok := x.GetRecordType().(*Record_Final); ok {
		return x.Final
	}
	return nil
}

func (x *Record) GetHeader() *HeaderRecord {
	if x, ok := x.GetRecordType().(*Record_Header); ok {
		return x.Header
	}
	return nil
}

func (x *Record) GetFooter() *FooterRecord {
	if x, ok := x.GetRecordType().(*Record_Footer); ok {
		return x.Footer
	}
	return nil
}

func (x *Record) GetPreempting() *RunPreemptingRecord {
	if x, ok := x.GetRecordType().(*Record_Preempting); ok {
		return x.Preempting
	}
	return nil
}

func (x *Record) GetNoopLinkArtifact() *emptypb.Empty {
	if x, ok := x.GetRecordType().(*Record_NoopLinkArtifact); ok {
		return x.NoopLinkArtifact
	}
	return nil
}

func (x *Record) GetUseArtifact() *UseArtifactRecord {
	if x, ok := x.GetRecordType().(*Record_UseArtifact); ok {
		return x.UseArtifact
	}
	return nil
}

func (x *Record) GetRequest() *Request {
	if x, ok := x.GetRecordType().(*Record_Request); ok {
		return x.Request
	}
	return nil
}

func (x *Record) GetControl() *Control {
	if x != nil {
		return x.Control
	}
	return nil
}

func (x *Record) GetUuid() string {
	if x != nil {
		return x.Uuid
	}
	return ""
}

func (x *Record) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type isRecord_RecordType interface {
	isRecord_RecordType()
}

type Record_History struct {
	// Low numbers for more frequent data
	History *HistoryRecord `protobuf:"bytes,2,opt,name=history,proto3,oneof"`
}

type Record_Summary struct {
	Summary *SummaryRecord `protobuf:"bytes,3,opt,name=summary,proto3,oneof"`
}

type Record_Output struct {
	Output *OutputRecord `protobuf:"bytes,4,opt,name=output,proto3,oneof"`
}

type Record_Config struct {
	Config *ConfigRecord `protobuf:"bytes,5,opt,name=config,proto3,oneof"`
}

type Record_Files struct {
	Files *FilesRecord `protobuf:"bytes,6,opt,name=files,proto3,oneof"`
}

type Record_Stats struct {
	Stats *StatsRecord `protobuf:"bytes,7,opt,name=stats,proto3,oneof"`
}

type Record_Artifact struct {
	Artifact *ArtifactRecord `protobuf:"bytes,8,opt,name=artifact,proto3,oneof"`
}

type Record_Tbrecord struct {
	Tbrecord *TBRecord `protobuf:"bytes,9,opt,name=tbrecord,proto3,oneof"`
}

type Record_Alert struct {
	Alert *AlertRecord `protobuf:"bytes,10,opt,name=alert,proto3,oneof"`
}

type Record_Telemetry struct {
	Telemetry *TelemetryRecord `protobuf:"bytes,11,opt,name=telemetry,proto3,oneof"`
}

type Record_Metric struct {
	Metric *MetricRecord `protobuf:"bytes,12,opt,name=metric,proto3,oneof"`
}

type Record_OutputRaw struct {
	OutputRaw *OutputRawRecord `protobuf:"bytes,13,opt,name=output_raw,json=outputRaw,proto3,oneof"`
}

type Record_Run struct {
	// Higher numbers for less frequent data
	Run *RunRecord `protobuf:"bytes,17,opt,name=run,proto3,oneof"`
}

type Record_Exit struct {
	Exit *RunExitRecord `protobuf:"bytes,18,opt,name=exit,proto3,oneof"`
}

type Record_Final struct {
	Final *FinalRecord `protobuf:"bytes,20,opt,name=final,proto3,oneof"`
}

type Record_Header struct {
	Header *HeaderRecord `protobuf:"bytes,21,opt,name=header,proto3,oneof"`
}

type Record_Footer struct {
	Footer *FooterRecord `protobuf:"bytes,22,opt,name=footer,proto3,oneof"`
}

type Record_Preempting struct {
	Preempting *RunPreemptingRecord `protobuf:"bytes,23,opt,name=preempting,proto3,oneof"`
}

type Record_NoopLinkArtifact struct {
	// Removed but kept to avoid panics in `wandb sync`.
	NoopLinkArtifact *emptypb.Empty `protobuf:"bytes,24,opt,name=noop_link_artifact,json=noopLinkArtifact,proto3,oneof"`
}

type Record_UseArtifact struct {
	UseArtifact *UseArtifactRecord `protobuf:"bytes,25,opt,name=use_artifact,json=useArtifact,proto3,oneof"`
}

type Record_Request struct {
	// request field does not belong here longterm
	Request *Request `protobuf:"bytes,100,opt,name=request,proto3,oneof"`
}

func (*Record_History) isRecord_RecordType() {}

func (*Record_Summary) isRecord_RecordType() {}

func (*Record_Output) isRecord_RecordType() {}

func (*Record_Config) isRecord_RecordType() {}

func (*Record_Files) isRecord_RecordType() {}

func (*Record_Stats) isRecord_RecordType() {}

func (*Record_Artifact) isRecord_RecordType() {}

func (*Record_Tbrecord) isRecord_RecordType() {}

func (*Record_Alert) isRecord_RecordType() {}

func (*Record_Telemetry) isRecord_RecordType() {}

func (*Record_Metric) isRecord_RecordType() {}

func (*Record_OutputRaw) isRecord_RecordType() {}

func (*Record_Run) isRecord_RecordType() {}

func (*Record_Exit) isRecord_RecordType() {}

func (*Record_Final) isRecord_RecordType() {}

func (*Record_Header) isRecord_RecordType() {}

func (*Record_Footer) isRecord_RecordType() {}

func (*Record_Preempting) isRecord_RecordType() {}

func (*Record_NoopLinkArtifact) isRecord_RecordType() {}

func (*Record_UseArtifact) isRecord_RecordType() {}

func (*Record_Request) isRecord_RecordType() {}

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

	ReqResp      bool   `protobuf:"varint,1,opt,name=req_resp,json=reqResp,proto3" json:"req_resp,omitempty"`               // record is expecting a result
	Local        bool   `protobuf:"varint,2,opt,name=local,proto3" json:"local,omitempty"`                                  // should not be persisted or synchronized
	RelayId      string `protobuf:"bytes,3,opt,name=relay_id,json=relayId,proto3" json:"relay_id,omitempty"`                // used by service transport to identify correct stream
	MailboxSlot  string `protobuf:"bytes,4,opt,name=mailbox_slot,json=mailboxSlot,proto3" json:"mailbox_slot,omitempty"`    // mailbox slot
	AlwaysSend   bool   `protobuf:"varint,5,opt,name=always_send,json=alwaysSend,proto3" json:"always_send,omitempty"`      // message to sender
	FlowControl  bool   `protobuf:"varint,6,opt,name=flow_control,json=flowControl,proto3" json:"flow_control,omitempty"`   // message should be passed to flow control
	EndOffset    int64  `protobuf:"varint,7,opt,name=end_offset,json=endOffset,proto3" json:"end_offset,omitempty"`         // end of message offset of this written message
	ConnectionId string `protobuf:"bytes,8,opt,name=connection_id,json=connectionId,proto3" json:"connection_id,omitempty"` // connection id
}

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

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

func (*Control) ProtoMessage() {}

func (x *Control) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 Control.ProtoReflect.Descriptor instead.
func (*Control) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{1}
}

func (x *Control) GetReqResp() bool {
	if x != nil {
		return x.ReqResp
	}
	return false
}

func (x *Control) GetLocal() bool {
	if x != nil {
		return x.Local
	}
	return false
}

func (x *Control) GetRelayId() string {
	if x != nil {
		return x.RelayId
	}
	return ""
}

func (x *Control) GetMailboxSlot() string {
	if x != nil {
		return x.MailboxSlot
	}
	return ""
}

func (x *Control) GetAlwaysSend() bool {
	if x != nil {
		return x.AlwaysSend
	}
	return false
}

func (x *Control) GetFlowControl() bool {
	if x != nil {
		return x.FlowControl
	}
	return false
}

func (x *Control) GetEndOffset() int64 {
	if x != nil {
		return x.EndOffset
	}
	return 0
}

func (x *Control) GetConnectionId() string {
	if x != nil {
		return x.ConnectionId
	}
	return ""
}

// Result: all results
type Result struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Types that are assignable to ResultType:
	//
	//	*Result_RunResult
	//	*Result_ExitResult
	//	*Result_LogResult
	//	*Result_SummaryResult
	//	*Result_OutputResult
	//	*Result_ConfigResult
	//	*Result_Response
	ResultType isResult_ResultType `protobuf_oneof:"result_type"`
	Control    *Control            `protobuf:"bytes,16,opt,name=control,proto3" json:"control,omitempty"`
	Uuid       string              `protobuf:"bytes,24,opt,name=uuid,proto3" json:"uuid,omitempty"`
	XInfo      *XResultInfo        `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

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

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

func (*Result) ProtoMessage() {}

func (x *Result) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 Result.ProtoReflect.Descriptor instead.
func (*Result) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{2}
}

func (m *Result) GetResultType() isResult_ResultType {
	if m != nil {
		return m.ResultType
	}
	return nil
}

func (x *Result) GetRunResult() *RunUpdateResult {
	if x, ok := x.GetResultType().(*Result_RunResult); ok {
		return x.RunResult
	}
	return nil
}

func (x *Result) GetExitResult() *RunExitResult {
	if x, ok := x.GetResultType().(*Result_ExitResult); ok {
		return x.ExitResult
	}
	return nil
}

func (x *Result) GetLogResult() *HistoryResult {
	if x, ok := x.GetResultType().(*Result_LogResult); ok {
		return x.LogResult
	}
	return nil
}

func (x *Result) GetSummaryResult() *SummaryResult {
	if x, ok := x.GetResultType().(*Result_SummaryResult); ok {
		return x.SummaryResult
	}
	return nil
}

func (x *Result) GetOutputResult() *OutputResult {
	if x, ok := x.GetResultType().(*Result_OutputResult); ok {
		return x.OutputResult
	}
	return nil
}

func (x *Result) GetConfigResult() *ConfigResult {
	if x, ok := x.GetResultType().(*Result_ConfigResult); ok {
		return x.ConfigResult
	}
	return nil
}

func (x *Result) GetResponse() *Response {
	if x, ok := x.GetResultType().(*Result_Response); ok {
		return x.Response
	}
	return nil
}

func (x *Result) GetControl() *Control {
	if x != nil {
		return x.Control
	}
	return nil
}

func (x *Result) GetUuid() string {
	if x != nil {
		return x.Uuid
	}
	return ""
}

func (x *Result) GetXInfo() *XResultInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type isResult_ResultType interface {
	isResult_ResultType()
}

type Result_RunResult struct {
	RunResult *RunUpdateResult `protobuf:"bytes,17,opt,name=run_result,json=runResult,proto3,oneof"`
}

type Result_ExitResult struct {
	ExitResult *RunExitResult `protobuf:"bytes,18,opt,name=exit_result,json=exitResult,proto3,oneof"`
}

type Result_LogResult struct {
	LogResult *HistoryResult `protobuf:"bytes,20,opt,name=log_result,json=logResult,proto3,oneof"`
}

type Result_SummaryResult struct {
	SummaryResult *SummaryResult `protobuf:"bytes,21,opt,name=summary_result,json=summaryResult,proto3,oneof"`
}

type Result_OutputResult struct {
	OutputResult *OutputResult `protobuf:"bytes,22,opt,name=output_result,json=outputResult,proto3,oneof"`
}

type Result_ConfigResult struct {
	ConfigResult *ConfigResult `protobuf:"bytes,23,opt,name=config_result,json=configResult,proto3,oneof"`
}

type Result_Response struct {
	// response field does not belong here longterm
	Response *Response `protobuf:"bytes,100,opt,name=response,proto3,oneof"`
}

func (*Result_RunResult) isResult_ResultType() {}

func (*Result_ExitResult) isResult_ResultType() {}

func (*Result_LogResult) isResult_ResultType() {}

func (*Result_SummaryResult) isResult_ResultType() {}

func (*Result_OutputResult) isResult_ResultType() {}

func (*Result_ConfigResult) isResult_ResultType() {}

func (*Result_Response) isResult_ResultType() {}

// FinalRecord
type FinalRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRecordInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

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

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

func (*FinalRecord) ProtoMessage() {}

func (x *FinalRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 FinalRecord.ProtoReflect.Descriptor instead.
func (*FinalRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{3}
}

func (x *FinalRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

// Version definition
type VersionInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// The version of the SDK backend that produced the data
	Producer string `protobuf:"bytes,1,opt,name=producer,proto3" json:"producer,omitempty"`
	// Minimum version of the wandb server that can read the data
	MinConsumer string       `protobuf:"bytes,2,opt,name=min_consumer,json=minConsumer,proto3" json:"min_consumer,omitempty"`
	XInfo       *XRecordInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

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

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

func (*VersionInfo) ProtoMessage() {}

func (x *VersionInfo) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 VersionInfo.ProtoReflect.Descriptor instead.
func (*VersionInfo) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{4}
}

func (x *VersionInfo) GetProducer() string {
	if x != nil {
		return x.Producer
	}
	return ""
}

func (x *VersionInfo) GetMinConsumer() string {
	if x != nil {
		return x.MinConsumer
	}
	return ""
}

func (x *VersionInfo) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

// HeaderRecord
type HeaderRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	VersionInfo *VersionInfo `protobuf:"bytes,1,opt,name=version_info,json=versionInfo,proto3" json:"version_info,omitempty"`
	XInfo       *XRecordInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

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

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

func (*HeaderRecord) ProtoMessage() {}

func (x *HeaderRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 HeaderRecord.ProtoReflect.Descriptor instead.
func (*HeaderRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{5}
}

func (x *HeaderRecord) GetVersionInfo() *VersionInfo {
	if x != nil {
		return x.VersionInfo
	}
	return nil
}

func (x *HeaderRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

// FooterRecord
type FooterRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRecordInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

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

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

func (*FooterRecord) ProtoMessage() {}

func (x *FooterRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 FooterRecord.ProtoReflect.Descriptor instead.
func (*FooterRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{6}
}

func (x *FooterRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

// RunRecord: wandb/sdk/wandb_run/Run
type RunRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	RunId        string                 `protobuf:"bytes,1,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"`
	Entity       string                 `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"`
	Project      string                 `protobuf:"bytes,3,opt,name=project,proto3" json:"project,omitempty"`
	Config       *ConfigRecord          `protobuf:"bytes,4,opt,name=config,proto3" json:"config,omitempty"`
	Summary      *SummaryRecord         `protobuf:"bytes,5,opt,name=summary,proto3" json:"summary,omitempty"`
	RunGroup     string                 `protobuf:"bytes,6,opt,name=run_group,json=runGroup,proto3" json:"run_group,omitempty"`
	JobType      string                 `protobuf:"bytes,7,opt,name=job_type,json=jobType,proto3" json:"job_type,omitempty"`
	DisplayName  string                 `protobuf:"bytes,8,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	Notes        string                 `protobuf:"bytes,9,opt,name=notes,proto3" json:"notes,omitempty"`
	Tags         []string               `protobuf:"bytes,10,rep,name=tags,proto3" json:"tags,omitempty"`
	Settings     *SettingsRecord        `protobuf:"bytes,11,opt,name=settings,proto3" json:"settings,omitempty"`
	SweepId      string                 `protobuf:"bytes,12,opt,name=sweep_id,json=sweepId,proto3" json:"sweep_id,omitempty"`
	Host         string                 `protobuf:"bytes,13,opt,name=host,proto3" json:"host,omitempty"`
	StartingStep int64                  `protobuf:"varint,14,opt,name=starting_step,json=startingStep,proto3" json:"starting_step,omitempty"`
	StorageId    string                 `protobuf:"bytes,16,opt,name=storage_id,json=storageId,proto3" json:"storage_id,omitempty"`
	StartTime    *timestamppb.Timestamp `protobuf:"bytes,17,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
	Resumed      bool                   `protobuf:"varint,18,opt,name=resumed,proto3" json:"resumed,omitempty"`
	Telemetry    *TelemetryRecord       `protobuf:"bytes,19,opt,name=telemetry,proto3" json:"telemetry,omitempty"`
	Runtime      int32                  `protobuf:"varint,20,opt,name=runtime,proto3" json:"runtime,omitempty"`
	Git          *GitRepoRecord         `protobuf:"bytes,21,opt,name=git,proto3" json:"git,omitempty"`
	Forked       bool                   `protobuf:"varint,22,opt,name=forked,proto3" json:"forked,omitempty"`
	XInfo        *XRecordInfo           `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

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

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

func (*RunRecord) ProtoMessage() {}

func (x *RunRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 RunRecord.ProtoReflect.Descriptor instead.
func (*RunRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{7}
}

func (x *RunRecord) GetRunId() string {
	if x != nil {
		return x.RunId
	}
	return ""
}

func (x *RunRecord) GetEntity() string {
	if x != nil {
		return x.Entity
	}
	return ""
}

func (x *RunRecord) GetProject() string {
	if x != nil {
		return x.Project
	}
	return ""
}

func (x *RunRecord) GetConfig() *ConfigRecord {
	if x != nil {
		return x.Config
	}
	return nil
}

func (x *RunRecord) GetSummary() *SummaryRecord {
	if x != nil {
		return x.Summary
	}
	return nil
}

func (x *RunRecord) GetRunGroup() string {
	if x != nil {
		return x.RunGroup
	}
	return ""
}

func (x *RunRecord) GetJobType() string {
	if x != nil {
		return x.JobType
	}
	return ""
}

func (x *RunRecord) GetDisplayName() string {
	if x != nil {
		return x.DisplayName
	}
	return ""
}

func (x *RunRecord) GetNotes() string {
	if x != nil {
		return x.Notes
	}
	return ""
}

func (x *RunRecord) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *RunRecord) GetSettings() *SettingsRecord {
	if x != nil {
		return x.Settings
	}
	return nil
}

func (x *RunRecord) GetSweepId() string {
	if x != nil {
		return x.SweepId
	}
	return ""
}

func (x *RunRecord) GetHost() string {
	if x != nil {
		return x.Host
	}
	return ""
}

func (x *RunRecord) GetStartingStep() int64 {
	if x != nil {
		return x.StartingStep
	}
	return 0
}

func (x *RunRecord) GetStorageId() string {
	if x != nil {
		return x.StorageId
	}
	return ""
}

func (x *RunRecord) GetStartTime() *timestamppb.Timestamp {
	if x != nil {
		return x.StartTime
	}
	return nil
}

func (x *RunRecord) GetResumed() bool {
	if x != nil {
		return x.Resumed
	}
	return false
}

func (x *RunRecord) GetTelemetry() *TelemetryRecord {
	if x != nil {
		return x.Telemetry
	}
	return nil
}

func (x *RunRecord) GetRuntime() int32 {
	if x != nil {
		return x.Runtime
	}
	return 0
}

func (x *RunRecord) GetGit() *GitRepoRecord {
	if x != nil {
		return x.Git
	}
	return nil
}

func (x *RunRecord) GetForked() bool {
	if x != nil {
		return x.Forked
	}
	return false
}

func (x *RunRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	RemoteUrl string `protobuf:"bytes,1,opt,name=remote_url,json=remote,proto3" json:"remote_url,omitempty"`
	Commit    string `protobuf:"bytes,2,opt,name=commit,proto3" json:"commit,omitempty"`
}

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

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

func (*GitRepoRecord) ProtoMessage() {}

func (x *GitRepoRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 GitRepoRecord.ProtoReflect.Descriptor instead.
func (*GitRepoRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{8}
}

func (x *GitRepoRecord) GetRemoteUrl() string {
	if x != nil {
		return x.RemoteUrl
	}
	return ""
}

func (x *GitRepoRecord) GetCommit() string {
	if x != nil {
		return x.Commit
	}
	return ""
}

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

	Run   *RunRecord `protobuf:"bytes,1,opt,name=run,proto3" json:"run,omitempty"`
	Error *ErrorInfo `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
}

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

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

func (*RunUpdateResult) ProtoMessage() {}

func (x *RunUpdateResult) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 RunUpdateResult.ProtoReflect.Descriptor instead.
func (*RunUpdateResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{9}
}

func (x *RunUpdateResult) GetRun() *RunRecord {
	if x != nil {
		return x.Run
	}
	return nil
}

func (x *RunUpdateResult) GetError() *ErrorInfo {
	if x != nil {
		return x.Error
	}
	return nil
}

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

	Message string              `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
	Code    ErrorInfo_ErrorCode `protobuf:"varint,2,opt,name=code,proto3,enum=wandb_internal.ErrorInfo_ErrorCode" json:"code,omitempty"`
}

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

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

func (*ErrorInfo) ProtoMessage() {}

func (x *ErrorInfo) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 ErrorInfo.ProtoReflect.Descriptor instead.
func (*ErrorInfo) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{10}
}

func (x *ErrorInfo) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

func (x *ErrorInfo) GetCode() ErrorInfo_ErrorCode {
	if x != nil {
		return x.Code
	}
	return ErrorInfo_UNKNOWN
}

// RunExitRecord: exit status of process
type RunExitRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ExitCode int32        `protobuf:"varint,1,opt,name=exit_code,json=exitCode,proto3" json:"exit_code,omitempty"`
	Runtime  int32        `protobuf:"varint,2,opt,name=runtime,proto3" json:"runtime,omitempty"`
	XInfo    *XRecordInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

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

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

func (*RunExitRecord) ProtoMessage() {}

func (x *RunExitRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 RunExitRecord.ProtoReflect.Descriptor instead.
func (*RunExitRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{11}
}

func (x *RunExitRecord) GetExitCode() int32 {
	if x != nil {
		return x.ExitCode
	}
	return 0
}

func (x *RunExitRecord) GetRuntime() int32 {
	if x != nil {
		return x.Runtime
	}
	return 0
}

func (x *RunExitRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type RunExitResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*RunExitResult) ProtoMessage() {}

func (x *RunExitResult) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_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 RunExitResult.ProtoReflect.Descriptor instead.
func (*RunExitResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{12}
}

// RunPreemptingRecord: run being preempted
type RunPreemptingRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRecordInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *RunPreemptingRecord) Reset() {
	*x = RunPreemptingRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[13]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RunPreemptingRecord) ProtoMessage() {}

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

// Deprecated: Use RunPreemptingRecord.ProtoReflect.Descriptor instead.
func (*RunPreemptingRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{13}
}

func (x *RunPreemptingRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type RunPreemptingResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *RunPreemptingResult) Reset() {
	*x = RunPreemptingResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[14]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RunPreemptingResult) ProtoMessage() {}

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

// Deprecated: Use RunPreemptingResult.ProtoReflect.Descriptor instead.
func (*RunPreemptingResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{14}
}

// SettingsRecord: wandb/sdk/wandb_settings/Settings
type SettingsRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Item  []*SettingsItem `protobuf:"bytes,1,rep,name=item,proto3" json:"item,omitempty"`
	XInfo *XRecordInfo    `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *SettingsRecord) Reset() {
	*x = SettingsRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[15]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SettingsRecord) ProtoMessage() {}

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

// Deprecated: Use SettingsRecord.ProtoReflect.Descriptor instead.
func (*SettingsRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{15}
}

func (x *SettingsRecord) GetItem() []*SettingsItem {
	if x != nil {
		return x.Item
	}
	return nil
}

func (x *SettingsRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	Key       string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	ValueJson string `protobuf:"bytes,16,opt,name=value_json,json=valueJson,proto3" json:"value_json,omitempty"`
}

func (x *SettingsItem) Reset() {
	*x = SettingsItem{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[16]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SettingsItem) ProtoMessage() {}

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

// Deprecated: Use SettingsItem.ProtoReflect.Descriptor instead.
func (*SettingsItem) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{16}
}

func (x *SettingsItem) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

func (x *SettingsItem) GetValueJson() string {
	if x != nil {
		return x.ValueJson
	}
	return ""
}

// HistoryRecord: wandb/sdk/wandb_history/History
type HistoryStep struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Num int64 `protobuf:"varint,1,opt,name=num,proto3" json:"num,omitempty"`
}

func (x *HistoryStep) Reset() {
	*x = HistoryStep{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[17]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*HistoryStep) ProtoMessage() {}

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

// Deprecated: Use HistoryStep.ProtoReflect.Descriptor instead.
func (*HistoryStep) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{17}
}

func (x *HistoryStep) GetNum() int64 {
	if x != nil {
		return x.Num
	}
	return 0
}

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

	Item  []*HistoryItem `protobuf:"bytes,1,rep,name=item,proto3" json:"item,omitempty"`
	Step  *HistoryStep   `protobuf:"bytes,2,opt,name=step,proto3" json:"step,omitempty"`
	XInfo *XRecordInfo   `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *HistoryRecord) Reset() {
	*x = HistoryRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[18]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*HistoryRecord) ProtoMessage() {}

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

// Deprecated: Use HistoryRecord.ProtoReflect.Descriptor instead.
func (*HistoryRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{18}
}

func (x *HistoryRecord) GetItem() []*HistoryItem {
	if x != nil {
		return x.Item
	}
	return nil
}

func (x *HistoryRecord) GetStep() *HistoryStep {
	if x != nil {
		return x.Step
	}
	return nil
}

func (x *HistoryRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

// HistoryItem:
//
// key and nested_key are mutually exclusive. Only one of them should be set.
// key is supposedly more performant than nested_key, so nested_key should be
// only used for nested keys.
type HistoryItem struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Key       string   `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	NestedKey []string `protobuf:"bytes,2,rep,name=nested_key,json=nestedKey,proto3" json:"nested_key,omitempty"`
	ValueJson string   `protobuf:"bytes,16,opt,name=value_json,json=valueJson,proto3" json:"value_json,omitempty"`
}

func (x *HistoryItem) Reset() {
	*x = HistoryItem{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[19]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*HistoryItem) ProtoMessage() {}

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

// Deprecated: Use HistoryItem.ProtoReflect.Descriptor instead.
func (*HistoryItem) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{19}
}

func (x *HistoryItem) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

func (x *HistoryItem) GetNestedKey() []string {
	if x != nil {
		return x.NestedKey
	}
	return nil
}

func (x *HistoryItem) GetValueJson() string {
	if x != nil {
		return x.ValueJson
	}
	return ""
}

type HistoryResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *HistoryResult) Reset() {
	*x = HistoryResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[20]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*HistoryResult) ProtoMessage() {}

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

// Deprecated: Use HistoryResult.ProtoReflect.Descriptor instead.
func (*HistoryResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{20}
}

// OutputRecord: console output
type OutputRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OutputType OutputRecord_OutputType `protobuf:"varint,1,opt,name=output_type,json=outputType,proto3,enum=wandb_internal.OutputRecord_OutputType" json:"output_type,omitempty"`
	Timestamp  *timestamppb.Timestamp  `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Line       string                  `protobuf:"bytes,3,opt,name=line,proto3" json:"line,omitempty"`
	XInfo      *XRecordInfo            `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *OutputRecord) Reset() {
	*x = OutputRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[21]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*OutputRecord) ProtoMessage() {}

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

// Deprecated: Use OutputRecord.ProtoReflect.Descriptor instead.
func (*OutputRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{21}
}

func (x *OutputRecord) GetOutputType() OutputRecord_OutputType {
	if x != nil {
		return x.OutputType
	}
	return OutputRecord_STDERR
}

func (x *OutputRecord) GetTimestamp() *timestamppb.Timestamp {
	if x != nil {
		return x.Timestamp
	}
	return nil
}

func (x *OutputRecord) GetLine() string {
	if x != nil {
		return x.Line
	}
	return ""
}

func (x *OutputRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type OutputResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *OutputResult) Reset() {
	*x = OutputResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[22]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*OutputResult) ProtoMessage() {}

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

// Deprecated: Use OutputResult.ProtoReflect.Descriptor instead.
func (*OutputResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{22}
}

// OutputRawRecord: raw console output
type OutputRawRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	OutputType OutputRawRecord_OutputType `protobuf:"varint,1,opt,name=output_type,json=outputType,proto3,enum=wandb_internal.OutputRawRecord_OutputType" json:"output_type,omitempty"`
	Timestamp  *timestamppb.Timestamp     `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Line       string                     `protobuf:"bytes,3,opt,name=line,proto3" json:"line,omitempty"`
	XInfo      *XRecordInfo               `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *OutputRawRecord) Reset() {
	*x = OutputRawRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[23]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*OutputRawRecord) ProtoMessage() {}

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

// Deprecated: Use OutputRawRecord.ProtoReflect.Descriptor instead.
func (*OutputRawRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{23}
}

func (x *OutputRawRecord) GetOutputType() OutputRawRecord_OutputType {
	if x != nil {
		return x.OutputType
	}
	return OutputRawRecord_STDERR
}

func (x *OutputRawRecord) GetTimestamp() *timestamppb.Timestamp {
	if x != nil {
		return x.Timestamp
	}
	return nil
}

func (x *OutputRawRecord) GetLine() string {
	if x != nil {
		return x.Line
	}
	return ""
}

func (x *OutputRawRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type OutputRawResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *OutputRawResult) Reset() {
	*x = OutputRawResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[24]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*OutputRawResult) ProtoMessage() {}

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

// Deprecated: Use OutputRawResult.ProtoReflect.Descriptor instead.
func (*OutputRawResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{24}
}

// MetricRecord: wandb/sdk/wandb_metric/Metric
type MetricRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// only name or globname is set
	Name     string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	GlobName string `protobuf:"bytes,2,opt,name=glob_name,json=globName,proto3" json:"glob_name,omitempty"`
	// step metric index can be used instead of step_metric when
	// MetricRecord is encoded in a list of MetricRecords
	StepMetric      string                  `protobuf:"bytes,4,opt,name=step_metric,json=stepMetric,proto3" json:"step_metric,omitempty"`
	StepMetricIndex int32                   `protobuf:"varint,5,opt,name=step_metric_index,json=stepMetricIndex,proto3" json:"step_metric_index,omitempty"` // one-based array index
	Options         *MetricOptions          `protobuf:"bytes,6,opt,name=options,proto3" json:"options,omitempty"`
	Summary         *MetricSummary          `protobuf:"bytes,7,opt,name=summary,proto3" json:"summary,omitempty"`
	Goal            MetricRecord_MetricGoal `protobuf:"varint,8,opt,name=goal,proto3,enum=wandb_internal.MetricRecord_MetricGoal" json:"goal,omitempty"`
	XControl        *MetricControl          `protobuf:"bytes,9,opt,name=_control,json=Control,proto3" json:"_control,omitempty"`
	XInfo           *XRecordInfo            `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *MetricRecord) Reset() {
	*x = MetricRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[25]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MetricRecord) ProtoMessage() {}

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

// Deprecated: Use MetricRecord.ProtoReflect.Descriptor instead.
func (*MetricRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{25}
}

func (x *MetricRecord) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *MetricRecord) GetGlobName() string {
	if x != nil {
		return x.GlobName
	}
	return ""
}

func (x *MetricRecord) GetStepMetric() string {
	if x != nil {
		return x.StepMetric
	}
	return ""
}

func (x *MetricRecord) GetStepMetricIndex() int32 {
	if x != nil {
		return x.StepMetricIndex
	}
	return 0
}

func (x *MetricRecord) GetOptions() *MetricOptions {
	if x != nil {
		return x.Options
	}
	return nil
}

func (x *MetricRecord) GetSummary() *MetricSummary {
	if x != nil {
		return x.Summary
	}
	return nil
}

func (x *MetricRecord) GetGoal() MetricRecord_MetricGoal {
	if x != nil {
		return x.Goal
	}
	return MetricRecord_GOAL_UNSET
}

func (x *MetricRecord) GetXControl() *MetricControl {
	if x != nil {
		return x.XControl
	}
	return nil
}

func (x *MetricRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type MetricResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *MetricResult) Reset() {
	*x = MetricResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[26]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MetricResult) ProtoMessage() {}

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

// Deprecated: Use MetricResult.ProtoReflect.Descriptor instead.
func (*MetricResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{26}
}

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

	StepSync bool `protobuf:"varint,1,opt,name=step_sync,json=stepSync,proto3" json:"step_sync,omitempty"`
	Hidden   bool `protobuf:"varint,2,opt,name=hidden,proto3" json:"hidden,omitempty"`
	Defined  bool `protobuf:"varint,3,opt,name=defined,proto3" json:"defined,omitempty"` // metric explicitly defined (not from glob match or step metric)
}

func (x *MetricOptions) Reset() {
	*x = MetricOptions{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[27]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MetricOptions) ProtoMessage() {}

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

// Deprecated: Use MetricOptions.ProtoReflect.Descriptor instead.
func (*MetricOptions) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{27}
}

func (x *MetricOptions) GetStepSync() bool {
	if x != nil {
		return x.StepSync
	}
	return false
}

func (x *MetricOptions) GetHidden() bool {
	if x != nil {
		return x.Hidden
	}
	return false
}

func (x *MetricOptions) GetDefined() bool {
	if x != nil {
		return x.Defined
	}
	return false
}

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

	Overwrite bool `protobuf:"varint,1,opt,name=overwrite,proto3" json:"overwrite,omitempty"`
}

func (x *MetricControl) Reset() {
	*x = MetricControl{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[28]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MetricControl) ProtoMessage() {}

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

// Deprecated: Use MetricControl.ProtoReflect.Descriptor instead.
func (*MetricControl) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{28}
}

func (x *MetricControl) GetOverwrite() bool {
	if x != nil {
		return x.Overwrite
	}
	return false
}

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

	Min  bool `protobuf:"varint,1,opt,name=min,proto3" json:"min,omitempty"`
	Max  bool `protobuf:"varint,2,opt,name=max,proto3" json:"max,omitempty"`
	Mean bool `protobuf:"varint,3,opt,name=mean,proto3" json:"mean,omitempty"`
	Best bool `protobuf:"varint,4,opt,name=best,proto3" json:"best,omitempty"`
	Last bool `protobuf:"varint,5,opt,name=last,proto3" json:"last,omitempty"`
	None bool `protobuf:"varint,6,opt,name=none,proto3" json:"none,omitempty"`
	Copy bool `protobuf:"varint,7,opt,name=copy,proto3" json:"copy,omitempty"`
}

func (x *MetricSummary) Reset() {
	*x = MetricSummary{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[29]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MetricSummary) ProtoMessage() {}

func (x *MetricSummary) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[29]
	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 MetricSummary.ProtoReflect.Descriptor instead.
func (*MetricSummary) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{29}
}

func (x *MetricSummary) GetMin() bool {
	if x != nil {
		return x.Min
	}
	return false
}

func (x *MetricSummary) GetMax() bool {
	if x != nil {
		return x.Max
	}
	return false
}

func (x *MetricSummary) GetMean() bool {
	if x != nil {
		return x.Mean
	}
	return false
}

func (x *MetricSummary) GetBest() bool {
	if x != nil {
		return x.Best
	}
	return false
}

func (x *MetricSummary) GetLast() bool {
	if x != nil {
		return x.Last
	}
	return false
}

func (x *MetricSummary) GetNone() bool {
	if x != nil {
		return x.None
	}
	return false
}

func (x *MetricSummary) GetCopy() bool {
	if x != nil {
		return x.Copy
	}
	return false
}

// ConfigRecord: wandb/sdk/wandb_config/Config
type ConfigRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Update []*ConfigItem `protobuf:"bytes,1,rep,name=update,proto3" json:"update,omitempty"`
	Remove []*ConfigItem `protobuf:"bytes,2,rep,name=remove,proto3" json:"remove,omitempty"`
	XInfo  *XRecordInfo  `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *ConfigRecord) Reset() {
	*x = ConfigRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[30]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ConfigRecord) ProtoMessage() {}

func (x *ConfigRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[30]
	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 ConfigRecord.ProtoReflect.Descriptor instead.
func (*ConfigRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{30}
}

func (x *ConfigRecord) GetUpdate() []*ConfigItem {
	if x != nil {
		return x.Update
	}
	return nil
}

func (x *ConfigRecord) GetRemove() []*ConfigItem {
	if x != nil {
		return x.Remove
	}
	return nil
}

func (x *ConfigRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

// ConfigItem:
//
// key and nested_key are mutually exclusive. Only one of them should be set.
// key is supposedly more performant than nested_key, so nested_key should be
// only used for nested keys.
type ConfigItem struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Key       string   `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	NestedKey []string `protobuf:"bytes,2,rep,name=nested_key,json=nestedKey,proto3" json:"nested_key,omitempty"`
	ValueJson string   `protobuf:"bytes,16,opt,name=value_json,json=valueJson,proto3" json:"value_json,omitempty"`
}

func (x *ConfigItem) Reset() {
	*x = ConfigItem{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[31]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ConfigItem) ProtoMessage() {}

func (x *ConfigItem) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[31]
	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 ConfigItem.ProtoReflect.Descriptor instead.
func (*ConfigItem) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{31}
}

func (x *ConfigItem) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

func (x *ConfigItem) GetNestedKey() []string {
	if x != nil {
		return x.NestedKey
	}
	return nil
}

func (x *ConfigItem) GetValueJson() string {
	if x != nil {
		return x.ValueJson
	}
	return ""
}

type ConfigResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ConfigResult) Reset() {
	*x = ConfigResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[32]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ConfigResult) ProtoMessage() {}

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

// Deprecated: Use ConfigResult.ProtoReflect.Descriptor instead.
func (*ConfigResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{32}
}

// SummaryRecord: wandb/sdk/wandb_summary/Summary
type SummaryRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Update []*SummaryItem `protobuf:"bytes,1,rep,name=update,proto3" json:"update,omitempty"`
	Remove []*SummaryItem `protobuf:"bytes,2,rep,name=remove,proto3" json:"remove,omitempty"`
	XInfo  *XRecordInfo   `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *SummaryRecord) Reset() {
	*x = SummaryRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[33]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SummaryRecord) ProtoMessage() {}

func (x *SummaryRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[33]
	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 SummaryRecord.ProtoReflect.Descriptor instead.
func (*SummaryRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{33}
}

func (x *SummaryRecord) GetUpdate() []*SummaryItem {
	if x != nil {
		return x.Update
	}
	return nil
}

func (x *SummaryRecord) GetRemove() []*SummaryItem {
	if x != nil {
		return x.Remove
	}
	return nil
}

func (x *SummaryRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

// SummaryItem:
//
// key and nested_key are mutually exclusive. Only one of them should be set.
// key is supposedly more performant than nested_key, so nested_key should be
// only used for nested keys.
type SummaryItem struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Key       string   `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	NestedKey []string `protobuf:"bytes,2,rep,name=nested_key,json=nestedKey,proto3" json:"nested_key,omitempty"`
	ValueJson string   `protobuf:"bytes,16,opt,name=value_json,json=valueJson,proto3" json:"value_json,omitempty"`
}

func (x *SummaryItem) Reset() {
	*x = SummaryItem{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[34]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SummaryItem) ProtoMessage() {}

func (x *SummaryItem) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[34]
	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 SummaryItem.ProtoReflect.Descriptor instead.
func (*SummaryItem) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{34}
}

func (x *SummaryItem) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

func (x *SummaryItem) GetNestedKey() []string {
	if x != nil {
		return x.NestedKey
	}
	return nil
}

func (x *SummaryItem) GetValueJson() string {
	if x != nil {
		return x.ValueJson
	}
	return ""
}

type SummaryResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *SummaryResult) Reset() {
	*x = SummaryResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[35]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SummaryResult) ProtoMessage() {}

func (x *SummaryResult) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[35]
	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 SummaryResult.ProtoReflect.Descriptor instead.
func (*SummaryResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{35}
}

// Files added to a run, such as through run.save().
type FilesRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Files []*FilesItem `protobuf:"bytes,1,rep,name=files,proto3" json:"files,omitempty"`
	XInfo *XRecordInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *FilesRecord) Reset() {
	*x = FilesRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[36]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FilesRecord) ProtoMessage() {}

func (x *FilesRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[36]
	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 FilesRecord.ProtoReflect.Descriptor instead.
func (*FilesRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{36}
}

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

func (x *FilesRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

// One or more files being saved with a run.
type FilesItem struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// A path or Unix glob relative to the W&B files directory.
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	// When to upload the file.
	Policy FilesItem_PolicyType `protobuf:"varint,2,opt,name=policy,proto3,enum=wandb_internal.FilesItem_PolicyType" json:"policy,omitempty"`
	// What kind of file it is.
	Type FilesItem_FileType `protobuf:"varint,3,opt,name=type,proto3,enum=wandb_internal.FilesItem_FileType" json:"type,omitempty"`
}

func (x *FilesItem) Reset() {
	*x = FilesItem{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[37]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FilesItem) ProtoMessage() {}

func (x *FilesItem) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[37]
	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 FilesItem.ProtoReflect.Descriptor instead.
func (*FilesItem) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{37}
}

func (x *FilesItem) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

func (x *FilesItem) GetPolicy() FilesItem_PolicyType {
	if x != nil {
		return x.Policy
	}
	return FilesItem_NOW
}

func (x *FilesItem) GetType() FilesItem_FileType {
	if x != nil {
		return x.Type
	}
	return FilesItem_OTHER
}

type FilesResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *FilesResult) Reset() {
	*x = FilesResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[38]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FilesResult) ProtoMessage() {}

func (x *FilesResult) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[38]
	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 FilesResult.ProtoReflect.Descriptor instead.
func (*FilesResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{38}
}

// StatsRecord: system metrics
type StatsRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	StatsType StatsRecord_StatsType  `protobuf:"varint,1,opt,name=stats_type,json=statsType,proto3,enum=wandb_internal.StatsRecord_StatsType" json:"stats_type,omitempty"`
	Timestamp *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Item      []*StatsItem           `protobuf:"bytes,3,rep,name=item,proto3" json:"item,omitempty"`
	XInfo     *XRecordInfo           `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *StatsRecord) Reset() {
	*x = StatsRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[39]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*StatsRecord) ProtoMessage() {}

func (x *StatsRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[39]
	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 StatsRecord.ProtoReflect.Descriptor instead.
func (*StatsRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{39}
}

func (x *StatsRecord) GetStatsType() StatsRecord_StatsType {
	if x != nil {
		return x.StatsType
	}
	return StatsRecord_SYSTEM
}

func (x *StatsRecord) GetTimestamp() *timestamppb.Timestamp {
	if x != nil {
		return x.Timestamp
	}
	return nil
}

func (x *StatsRecord) GetItem() []*StatsItem {
	if x != nil {
		return x.Item
	}
	return nil
}

func (x *StatsRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	Key       string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	ValueJson string `protobuf:"bytes,16,opt,name=value_json,json=valueJson,proto3" json:"value_json,omitempty"`
}

func (x *StatsItem) Reset() {
	*x = StatsItem{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[40]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*StatsItem) ProtoMessage() {}

func (x *StatsItem) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[40]
	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 StatsItem.ProtoReflect.Descriptor instead.
func (*StatsItem) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{40}
}

func (x *StatsItem) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

func (x *StatsItem) GetValueJson() string {
	if x != nil {
		return x.ValueJson
	}
	return ""
}

// ArtifactRecord: track artifacts
type ArtifactRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	RunId              string            `protobuf:"bytes,1,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"`
	Project            string            `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
	Entity             string            `protobuf:"bytes,3,opt,name=entity,proto3" json:"entity,omitempty"`
	Type               string            `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"`
	Name               string            `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"`
	Digest             string            `protobuf:"bytes,6,opt,name=digest,proto3" json:"digest,omitempty"`
	Description        string            `protobuf:"bytes,7,opt,name=description,proto3" json:"description,omitempty"`
	Metadata           string            `protobuf:"bytes,8,opt,name=metadata,proto3" json:"metadata,omitempty"`
	UserCreated        bool              `protobuf:"varint,9,opt,name=user_created,json=userCreated,proto3" json:"user_created,omitempty"`
	UseAfterCommit     bool              `protobuf:"varint,10,opt,name=use_after_commit,json=useAfterCommit,proto3" json:"use_after_commit,omitempty"`
	Aliases            []string          `protobuf:"bytes,11,rep,name=aliases,proto3" json:"aliases,omitempty"`
	Manifest           *ArtifactManifest `protobuf:"bytes,12,opt,name=manifest,proto3" json:"manifest,omitempty"`
	DistributedId      string            `protobuf:"bytes,13,opt,name=distributed_id,json=distributedId,proto3" json:"distributed_id,omitempty"`
	Finalize           bool              `protobuf:"varint,14,opt,name=finalize,proto3" json:"finalize,omitempty"`
	ClientId           string            `protobuf:"bytes,15,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"`
	SequenceClientId   string            `protobuf:"bytes,16,opt,name=sequence_client_id,json=sequenceClientId,proto3" json:"sequence_client_id,omitempty"`
	BaseId             string            `protobuf:"bytes,17,opt,name=base_id,json=baseId,proto3" json:"base_id,omitempty"`
	TtlDurationSeconds int64             `protobuf:"varint,18,opt,name=ttl_duration_seconds,json=ttlDurationSeconds,proto3" json:"ttl_duration_seconds,omitempty"`
	Tags               []string          `protobuf:"bytes,19,rep,name=tags,proto3" json:"tags,omitempty"`
	IncrementalBeta1   bool              `protobuf:"varint,100,opt,name=incremental_beta1,json=incrementalBeta1,proto3" json:"incremental_beta1,omitempty"`
	XInfo              *XRecordInfo      `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *ArtifactRecord) Reset() {
	*x = ArtifactRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[41]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ArtifactRecord) ProtoMessage() {}

func (x *ArtifactRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[41]
	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 ArtifactRecord.ProtoReflect.Descriptor instead.
func (*ArtifactRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{41}
}

func (x *ArtifactRecord) GetRunId() string {
	if x != nil {
		return x.RunId
	}
	return ""
}

func (x *ArtifactRecord) GetProject() string {
	if x != nil {
		return x.Project
	}
	return ""
}

func (x *ArtifactRecord) GetEntity() string {
	if x != nil {
		return x.Entity
	}
	return ""
}

func (x *ArtifactRecord) GetType() string {
	if x != nil {
		return x.Type
	}
	return ""
}

func (x *ArtifactRecord) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ArtifactRecord) GetDigest() string {
	if x != nil {
		return x.Digest
	}
	return ""
}

func (x *ArtifactRecord) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ArtifactRecord) GetMetadata() string {
	if x != nil {
		return x.Metadata
	}
	return ""
}

func (x *ArtifactRecord) GetUserCreated() bool {
	if x != nil {
		return x.UserCreated
	}
	return false
}

func (x *ArtifactRecord) GetUseAfterCommit() bool {
	if x != nil {
		return x.UseAfterCommit
	}
	return false
}

func (x *ArtifactRecord) GetAliases() []string {
	if x != nil {
		return x.Aliases
	}
	return nil
}

func (x *ArtifactRecord) GetManifest() *ArtifactManifest {
	if x != nil {
		return x.Manifest
	}
	return nil
}

func (x *ArtifactRecord) GetDistributedId() string {
	if x != nil {
		return x.DistributedId
	}
	return ""
}

func (x *ArtifactRecord) GetFinalize() bool {
	if x != nil {
		return x.Finalize
	}
	return false
}

func (x *ArtifactRecord) GetClientId() string {
	if x != nil {
		return x.ClientId
	}
	return ""
}

func (x *ArtifactRecord) GetSequenceClientId() string {
	if x != nil {
		return x.SequenceClientId
	}
	return ""
}

func (x *ArtifactRecord) GetBaseId() string {
	if x != nil {
		return x.BaseId
	}
	return ""
}

func (x *ArtifactRecord) GetTtlDurationSeconds() int64 {
	if x != nil {
		return x.TtlDurationSeconds
	}
	return 0
}

func (x *ArtifactRecord) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ArtifactRecord) GetIncrementalBeta1() bool {
	if x != nil {
		return x.IncrementalBeta1
	}
	return false
}

func (x *ArtifactRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	Version             int32                      `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
	StoragePolicy       string                     `protobuf:"bytes,2,opt,name=storage_policy,json=storagePolicy,proto3" json:"storage_policy,omitempty"`
	StoragePolicyConfig []*StoragePolicyConfigItem `protobuf:"bytes,3,rep,name=storage_policy_config,json=storagePolicyConfig,proto3" json:"storage_policy_config,omitempty"`
	// Only one of {contents, manifest_file_path} should be set.
	Contents []*ArtifactManifestEntry `protobuf:"bytes,4,rep,name=contents,proto3" json:"contents,omitempty"`
	// `manifest_file_path` is used for manifests that approach the 2GiB message limit.
	// It should point to a gzipped, line-delimited JSON file containing manifest entries.
	ManifestFilePath string `protobuf:"bytes,5,opt,name=manifest_file_path,json=manifestFilePath,proto3" json:"manifest_file_path,omitempty"`
}

func (x *ArtifactManifest) Reset() {
	*x = ArtifactManifest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[42]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ArtifactManifest) ProtoMessage() {}

func (x *ArtifactManifest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[42]
	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 ArtifactManifest.ProtoReflect.Descriptor instead.
func (*ArtifactManifest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{42}
}

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

func (x *ArtifactManifest) GetStoragePolicy() string {
	if x != nil {
		return x.StoragePolicy
	}
	return ""
}

func (x *ArtifactManifest) GetStoragePolicyConfig() []*StoragePolicyConfigItem {
	if x != nil {
		return x.StoragePolicyConfig
	}
	return nil
}

func (x *ArtifactManifest) GetContents() []*ArtifactManifestEntry {
	if x != nil {
		return x.Contents
	}
	return nil
}

func (x *ArtifactManifest) GetManifestFilePath() string {
	if x != nil {
		return x.ManifestFilePath
	}
	return ""
}

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

	Path            string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	Digest          string `protobuf:"bytes,2,opt,name=digest,proto3" json:"digest,omitempty"`
	Ref             string `protobuf:"bytes,3,opt,name=ref,proto3" json:"ref,omitempty"`
	Size            int64  `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
	Mimetype        string `protobuf:"bytes,5,opt,name=mimetype,proto3" json:"mimetype,omitempty"`
	LocalPath       string `protobuf:"bytes,6,opt,name=local_path,json=localPath,proto3" json:"local_path,omitempty"`
	BirthArtifactId string `protobuf:"bytes,7,opt,name=birth_artifact_id,json=birthArtifactId,proto3" json:"birth_artifact_id,omitempty"`
	// Whether to avoid copying/moving files to the cache while uploading.
	SkipCache bool         `protobuf:"varint,8,opt,name=skip_cache,json=skipCache,proto3" json:"skip_cache,omitempty"`
	Extra     []*ExtraItem `protobuf:"bytes,16,rep,name=extra,proto3" json:"extra,omitempty"`
}

func (x *ArtifactManifestEntry) Reset() {
	*x = ArtifactManifestEntry{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[43]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ArtifactManifestEntry) ProtoMessage() {}

func (x *ArtifactManifestEntry) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[43]
	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 ArtifactManifestEntry.ProtoReflect.Descriptor instead.
func (*ArtifactManifestEntry) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{43}
}

func (x *ArtifactManifestEntry) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

func (x *ArtifactManifestEntry) GetDigest() string {
	if x != nil {
		return x.Digest
	}
	return ""
}

func (x *ArtifactManifestEntry) GetRef() string {
	if x != nil {
		return x.Ref
	}
	return ""
}

func (x *ArtifactManifestEntry) GetSize() int64 {
	if x != nil {
		return x.Size
	}
	return 0
}

func (x *ArtifactManifestEntry) GetMimetype() string {
	if x != nil {
		return x.Mimetype
	}
	return ""
}

func (x *ArtifactManifestEntry) GetLocalPath() string {
	if x != nil {
		return x.LocalPath
	}
	return ""
}

func (x *ArtifactManifestEntry) GetBirthArtifactId() string {
	if x != nil {
		return x.BirthArtifactId
	}
	return ""
}

func (x *ArtifactManifestEntry) GetSkipCache() bool {
	if x != nil {
		return x.SkipCache
	}
	return false
}

func (x *ArtifactManifestEntry) GetExtra() []*ExtraItem {
	if x != nil {
		return x.Extra
	}
	return nil
}

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

	Key       string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	ValueJson string `protobuf:"bytes,2,opt,name=value_json,json=valueJson,proto3" json:"value_json,omitempty"`
}

func (x *ExtraItem) Reset() {
	*x = ExtraItem{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[44]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ExtraItem) ProtoMessage() {}

func (x *ExtraItem) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[44]
	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 ExtraItem.ProtoReflect.Descriptor instead.
func (*ExtraItem) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{44}
}

func (x *ExtraItem) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

func (x *ExtraItem) GetValueJson() string {
	if x != nil {
		return x.ValueJson
	}
	return ""
}

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

	Key       string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	ValueJson string `protobuf:"bytes,2,opt,name=value_json,json=valueJson,proto3" json:"value_json,omitempty"`
}

func (x *StoragePolicyConfigItem) Reset() {
	*x = StoragePolicyConfigItem{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[45]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*StoragePolicyConfigItem) ProtoMessage() {}

func (x *StoragePolicyConfigItem) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[45]
	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 StoragePolicyConfigItem.ProtoReflect.Descriptor instead.
func (*StoragePolicyConfigItem) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{45}
}

func (x *StoragePolicyConfigItem) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

func (x *StoragePolicyConfigItem) GetValueJson() string {
	if x != nil {
		return x.ValueJson
	}
	return ""
}

type ArtifactResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ArtifactResult) Reset() {
	*x = ArtifactResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[46]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ArtifactResult) ProtoMessage() {}

func (x *ArtifactResult) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[46]
	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 ArtifactResult.ProtoReflect.Descriptor instead.
func (*ArtifactResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{46}
}

type LinkArtifactResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *LinkArtifactResult) Reset() {
	*x = LinkArtifactResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[47]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*LinkArtifactResult) ProtoMessage() {}

func (x *LinkArtifactResult) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[47]
	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 LinkArtifactResult.ProtoReflect.Descriptor instead.
func (*LinkArtifactResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{47}
}

// LinkArtifactRequest: link artifact to portfolio
type LinkArtifactRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ClientId         string       `protobuf:"bytes,1,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"`
	ServerId         string       `protobuf:"bytes,2,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
	PortfolioName    string       `protobuf:"bytes,3,opt,name=portfolio_name,json=portfolioName,proto3" json:"portfolio_name,omitempty"`
	PortfolioEntity  string       `protobuf:"bytes,4,opt,name=portfolio_entity,json=portfolioEntity,proto3" json:"portfolio_entity,omitempty"`
	PortfolioProject string       `protobuf:"bytes,5,opt,name=portfolio_project,json=portfolioProject,proto3" json:"portfolio_project,omitempty"`
	PortfolioAliases []string     `protobuf:"bytes,6,rep,name=portfolio_aliases,json=portfolioAliases,proto3" json:"portfolio_aliases,omitempty"`
	XInfo            *XRecordInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *LinkArtifactRequest) Reset() {
	*x = LinkArtifactRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[48]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*LinkArtifactRequest) ProtoMessage() {}

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

// Deprecated: Use LinkArtifactRequest.ProtoReflect.Descriptor instead.
func (*LinkArtifactRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{48}
}

func (x *LinkArtifactRequest) GetClientId() string {
	if x != nil {
		return x.ClientId
	}
	return ""
}

func (x *LinkArtifactRequest) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *LinkArtifactRequest) GetPortfolioName() string {
	if x != nil {
		return x.PortfolioName
	}
	return ""
}

func (x *LinkArtifactRequest) GetPortfolioEntity() string {
	if x != nil {
		return x.PortfolioEntity
	}
	return ""
}

func (x *LinkArtifactRequest) GetPortfolioProject() string {
	if x != nil {
		return x.PortfolioProject
	}
	return ""
}

func (x *LinkArtifactRequest) GetPortfolioAliases() []string {
	if x != nil {
		return x.PortfolioAliases
	}
	return nil
}

func (x *LinkArtifactRequest) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	ErrorMessage string `protobuf:"bytes,1,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
}

func (x *LinkArtifactResponse) Reset() {
	*x = LinkArtifactResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[49]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*LinkArtifactResponse) ProtoMessage() {}

func (x *LinkArtifactResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[49]
	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 LinkArtifactResponse.ProtoReflect.Descriptor instead.
func (*LinkArtifactResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{49}
}

func (x *LinkArtifactResponse) GetErrorMessage() string {
	if x != nil {
		return x.ErrorMessage
	}
	return ""
}

// Indicates a directory of TensorBoard tfevents files to sync with the run.
type TBRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRecordInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
	// A directory containing tfevents files to watch.
	//
	// This may be an absolute or relative path.
	LogDir string `protobuf:"bytes,1,opt,name=log_dir,json=logDir,proto3" json:"log_dir,omitempty"`
	// An optional path to an ancestor of `log_dir` used for namespacing.
	//
	// This may be an absolute or relative path.
	//
	// If set, then each event from tfevents files under `log_dir` is
	// prefixed by the file's path relative to this directory. Additionally,
	// if `save` is true, then each file's upload path is also its path
	// relative to `root_dir`.
	//
	// For example, with `root_dir` set as "tb/logs" and `log_dir` as
	// "tb/logs/train":
	//
	// * Files are uploaded to "train/events.out.tfevents"
	// * A tfevents value tagged "epoch_loss" is logged as "train/epoch_loss"
	//
	// If this is unset, then it is inferred using unspecified rules.
	RootDir string `protobuf:"bytes,3,opt,name=root_dir,json=rootDir,proto3" json:"root_dir,omitempty"`
	// Whether to save tfevents files with the run.
	//
	// When true, this uploads the tfevents files, enabling the "TensorBoard"
	// tab in W&B.
	Save bool `protobuf:"varint,2,opt,name=save,proto3" json:"save,omitempty"`
}

func (x *TBRecord) Reset() {
	*x = TBRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[50]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*TBRecord) ProtoMessage() {}

func (x *TBRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[50]
	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 TBRecord.ProtoReflect.Descriptor instead.
func (*TBRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{50}
}

func (x *TBRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

func (x *TBRecord) GetLogDir() string {
	if x != nil {
		return x.LogDir
	}
	return ""
}

func (x *TBRecord) GetRootDir() string {
	if x != nil {
		return x.RootDir
	}
	return ""
}

func (x *TBRecord) GetSave() bool {
	if x != nil {
		return x.Save
	}
	return false
}

type TBResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *TBResult) Reset() {
	*x = TBResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[51]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*TBResult) ProtoMessage() {}

func (x *TBResult) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[51]
	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 TBResult.ProtoReflect.Descriptor instead.
func (*TBResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{51}
}

// AlertRecord: store alert notifications
type AlertRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Title        string       `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
	Text         string       `protobuf:"bytes,2,opt,name=text,proto3" json:"text,omitempty"`
	Level        string       `protobuf:"bytes,3,opt,name=level,proto3" json:"level,omitempty"`
	WaitDuration int64        `protobuf:"varint,4,opt,name=wait_duration,json=waitDuration,proto3" json:"wait_duration,omitempty"`
	XInfo        *XRecordInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *AlertRecord) Reset() {
	*x = AlertRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[52]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AlertRecord) ProtoMessage() {}

func (x *AlertRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[52]
	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 AlertRecord.ProtoReflect.Descriptor instead.
func (*AlertRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{52}
}

func (x *AlertRecord) GetTitle() string {
	if x != nil {
		return x.Title
	}
	return ""
}

func (x *AlertRecord) GetText() string {
	if x != nil {
		return x.Text
	}
	return ""
}

func (x *AlertRecord) GetLevel() string {
	if x != nil {
		return x.Level
	}
	return ""
}

func (x *AlertRecord) GetWaitDuration() int64 {
	if x != nil {
		return x.WaitDuration
	}
	return 0
}

func (x *AlertRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type AlertResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *AlertResult) Reset() {
	*x = AlertResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[53]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AlertResult) ProtoMessage() {}

func (x *AlertResult) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[53]
	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 AlertResult.ProtoReflect.Descriptor instead.
func (*AlertResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{53}
}

// Request: all non persistent messages
type Request struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Types that are assignable to RequestType:
	//
	//	*Request_StopStatus
	//	*Request_NetworkStatus
	//	*Request_Defer
	//	*Request_GetSummary
	//	*Request_Login
	//	*Request_Pause
	//	*Request_Resume
	//	*Request_PollExit
	//	*Request_SampledHistory
	//	*Request_PartialHistory
	//	*Request_RunStart
	//	*Request_CheckVersion
	//	*Request_LogArtifact
	//	*Request_DownloadArtifact
	//	*Request_Keepalive
	//	*Request_RunStatus
	//	*Request_Cancel
	//	*Request_Metadata
	//	*Request_InternalMessages
	//	*Request_PythonPackages
	//	*Request_Shutdown
	//	*Request_Attach
	//	*Request_Status
	//	*Request_ServerInfo
	//	*Request_SenderMark
	//	*Request_SenderRead
	//	*Request_StatusReport
	//	*Request_SummaryRecord
	//	*Request_TelemetryRecord
	//	*Request_JobInfo
	//	*Request_GetSystemMetrics
	//	*Request_Sync
	//	*Request_JobInput
	//	*Request_LinkArtifact
	//	*Request_TestInject
	RequestType isRequest_RequestType `protobuf_oneof:"request_type"`
}

func (x *Request) Reset() {
	*x = Request{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[54]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Request) ProtoMessage() {}

func (x *Request) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[54]
	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 Request.ProtoReflect.Descriptor instead.
func (*Request) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{54}
}

func (m *Request) GetRequestType() isRequest_RequestType {
	if m != nil {
		return m.RequestType
	}
	return nil
}

func (x *Request) GetStopStatus() *StopStatusRequest {
	if x, ok := x.GetRequestType().(*Request_StopStatus); ok {
		return x.StopStatus
	}
	return nil
}

func (x *Request) GetNetworkStatus() *NetworkStatusRequest {
	if x, ok := x.GetRequestType().(*Request_NetworkStatus); ok {
		return x.NetworkStatus
	}
	return nil
}

func (x *Request) GetDefer() *DeferRequest {
	if x, ok := x.GetRequestType().(*Request_Defer); ok {
		return x.Defer
	}
	return nil
}

func (x *Request) GetGetSummary() *GetSummaryRequest {
	if x, ok := x.GetRequestType().(*Request_GetSummary); ok {
		return x.GetSummary
	}
	return nil
}

func (x *Request) GetLogin() *LoginRequest {
	if x, ok := x.GetRequestType().(*Request_Login); ok {
		return x.Login
	}
	return nil
}

func (x *Request) GetPause() *PauseRequest {
	if x, ok := x.GetRequestType().(*Request_Pause); ok {
		return x.Pause
	}
	return nil
}

func (x *Request) GetResume() *ResumeRequest {
	if x, ok := x.GetRequestType().(*Request_Resume); ok {
		return x.Resume
	}
	return nil
}

func (x *Request) GetPollExit() *PollExitRequest {
	if x, ok := x.GetRequestType().(*Request_PollExit); ok {
		return x.PollExit
	}
	return nil
}

func (x *Request) GetSampledHistory() *SampledHistoryRequest {
	if x, ok := x.GetRequestType().(*Request_SampledHistory); ok {
		return x.SampledHistory
	}
	return nil
}

func (x *Request) GetPartialHistory() *PartialHistoryRequest {
	if x, ok := x.GetRequestType().(*Request_PartialHistory); ok {
		return x.PartialHistory
	}
	return nil
}

func (x *Request) GetRunStart() *RunStartRequest {
	if x, ok := x.GetRequestType().(*Request_RunStart); ok {
		return x.RunStart
	}
	return nil
}

func (x *Request) GetCheckVersion() *CheckVersionRequest {
	if x, ok := x.GetRequestType().(*Request_CheckVersion); ok {
		return x.CheckVersion
	}
	return nil
}

func (x *Request) GetLogArtifact() *LogArtifactRequest {
	if x, ok := x.GetRequestType().(*Request_LogArtifact); ok {
		return x.LogArtifact
	}
	return nil
}

func (x *Request) GetDownloadArtifact() *DownloadArtifactRequest {
	if x, ok := x.GetRequestType().(*Request_DownloadArtifact); ok {
		return x.DownloadArtifact
	}
	return nil
}

func (x *Request) GetKeepalive() *KeepaliveRequest {
	if x, ok := x.GetRequestType().(*Request_Keepalive); ok {
		return x.Keepalive
	}
	return nil
}

func (x *Request) GetRunStatus() *RunStatusRequest {
	if x, ok := x.GetRequestType().(*Request_RunStatus); ok {
		return x.RunStatus
	}
	return nil
}

func (x *Request) GetCancel() *CancelRequest {
	if x, ok := x.GetRequestType().(*Request_Cancel); ok {
		return x.Cancel
	}
	return nil
}

func (x *Request) GetMetadata() *MetadataRequest {
	if x, ok := x.GetRequestType().(*Request_Metadata); ok {
		return x.Metadata
	}
	return nil
}

func (x *Request) GetInternalMessages() *InternalMessagesRequest {
	if x, ok := x.GetRequestType().(*Request_InternalMessages); ok {
		return x.InternalMessages
	}
	return nil
}

func (x *Request) GetPythonPackages() *PythonPackagesRequest {
	if x, ok := x.GetRequestType().(*Request_PythonPackages); ok {
		return x.PythonPackages
	}
	return nil
}

func (x *Request) GetShutdown() *ShutdownRequest {
	if x, ok := x.GetRequestType().(*Request_Shutdown); ok {
		return x.Shutdown
	}
	return nil
}

func (x *Request) GetAttach() *AttachRequest {
	if x, ok := x.GetRequestType().(*Request_Attach); ok {
		return x.Attach
	}
	return nil
}

func (x *Request) GetStatus() *StatusRequest {
	if x, ok := x.GetRequestType().(*Request_Status); ok {
		return x.Status
	}
	return nil
}

func (x *Request) GetServerInfo() *ServerInfoRequest {
	if x, ok := x.GetRequestType().(*Request_ServerInfo); ok {
		return x.ServerInfo
	}
	return nil
}

func (x *Request) GetSenderMark() *SenderMarkRequest {
	if x, ok := x.GetRequestType().(*Request_SenderMark); ok {
		return x.SenderMark
	}
	return nil
}

func (x *Request) GetSenderRead() *SenderReadRequest {
	if x, ok := x.GetRequestType().(*Request_SenderRead); ok {
		return x.SenderRead
	}
	return nil
}

func (x *Request) GetStatusReport() *StatusReportRequest {
	if x, ok := x.GetRequestType().(*Request_StatusReport); ok {
		return x.StatusReport
	}
	return nil
}

func (x *Request) GetSummaryRecord() *SummaryRecordRequest {
	if x, ok := x.GetRequestType().(*Request_SummaryRecord); ok {
		return x.SummaryRecord
	}
	return nil
}

func (x *Request) GetTelemetryRecord() *TelemetryRecordRequest {
	if x, ok := x.GetRequestType().(*Request_TelemetryRecord); ok {
		return x.TelemetryRecord
	}
	return nil
}

func (x *Request) GetJobInfo() *JobInfoRequest {
	if x, ok := x.GetRequestType().(*Request_JobInfo); ok {
		return x.JobInfo
	}
	return nil
}

func (x *Request) GetGetSystemMetrics() *GetSystemMetricsRequest {
	if x, ok := x.GetRequestType().(*Request_GetSystemMetrics); ok {
		return x.GetSystemMetrics
	}
	return nil
}

func (x *Request) GetSync() *SyncRequest {
	if x, ok := x.GetRequestType().(*Request_Sync); ok {
		return x.Sync
	}
	return nil
}

func (x *Request) GetJobInput() *JobInputRequest {
	if x, ok := x.GetRequestType().(*Request_JobInput); ok {
		return x.JobInput
	}
	return nil
}

func (x *Request) GetLinkArtifact() *LinkArtifactRequest {
	if x, ok := x.GetRequestType().(*Request_LinkArtifact); ok {
		return x.LinkArtifact
	}
	return nil
}

func (x *Request) GetTestInject() *TestInjectRequest {
	if x, ok := x.GetRequestType().(*Request_TestInject); ok {
		return x.TestInject
	}
	return nil
}

type isRequest_RequestType interface {
	isRequest_RequestType()
}

type Request_StopStatus struct {
	StopStatus *StopStatusRequest `protobuf:"bytes,1,opt,name=stop_status,json=stopStatus,proto3,oneof"`
}

type Request_NetworkStatus struct {
	NetworkStatus *NetworkStatusRequest `protobuf:"bytes,2,opt,name=network_status,json=networkStatus,proto3,oneof"`
}

type Request_Defer struct {
	Defer *DeferRequest `protobuf:"bytes,3,opt,name=defer,proto3,oneof"`
}

type Request_GetSummary struct {
	GetSummary *GetSummaryRequest `protobuf:"bytes,4,opt,name=get_summary,json=getSummary,proto3,oneof"`
}

type Request_Login struct {
	Login *LoginRequest `protobuf:"bytes,5,opt,name=login,proto3,oneof"`
}

type Request_Pause struct {
	Pause *PauseRequest `protobuf:"bytes,6,opt,name=pause,proto3,oneof"`
}

type Request_Resume struct {
	Resume *ResumeRequest `protobuf:"bytes,7,opt,name=resume,proto3,oneof"`
}

type Request_PollExit struct {
	PollExit *PollExitRequest `protobuf:"bytes,8,opt,name=poll_exit,json=pollExit,proto3,oneof"`
}

type Request_SampledHistory struct {
	SampledHistory *SampledHistoryRequest `protobuf:"bytes,9,opt,name=sampled_history,json=sampledHistory,proto3,oneof"`
}

type Request_PartialHistory struct {
	PartialHistory *PartialHistoryRequest `protobuf:"bytes,10,opt,name=partial_history,json=partialHistory,proto3,oneof"`
}

type Request_RunStart struct {
	RunStart *RunStartRequest `protobuf:"bytes,11,opt,name=run_start,json=runStart,proto3,oneof"`
}

type Request_CheckVersion struct {
	CheckVersion *CheckVersionRequest `protobuf:"bytes,12,opt,name=check_version,json=checkVersion,proto3,oneof"`
}

type Request_LogArtifact struct {
	LogArtifact *LogArtifactRequest `protobuf:"bytes,13,opt,name=log_artifact,json=logArtifact,proto3,oneof"`
}

type Request_DownloadArtifact struct {
	DownloadArtifact *DownloadArtifactRequest `protobuf:"bytes,14,opt,name=download_artifact,json=downloadArtifact,proto3,oneof"`
}

type Request_Keepalive struct {
	Keepalive *KeepaliveRequest `protobuf:"bytes,17,opt,name=keepalive,proto3,oneof"`
}

type Request_RunStatus struct {
	RunStatus *RunStatusRequest `protobuf:"bytes,20,opt,name=run_status,json=runStatus,proto3,oneof"`
}

type Request_Cancel struct {
	Cancel *CancelRequest `protobuf:"bytes,21,opt,name=cancel,proto3,oneof"`
}

type Request_Metadata struct {
	Metadata *MetadataRequest `protobuf:"bytes,22,opt,name=metadata,proto3,oneof"`
}

type Request_InternalMessages struct {
	InternalMessages *InternalMessagesRequest `protobuf:"bytes,23,opt,name=internal_messages,json=internalMessages,proto3,oneof"`
}

type Request_PythonPackages struct {
	PythonPackages *PythonPackagesRequest `protobuf:"bytes,24,opt,name=python_packages,json=pythonPackages,proto3,oneof"`
}

type Request_Shutdown struct {
	Shutdown *ShutdownRequest `protobuf:"bytes,64,opt,name=shutdown,proto3,oneof"`
}

type Request_Attach struct {
	Attach *AttachRequest `protobuf:"bytes,65,opt,name=attach,proto3,oneof"`
}

type Request_Status struct {
	Status *StatusRequest `protobuf:"bytes,66,opt,name=status,proto3,oneof"`
}

type Request_ServerInfo struct {
	ServerInfo *ServerInfoRequest `protobuf:"bytes,67,opt,name=server_info,json=serverInfo,proto3,oneof"`
}

type Request_SenderMark struct {
	SenderMark *SenderMarkRequest `protobuf:"bytes,68,opt,name=sender_mark,json=senderMark,proto3,oneof"`
}

type Request_SenderRead struct {
	SenderRead *SenderReadRequest `protobuf:"bytes,69,opt,name=sender_read,json=senderRead,proto3,oneof"`
}

type Request_StatusReport struct {
	StatusReport *StatusReportRequest `protobuf:"bytes,70,opt,name=status_report,json=statusReport,proto3,oneof"`
}

type Request_SummaryRecord struct {
	SummaryRecord *SummaryRecordRequest `protobuf:"bytes,71,opt,name=summary_record,json=summaryRecord,proto3,oneof"`
}

type Request_TelemetryRecord struct {
	TelemetryRecord *TelemetryRecordRequest `protobuf:"bytes,72,opt,name=telemetry_record,json=telemetryRecord,proto3,oneof"`
}

type Request_JobInfo struct {
	JobInfo *JobInfoRequest `protobuf:"bytes,73,opt,name=job_info,json=jobInfo,proto3,oneof"`
}

type Request_GetSystemMetrics struct {
	GetSystemMetrics *GetSystemMetricsRequest `protobuf:"bytes,74,opt,name=get_system_metrics,json=getSystemMetrics,proto3,oneof"`
}

type Request_Sync struct {
	Sync *SyncRequest `protobuf:"bytes,76,opt,name=sync,proto3,oneof"`
}

type Request_JobInput struct {
	JobInput *JobInputRequest `protobuf:"bytes,77,opt,name=job_input,json=jobInput,proto3,oneof"`
}

type Request_LinkArtifact struct {
	LinkArtifact *LinkArtifactRequest `protobuf:"bytes,78,opt,name=link_artifact,json=linkArtifact,proto3,oneof"`
}

type Request_TestInject struct {
	TestInject *TestInjectRequest `protobuf:"bytes,1000,opt,name=test_inject,json=testInject,proto3,oneof"`
}

func (*Request_StopStatus) isRequest_RequestType() {}

func (*Request_NetworkStatus) isRequest_RequestType() {}

func (*Request_Defer) isRequest_RequestType() {}

func (*Request_GetSummary) isRequest_RequestType() {}

func (*Request_Login) isRequest_RequestType() {}

func (*Request_Pause) isRequest_RequestType() {}

func (*Request_Resume) isRequest_RequestType() {}

func (*Request_PollExit) isRequest_RequestType() {}

func (*Request_SampledHistory) isRequest_RequestType() {}

func (*Request_PartialHistory) isRequest_RequestType() {}

func (*Request_RunStart) isRequest_RequestType() {}

func (*Request_CheckVersion) isRequest_RequestType() {}

func (*Request_LogArtifact) isRequest_RequestType() {}

func (*Request_DownloadArtifact) isRequest_RequestType() {}

func (*Request_Keepalive) isRequest_RequestType() {}

func (*Request_RunStatus) isRequest_RequestType() {}

func (*Request_Cancel) isRequest_RequestType() {}

func (*Request_Metadata) isRequest_RequestType() {}

func (*Request_InternalMessages) isRequest_RequestType() {}

func (*Request_PythonPackages) isRequest_RequestType() {}

func (*Request_Shutdown) isRequest_RequestType() {}

func (*Request_Attach) isRequest_RequestType() {}

func (*Request_Status) isRequest_RequestType() {}

func (*Request_ServerInfo) isRequest_RequestType() {}

func (*Request_SenderMark) isRequest_RequestType() {}

func (*Request_SenderRead) isRequest_RequestType() {}

func (*Request_StatusReport) isRequest_RequestType() {}

func (*Request_SummaryRecord) isRequest_RequestType() {}

func (*Request_TelemetryRecord) isRequest_RequestType() {}

func (*Request_JobInfo) isRequest_RequestType() {}

func (*Request_GetSystemMetrics) isRequest_RequestType() {}

func (*Request_Sync) isRequest_RequestType() {}

func (*Request_JobInput) isRequest_RequestType() {}

func (*Request_LinkArtifact) isRequest_RequestType() {}

func (*Request_TestInject) isRequest_RequestType() {}

// Response: all non persistent responses to Requests
type Response struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Types that are assignable to ResponseType:
	//
	//	*Response_KeepaliveResponse
	//	*Response_StopStatusResponse
	//	*Response_NetworkStatusResponse
	//	*Response_LoginResponse
	//	*Response_GetSummaryResponse
	//	*Response_PollExitResponse
	//	*Response_SampledHistoryResponse
	//	*Response_RunStartResponse
	//	*Response_CheckVersionResponse
	//	*Response_LogArtifactResponse
	//	*Response_DownloadArtifactResponse
	//	*Response_RunStatusResponse
	//	*Response_CancelResponse
	//	*Response_InternalMessagesResponse
	//	*Response_ShutdownResponse
	//	*Response_AttachResponse
	//	*Response_StatusResponse
	//	*Response_ServerInfoResponse
	//	*Response_JobInfoResponse
	//	*Response_GetSystemMetricsResponse
	//	*Response_SyncResponse
	//	*Response_LinkArtifactResponse
	//	*Response_TestInjectResponse
	ResponseType isResponse_ResponseType `protobuf_oneof:"response_type"`
}

func (x *Response) Reset() {
	*x = Response{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[55]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Response) ProtoMessage() {}

func (x *Response) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[55]
	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 Response.ProtoReflect.Descriptor instead.
func (*Response) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{55}
}

func (m *Response) GetResponseType() isResponse_ResponseType {
	if m != nil {
		return m.ResponseType
	}
	return nil
}

func (x *Response) GetKeepaliveResponse() *KeepaliveResponse {
	if x, ok := x.GetResponseType().(*Response_KeepaliveResponse); ok {
		return x.KeepaliveResponse
	}
	return nil
}

func (x *Response) GetStopStatusResponse() *StopStatusResponse {
	if x, ok := x.GetResponseType().(*Response_StopStatusResponse); ok {
		return x.StopStatusResponse
	}
	return nil
}

func (x *Response) GetNetworkStatusResponse() *NetworkStatusResponse {
	if x, ok := x.GetResponseType().(*Response_NetworkStatusResponse); ok {
		return x.NetworkStatusResponse
	}
	return nil
}

func (x *Response) GetLoginResponse() *LoginResponse {
	if x, ok := x.GetResponseType().(*Response_LoginResponse); ok {
		return x.LoginResponse
	}
	return nil
}

func (x *Response) GetGetSummaryResponse() *GetSummaryResponse {
	if x, ok := x.GetResponseType().(*Response_GetSummaryResponse); ok {
		return x.GetSummaryResponse
	}
	return nil
}

func (x *Response) GetPollExitResponse() *PollExitResponse {
	if x, ok := x.GetResponseType().(*Response_PollExitResponse); ok {
		return x.PollExitResponse
	}
	return nil
}

func (x *Response) GetSampledHistoryResponse() *SampledHistoryResponse {
	if x, ok := x.GetResponseType().(*Response_SampledHistoryResponse); ok {
		return x.SampledHistoryResponse
	}
	return nil
}

func (x *Response) GetRunStartResponse() *RunStartResponse {
	if x, ok := x.GetResponseType().(*Response_RunStartResponse); ok {
		return x.RunStartResponse
	}
	return nil
}

func (x *Response) GetCheckVersionResponse() *CheckVersionResponse {
	if x, ok := x.GetResponseType().(*Response_CheckVersionResponse); ok {
		return x.CheckVersionResponse
	}
	return nil
}

func (x *Response) GetLogArtifactResponse() *LogArtifactResponse {
	if x, ok := x.GetResponseType().(*Response_LogArtifactResponse); ok {
		return x.LogArtifactResponse
	}
	return nil
}

func (x *Response) GetDownloadArtifactResponse() *DownloadArtifactResponse {
	if x, ok := x.GetResponseType().(*Response_DownloadArtifactResponse); ok {
		return x.DownloadArtifactResponse
	}
	return nil
}

func (x *Response) GetRunStatusResponse() *RunStatusResponse {
	if x, ok := x.GetResponseType().(*Response_RunStatusResponse); ok {
		return x.RunStatusResponse
	}
	return nil
}

func (x *Response) GetCancelResponse() *CancelResponse {
	if x, ok := x.GetResponseType().(*Response_CancelResponse); ok {
		return x.CancelResponse
	}
	return nil
}

func (x *Response) GetInternalMessagesResponse() *InternalMessagesResponse {
	if x, ok := x.GetResponseType().(*Response_InternalMessagesResponse); ok {
		return x.InternalMessagesResponse
	}
	return nil
}

func (x *Response) GetShutdownResponse() *ShutdownResponse {
	if x, ok := x.GetResponseType().(*Response_ShutdownResponse); ok {
		return x.ShutdownResponse
	}
	return nil
}

func (x *Response) GetAttachResponse() *AttachResponse {
	if x, ok := x.GetResponseType().(*Response_AttachResponse); ok {
		return x.AttachResponse
	}
	return nil
}

func (x *Response) GetStatusResponse() *StatusResponse {
	if x, ok := x.GetResponseType().(*Response_StatusResponse); ok {
		return x.StatusResponse
	}
	return nil
}

func (x *Response) GetServerInfoResponse() *ServerInfoResponse {
	if x, ok := x.GetResponseType().(*Response_ServerInfoResponse); ok {
		return x.ServerInfoResponse
	}
	return nil
}

func (x *Response) GetJobInfoResponse() *JobInfoResponse {
	if x, ok := x.GetResponseType().(*Response_JobInfoResponse); ok {
		return x.JobInfoResponse
	}
	return nil
}

func (x *Response) GetGetSystemMetricsResponse() *GetSystemMetricsResponse {
	if x, ok := x.GetResponseType().(*Response_GetSystemMetricsResponse); ok {
		return x.GetSystemMetricsResponse
	}
	return nil
}

func (x *Response) GetSyncResponse() *SyncResponse {
	if x, ok := x.GetResponseType().(*Response_SyncResponse); ok {
		return x.SyncResponse
	}
	return nil
}

func (x *Response) GetLinkArtifactResponse() *LinkArtifactResponse {
	if x, ok := x.GetResponseType().(*Response_LinkArtifactResponse); ok {
		return x.LinkArtifactResponse
	}
	return nil
}

func (x *Response) GetTestInjectResponse() *TestInjectResponse {
	if x, ok := x.GetResponseType().(*Response_TestInjectResponse); ok {
		return x.TestInjectResponse
	}
	return nil
}

type isResponse_ResponseType interface {
	isResponse_ResponseType()
}

type Response_KeepaliveResponse struct {
	KeepaliveResponse *KeepaliveResponse `protobuf:"bytes,18,opt,name=keepalive_response,json=keepaliveResponse,proto3,oneof"`
}

type Response_StopStatusResponse struct {
	StopStatusResponse *StopStatusResponse `protobuf:"bytes,19,opt,name=stop_status_response,json=stopStatusResponse,proto3,oneof"`
}

type Response_NetworkStatusResponse struct {
	NetworkStatusResponse *NetworkStatusResponse `protobuf:"bytes,20,opt,name=network_status_response,json=networkStatusResponse,proto3,oneof"`
}

type Response_LoginResponse struct {
	LoginResponse *LoginResponse `protobuf:"bytes,24,opt,name=login_response,json=loginResponse,proto3,oneof"`
}

type Response_GetSummaryResponse struct {
	GetSummaryResponse *GetSummaryResponse `protobuf:"bytes,25,opt,name=get_summary_response,json=getSummaryResponse,proto3,oneof"`
}

type Response_PollExitResponse struct {
	PollExitResponse *PollExitResponse `protobuf:"bytes,26,opt,name=poll_exit_response,json=pollExitResponse,proto3,oneof"`
}

type Response_SampledHistoryResponse struct {
	SampledHistoryResponse *SampledHistoryResponse `protobuf:"bytes,27,opt,name=sampled_history_response,json=sampledHistoryResponse,proto3,oneof"`
}

type Response_RunStartResponse struct {
	RunStartResponse *RunStartResponse `protobuf:"bytes,28,opt,name=run_start_response,json=runStartResponse,proto3,oneof"`
}

type Response_CheckVersionResponse struct {
	CheckVersionResponse *CheckVersionResponse `protobuf:"bytes,29,opt,name=check_version_response,json=checkVersionResponse,proto3,oneof"`
}

type Response_LogArtifactResponse struct {
	LogArtifactResponse *LogArtifactResponse `protobuf:"bytes,30,opt,name=log_artifact_response,json=logArtifactResponse,proto3,oneof"`
}

type Response_DownloadArtifactResponse struct {
	DownloadArtifactResponse *DownloadArtifactResponse `protobuf:"bytes,31,opt,name=download_artifact_response,json=downloadArtifactResponse,proto3,oneof"`
}

type Response_RunStatusResponse struct {
	RunStatusResponse *RunStatusResponse `protobuf:"bytes,35,opt,name=run_status_response,json=runStatusResponse,proto3,oneof"`
}

type Response_CancelResponse struct {
	CancelResponse *CancelResponse `protobuf:"bytes,36,opt,name=cancel_response,json=cancelResponse,proto3,oneof"`
}

type Response_InternalMessagesResponse struct {
	InternalMessagesResponse *InternalMessagesResponse `protobuf:"bytes,37,opt,name=internal_messages_response,json=internalMessagesResponse,proto3,oneof"`
}

type Response_ShutdownResponse struct {
	ShutdownResponse *ShutdownResponse `protobuf:"bytes,64,opt,name=shutdown_response,json=shutdownResponse,proto3,oneof"`
}

type Response_AttachResponse struct {
	AttachResponse *AttachResponse `protobuf:"bytes,65,opt,name=attach_response,json=attachResponse,proto3,oneof"`
}

type Response_StatusResponse struct {
	StatusResponse *StatusResponse `protobuf:"bytes,66,opt,name=status_response,json=statusResponse,proto3,oneof"`
}

type Response_ServerInfoResponse struct {
	ServerInfoResponse *ServerInfoResponse `protobuf:"bytes,67,opt,name=server_info_response,json=serverInfoResponse,proto3,oneof"`
}

type Response_JobInfoResponse struct {
	JobInfoResponse *JobInfoResponse `protobuf:"bytes,68,opt,name=job_info_response,json=jobInfoResponse,proto3,oneof"`
}

type Response_GetSystemMetricsResponse struct {
	GetSystemMetricsResponse *GetSystemMetricsResponse `protobuf:"bytes,69,opt,name=get_system_metrics_response,json=getSystemMetricsResponse,proto3,oneof"`
}

type Response_SyncResponse struct {
	SyncResponse *SyncResponse `protobuf:"bytes,70,opt,name=sync_response,json=syncResponse,proto3,oneof"`
}

type Response_LinkArtifactResponse struct {
	LinkArtifactResponse *LinkArtifactResponse `protobuf:"bytes,71,opt,name=link_artifact_response,json=linkArtifactResponse,proto3,oneof"`
}

type Response_TestInjectResponse struct {
	TestInjectResponse *TestInjectResponse `protobuf:"bytes,1000,opt,name=test_inject_response,json=testInjectResponse,proto3,oneof"`
}

func (*Response_KeepaliveResponse) isResponse_ResponseType() {}

func (*Response_StopStatusResponse) isResponse_ResponseType() {}

func (*Response_NetworkStatusResponse) isResponse_ResponseType() {}

func (*Response_LoginResponse) isResponse_ResponseType() {}

func (*Response_GetSummaryResponse) isResponse_ResponseType() {}

func (*Response_PollExitResponse) isResponse_ResponseType() {}

func (*Response_SampledHistoryResponse) isResponse_ResponseType() {}

func (*Response_RunStartResponse) isResponse_ResponseType() {}

func (*Response_CheckVersionResponse) isResponse_ResponseType() {}

func (*Response_LogArtifactResponse) isResponse_ResponseType() {}

func (*Response_DownloadArtifactResponse) isResponse_ResponseType() {}

func (*Response_RunStatusResponse) isResponse_ResponseType() {}

func (*Response_CancelResponse) isResponse_ResponseType() {}

func (*Response_InternalMessagesResponse) isResponse_ResponseType() {}

func (*Response_ShutdownResponse) isResponse_ResponseType() {}

func (*Response_AttachResponse) isResponse_ResponseType() {}

func (*Response_StatusResponse) isResponse_ResponseType() {}

func (*Response_ServerInfoResponse) isResponse_ResponseType() {}

func (*Response_JobInfoResponse) isResponse_ResponseType() {}

func (*Response_GetSystemMetricsResponse) isResponse_ResponseType() {}

func (*Response_SyncResponse) isResponse_ResponseType() {}

func (*Response_LinkArtifactResponse) isResponse_ResponseType() {}

func (*Response_TestInjectResponse) isResponse_ResponseType() {}

// DeferRequest: internal message to defer work
type DeferRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	State DeferRequest_DeferState `protobuf:"varint,1,opt,name=state,proto3,enum=wandb_internal.DeferRequest_DeferState" json:"state,omitempty"` // Internal message, no _info field needed
}

func (x *DeferRequest) Reset() {
	*x = DeferRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[56]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DeferRequest) ProtoMessage() {}

func (x *DeferRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[56]
	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 DeferRequest.ProtoReflect.Descriptor instead.
func (*DeferRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{56}
}

func (x *DeferRequest) GetState() DeferRequest_DeferState {
	if x != nil {
		return x.State
	}
	return DeferRequest_BEGIN
}

// PauseRequest: internal message to pause the heartbeat
type PauseRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *PauseRequest) Reset() {
	*x = PauseRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[57]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PauseRequest) ProtoMessage() {}

func (x *PauseRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[57]
	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 PauseRequest.ProtoReflect.Descriptor instead.
func (*PauseRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{57}
}

func (x *PauseRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type PauseResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *PauseResponse) Reset() {
	*x = PauseResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[58]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PauseResponse) ProtoMessage() {}

func (x *PauseResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[58]
	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 PauseResponse.ProtoReflect.Descriptor instead.
func (*PauseResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{58}
}

// ResumeRequest: internal message to resume the heartbeat
type ResumeRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *ResumeRequest) Reset() {
	*x = ResumeRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[59]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ResumeRequest) ProtoMessage() {}

func (x *ResumeRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[59]
	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 ResumeRequest.ProtoReflect.Descriptor instead.
func (*ResumeRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{59}
}

func (x *ResumeRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type ResumeResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ResumeResponse) Reset() {
	*x = ResumeResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[60]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ResumeResponse) ProtoMessage() {}

func (x *ResumeResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[60]
	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 ResumeResponse.ProtoReflect.Descriptor instead.
func (*ResumeResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{60}
}

// LoginRequest: wandb/sdk/wandb_login
type LoginRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ApiKey string        `protobuf:"bytes,1,opt,name=api_key,json=apiKey,proto3" json:"api_key,omitempty"`
	XInfo  *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *LoginRequest) Reset() {
	*x = LoginRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[61]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*LoginRequest) ProtoMessage() {}

func (x *LoginRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[61]
	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 LoginRequest.ProtoReflect.Descriptor instead.
func (*LoginRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{61}
}

func (x *LoginRequest) GetApiKey() string {
	if x != nil {
		return x.ApiKey
	}
	return ""
}

func (x *LoginRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	ActiveEntity string `protobuf:"bytes,1,opt,name=active_entity,json=activeEntity,proto3" json:"active_entity,omitempty"`
}

func (x *LoginResponse) Reset() {
	*x = LoginResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[62]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*LoginResponse) ProtoMessage() {}

func (x *LoginResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[62]
	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 LoginResponse.ProtoReflect.Descriptor instead.
func (*LoginResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{62}
}

func (x *LoginResponse) GetActiveEntity() string {
	if x != nil {
		return x.ActiveEntity
	}
	return ""
}

// GetSummaryRequest: request consolidated summary
type GetSummaryRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *GetSummaryRequest) Reset() {
	*x = GetSummaryRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[63]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetSummaryRequest) ProtoMessage() {}

func (x *GetSummaryRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[63]
	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 GetSummaryRequest.ProtoReflect.Descriptor instead.
func (*GetSummaryRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{63}
}

func (x *GetSummaryRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	Item []*SummaryItem `protobuf:"bytes,1,rep,name=item,proto3" json:"item,omitempty"`
}

func (x *GetSummaryResponse) Reset() {
	*x = GetSummaryResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[64]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetSummaryResponse) ProtoMessage() {}

func (x *GetSummaryResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[64]
	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 GetSummaryResponse.ProtoReflect.Descriptor instead.
func (*GetSummaryResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{64}
}

func (x *GetSummaryResponse) GetItem() []*SummaryItem {
	if x != nil {
		return x.Item
	}
	return nil
}

// GetSystemMetrics: request system metrics
type GetSystemMetricsRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *GetSystemMetricsRequest) Reset() {
	*x = GetSystemMetricsRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[65]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetSystemMetricsRequest) ProtoMessage() {}

func (x *GetSystemMetricsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[65]
	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 GetSystemMetricsRequest.ProtoReflect.Descriptor instead.
func (*GetSystemMetricsRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{65}
}

func (x *GetSystemMetricsRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	Timestamp *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Value     float32                `protobuf:"fixed32,2,opt,name=value,proto3" json:"value,omitempty"`
}

func (x *SystemMetricSample) Reset() {
	*x = SystemMetricSample{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[66]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SystemMetricSample) ProtoMessage() {}

func (x *SystemMetricSample) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[66]
	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 SystemMetricSample.ProtoReflect.Descriptor instead.
func (*SystemMetricSample) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{66}
}

func (x *SystemMetricSample) GetTimestamp() *timestamppb.Timestamp {
	if x != nil {
		return x.Timestamp
	}
	return nil
}

func (x *SystemMetricSample) GetValue() float32 {
	if x != nil {
		return x.Value
	}
	return 0
}

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

	Record []*SystemMetricSample `protobuf:"bytes,1,rep,name=record,proto3" json:"record,omitempty"`
}

func (x *SystemMetricsBuffer) Reset() {
	*x = SystemMetricsBuffer{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[67]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SystemMetricsBuffer) ProtoMessage() {}

func (x *SystemMetricsBuffer) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[67]
	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 SystemMetricsBuffer.ProtoReflect.Descriptor instead.
func (*SystemMetricsBuffer) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{67}
}

func (x *SystemMetricsBuffer) GetRecord() []*SystemMetricSample {
	if x != nil {
		return x.Record
	}
	return nil
}

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

	SystemMetrics map[string]*SystemMetricsBuffer `protobuf:"bytes,1,rep,name=system_metrics,json=systemMetrics,proto3" json:"system_metrics,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}

func (x *GetSystemMetricsResponse) Reset() {
	*x = GetSystemMetricsResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[68]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GetSystemMetricsResponse) ProtoMessage() {}

func (x *GetSystemMetricsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[68]
	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 GetSystemMetricsResponse.ProtoReflect.Descriptor instead.
func (*GetSystemMetricsResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{68}
}

func (x *GetSystemMetricsResponse) GetSystemMetrics() map[string]*SystemMetricsBuffer {
	if x != nil {
		return x.SystemMetrics
	}
	return nil
}

// StatusRequest:
type StatusRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *StatusRequest) Reset() {
	*x = StatusRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[69]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*StatusRequest) ProtoMessage() {}

func (x *StatusRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[69]
	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 StatusRequest.ProtoReflect.Descriptor instead.
func (*StatusRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{69}
}

func (x *StatusRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	RunShouldStop bool `protobuf:"varint,1,opt,name=run_should_stop,json=runShouldStop,proto3" json:"run_should_stop,omitempty"`
}

func (x *StatusResponse) Reset() {
	*x = StatusResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[70]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*StatusResponse) ProtoMessage() {}

func (x *StatusResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[70]
	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 StatusResponse.ProtoReflect.Descriptor instead.
func (*StatusResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{70}
}

func (x *StatusResponse) GetRunShouldStop() bool {
	if x != nil {
		return x.RunShouldStop
	}
	return false
}

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

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *StopStatusRequest) Reset() {
	*x = StopStatusRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[71]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*StopStatusRequest) ProtoMessage() {}

func (x *StopStatusRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[71]
	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 StopStatusRequest.ProtoReflect.Descriptor instead.
func (*StopStatusRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{71}
}

func (x *StopStatusRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	RunShouldStop bool `protobuf:"varint,1,opt,name=run_should_stop,json=runShouldStop,proto3" json:"run_should_stop,omitempty"`
}

func (x *StopStatusResponse) Reset() {
	*x = StopStatusResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[72]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*StopStatusResponse) ProtoMessage() {}

func (x *StopStatusResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[72]
	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 StopStatusResponse.ProtoReflect.Descriptor instead.
func (*StopStatusResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{72}
}

func (x *StopStatusResponse) GetRunShouldStop() bool {
	if x != nil {
		return x.RunShouldStop
	}
	return false
}

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

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *NetworkStatusRequest) Reset() {
	*x = NetworkStatusRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[73]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*NetworkStatusRequest) ProtoMessage() {}

func (x *NetworkStatusRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[73]
	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 NetworkStatusRequest.ProtoReflect.Descriptor instead.
func (*NetworkStatusRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{73}
}

func (x *NetworkStatusRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	NetworkResponses []*HttpResponse `protobuf:"bytes,1,rep,name=network_responses,json=networkResponses,proto3" json:"network_responses,omitempty"`
}

func (x *NetworkStatusResponse) Reset() {
	*x = NetworkStatusResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[74]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*NetworkStatusResponse) ProtoMessage() {}

func (x *NetworkStatusResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[74]
	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 NetworkStatusResponse.ProtoReflect.Descriptor instead.
func (*NetworkStatusResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{74}
}

func (x *NetworkStatusResponse) GetNetworkResponses() []*HttpResponse {
	if x != nil {
		return x.NetworkResponses
	}
	return nil
}

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

	HttpStatusCode   int32  `protobuf:"varint,1,opt,name=http_status_code,json=httpStatusCode,proto3" json:"http_status_code,omitempty"`
	HttpResponseText string `protobuf:"bytes,2,opt,name=http_response_text,json=httpResponseText,proto3" json:"http_response_text,omitempty"`
}

func (x *HttpResponse) Reset() {
	*x = HttpResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[75]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*HttpResponse) ProtoMessage() {}

func (x *HttpResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[75]
	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 HttpResponse.ProtoReflect.Descriptor instead.
func (*HttpResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{75}
}

func (x *HttpResponse) GetHttpStatusCode() int32 {
	if x != nil {
		return x.HttpStatusCode
	}
	return 0
}

func (x *HttpResponse) GetHttpResponseText() string {
	if x != nil {
		return x.HttpResponseText
	}
	return ""
}

// InternalMessagesRequest:
type InternalMessagesRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *InternalMessagesRequest) Reset() {
	*x = InternalMessagesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[76]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*InternalMessagesRequest) ProtoMessage() {}

func (x *InternalMessagesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[76]
	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 InternalMessagesRequest.ProtoReflect.Descriptor instead.
func (*InternalMessagesRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{76}
}

func (x *InternalMessagesRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	Messages *InternalMessages `protobuf:"bytes,1,opt,name=messages,proto3" json:"messages,omitempty"`
}

func (x *InternalMessagesResponse) Reset() {
	*x = InternalMessagesResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[77]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*InternalMessagesResponse) ProtoMessage() {}

func (x *InternalMessagesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[77]
	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 InternalMessagesResponse.ProtoReflect.Descriptor instead.
func (*InternalMessagesResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{77}
}

func (x *InternalMessagesResponse) GetMessages() *InternalMessages {
	if x != nil {
		return x.Messages
	}
	return nil
}

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

	Warning []string `protobuf:"bytes,1,rep,name=warning,proto3" json:"warning,omitempty"`
}

func (x *InternalMessages) Reset() {
	*x = InternalMessages{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[78]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*InternalMessages) ProtoMessage() {}

func (x *InternalMessages) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[78]
	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 InternalMessages.ProtoReflect.Descriptor instead.
func (*InternalMessages) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{78}
}

func (x *InternalMessages) GetWarning() []string {
	if x != nil {
		return x.Warning
	}
	return nil
}

// PollExitRequest:
type PollExitRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *PollExitRequest) Reset() {
	*x = PollExitRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[79]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PollExitRequest) ProtoMessage() {}

func (x *PollExitRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[79]
	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 PollExitRequest.ProtoReflect.Descriptor instead.
func (*PollExitRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{79}
}

func (x *PollExitRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	Done        bool             `protobuf:"varint,1,opt,name=done,proto3" json:"done,omitempty"`
	ExitResult  *RunExitResult   `protobuf:"bytes,2,opt,name=exit_result,json=exitResult,proto3" json:"exit_result,omitempty"`
	PusherStats *FilePusherStats `protobuf:"bytes,3,opt,name=pusher_stats,json=pusherStats,proto3" json:"pusher_stats,omitempty"`
	FileCounts  *FileCounts      `protobuf:"bytes,4,opt,name=file_counts,json=fileCounts,proto3" json:"file_counts,omitempty"`
}

func (x *PollExitResponse) Reset() {
	*x = PollExitResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[80]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PollExitResponse) ProtoMessage() {}

func (x *PollExitResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[80]
	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 PollExitResponse.ProtoReflect.Descriptor instead.
func (*PollExitResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{80}
}

func (x *PollExitResponse) GetDone() bool {
	if x != nil {
		return x.Done
	}
	return false
}

func (x *PollExitResponse) GetExitResult() *RunExitResult {
	if x != nil {
		return x.ExitResult
	}
	return nil
}

func (x *PollExitResponse) GetPusherStats() *FilePusherStats {
	if x != nil {
		return x.PusherStats
	}
	return nil
}

func (x *PollExitResponse) GetFileCounts() *FileCounts {
	if x != nil {
		return x.FileCounts
	}
	return nil
}

// Sender requests
type SyncOverwrite struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	RunId   string `protobuf:"bytes,1,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"`
	Entity  string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"`
	Project string `protobuf:"bytes,3,opt,name=project,proto3" json:"project,omitempty"`
}

func (x *SyncOverwrite) Reset() {
	*x = SyncOverwrite{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[81]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SyncOverwrite) ProtoMessage() {}

func (x *SyncOverwrite) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[81]
	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 SyncOverwrite.ProtoReflect.Descriptor instead.
func (*SyncOverwrite) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{81}
}

func (x *SyncOverwrite) GetRunId() string {
	if x != nil {
		return x.RunId
	}
	return ""
}

func (x *SyncOverwrite) GetEntity() string {
	if x != nil {
		return x.Entity
	}
	return ""
}

func (x *SyncOverwrite) GetProject() string {
	if x != nil {
		return x.Project
	}
	return ""
}

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

	OutputRaw bool `protobuf:"varint,1,opt,name=output_raw,json=outputRaw,proto3" json:"output_raw,omitempty"`
}

func (x *SyncSkip) Reset() {
	*x = SyncSkip{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[82]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SyncSkip) ProtoMessage() {}

func (x *SyncSkip) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[82]
	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 SyncSkip.ProtoReflect.Descriptor instead.
func (*SyncSkip) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{82}
}

func (x *SyncSkip) GetOutputRaw() bool {
	if x != nil {
		return x.OutputRaw
	}
	return false
}

type SenderMarkRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *SenderMarkRequest) Reset() {
	*x = SenderMarkRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[83]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SenderMarkRequest) ProtoMessage() {}

func (x *SenderMarkRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[83]
	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 SenderMarkRequest.ProtoReflect.Descriptor instead.
func (*SenderMarkRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{83}
}

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

	StartOffset int64          `protobuf:"varint,1,opt,name=start_offset,json=startOffset,proto3" json:"start_offset,omitempty"`
	FinalOffset int64          `protobuf:"varint,2,opt,name=final_offset,json=finalOffset,proto3" json:"final_offset,omitempty"`
	Overwrite   *SyncOverwrite `protobuf:"bytes,3,opt,name=overwrite,proto3" json:"overwrite,omitempty"`
	Skip        *SyncSkip      `protobuf:"bytes,4,opt,name=skip,proto3" json:"skip,omitempty"`
}

func (x *SyncRequest) Reset() {
	*x = SyncRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[84]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SyncRequest) ProtoMessage() {}

func (x *SyncRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[84]
	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 SyncRequest.ProtoReflect.Descriptor instead.
func (*SyncRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{84}
}

func (x *SyncRequest) GetStartOffset() int64 {
	if x != nil {
		return x.StartOffset
	}
	return 0
}

func (x *SyncRequest) GetFinalOffset() int64 {
	if x != nil {
		return x.FinalOffset
	}
	return 0
}

func (x *SyncRequest) GetOverwrite() *SyncOverwrite {
	if x != nil {
		return x.Overwrite
	}
	return nil
}

func (x *SyncRequest) GetSkip() *SyncSkip {
	if x != nil {
		return x.Skip
	}
	return nil
}

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

	Url   string     `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
	Error *ErrorInfo `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
}

func (x *SyncResponse) Reset() {
	*x = SyncResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[85]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SyncResponse) ProtoMessage() {}

func (x *SyncResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[85]
	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 SyncResponse.ProtoReflect.Descriptor instead.
func (*SyncResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{85}
}

func (x *SyncResponse) GetUrl() string {
	if x != nil {
		return x.Url
	}
	return ""
}

func (x *SyncResponse) GetError() *ErrorInfo {
	if x != nil {
		return x.Error
	}
	return nil
}

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

	StartOffset int64 `protobuf:"varint,1,opt,name=start_offset,json=startOffset,proto3" json:"start_offset,omitempty"`
	FinalOffset int64 `protobuf:"varint,2,opt,name=final_offset,json=finalOffset,proto3" json:"final_offset,omitempty"`
}

func (x *SenderReadRequest) Reset() {
	*x = SenderReadRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[86]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SenderReadRequest) ProtoMessage() {}

func (x *SenderReadRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[86]
	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 SenderReadRequest.ProtoReflect.Descriptor instead.
func (*SenderReadRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{86}
}

func (x *SenderReadRequest) GetStartOffset() int64 {
	if x != nil {
		return x.StartOffset
	}
	return 0
}

func (x *SenderReadRequest) GetFinalOffset() int64 {
	if x != nil {
		return x.FinalOffset
	}
	return 0
}

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

	RecordNum  int64                  `protobuf:"varint,1,opt,name=record_num,json=recordNum,proto3" json:"record_num,omitempty"`
	SentOffset int64                  `protobuf:"varint,2,opt,name=sent_offset,json=sentOffset,proto3" json:"sent_offset,omitempty"`
	SyncTime   *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=sync_time,json=syncTime,proto3" json:"sync_time,omitempty"`
}

func (x *StatusReportRequest) Reset() {
	*x = StatusReportRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[87]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*StatusReportRequest) ProtoMessage() {}

func (x *StatusReportRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[87]
	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 StatusReportRequest.ProtoReflect.Descriptor instead.
func (*StatusReportRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{87}
}

func (x *StatusReportRequest) GetRecordNum() int64 {
	if x != nil {
		return x.RecordNum
	}
	return 0
}

func (x *StatusReportRequest) GetSentOffset() int64 {
	if x != nil {
		return x.SentOffset
	}
	return 0
}

func (x *StatusReportRequest) GetSyncTime() *timestamppb.Timestamp {
	if x != nil {
		return x.SyncTime
	}
	return nil
}

// Requests wrapping Records
type SummaryRecordRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Summary *SummaryRecord `protobuf:"bytes,1,opt,name=summary,proto3" json:"summary,omitempty"`
}

func (x *SummaryRecordRequest) Reset() {
	*x = SummaryRecordRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[88]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SummaryRecordRequest) ProtoMessage() {}

func (x *SummaryRecordRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[88]
	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 SummaryRecordRequest.ProtoReflect.Descriptor instead.
func (*SummaryRecordRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{88}
}

func (x *SummaryRecordRequest) GetSummary() *SummaryRecord {
	if x != nil {
		return x.Summary
	}
	return nil
}

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

	Telemetry *TelemetryRecord `protobuf:"bytes,1,opt,name=telemetry,proto3" json:"telemetry,omitempty"`
}

func (x *TelemetryRecordRequest) Reset() {
	*x = TelemetryRecordRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[89]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*TelemetryRecordRequest) ProtoMessage() {}

func (x *TelemetryRecordRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[89]
	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 TelemetryRecordRequest.ProtoReflect.Descriptor instead.
func (*TelemetryRecordRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{89}
}

func (x *TelemetryRecordRequest) GetTelemetry() *TelemetryRecord {
	if x != nil {
		return x.Telemetry
	}
	return nil
}

// ServerInfoRequest:
type ServerInfoRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *ServerInfoRequest) Reset() {
	*x = ServerInfoRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[90]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ServerInfoRequest) ProtoMessage() {}

func (x *ServerInfoRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[90]
	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 ServerInfoRequest.ProtoReflect.Descriptor instead.
func (*ServerInfoRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{90}
}

func (x *ServerInfoRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	LocalInfo      *LocalInfo      `protobuf:"bytes,1,opt,name=local_info,json=localInfo,proto3" json:"local_info,omitempty"`
	ServerMessages *ServerMessages `protobuf:"bytes,2,opt,name=server_messages,json=serverMessages,proto3" json:"server_messages,omitempty"`
}

func (x *ServerInfoResponse) Reset() {
	*x = ServerInfoResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[91]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ServerInfoResponse) ProtoMessage() {}

func (x *ServerInfoResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[91]
	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 ServerInfoResponse.ProtoReflect.Descriptor instead.
func (*ServerInfoResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{91}
}

func (x *ServerInfoResponse) GetLocalInfo() *LocalInfo {
	if x != nil {
		return x.LocalInfo
	}
	return nil
}

func (x *ServerInfoResponse) GetServerMessages() *ServerMessages {
	if x != nil {
		return x.ServerMessages
	}
	return nil
}

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

	Item []*ServerMessage `protobuf:"bytes,1,rep,name=item,proto3" json:"item,omitempty"`
}

func (x *ServerMessages) Reset() {
	*x = ServerMessages{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[92]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ServerMessages) ProtoMessage() {}

func (x *ServerMessages) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[92]
	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 ServerMessages.ProtoReflect.Descriptor instead.
func (*ServerMessages) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{92}
}

func (x *ServerMessages) GetItem() []*ServerMessage {
	if x != nil {
		return x.Item
	}
	return nil
}

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

	PlainText string `protobuf:"bytes,1,opt,name=plain_text,json=plainText,proto3" json:"plain_text,omitempty"`
	UtfText   string `protobuf:"bytes,2,opt,name=utf_text,json=utfText,proto3" json:"utf_text,omitempty"`
	HtmlText  string `protobuf:"bytes,3,opt,name=html_text,json=htmlText,proto3" json:"html_text,omitempty"`
	Type      string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"`
	Level     int32  `protobuf:"varint,5,opt,name=level,proto3" json:"level,omitempty"`
}

func (x *ServerMessage) Reset() {
	*x = ServerMessage{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[93]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ServerMessage) ProtoMessage() {}

func (x *ServerMessage) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[93]
	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 ServerMessage.ProtoReflect.Descriptor instead.
func (*ServerMessage) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{93}
}

func (x *ServerMessage) GetPlainText() string {
	if x != nil {
		return x.PlainText
	}
	return ""
}

func (x *ServerMessage) GetUtfText() string {
	if x != nil {
		return x.UtfText
	}
	return ""
}

func (x *ServerMessage) GetHtmlText() string {
	if x != nil {
		return x.HtmlText
	}
	return ""
}

func (x *ServerMessage) GetType() string {
	if x != nil {
		return x.Type
	}
	return ""
}

func (x *ServerMessage) GetLevel() int32 {
	if x != nil {
		return x.Level
	}
	return 0
}

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

	WandbCount    int32 `protobuf:"varint,1,opt,name=wandb_count,json=wandbCount,proto3" json:"wandb_count,omitempty"`
	MediaCount    int32 `protobuf:"varint,2,opt,name=media_count,json=mediaCount,proto3" json:"media_count,omitempty"`
	ArtifactCount int32 `protobuf:"varint,3,opt,name=artifact_count,json=artifactCount,proto3" json:"artifact_count,omitempty"`
	OtherCount    int32 `protobuf:"varint,4,opt,name=other_count,json=otherCount,proto3" json:"other_count,omitempty"`
}

func (x *FileCounts) Reset() {
	*x = FileCounts{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[94]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FileCounts) ProtoMessage() {}

func (x *FileCounts) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[94]
	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 FileCounts.ProtoReflect.Descriptor instead.
func (*FileCounts) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{94}
}

func (x *FileCounts) GetWandbCount() int32 {
	if x != nil {
		return x.WandbCount
	}
	return 0
}

func (x *FileCounts) GetMediaCount() int32 {
	if x != nil {
		return x.MediaCount
	}
	return 0
}

func (x *FileCounts) GetArtifactCount() int32 {
	if x != nil {
		return x.ArtifactCount
	}
	return 0
}

func (x *FileCounts) GetOtherCount() int32 {
	if x != nil {
		return x.OtherCount
	}
	return 0
}

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

	UploadedBytes int64 `protobuf:"varint,1,opt,name=uploaded_bytes,json=uploadedBytes,proto3" json:"uploaded_bytes,omitempty"`
	TotalBytes    int64 `protobuf:"varint,2,opt,name=total_bytes,json=totalBytes,proto3" json:"total_bytes,omitempty"`
	DedupedBytes  int64 `protobuf:"varint,3,opt,name=deduped_bytes,json=dedupedBytes,proto3" json:"deduped_bytes,omitempty"`
}

func (x *FilePusherStats) Reset() {
	*x = FilePusherStats{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[95]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FilePusherStats) ProtoMessage() {}

func (x *FilePusherStats) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[95]
	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 FilePusherStats.ProtoReflect.Descriptor instead.
func (*FilePusherStats) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{95}
}

func (x *FilePusherStats) GetUploadedBytes() int64 {
	if x != nil {
		return x.UploadedBytes
	}
	return 0
}

func (x *FilePusherStats) GetTotalBytes() int64 {
	if x != nil {
		return x.TotalBytes
	}
	return 0
}

func (x *FilePusherStats) GetDedupedBytes() int64 {
	if x != nil {
		return x.DedupedBytes
	}
	return 0
}

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

	Files []string `protobuf:"bytes,1,rep,name=files,proto3" json:"files,omitempty"`
}

func (x *FilesUploaded) Reset() {
	*x = FilesUploaded{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[96]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FilesUploaded) ProtoMessage() {}

func (x *FilesUploaded) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[96]
	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 FilesUploaded.ProtoReflect.Descriptor instead.
func (*FilesUploaded) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{96}
}

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

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

	Type       FileTransferInfoRequest_TransferType `protobuf:"varint,1,opt,name=type,proto3,enum=wandb_internal.FileTransferInfoRequest_TransferType" json:"type,omitempty"`
	Path       string                               `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
	Url        string                               `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"`
	Size       int64                                `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
	Processed  int64                                `protobuf:"varint,5,opt,name=processed,proto3" json:"processed,omitempty"`
	FileCounts *FileCounts                          `protobuf:"bytes,6,opt,name=file_counts,json=fileCounts,proto3" json:"file_counts,omitempty"`
}

func (x *FileTransferInfoRequest) Reset() {
	*x = FileTransferInfoRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[97]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FileTransferInfoRequest) ProtoMessage() {}

func (x *FileTransferInfoRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[97]
	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 FileTransferInfoRequest.ProtoReflect.Descriptor instead.
func (*FileTransferInfoRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{97}
}

func (x *FileTransferInfoRequest) GetType() FileTransferInfoRequest_TransferType {
	if x != nil {
		return x.Type
	}
	return FileTransferInfoRequest_Upload
}

func (x *FileTransferInfoRequest) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

func (x *FileTransferInfoRequest) GetUrl() string {
	if x != nil {
		return x.Url
	}
	return ""
}

func (x *FileTransferInfoRequest) GetSize() int64 {
	if x != nil {
		return x.Size
	}
	return 0
}

func (x *FileTransferInfoRequest) GetProcessed() int64 {
	if x != nil {
		return x.Processed
	}
	return 0
}

func (x *FileTransferInfoRequest) GetFileCounts() *FileCounts {
	if x != nil {
		return x.FileCounts
	}
	return nil
}

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

	Version   string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
	OutOfDate bool   `protobuf:"varint,2,opt,name=out_of_date,json=outOfDate,proto3" json:"out_of_date,omitempty"`
}

func (x *LocalInfo) Reset() {
	*x = LocalInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[98]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*LocalInfo) ProtoMessage() {}

func (x *LocalInfo) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[98]
	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 LocalInfo.ProtoReflect.Descriptor instead.
func (*LocalInfo) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{98}
}

func (x *LocalInfo) GetVersion() string {
	if x != nil {
		return x.Version
	}
	return ""
}

func (x *LocalInfo) GetOutOfDate() bool {
	if x != nil {
		return x.OutOfDate
	}
	return false
}

// ShutdownRequest:
type ShutdownRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *ShutdownRequest) Reset() {
	*x = ShutdownRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[99]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShutdownRequest) ProtoMessage() {}

func (x *ShutdownRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[99]
	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 ShutdownRequest.ProtoReflect.Descriptor instead.
func (*ShutdownRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{99}
}

func (x *ShutdownRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type ShutdownResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ShutdownResponse) Reset() {
	*x = ShutdownResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[100]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ShutdownResponse) ProtoMessage() {}

func (x *ShutdownResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[100]
	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 ShutdownResponse.ProtoReflect.Descriptor instead.
func (*ShutdownResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{100}
}

// AttachRequest:
type AttachRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	AttachId string        `protobuf:"bytes,20,opt,name=attach_id,json=attachId,proto3" json:"attach_id,omitempty"`
	XInfo    *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *AttachRequest) Reset() {
	*x = AttachRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[101]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AttachRequest) ProtoMessage() {}

func (x *AttachRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[101]
	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 AttachRequest.ProtoReflect.Descriptor instead.
func (*AttachRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{101}
}

func (x *AttachRequest) GetAttachId() string {
	if x != nil {
		return x.AttachId
	}
	return ""
}

func (x *AttachRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	Run   *RunRecord `protobuf:"bytes,1,opt,name=run,proto3" json:"run,omitempty"`
	Error *ErrorInfo `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
}

func (x *AttachResponse) Reset() {
	*x = AttachResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[102]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*AttachResponse) ProtoMessage() {}

func (x *AttachResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[102]
	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 AttachResponse.ProtoReflect.Descriptor instead.
func (*AttachResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{102}
}

func (x *AttachResponse) GetRun() *RunRecord {
	if x != nil {
		return x.Run
	}
	return nil
}

func (x *AttachResponse) GetError() *ErrorInfo {
	if x != nil {
		return x.Error
	}
	return nil
}

// TestInjectRequest:
type TestInjectRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	HandlerExc   bool          `protobuf:"varint,1,opt,name=handler_exc,json=handlerExc,proto3" json:"handler_exc,omitempty"`
	HandlerExit  bool          `protobuf:"varint,2,opt,name=handler_exit,json=handlerExit,proto3" json:"handler_exit,omitempty"`
	HandlerAbort bool          `protobuf:"varint,3,opt,name=handler_abort,json=handlerAbort,proto3" json:"handler_abort,omitempty"`
	SenderExc    bool          `protobuf:"varint,4,opt,name=sender_exc,json=senderExc,proto3" json:"sender_exc,omitempty"`
	SenderExit   bool          `protobuf:"varint,5,opt,name=sender_exit,json=senderExit,proto3" json:"sender_exit,omitempty"`
	SenderAbort  bool          `protobuf:"varint,6,opt,name=sender_abort,json=senderAbort,proto3" json:"sender_abort,omitempty"`
	ReqExc       bool          `protobuf:"varint,7,opt,name=req_exc,json=reqExc,proto3" json:"req_exc,omitempty"`
	ReqExit      bool          `protobuf:"varint,8,opt,name=req_exit,json=reqExit,proto3" json:"req_exit,omitempty"`
	ReqAbort     bool          `protobuf:"varint,9,opt,name=req_abort,json=reqAbort,proto3" json:"req_abort,omitempty"`
	RespExc      bool          `protobuf:"varint,10,opt,name=resp_exc,json=respExc,proto3" json:"resp_exc,omitempty"`
	RespExit     bool          `protobuf:"varint,11,opt,name=resp_exit,json=respExit,proto3" json:"resp_exit,omitempty"`
	RespAbort    bool          `protobuf:"varint,12,opt,name=resp_abort,json=respAbort,proto3" json:"resp_abort,omitempty"`
	MsgDrop      bool          `protobuf:"varint,13,opt,name=msg_drop,json=msgDrop,proto3" json:"msg_drop,omitempty"`
	MsgHang      bool          `protobuf:"varint,14,opt,name=msg_hang,json=msgHang,proto3" json:"msg_hang,omitempty"`
	XInfo        *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *TestInjectRequest) Reset() {
	*x = TestInjectRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[103]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*TestInjectRequest) ProtoMessage() {}

func (x *TestInjectRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[103]
	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 TestInjectRequest.ProtoReflect.Descriptor instead.
func (*TestInjectRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{103}
}

func (x *TestInjectRequest) GetHandlerExc() bool {
	if x != nil {
		return x.HandlerExc
	}
	return false
}

func (x *TestInjectRequest) GetHandlerExit() bool {
	if x != nil {
		return x.HandlerExit
	}
	return false
}

func (x *TestInjectRequest) GetHandlerAbort() bool {
	if x != nil {
		return x.HandlerAbort
	}
	return false
}

func (x *TestInjectRequest) GetSenderExc() bool {
	if x != nil {
		return x.SenderExc
	}
	return false
}

func (x *TestInjectRequest) GetSenderExit() bool {
	if x != nil {
		return x.SenderExit
	}
	return false
}

func (x *TestInjectRequest) GetSenderAbort() bool {
	if x != nil {
		return x.SenderAbort
	}
	return false
}

func (x *TestInjectRequest) GetReqExc() bool {
	if x != nil {
		return x.ReqExc
	}
	return false
}

func (x *TestInjectRequest) GetReqExit() bool {
	if x != nil {
		return x.ReqExit
	}
	return false
}

func (x *TestInjectRequest) GetReqAbort() bool {
	if x != nil {
		return x.ReqAbort
	}
	return false
}

func (x *TestInjectRequest) GetRespExc() bool {
	if x != nil {
		return x.RespExc
	}
	return false
}

func (x *TestInjectRequest) GetRespExit() bool {
	if x != nil {
		return x.RespExit
	}
	return false
}

func (x *TestInjectRequest) GetRespAbort() bool {
	if x != nil {
		return x.RespAbort
	}
	return false
}

func (x *TestInjectRequest) GetMsgDrop() bool {
	if x != nil {
		return x.MsgDrop
	}
	return false
}

func (x *TestInjectRequest) GetMsgHang() bool {
	if x != nil {
		return x.MsgHang
	}
	return false
}

func (x *TestInjectRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type TestInjectResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *TestInjectResponse) Reset() {
	*x = TestInjectResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[104]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*TestInjectResponse) ProtoMessage() {}

func (x *TestInjectResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[104]
	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 TestInjectResponse.ProtoReflect.Descriptor instead.
func (*TestInjectResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{104}
}

// PartialHistoryRequest:
type HistoryAction struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Flush bool `protobuf:"varint,1,opt,name=flush,proto3" json:"flush,omitempty"`
}

func (x *HistoryAction) Reset() {
	*x = HistoryAction{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[105]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*HistoryAction) ProtoMessage() {}

func (x *HistoryAction) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[105]
	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 HistoryAction.ProtoReflect.Descriptor instead.
func (*HistoryAction) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{105}
}

func (x *HistoryAction) GetFlush() bool {
	if x != nil {
		return x.Flush
	}
	return false
}

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

	Item   []*HistoryItem `protobuf:"bytes,1,rep,name=item,proto3" json:"item,omitempty"`
	Step   *HistoryStep   `protobuf:"bytes,2,opt,name=step,proto3" json:"step,omitempty"`
	Action *HistoryAction `protobuf:"bytes,3,opt,name=action,proto3" json:"action,omitempty"`
	XInfo  *XRequestInfo  `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *PartialHistoryRequest) Reset() {
	*x = PartialHistoryRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[106]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PartialHistoryRequest) ProtoMessage() {}

func (x *PartialHistoryRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[106]
	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 PartialHistoryRequest.ProtoReflect.Descriptor instead.
func (*PartialHistoryRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{106}
}

func (x *PartialHistoryRequest) GetItem() []*HistoryItem {
	if x != nil {
		return x.Item
	}
	return nil
}

func (x *PartialHistoryRequest) GetStep() *HistoryStep {
	if x != nil {
		return x.Step
	}
	return nil
}

func (x *PartialHistoryRequest) GetAction() *HistoryAction {
	if x != nil {
		return x.Action
	}
	return nil
}

func (x *PartialHistoryRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type PartialHistoryResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *PartialHistoryResponse) Reset() {
	*x = PartialHistoryResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[107]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PartialHistoryResponse) ProtoMessage() {}

func (x *PartialHistoryResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[107]
	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 PartialHistoryResponse.ProtoReflect.Descriptor instead.
func (*PartialHistoryResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{107}
}

// SampledHistoryRequest:
type SampledHistoryRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *SampledHistoryRequest) Reset() {
	*x = SampledHistoryRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[108]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SampledHistoryRequest) ProtoMessage() {}

func (x *SampledHistoryRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[108]
	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 SampledHistoryRequest.ProtoReflect.Descriptor instead.
func (*SampledHistoryRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{108}
}

func (x *SampledHistoryRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

// SampledHistoryItem:
//
// key and nested_key are mutually exclusive. Only one of them should be set.
// key is supposedly more performant than nested_key, so nested_key should be
// only used for nested keys.
type SampledHistoryItem struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Key         string    `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	NestedKey   []string  `protobuf:"bytes,2,rep,name=nested_key,json=nestedKey,proto3" json:"nested_key,omitempty"`
	ValuesFloat []float32 `protobuf:"fixed32,3,rep,packed,name=values_float,json=valuesFloat,proto3" json:"values_float,omitempty"`
	ValuesInt   []int64   `protobuf:"varint,4,rep,packed,name=values_int,json=valuesInt,proto3" json:"values_int,omitempty"`
}

func (x *SampledHistoryItem) Reset() {
	*x = SampledHistoryItem{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[109]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SampledHistoryItem) ProtoMessage() {}

func (x *SampledHistoryItem) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[109]
	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 SampledHistoryItem.ProtoReflect.Descriptor instead.
func (*SampledHistoryItem) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{109}
}

func (x *SampledHistoryItem) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

func (x *SampledHistoryItem) GetNestedKey() []string {
	if x != nil {
		return x.NestedKey
	}
	return nil
}

func (x *SampledHistoryItem) GetValuesFloat() []float32 {
	if x != nil {
		return x.ValuesFloat
	}
	return nil
}

func (x *SampledHistoryItem) GetValuesInt() []int64 {
	if x != nil {
		return x.ValuesInt
	}
	return nil
}

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

	Item []*SampledHistoryItem `protobuf:"bytes,1,rep,name=item,proto3" json:"item,omitempty"`
}

func (x *SampledHistoryResponse) Reset() {
	*x = SampledHistoryResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[110]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*SampledHistoryResponse) ProtoMessage() {}

func (x *SampledHistoryResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[110]
	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 SampledHistoryResponse.ProtoReflect.Descriptor instead.
func (*SampledHistoryResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{110}
}

func (x *SampledHistoryResponse) GetItem() []*SampledHistoryItem {
	if x != nil {
		return x.Item
	}
	return nil
}

// RunStatusRequest:
type RunStatusRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *RunStatusRequest) Reset() {
	*x = RunStatusRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[111]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RunStatusRequest) ProtoMessage() {}

func (x *RunStatusRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[111]
	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 RunStatusRequest.ProtoReflect.Descriptor instead.
func (*RunStatusRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{111}
}

func (x *RunStatusRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	SyncItemsTotal   int64                  `protobuf:"varint,1,opt,name=sync_items_total,json=syncItemsTotal,proto3" json:"sync_items_total,omitempty"`
	SyncItemsPending int64                  `protobuf:"varint,2,opt,name=sync_items_pending,json=syncItemsPending,proto3" json:"sync_items_pending,omitempty"`
	SyncTime         *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=sync_time,json=syncTime,proto3" json:"sync_time,omitempty"`
}

func (x *RunStatusResponse) Reset() {
	*x = RunStatusResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[112]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RunStatusResponse) ProtoMessage() {}

func (x *RunStatusResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[112]
	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 RunStatusResponse.ProtoReflect.Descriptor instead.
func (*RunStatusResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{112}
}

func (x *RunStatusResponse) GetSyncItemsTotal() int64 {
	if x != nil {
		return x.SyncItemsTotal
	}
	return 0
}

func (x *RunStatusResponse) GetSyncItemsPending() int64 {
	if x != nil {
		return x.SyncItemsPending
	}
	return 0
}

func (x *RunStatusResponse) GetSyncTime() *timestamppb.Timestamp {
	if x != nil {
		return x.SyncTime
	}
	return nil
}

// RunStartRequest: start the run
type RunStartRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Run   *RunRecord    `protobuf:"bytes,1,opt,name=run,proto3" json:"run,omitempty"`
	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *RunStartRequest) Reset() {
	*x = RunStartRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[113]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RunStartRequest) ProtoMessage() {}

func (x *RunStartRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[113]
	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 RunStartRequest.ProtoReflect.Descriptor instead.
func (*RunStartRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{113}
}

func (x *RunStartRequest) GetRun() *RunRecord {
	if x != nil {
		return x.Run
	}
	return nil
}

func (x *RunStartRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type RunStartResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *RunStartResponse) Reset() {
	*x = RunStartResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[114]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*RunStartResponse) ProtoMessage() {}

func (x *RunStartResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[114]
	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 RunStartResponse.ProtoReflect.Descriptor instead.
func (*RunStartResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{114}
}

// CheckVersion:
type CheckVersionRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CurrentVersion string        `protobuf:"bytes,1,opt,name=current_version,json=currentVersion,proto3" json:"current_version,omitempty"`
	XInfo          *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *CheckVersionRequest) Reset() {
	*x = CheckVersionRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[115]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CheckVersionRequest) ProtoMessage() {}

func (x *CheckVersionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[115]
	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 CheckVersionRequest.ProtoReflect.Descriptor instead.
func (*CheckVersionRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{115}
}

func (x *CheckVersionRequest) GetCurrentVersion() string {
	if x != nil {
		return x.CurrentVersion
	}
	return ""
}

func (x *CheckVersionRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	UpgradeMessage string `protobuf:"bytes,1,opt,name=upgrade_message,json=upgradeMessage,proto3" json:"upgrade_message,omitempty"`
	YankMessage    string `protobuf:"bytes,2,opt,name=yank_message,json=yankMessage,proto3" json:"yank_message,omitempty"`
	DeleteMessage  string `protobuf:"bytes,3,opt,name=delete_message,json=deleteMessage,proto3" json:"delete_message,omitempty"`
}

func (x *CheckVersionResponse) Reset() {
	*x = CheckVersionResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[116]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CheckVersionResponse) ProtoMessage() {}

func (x *CheckVersionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[116]
	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 CheckVersionResponse.ProtoReflect.Descriptor instead.
func (*CheckVersionResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{116}
}

func (x *CheckVersionResponse) GetUpgradeMessage() string {
	if x != nil {
		return x.UpgradeMessage
	}
	return ""
}

func (x *CheckVersionResponse) GetYankMessage() string {
	if x != nil {
		return x.YankMessage
	}
	return ""
}

func (x *CheckVersionResponse) GetDeleteMessage() string {
	if x != nil {
		return x.DeleteMessage
	}
	return ""
}

// JobInfo:
type JobInfoRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *JobInfoRequest) Reset() {
	*x = JobInfoRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[117]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*JobInfoRequest) ProtoMessage() {}

func (x *JobInfoRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[117]
	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 JobInfoRequest.ProtoReflect.Descriptor instead.
func (*JobInfoRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{117}
}

func (x *JobInfoRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	SequenceId string `protobuf:"bytes,1,opt,name=sequenceId,proto3" json:"sequenceId,omitempty"`
	Version    string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
}

func (x *JobInfoResponse) Reset() {
	*x = JobInfoResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[118]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*JobInfoResponse) ProtoMessage() {}

func (x *JobInfoResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[118]
	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 JobInfoResponse.ProtoReflect.Descriptor instead.
func (*JobInfoResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{118}
}

func (x *JobInfoResponse) GetSequenceId() string {
	if x != nil {
		return x.SequenceId
	}
	return ""
}

func (x *JobInfoResponse) GetVersion() string {
	if x != nil {
		return x.Version
	}
	return ""
}

// LogArtifact:
type LogArtifactRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Artifact    *ArtifactRecord `protobuf:"bytes,1,opt,name=artifact,proto3" json:"artifact,omitempty"`
	HistoryStep int64           `protobuf:"varint,2,opt,name=history_step,json=historyStep,proto3" json:"history_step,omitempty"`
	StagingDir  string          `protobuf:"bytes,3,opt,name=staging_dir,json=stagingDir,proto3" json:"staging_dir,omitempty"`
	XInfo       *XRequestInfo   `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *LogArtifactRequest) Reset() {
	*x = LogArtifactRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[119]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*LogArtifactRequest) ProtoMessage() {}

func (x *LogArtifactRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[119]
	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 LogArtifactRequest.ProtoReflect.Descriptor instead.
func (*LogArtifactRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{119}
}

func (x *LogArtifactRequest) GetArtifact() *ArtifactRecord {
	if x != nil {
		return x.Artifact
	}
	return nil
}

func (x *LogArtifactRequest) GetHistoryStep() int64 {
	if x != nil {
		return x.HistoryStep
	}
	return 0
}

func (x *LogArtifactRequest) GetStagingDir() string {
	if x != nil {
		return x.StagingDir
	}
	return ""
}

func (x *LogArtifactRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	ArtifactId   string `protobuf:"bytes,1,opt,name=artifact_id,json=artifactId,proto3" json:"artifact_id,omitempty"`
	ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
}

func (x *LogArtifactResponse) Reset() {
	*x = LogArtifactResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[120]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*LogArtifactResponse) ProtoMessage() {}

func (x *LogArtifactResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[120]
	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 LogArtifactResponse.ProtoReflect.Descriptor instead.
func (*LogArtifactResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{120}
}

func (x *LogArtifactResponse) GetArtifactId() string {
	if x != nil {
		return x.ArtifactId
	}
	return ""
}

func (x *LogArtifactResponse) GetErrorMessage() string {
	if x != nil {
		return x.ErrorMessage
	}
	return ""
}

// DownloadArtifact:
type DownloadArtifactRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ArtifactId             string        `protobuf:"bytes,1,opt,name=artifact_id,json=artifactId,proto3" json:"artifact_id,omitempty"`
	DownloadRoot           string        `protobuf:"bytes,2,opt,name=download_root,json=downloadRoot,proto3" json:"download_root,omitempty"`
	AllowMissingReferences bool          `protobuf:"varint,4,opt,name=allow_missing_references,json=allowMissingReferences,proto3" json:"allow_missing_references,omitempty"`
	SkipCache              bool          `protobuf:"varint,5,opt,name=skip_cache,json=skipCache,proto3" json:"skip_cache,omitempty"`
	PathPrefix             string        `protobuf:"bytes,6,opt,name=path_prefix,json=pathPrefix,proto3" json:"path_prefix,omitempty"`
	XInfo                  *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *DownloadArtifactRequest) Reset() {
	*x = DownloadArtifactRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[121]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DownloadArtifactRequest) ProtoMessage() {}

func (x *DownloadArtifactRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[121]
	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 DownloadArtifactRequest.ProtoReflect.Descriptor instead.
func (*DownloadArtifactRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{121}
}

func (x *DownloadArtifactRequest) GetArtifactId() string {
	if x != nil {
		return x.ArtifactId
	}
	return ""
}

func (x *DownloadArtifactRequest) GetDownloadRoot() string {
	if x != nil {
		return x.DownloadRoot
	}
	return ""
}

func (x *DownloadArtifactRequest) GetAllowMissingReferences() bool {
	if x != nil {
		return x.AllowMissingReferences
	}
	return false
}

func (x *DownloadArtifactRequest) GetSkipCache() bool {
	if x != nil {
		return x.SkipCache
	}
	return false
}

func (x *DownloadArtifactRequest) GetPathPrefix() string {
	if x != nil {
		return x.PathPrefix
	}
	return ""
}

func (x *DownloadArtifactRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

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

	ErrorMessage string `protobuf:"bytes,1,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
}

func (x *DownloadArtifactResponse) Reset() {
	*x = DownloadArtifactResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[122]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DownloadArtifactResponse) ProtoMessage() {}

func (x *DownloadArtifactResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[122]
	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 DownloadArtifactResponse.ProtoReflect.Descriptor instead.
func (*DownloadArtifactResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{122}
}

func (x *DownloadArtifactResponse) GetErrorMessage() string {
	if x != nil {
		return x.ErrorMessage
	}
	return ""
}

// Keepalive:
type KeepaliveRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XInfo *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *KeepaliveRequest) Reset() {
	*x = KeepaliveRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[123]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeepaliveRequest) ProtoMessage() {}

func (x *KeepaliveRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[123]
	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 KeepaliveRequest.ProtoReflect.Descriptor instead.
func (*KeepaliveRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{123}
}

func (x *KeepaliveRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type KeepaliveResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *KeepaliveResponse) Reset() {
	*x = KeepaliveResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[124]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*KeepaliveResponse) ProtoMessage() {}

func (x *KeepaliveResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[124]
	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 KeepaliveResponse.ProtoReflect.Descriptor instead.
func (*KeepaliveResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{124}
}

// Job info specific for Partial -> Job upgrade
type ArtifactInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Artifact     string   `protobuf:"bytes,1,opt,name=artifact,proto3" json:"artifact,omitempty"`
	Entrypoint   []string `protobuf:"bytes,2,rep,name=entrypoint,proto3" json:"entrypoint,omitempty"`
	Notebook     bool     `protobuf:"varint,3,opt,name=notebook,proto3" json:"notebook,omitempty"`
	BuildContext string   `protobuf:"bytes,4,opt,name=build_context,json=buildContext,proto3" json:"build_context,omitempty"`
	Dockerfile   string   `protobuf:"bytes,5,opt,name=dockerfile,proto3" json:"dockerfile,omitempty"`
}

func (x *ArtifactInfo) Reset() {
	*x = ArtifactInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[125]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ArtifactInfo) ProtoMessage() {}

func (x *ArtifactInfo) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[125]
	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 ArtifactInfo.ProtoReflect.Descriptor instead.
func (*ArtifactInfo) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{125}
}

func (x *ArtifactInfo) GetArtifact() string {
	if x != nil {
		return x.Artifact
	}
	return ""
}

func (x *ArtifactInfo) GetEntrypoint() []string {
	if x != nil {
		return x.Entrypoint
	}
	return nil
}

func (x *ArtifactInfo) GetNotebook() bool {
	if x != nil {
		return x.Notebook
	}
	return false
}

func (x *ArtifactInfo) GetBuildContext() string {
	if x != nil {
		return x.BuildContext
	}
	return ""
}

func (x *ArtifactInfo) GetDockerfile() string {
	if x != nil {
		return x.Dockerfile
	}
	return ""
}

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

	Remote string `protobuf:"bytes,1,opt,name=remote,proto3" json:"remote,omitempty"`
	Commit string `protobuf:"bytes,2,opt,name=commit,proto3" json:"commit,omitempty"`
}

func (x *GitInfo) Reset() {
	*x = GitInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[126]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GitInfo) ProtoMessage() {}

func (x *GitInfo) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[126]
	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 GitInfo.ProtoReflect.Descriptor instead.
func (*GitInfo) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{126}
}

func (x *GitInfo) GetRemote() string {
	if x != nil {
		return x.Remote
	}
	return ""
}

func (x *GitInfo) GetCommit() string {
	if x != nil {
		return x.Commit
	}
	return ""
}

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

	GitInfo      *GitInfo `protobuf:"bytes,1,opt,name=git_info,json=gitInfo,proto3" json:"git_info,omitempty"`
	Entrypoint   []string `protobuf:"bytes,2,rep,name=entrypoint,proto3" json:"entrypoint,omitempty"`
	Notebook     bool     `protobuf:"varint,3,opt,name=notebook,proto3" json:"notebook,omitempty"`
	BuildContext string   `protobuf:"bytes,4,opt,name=build_context,json=buildContext,proto3" json:"build_context,omitempty"`
	Dockerfile   string   `protobuf:"bytes,5,opt,name=dockerfile,proto3" json:"dockerfile,omitempty"`
}

func (x *GitSource) Reset() {
	*x = GitSource{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[127]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GitSource) ProtoMessage() {}

func (x *GitSource) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[127]
	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 GitSource.ProtoReflect.Descriptor instead.
func (*GitSource) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{127}
}

func (x *GitSource) GetGitInfo() *GitInfo {
	if x != nil {
		return x.GitInfo
	}
	return nil
}

func (x *GitSource) GetEntrypoint() []string {
	if x != nil {
		return x.Entrypoint
	}
	return nil
}

func (x *GitSource) GetNotebook() bool {
	if x != nil {
		return x.Notebook
	}
	return false
}

func (x *GitSource) GetBuildContext() string {
	if x != nil {
		return x.BuildContext
	}
	return ""
}

func (x *GitSource) GetDockerfile() string {
	if x != nil {
		return x.Dockerfile
	}
	return ""
}

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

	Image string `protobuf:"bytes,1,opt,name=image,proto3" json:"image,omitempty"`
}

func (x *ImageSource) Reset() {
	*x = ImageSource{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[128]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ImageSource) ProtoMessage() {}

func (x *ImageSource) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[128]
	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 ImageSource.ProtoReflect.Descriptor instead.
func (*ImageSource) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{128}
}

func (x *ImageSource) GetImage() string {
	if x != nil {
		return x.Image
	}
	return ""
}

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

	Git      *GitSource    `protobuf:"bytes,1,opt,name=git,proto3" json:"git,omitempty"`
	Artifact *ArtifactInfo `protobuf:"bytes,2,opt,name=artifact,proto3" json:"artifact,omitempty"`
	Image    *ImageSource  `protobuf:"bytes,3,opt,name=image,proto3" json:"image,omitempty"`
}

func (x *Source) Reset() {
	*x = Source{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[129]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Source) ProtoMessage() {}

func (x *Source) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[129]
	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 Source.ProtoReflect.Descriptor instead.
func (*Source) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{129}
}

func (x *Source) GetGit() *GitSource {
	if x != nil {
		return x.Git
	}
	return nil
}

func (x *Source) GetArtifact() *ArtifactInfo {
	if x != nil {
		return x.Artifact
	}
	return nil
}

func (x *Source) GetImage() *ImageSource {
	if x != nil {
		return x.Image
	}
	return nil
}

// Mirrors JobSourceDict:
type JobSource struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	XVersion   string  `protobuf:"bytes,1,opt,name=_version,json=Version,proto3" json:"_version,omitempty"`
	SourceType string  `protobuf:"bytes,2,opt,name=source_type,json=sourceType,proto3" json:"source_type,omitempty"`
	Source     *Source `protobuf:"bytes,3,opt,name=source,proto3" json:"source,omitempty"`
	Runtime    string  `protobuf:"bytes,4,opt,name=runtime,proto3" json:"runtime,omitempty"`
}

func (x *JobSource) Reset() {
	*x = JobSource{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[130]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*JobSource) ProtoMessage() {}

func (x *JobSource) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[130]
	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 JobSource.ProtoReflect.Descriptor instead.
func (*JobSource) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{130}
}

func (x *JobSource) GetXVersion() string {
	if x != nil {
		return x.XVersion
	}
	return ""
}

func (x *JobSource) GetSourceType() string {
	if x != nil {
		return x.SourceType
	}
	return ""
}

func (x *JobSource) GetSource() *Source {
	if x != nil {
		return x.Source
	}
	return nil
}

func (x *JobSource) GetRuntime() string {
	if x != nil {
		return x.Runtime
	}
	return ""
}

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

	JobName    string     `protobuf:"bytes,1,opt,name=job_name,json=jobName,proto3" json:"job_name,omitempty"`
	SourceInfo *JobSource `protobuf:"bytes,2,opt,name=source_info,json=sourceInfo,proto3" json:"source_info,omitempty"`
}

func (x *PartialJobArtifact) Reset() {
	*x = PartialJobArtifact{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[131]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PartialJobArtifact) ProtoMessage() {}

func (x *PartialJobArtifact) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[131]
	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 PartialJobArtifact.ProtoReflect.Descriptor instead.
func (*PartialJobArtifact) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{131}
}

func (x *PartialJobArtifact) GetJobName() string {
	if x != nil {
		return x.JobName
	}
	return ""
}

func (x *PartialJobArtifact) GetSourceInfo() *JobSource {
	if x != nil {
		return x.SourceInfo
	}
	return nil
}

// UseArtifact:
type UseArtifactRecord struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id      string              `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Type    string              `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
	Name    string              `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	Partial *PartialJobArtifact `protobuf:"bytes,4,opt,name=partial,proto3" json:"partial,omitempty"`
	XInfo   *XRecordInfo        `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *UseArtifactRecord) Reset() {
	*x = UseArtifactRecord{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[132]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UseArtifactRecord) ProtoMessage() {}

func (x *UseArtifactRecord) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[132]
	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 UseArtifactRecord.ProtoReflect.Descriptor instead.
func (*UseArtifactRecord) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{132}
}

func (x *UseArtifactRecord) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *UseArtifactRecord) GetType() string {
	if x != nil {
		return x.Type
	}
	return ""
}

func (x *UseArtifactRecord) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UseArtifactRecord) GetPartial() *PartialJobArtifact {
	if x != nil {
		return x.Partial
	}
	return nil
}

func (x *UseArtifactRecord) GetXInfo() *XRecordInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type UseArtifactResult struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *UseArtifactResult) Reset() {
	*x = UseArtifactResult{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[133]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*UseArtifactResult) ProtoMessage() {}

func (x *UseArtifactResult) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[133]
	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 UseArtifactResult.ProtoReflect.Descriptor instead.
func (*UseArtifactResult) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{133}
}

// Cancel:
type CancelRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CancelSlot string        `protobuf:"bytes,1,opt,name=cancel_slot,json=cancelSlot,proto3" json:"cancel_slot,omitempty"` // mailbox slot
	XInfo      *XRequestInfo `protobuf:"bytes,200,opt,name=_info,json=Info,proto3" json:"_info,omitempty"`
}

func (x *CancelRequest) Reset() {
	*x = CancelRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[134]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CancelRequest) ProtoMessage() {}

func (x *CancelRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[134]
	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 CancelRequest.ProtoReflect.Descriptor instead.
func (*CancelRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{134}
}

func (x *CancelRequest) GetCancelSlot() string {
	if x != nil {
		return x.CancelSlot
	}
	return ""
}

func (x *CancelRequest) GetXInfo() *XRequestInfo {
	if x != nil {
		return x.XInfo
	}
	return nil
}

type CancelResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *CancelResponse) Reset() {
	*x = CancelResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[135]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CancelResponse) ProtoMessage() {}

func (x *CancelResponse) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[135]
	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 CancelResponse.ProtoReflect.Descriptor instead.
func (*CancelResponse) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{135}
}

// MetadataRequest
type DiskInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Total uint64 `protobuf:"varint,1,opt,name=total,proto3" json:"total,omitempty"`
	Used  uint64 `protobuf:"varint,2,opt,name=used,proto3" json:"used,omitempty"`
}

func (x *DiskInfo) Reset() {
	*x = DiskInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[136]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*DiskInfo) ProtoMessage() {}

func (x *DiskInfo) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[136]
	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 DiskInfo.ProtoReflect.Descriptor instead.
func (*DiskInfo) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{136}
}

func (x *DiskInfo) GetTotal() uint64 {
	if x != nil {
		return x.Total
	}
	return 0
}

func (x *DiskInfo) GetUsed() uint64 {
	if x != nil {
		return x.Used
	}
	return 0
}

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

	Total uint64 `protobuf:"varint,1,opt,name=total,proto3" json:"total,omitempty"`
}

func (x *MemoryInfo) Reset() {
	*x = MemoryInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[137]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MemoryInfo) ProtoMessage() {}

func (x *MemoryInfo) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[137]
	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 MemoryInfo.ProtoReflect.Descriptor instead.
func (*MemoryInfo) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{137}
}

func (x *MemoryInfo) GetTotal() uint64 {
	if x != nil {
		return x.Total
	}
	return 0
}

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

	Count        uint32 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
	CountLogical uint32 `protobuf:"varint,2,opt,name=count_logical,json=countLogical,proto3" json:"count_logical,omitempty"`
}

func (x *CpuInfo) Reset() {
	*x = CpuInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[138]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*CpuInfo) ProtoMessage() {}

func (x *CpuInfo) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[138]
	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 CpuInfo.ProtoReflect.Descriptor instead.
func (*CpuInfo) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{138}
}

func (x *CpuInfo) GetCount() uint32 {
	if x != nil {
		return x.Count
	}
	return 0
}

func (x *CpuInfo) GetCountLogical() uint32 {
	if x != nil {
		return x.CountLogical
	}
	return 0
}

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

	GpuType string `protobuf:"bytes,1,opt,name=gpuType,proto3" json:"gpuType,omitempty"`
	Vendor  string `protobuf:"bytes,2,opt,name=vendor,proto3" json:"vendor,omitempty"`
	Cores   uint32 `protobuf:"varint,3,opt,name=cores,proto3" json:"cores,omitempty"`
}

func (x *GpuAppleInfo) Reset() {
	*x = GpuAppleInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[139]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GpuAppleInfo) ProtoMessage() {}

func (x *GpuAppleInfo) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[139]
	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 GpuAppleInfo.ProtoReflect.Descriptor instead.
func (*GpuAppleInfo) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{139}
}

func (x *GpuAppleInfo) GetGpuType() string {
	if x != nil {
		return x.GpuType
	}
	return ""
}

func (x *GpuAppleInfo) GetVendor() string {
	if x != nil {
		return x.Vendor
	}
	return ""
}

func (x *GpuAppleInfo) GetCores() uint32 {
	if x != nil {
		return x.Cores
	}
	return 0
}

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

	Name         string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	MemoryTotal  uint64 `protobuf:"varint,2,opt,name=memory_total,json=memoryTotal,proto3" json:"memory_total,omitempty"`
	CudaCores    uint32 `protobuf:"varint,3,opt,name=cuda_cores,json=cudaCores,proto3" json:"cuda_cores,omitempty"`
	Architecture string `protobuf:"bytes,4,opt,name=architecture,proto3" json:"architecture,omitempty"`
}

func (x *GpuNvidiaInfo) Reset() {
	*x = GpuNvidiaInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[140]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GpuNvidiaInfo) ProtoMessage() {}

func (x *GpuNvidiaInfo) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[140]
	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 GpuNvidiaInfo.ProtoReflect.Descriptor instead.
func (*GpuNvidiaInfo) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{140}
}

func (x *GpuNvidiaInfo) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *GpuNvidiaInfo) GetMemoryTotal() uint64 {
	if x != nil {
		return x.MemoryTotal
	}
	return 0
}

func (x *GpuNvidiaInfo) GetCudaCores() uint32 {
	if x != nil {
		return x.CudaCores
	}
	return 0
}

func (x *GpuNvidiaInfo) GetArchitecture() string {
	if x != nil {
		return x.Architecture
	}
	return ""
}

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

	Id                 string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	UniqueId           string `protobuf:"bytes,2,opt,name=unique_id,json=uniqueId,proto3" json:"unique_id,omitempty"`
	VbiosVersion       string `protobuf:"bytes,3,opt,name=vbios_version,json=vbiosVersion,proto3" json:"vbios_version,omitempty"`
	PerformanceLevel   string `protobuf:"bytes,4,opt,name=performance_level,json=performanceLevel,proto3" json:"performance_level,omitempty"`
	GpuOverdrive       string `protobuf:"bytes,5,opt,name=gpu_overdrive,json=gpuOverdrive,proto3" json:"gpu_overdrive,omitempty"`
	GpuMemoryOverdrive string `protobuf:"bytes,6,opt,name=gpu_memory_overdrive,json=gpuMemoryOverdrive,proto3" json:"gpu_memory_overdrive,omitempty"`
	MaxPower           string `protobuf:"bytes,7,opt,name=max_power,json=maxPower,proto3" json:"max_power,omitempty"`
	Series             string `protobuf:"bytes,8,opt,name=series,proto3" json:"series,omitempty"`
	Model              string `protobuf:"bytes,9,opt,name=model,proto3" json:"model,omitempty"`
	Vendor             string `protobuf:"bytes,10,opt,name=vendor,proto3" json:"vendor,omitempty"`
	Sku                string `protobuf:"bytes,11,opt,name=sku,proto3" json:"sku,omitempty"`
	SclkRange          string `protobuf:"bytes,12,opt,name=sclk_range,json=sclkRange,proto3" json:"sclk_range,omitempty"`
	MclkRange          string `protobuf:"bytes,13,opt,name=mclk_range,json=mclkRange,proto3" json:"mclk_range,omitempty"`
}

func (x *GpuAmdInfo) Reset() {
	*x = GpuAmdInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[141]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*GpuAmdInfo) ProtoMessage() {}

func (x *GpuAmdInfo) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[141]
	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 GpuAmdInfo.ProtoReflect.Descriptor instead.
func (*GpuAmdInfo) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{141}
}

func (x *GpuAmdInfo) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *GpuAmdInfo) GetUniqueId() string {
	if x != nil {
		return x.UniqueId
	}
	return ""
}

func (x *GpuAmdInfo) GetVbiosVersion() string {
	if x != nil {
		return x.VbiosVersion
	}
	return ""
}

func (x *GpuAmdInfo) GetPerformanceLevel() string {
	if x != nil {
		return x.PerformanceLevel
	}
	return ""
}

func (x *GpuAmdInfo) GetGpuOverdrive() string {
	if x != nil {
		return x.GpuOverdrive
	}
	return ""
}

func (x *GpuAmdInfo) GetGpuMemoryOverdrive() string {
	if x != nil {
		return x.GpuMemoryOverdrive
	}
	return ""
}

func (x *GpuAmdInfo) GetMaxPower() string {
	if x != nil {
		return x.MaxPower
	}
	return ""
}

func (x *GpuAmdInfo) GetSeries() string {
	if x != nil {
		return x.Series
	}
	return ""
}

func (x *GpuAmdInfo) GetModel() string {
	if x != nil {
		return x.Model
	}
	return ""
}

func (x *GpuAmdInfo) GetVendor() string {
	if x != nil {
		return x.Vendor
	}
	return ""
}

func (x *GpuAmdInfo) GetSku() string {
	if x != nil {
		return x.Sku
	}
	return ""
}

func (x *GpuAmdInfo) GetSclkRange() string {
	if x != nil {
		return x.SclkRange
	}
	return ""
}

func (x *GpuAmdInfo) GetMclkRange() string {
	if x != nil {
		return x.MclkRange
	}
	return ""
}

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

	Name                     string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Vendor                   string `protobuf:"bytes,2,opt,name=vendor,proto3" json:"vendor,omitempty"`
	NeuronDeviceCount        uint32 `protobuf:"varint,3,opt,name=neuron_device_count,json=neuronDeviceCount,proto3" json:"neuron_device_count,omitempty"`
	NeuroncorePerDeviceCount uint32 `protobuf:"varint,4,opt,name=neuroncore_per_device_count,json=neuroncorePerDeviceCount,proto3" json:"neuroncore_per_device_count,omitempty"`
}

func (x *TrainiumInfo) Reset() {
	*x = TrainiumInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[142]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*TrainiumInfo) ProtoMessage() {}

func (x *TrainiumInfo) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[142]
	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 TrainiumInfo.ProtoReflect.Descriptor instead.
func (*TrainiumInfo) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{142}
}

func (x *TrainiumInfo) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *TrainiumInfo) GetVendor() string {
	if x != nil {
		return x.Vendor
	}
	return ""
}

func (x *TrainiumInfo) GetNeuronDeviceCount() uint32 {
	if x != nil {
		return x.NeuronDeviceCount
	}
	return 0
}

func (x *TrainiumInfo) GetNeuroncorePerDeviceCount() uint32 {
	if x != nil {
		return x.NeuroncorePerDeviceCount
	}
	return 0
}

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

	Os              string                 `protobuf:"bytes,1,opt,name=os,proto3" json:"os,omitempty"`
	Python          string                 `protobuf:"bytes,2,opt,name=python,proto3" json:"python,omitempty"`
	HeartbeatAt     *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=heartbeatAt,proto3" json:"heartbeatAt,omitempty"`
	StartedAt       *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=startedAt,proto3" json:"startedAt,omitempty"`
	Docker          string                 `protobuf:"bytes,5,opt,name=docker,proto3" json:"docker,omitempty"`
	Cuda            string                 `protobuf:"bytes,6,opt,name=cuda,proto3" json:"cuda,omitempty"`
	Args            []string               `protobuf:"bytes,7,rep,name=args,proto3" json:"args,omitempty"`
	State           string                 `protobuf:"bytes,8,opt,name=state,proto3" json:"state,omitempty"`
	Program         string                 `protobuf:"bytes,9,opt,name=program,proto3" json:"program,omitempty"`
	CodePath        string                 `protobuf:"bytes,10,opt,name=code_path,json=codePath,proto3" json:"code_path,omitempty"`
	Git             *GitRepoRecord         `protobuf:"bytes,11,opt,name=git,proto3" json:"git,omitempty"`
	Email           string                 `protobuf:"bytes,12,opt,name=email,proto3" json:"email,omitempty"`
	Root            string                 `protobuf:"bytes,13,opt,name=root,proto3" json:"root,omitempty"`
	Host            string                 `protobuf:"bytes,14,opt,name=host,proto3" json:"host,omitempty"`
	Username        string                 `protobuf:"bytes,15,opt,name=username,proto3" json:"username,omitempty"`
	Executable      string                 `protobuf:"bytes,16,opt,name=executable,proto3" json:"executable,omitempty"`
	CodePathLocal   string                 `protobuf:"bytes,17,opt,name=code_path_local,json=codePathLocal,proto3" json:"code_path_local,omitempty"`
	Colab           string                 `protobuf:"bytes,18,opt,name=colab,proto3" json:"colab,omitempty"`
	CpuCount        uint32                 `protobuf:"varint,19,opt,name=cpu_count,proto3" json:"cpu_count,omitempty"`
	CpuCountLogical uint32                 `protobuf:"varint,20,opt,name=cpu_count_logical,proto3" json:"cpu_count_logical,omitempty"`
	GpuType         string                 `protobuf:"bytes,21,opt,name=gpu_type,json=gpu,proto3" json:"gpu_type,omitempty"`
	GpuCount        uint32                 `protobuf:"varint,22,opt,name=gpu_count,proto3" json:"gpu_count,omitempty"`
	Disk            map[string]*DiskInfo   `protobuf:"bytes,23,rep,name=disk,proto3" json:"disk,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Memory          *MemoryInfo            `protobuf:"bytes,24,opt,name=memory,proto3" json:"memory,omitempty"`
	Cpu             *CpuInfo               `protobuf:"bytes,25,opt,name=cpu,proto3" json:"cpu,omitempty"`
	GpuApple        *GpuAppleInfo          `protobuf:"bytes,26,opt,name=gpu_apple,json=gpuapple,proto3" json:"gpu_apple,omitempty"`
	GpuNvidia       []*GpuNvidiaInfo       `protobuf:"bytes,27,rep,name=gpu_nvidia,proto3" json:"gpu_nvidia,omitempty"`
	GpuAmd          []*GpuAmdInfo          `protobuf:"bytes,28,rep,name=gpu_amd,proto3" json:"gpu_amd,omitempty"`
	Slurm           map[string]string      `protobuf:"bytes,29,rep,name=slurm,proto3" json:"slurm,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	CudaVersion     string                 `protobuf:"bytes,30,opt,name=cuda_version,json=cudaVersion,proto3" json:"cuda_version,omitempty"`
	Trainium        *TrainiumInfo          `protobuf:"bytes,31,opt,name=trainium,proto3" json:"trainium,omitempty"`
}

func (x *MetadataRequest) Reset() {
	*x = MetadataRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[143]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*MetadataRequest) ProtoMessage() {}

func (x *MetadataRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[143]
	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 MetadataRequest.ProtoReflect.Descriptor instead.
func (*MetadataRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{143}
}

func (x *MetadataRequest) GetOs() string {
	if x != nil {
		return x.Os
	}
	return ""
}

func (x *MetadataRequest) GetPython() string {
	if x != nil {
		return x.Python
	}
	return ""
}

func (x *MetadataRequest) GetHeartbeatAt() *timestamppb.Timestamp {
	if x != nil {
		return x.HeartbeatAt
	}
	return nil
}

func (x *MetadataRequest) GetStartedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.StartedAt
	}
	return nil
}

func (x *MetadataRequest) GetDocker() string {
	if x != nil {
		return x.Docker
	}
	return ""
}

func (x *MetadataRequest) GetCuda() string {
	if x != nil {
		return x.Cuda
	}
	return ""
}

func (x *MetadataRequest) GetArgs() []string {
	if x != nil {
		return x.Args
	}
	return nil
}

func (x *MetadataRequest) GetState() string {
	if x != nil {
		return x.State
	}
	return ""
}

func (x *MetadataRequest) GetProgram() string {
	if x != nil {
		return x.Program
	}
	return ""
}

func (x *MetadataRequest) GetCodePath() string {
	if x != nil {
		return x.CodePath
	}
	return ""
}

func (x *MetadataRequest) GetGit() *GitRepoRecord {
	if x != nil {
		return x.Git
	}
	return nil
}

func (x *MetadataRequest) GetEmail() string {
	if x != nil {
		return x.Email
	}
	return ""
}

func (x *MetadataRequest) GetRoot() string {
	if x != nil {
		return x.Root
	}
	return ""
}

func (x *MetadataRequest) GetHost() string {
	if x != nil {
		return x.Host
	}
	return ""
}

func (x *MetadataRequest) GetUsername() string {
	if x != nil {
		return x.Username
	}
	return ""
}

func (x *MetadataRequest) GetExecutable() string {
	if x != nil {
		return x.Executable
	}
	return ""
}

func (x *MetadataRequest) GetCodePathLocal() string {
	if x != nil {
		return x.CodePathLocal
	}
	return ""
}

func (x *MetadataRequest) GetColab() string {
	if x != nil {
		return x.Colab
	}
	return ""
}

func (x *MetadataRequest) GetCpuCount() uint32 {
	if x != nil {
		return x.CpuCount
	}
	return 0
}

func (x *MetadataRequest) GetCpuCountLogical() uint32 {
	if x != nil {
		return x.CpuCountLogical
	}
	return 0
}

func (x *MetadataRequest) GetGpuType() string {
	if x != nil {
		return x.GpuType
	}
	return ""
}

func (x *MetadataRequest) GetGpuCount() uint32 {
	if x != nil {
		return x.GpuCount
	}
	return 0
}

func (x *MetadataRequest) GetDisk() map[string]*DiskInfo {
	if x != nil {
		return x.Disk
	}
	return nil
}

func (x *MetadataRequest) GetMemory() *MemoryInfo {
	if x != nil {
		return x.Memory
	}
	return nil
}

func (x *MetadataRequest) GetCpu() *CpuInfo {
	if x != nil {
		return x.Cpu
	}
	return nil
}

func (x *MetadataRequest) GetGpuApple() *GpuAppleInfo {
	if x != nil {
		return x.GpuApple
	}
	return nil
}

func (x *MetadataRequest) GetGpuNvidia() []*GpuNvidiaInfo {
	if x != nil {
		return x.GpuNvidia
	}
	return nil
}

func (x *MetadataRequest) GetGpuAmd() []*GpuAmdInfo {
	if x != nil {
		return x.GpuAmd
	}
	return nil
}

func (x *MetadataRequest) GetSlurm() map[string]string {
	if x != nil {
		return x.Slurm
	}
	return nil
}

func (x *MetadataRequest) GetCudaVersion() string {
	if x != nil {
		return x.CudaVersion
	}
	return ""
}

func (x *MetadataRequest) GetTrainium() *TrainiumInfo {
	if x != nil {
		return x.Trainium
	}
	return nil
}

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

	Package []*PythonPackagesRequest_PythonPackage `protobuf:"bytes,1,rep,name=package,proto3" json:"package,omitempty"`
}

func (x *PythonPackagesRequest) Reset() {
	*x = PythonPackagesRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[144]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PythonPackagesRequest) ProtoMessage() {}

func (x *PythonPackagesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[144]
	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 PythonPackagesRequest.ProtoReflect.Descriptor instead.
func (*PythonPackagesRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{144}
}

func (x *PythonPackagesRequest) GetPackage() []*PythonPackagesRequest_PythonPackage {
	if x != nil {
		return x.Package
	}
	return nil
}

// Path within nested configuration object.
//
// The path is a list of strings, each string is a key in a nested configuration
// dict. These paths are used to filter subtrees in and out of the config
// before we capture a schema. This gives users the ability to limit which
// parts of the config are exposed as inputs to a job.
type JobInputPath struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Path []string `protobuf:"bytes,1,rep,name=path,proto3" json:"path,omitempty"`
}

func (x *JobInputPath) Reset() {
	*x = JobInputPath{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[145]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*JobInputPath) ProtoMessage() {}

func (x *JobInputPath) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[145]
	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 JobInputPath.ProtoReflect.Descriptor instead.
func (*JobInputPath) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{145}
}

func (x *JobInputPath) GetPath() []string {
	if x != nil {
		return x.Path
	}
	return nil
}

// Specifies a source for job inputs.
//
// The source is either the run config (wandb.config) or a config file.
// If a config file is specified, the file path is relative to
// <run-files-dir>/configs.
type JobInputSource struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Types that are assignable to Source:
	//
	//	*JobInputSource_RunConfig
	//	*JobInputSource_File
	Source isJobInputSource_Source `protobuf_oneof:"source"`
}

func (x *JobInputSource) Reset() {
	*x = JobInputSource{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[146]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*JobInputSource) ProtoMessage() {}

func (x *JobInputSource) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[146]
	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 JobInputSource.ProtoReflect.Descriptor instead.
func (*JobInputSource) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{146}
}

func (m *JobInputSource) GetSource() isJobInputSource_Source {
	if m != nil {
		return m.Source
	}
	return nil
}

func (x *JobInputSource) GetRunConfig() *JobInputSource_RunConfigSource {
	if x, ok := x.GetSource().(*JobInputSource_RunConfig); ok {
		return x.RunConfig
	}
	return nil
}

func (x *JobInputSource) GetFile() *JobInputSource_ConfigFileSource {
	if x, ok := x.GetSource().(*JobInputSource_File); ok {
		return x.File
	}
	return nil
}

type isJobInputSource_Source interface {
	isJobInputSource_Source()
}

type JobInputSource_RunConfig struct {
	RunConfig *JobInputSource_RunConfigSource `protobuf:"bytes,1,opt,name=run_config,json=runConfig,proto3,oneof"`
}

type JobInputSource_File struct {
	File *JobInputSource_ConfigFileSource `protobuf:"bytes,2,opt,name=file,proto3,oneof"`
}

func (*JobInputSource_RunConfig) isJobInputSource_Source() {}

func (*JobInputSource_File) isJobInputSource_Source() {}

// Specifies a new source for job inputs.
//
// source tells us where this config is coming from and therefore how it can
// be patched in future runs.
//
// If include_paths is not empty, then endpoints of the config not prefixed by
// an include path will be ignored.
//
// If exclude_paths is not empty, then endpoints of the config prefixed by an
// exclude path will be ignored.
type JobInputRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	InputSource  *JobInputSource `protobuf:"bytes,1,opt,name=input_source,json=inputSource,proto3" json:"input_source,omitempty"`
	IncludePaths []*JobInputPath `protobuf:"bytes,2,rep,name=include_paths,json=includePaths,proto3" json:"include_paths,omitempty"`
	ExcludePaths []*JobInputPath `protobuf:"bytes,3,rep,name=exclude_paths,json=excludePaths,proto3" json:"exclude_paths,omitempty"`
	InputSchema  string          `protobuf:"bytes,4,opt,name=input_schema,json=inputSchema,proto3" json:"input_schema,omitempty"`
}

func (x *JobInputRequest) Reset() {
	*x = JobInputRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[147]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*JobInputRequest) ProtoMessage() {}

func (x *JobInputRequest) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[147]
	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 JobInputRequest.ProtoReflect.Descriptor instead.
func (*JobInputRequest) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{147}
}

func (x *JobInputRequest) GetInputSource() *JobInputSource {
	if x != nil {
		return x.InputSource
	}
	return nil
}

func (x *JobInputRequest) GetIncludePaths() []*JobInputPath {
	if x != nil {
		return x.IncludePaths
	}
	return nil
}

func (x *JobInputRequest) GetExcludePaths() []*JobInputPath {
	if x != nil {
		return x.ExcludePaths
	}
	return nil
}

func (x *JobInputRequest) GetInputSchema() string {
	if x != nil {
		return x.InputSchema
	}
	return ""
}

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

	Name    string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
}

func (x *PythonPackagesRequest_PythonPackage) Reset() {
	*x = PythonPackagesRequest_PythonPackage{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[151]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*PythonPackagesRequest_PythonPackage) ProtoMessage() {}

func (x *PythonPackagesRequest_PythonPackage) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[151]
	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 PythonPackagesRequest_PythonPackage.ProtoReflect.Descriptor instead.
func (*PythonPackagesRequest_PythonPackage) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{144, 0}
}

func (x *PythonPackagesRequest_PythonPackage) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *PythonPackagesRequest_PythonPackage) GetVersion() string {
	if x != nil {
		return x.Version
	}
	return ""
}

type JobInputSource_RunConfigSource struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *JobInputSource_RunConfigSource) Reset() {
	*x = JobInputSource_RunConfigSource{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[152]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*JobInputSource_RunConfigSource) ProtoMessage() {}

func (x *JobInputSource_RunConfigSource) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[152]
	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 JobInputSource_RunConfigSource.ProtoReflect.Descriptor instead.
func (*JobInputSource_RunConfigSource) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{146, 0}
}

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

	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
}

func (x *JobInputSource_ConfigFileSource) Reset() {
	*x = JobInputSource_ConfigFileSource{}
	if protoimpl.UnsafeEnabled {
		mi := &file_wandb_proto_wandb_internal_proto_msgTypes[153]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*JobInputSource_ConfigFileSource) ProtoMessage() {}

func (x *JobInputSource_ConfigFileSource) ProtoReflect() protoreflect.Message {
	mi := &file_wandb_proto_wandb_internal_proto_msgTypes[153]
	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 JobInputSource_ConfigFileSource.ProtoReflect.Descriptor instead.
func (*JobInputSource_ConfigFileSource) Descriptor() ([]byte, []int) {
	return file_wandb_proto_wandb_internal_proto_rawDescGZIP(), []int{146, 1}
}

func (x *JobInputSource_ConfigFileSource) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

var File_wandb_proto_wandb_internal_proto protoreflect.FileDescriptor

var file_wandb_proto_wandb_internal_proto_rawDesc = []byte{
	0x0a, 0x20, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x12, 0x0e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
	0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
	0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
	0x1a, 0x1c, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21,
	0x77, 0x61, 0x6e, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x74, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x22, 0xee, 0x0a, 0x0a, 0x06, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03,
	0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x12, 0x39,
	0x0a, 0x07, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00,
	0x52, 0x07, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x39, 0x0a, 0x07, 0x73, 0x75, 0x6d,
	0x6d, 0x61, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x6d, 0x6d,
	0x61, 0x72, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x07, 0x73, 0x75, 0x6d,
	0x6d, 0x61, 0x72, 0x79, 0x12, 0x36, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x63, 0x6f,
	0x72, 0x64, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x36, 0x0a, 0x06,
	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x12, 0x33, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
	0x48, 0x00, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x05, 0x73, 0x74, 0x61,
	0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52,
	0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3c,
	0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1e, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
	0x48, 0x00, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x36, 0x0a, 0x08,
	0x74, 0x62, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18,
	0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
	0x54, 0x42, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x08, 0x74, 0x62, 0x72, 0x65,
	0x63, 0x6f, 0x72, 0x64, 0x12, 0x33, 0x0a, 0x05, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x18, 0x0a, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
	0x48, 0x00, 0x52, 0x05, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x12, 0x3f, 0x0a, 0x09, 0x74, 0x65, 0x6c,
	0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x54, 0x65,
	0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52,
	0x09, 0x74, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x12, 0x36, 0x0a, 0x06, 0x6d, 0x65,
	0x74, 0x72, 0x69, 0x63, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4d, 0x65, 0x74, 0x72,
	0x69, 0x63, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x72,
	0x69, 0x63, 0x12, 0x40, 0x0a, 0x0a, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x72, 0x61, 0x77,
	0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x61,
	0x77, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x70, 0x75,
	0x74, 0x52, 0x61, 0x77, 0x12, 0x2d, 0x0a, 0x03, 0x72, 0x75, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x19, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x03,
	0x72, 0x75, 0x6e, 0x12, 0x33, 0x0a, 0x04, 0x65, 0x78, 0x69, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e, 0x45, 0x78, 0x69, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
	0x48, 0x00, 0x52, 0x04, 0x65, 0x78, 0x69, 0x74, 0x12, 0x33, 0x0a, 0x05, 0x66, 0x69, 0x6e, 0x61,
	0x6c, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65,
	0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x05, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x12, 0x36, 0x0a,
	0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
	0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x48,
	0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x06, 0x68,
	0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x36, 0x0a, 0x06, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x18,
	0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x46, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x52, 0x65, 0x63,
	0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x06, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x12, 0x45, 0x0a,
	0x0a, 0x70, 0x72, 0x65, 0x65, 0x6d, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x17, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x23, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e, 0x50, 0x72, 0x65, 0x65, 0x6d, 0x70, 0x74, 0x69, 0x6e, 0x67,
	0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x0a, 0x70, 0x72, 0x65, 0x65, 0x6d, 0x70,
	0x74, 0x69, 0x6e, 0x67, 0x12, 0x46, 0x0a, 0x12, 0x6e, 0x6f, 0x6f, 0x70, 0x5f, 0x6c, 0x69, 0x6e,
	0x6b, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
	0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x48, 0x00, 0x52, 0x10, 0x6e, 0x6f, 0x6f, 0x70,
	0x4c, 0x69, 0x6e, 0x6b, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x46, 0x0a, 0x0c,
	0x75, 0x73, 0x65, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x18, 0x19, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x21, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x2e, 0x55, 0x73, 0x65, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52,
	0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x41, 0x72, 0x74, 0x69,
	0x66, 0x61, 0x63, 0x74, 0x12, 0x33, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18,
	0x64, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00,
	0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x07, 0x63, 0x6f, 0x6e,
	0x74, 0x72, 0x6f, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x43, 0x6f, 0x6e, 0x74,
	0x72, 0x6f, 0x6c, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x12, 0x0a, 0x04,
	0x75, 0x75, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64,
	0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49,
	0x6e, 0x66, 0x6f, 0x42, 0x0d, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x5f, 0x74, 0x79,
	0x70, 0x65, 0x22, 0x80, 0x02, 0x0a, 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x19,
	0x0a, 0x08, 0x72, 0x65, 0x71, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x07, 0x72, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x6f, 0x63,
	0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x12,
	0x19, 0x0a, 0x08, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x07, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x61,
	0x69, 0x6c, 0x62, 0x6f, 0x78, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0b, 0x6d, 0x61, 0x69, 0x6c, 0x62, 0x6f, 0x78, 0x53, 0x6c, 0x6f, 0x74, 0x12, 0x1f, 0x0a,
	0x0b, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x0a, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x53, 0x65, 0x6e, 0x64, 0x12, 0x21,
	0x0a, 0x0c, 0x66, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x06,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x66, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
	0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x6e, 0x64, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74,
	0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
	0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
	0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xdf, 0x04, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
	0x12, 0x40, 0x0a, 0x0a, 0x72, 0x75, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x11,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52,
	0x65, 0x73, 0x75, 0x6c, 0x74, 0x48, 0x00, 0x52, 0x09, 0x72, 0x75, 0x6e, 0x52, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x12, 0x40, 0x0a, 0x0b, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c,
	0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e, 0x45, 0x78, 0x69, 0x74,
	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x65, 0x78, 0x69, 0x74, 0x52, 0x65,
	0x73, 0x75, 0x6c, 0x74, 0x12, 0x3e, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x5f, 0x72, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72,
	0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x48, 0x00, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x52, 0x65,
	0x73, 0x75, 0x6c, 0x74, 0x12, 0x46, 0x0a, 0x0e, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x5f,
	0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x75,
	0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x73,
	0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x43, 0x0a, 0x0d,
	0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x16, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c,
	0x74, 0x48, 0x00, 0x52, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c,
	0x74, 0x12, 0x43, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x72, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x36, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x18, 0x64, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31,
	0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x17, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
	0x6c, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x49, 0x6e,
	0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x0d, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x40, 0x0a, 0x0b, 0x46, 0x69, 0x6e, 0x61, 0x6c,
	0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18,
	0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49,
	0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x7f, 0x0a, 0x0b, 0x56, 0x65, 0x72,
	0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x64,
	0x75, 0x63, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x64,
	0x75, 0x63, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x73,
	0x75, 0x6d, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x43,
	0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x72, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
	0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x81, 0x01, 0x0a, 0x0c, 0x48,
	0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x3e, 0x0a, 0x0c, 0x76,
	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b,
	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x31, 0x0a, 0x05, 0x5f,
	0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65,
	0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x41,
	0x0a, 0x0c, 0x46, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x31,
	0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b,
	0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
	0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66,
	0x6f, 0x22, 0xa1, 0x06, 0x0a, 0x09, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12,
	0x15, 0x0a, 0x06, 0x72, 0x75, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x05, 0x72, 0x75, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x18,
	0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x34, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
	0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x37,
	0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x07,
	0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x75, 0x6e, 0x5f, 0x67,
	0x72, 0x6f, 0x75, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x75, 0x6e, 0x47,
	0x72, 0x6f, 0x75, 0x70, 0x12, 0x19, 0x0a, 0x08, 0x6a, 0x6f, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65,
	0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6a, 0x6f, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12,
	0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61,
	0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73,
	0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x3a, 0x0a, 0x08,
	0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e,
	0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
	0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x08,
	0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x77, 0x65, 0x65,
	0x70, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x77, 0x65, 0x65,
	0x70, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74,
	0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c,
	0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x65, 0x70, 0x12, 0x1d, 0x0a, 0x0a,
	0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0a, 0x73,
	0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61,
	0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x65,
	0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x64,
	0x12, 0x3d, 0x0a, 0x09, 0x74, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x18, 0x13, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x54, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x52, 0x65,
	0x63, 0x6f, 0x72, 0x64, 0x52, 0x09, 0x74, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x12,
	0x18, 0x0a, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05,
	0x52, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x03, 0x67, 0x69, 0x74,
	0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x47, 0x69, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x52,
	0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x03, 0x67, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x6f,
	0x72, 0x6b, 0x65, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6b,
	0x65, 0x64, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52,
	0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x43, 0x0a, 0x0d, 0x47, 0x69, 0x74, 0x52, 0x65, 0x70, 0x6f,
	0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1a, 0x0a, 0x0a, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65,
	0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f,
	0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x22, 0x6f, 0x0a, 0x0f, 0x52, 0x75,
	0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2b, 0x0a,
	0x03, 0x72, 0x75, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e, 0x52,
	0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x03, 0x72, 0x75, 0x6e, 0x12, 0x2f, 0x0a, 0x05, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72,
	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0xbb, 0x01, 0x0a, 0x09,
	0x45, 0x72, 0x72, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73,
	0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73,
	0x61, 0x67, 0x65, 0x12, 0x37, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x23, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x45, 0x72, 0x72,
	0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x5b, 0x0a, 0x09,
	0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b,
	0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e,
	0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x55, 0x54,
	0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x09, 0x0a,
	0x05, 0x55, 0x53, 0x41, 0x47, 0x45, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x53, 0x55,
	0x50, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x10, 0x04, 0x22, 0x79, 0x0a, 0x0d, 0x52, 0x75, 0x6e,
	0x45, 0x78, 0x69, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x78,
	0x69, 0x74, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x65,
	0x78, 0x69, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69,
	0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d,
	0x65, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04,
	0x49, 0x6e, 0x66, 0x6f, 0x22, 0x0f, 0x0a, 0x0d, 0x52, 0x75, 0x6e, 0x45, 0x78, 0x69, 0x74, 0x52,
	0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x48, 0x0a, 0x13, 0x52, 0x75, 0x6e, 0x50, 0x72, 0x65, 0x65,
	0x6d, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x31, 0x0a, 0x05,
	0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52,
	0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22,
	0x15, 0x0a, 0x13, 0x52, 0x75, 0x6e, 0x50, 0x72, 0x65, 0x65, 0x6d, 0x70, 0x74, 0x69, 0x6e, 0x67,
	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x75, 0x0a, 0x0e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e,
	0x67, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
	0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69,
	0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63,
	0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x3f, 0x0a,
	0x0c, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x10, 0x0a,
	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
	0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x10, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4a, 0x73, 0x6f, 0x6e, 0x22, 0x1f,
	0x0a, 0x0b, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x74, 0x65, 0x70, 0x12, 0x10, 0x0a,
	0x03, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x22,
	0xa4, 0x01, 0x0a, 0x0d, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72,
	0x64, 0x12, 0x2f, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74,
	0x65, 0x6d, 0x12, 0x2f, 0x0a, 0x04, 0x73, 0x74, 0x65, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x74, 0x65, 0x70, 0x52, 0x04, 0x73,
	0x74, 0x65, 0x70, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f,
	0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x5d, 0x0a, 0x0b, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72,
	0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x73, 0x74, 0x65,
	0x64, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x73,
	0x74, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f,
	0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75,
	0x65, 0x4a, 0x73, 0x6f, 0x6e, 0x22, 0x0f, 0x0a, 0x0d, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79,
	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xff, 0x01, 0x0a, 0x0c, 0x4f, 0x75, 0x74, 0x70, 0x75,
	0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x48, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75,
	0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4f, 0x75,
	0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75,
	0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x79, 0x70,
	0x65, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
	0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6c,
	0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x12,
	0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e,
	0x66, 0x6f, 0x22, 0x24, 0x0a, 0x0a, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x79, 0x70, 0x65,
	0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x44, 0x45, 0x52, 0x52, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06,
	0x53, 0x54, 0x44, 0x4f, 0x55, 0x54, 0x10, 0x01, 0x22, 0x0e, 0x0a, 0x0c, 0x4f, 0x75, 0x74, 0x70,
	0x75, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x85, 0x02, 0x0a, 0x0f, 0x4f, 0x75, 0x74,
	0x70, 0x75, 0x74, 0x52, 0x61, 0x77, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x4b, 0x0a, 0x0b,
	0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x2a, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x61, 0x77, 0x52, 0x65, 0x63, 0x6f,
	0x72, 0x64, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x6f,
	0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d,
	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
	0x61, 0x6d, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
	0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x24, 0x0a, 0x0a, 0x4f, 0x75,
	0x74, 0x70, 0x75, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x44, 0x45,
	0x52, 0x52, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x44, 0x4f, 0x55, 0x54, 0x10, 0x01,
	0x22, 0x11, 0x0a, 0x0f, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x61, 0x77, 0x52, 0x65, 0x73,
	0x75, 0x6c, 0x74, 0x22, 0xec, 0x03, 0x0a, 0x0c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x52, 0x65,
	0x63, 0x6f, 0x72, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x6c, 0x6f, 0x62,
	0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x67, 0x6c, 0x6f,
	0x62, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x6d, 0x65,
	0x74, 0x72, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x65, 0x70,
	0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x6d,
	0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x0f, 0x73, 0x74, 0x65, 0x70, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x49, 0x6e, 0x64,
	0x65, 0x78, 0x12, 0x37, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4f, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x37, 0x0a, 0x07, 0x73,
	0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4d, 0x65,
	0x74, 0x72, 0x69, 0x63, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x07, 0x73, 0x75, 0x6d,
	0x6d, 0x61, 0x72, 0x79, 0x12, 0x3b, 0x0a, 0x04, 0x67, 0x6f, 0x61, 0x6c, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x0e, 0x32, 0x27, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
	0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x47, 0x6f, 0x61, 0x6c, 0x52, 0x04, 0x67, 0x6f, 0x61,
	0x6c, 0x12, 0x38, 0x0a, 0x08, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x74, 0x72,
	0x6f, 0x6c, 0x52, 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x31, 0x0a, 0x05, 0x5f,
	0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65,
	0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x42,
	0x0a, 0x0a, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x47, 0x6f, 0x61, 0x6c, 0x12, 0x0e, 0x0a, 0x0a,
	0x47, 0x4f, 0x41, 0x4c, 0x5f, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d,
	0x47, 0x4f, 0x41, 0x4c, 0x5f, 0x4d, 0x49, 0x4e, 0x49, 0x4d, 0x49, 0x5a, 0x45, 0x10, 0x01, 0x12,
	0x11, 0x0a, 0x0d, 0x47, 0x4f, 0x41, 0x4c, 0x5f, 0x4d, 0x41, 0x58, 0x49, 0x4d, 0x49, 0x5a, 0x45,
	0x10, 0x02, 0x22, 0x0e, 0x0a, 0x0c, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x52, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x22, 0x5e, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4f, 0x70, 0x74, 0x69,
	0x6f, 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x73, 0x79, 0x6e, 0x63,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x73, 0x74, 0x65, 0x70, 0x53, 0x79, 0x6e, 0x63,
	0x12, 0x16, 0x0a, 0x06, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x06, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x69,
	0x6e, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x66, 0x69, 0x6e,
	0x65, 0x64, 0x22, 0x2d, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6e, 0x74,
	0x72, 0x6f, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x72, 0x69, 0x74, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x72, 0x69, 0x74,
	0x65, 0x22, 0x97, 0x01, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x75, 0x6d, 0x6d,
	0x61, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x03, 0x6d, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x03, 0x6d, 0x61, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x61, 0x6e, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6d, 0x65, 0x61, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x62,
	0x65, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x62, 0x65, 0x73, 0x74, 0x12,
	0x12, 0x0a, 0x04, 0x6c, 0x61, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6c,
	0x61, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x04, 0x6e, 0x6f, 0x6e, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x70, 0x79, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x63, 0x6f, 0x70, 0x79, 0x22, 0xa9, 0x01, 0x0a, 0x0c,
	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x32, 0x0a, 0x06,
	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
	0x12, 0x32, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x1a, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x72, 0x65,
	0x6d, 0x6f, 0x76, 0x65, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66,
	0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x5c, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x73, 0x74, 0x65,
	0x64, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x73,
	0x74, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f,
	0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75,
	0x65, 0x4a, 0x73, 0x6f, 0x6e, 0x22, 0x0e, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
	0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xac, 0x01, 0x0a, 0x0d, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72,
	0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x33, 0x0a, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74,
	0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79,
	0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x33, 0x0a, 0x06,
	0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x75,
	0x6d, 0x6d, 0x61, 0x72, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x76,
	0x65, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04,
	0x49, 0x6e, 0x66, 0x6f, 0x22, 0x5d, 0x0a, 0x0b, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x49,
	0x74, 0x65, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f,
	0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x73, 0x74, 0x65,
	0x64, 0x4b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6a, 0x73,
	0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4a,
	0x73, 0x6f, 0x6e, 0x22, 0x0f, 0x0a, 0x0d, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65,
	0x73, 0x75, 0x6c, 0x74, 0x22, 0x71, 0x0a, 0x0b, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x63,
	0x6f, 0x72, 0x64, 0x12, 0x2f, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x19, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x66,
	0x69, 0x6c, 0x65, 0x73, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66,
	0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x80, 0x02, 0x0a, 0x09, 0x46, 0x69, 0x6c, 0x65,
	0x73, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x3c, 0x0a, 0x06, 0x70, 0x6f, 0x6c,
	0x69, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x73,
	0x49, 0x74, 0x65, 0x6d, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52,
	0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x36, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x49, 0x74, 0x65, 0x6d,
	0x2e, 0x46, 0x69, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22,
	0x28, 0x0a, 0x0a, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x07, 0x0a,
	0x03, 0x4e, 0x4f, 0x57, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x45, 0x4e, 0x44, 0x10, 0x01, 0x12,
	0x08, 0x0a, 0x04, 0x4c, 0x49, 0x56, 0x45, 0x10, 0x02, 0x22, 0x39, 0x0a, 0x08, 0x46, 0x69, 0x6c,
	0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x10, 0x00,
	0x12, 0x09, 0x0a, 0x05, 0x57, 0x41, 0x4e, 0x44, 0x42, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4d,
	0x45, 0x44, 0x49, 0x41, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x52, 0x54, 0x49, 0x46, 0x41,
	0x43, 0x54, 0x10, 0x03, 0x4a, 0x04, 0x08, 0x10, 0x10, 0x11, 0x22, 0x0d, 0x0a, 0x0b, 0x46, 0x69,
	0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x88, 0x02, 0x0a, 0x0b, 0x53, 0x74,
	0x61, 0x74, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x44, 0x0a, 0x0a, 0x73, 0x74, 0x61,
	0x74, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e,
	0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53,
	0x74, 0x61, 0x74, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73,
	0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x73, 0x74, 0x61, 0x74, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12,
	0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09,
	0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x2d, 0x0a, 0x04, 0x69, 0x74, 0x65,
	0x6d, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x49, 0x74,
	0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66,
	0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72,
	0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x17, 0x0a, 0x09, 0x53,
	0x74, 0x61, 0x74, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x59, 0x53, 0x54,
	0x45, 0x4d, 0x10, 0x00, 0x22, 0x3c, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x74, 0x73, 0x49, 0x74, 0x65,
	0x6d, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
	0x6b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6a, 0x73, 0x6f,
	0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4a, 0x73,
	0x6f, 0x6e, 0x22, 0xc9, 0x05, 0x0a, 0x0e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52,
	0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x72, 0x75, 0x6e, 0x5f, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x75, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07,
	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70,
	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x12,
	0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79,
	0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74,
	0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x20,
	0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
	0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x0c,
	0x75, 0x73, 0x65, 0x72, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12,
	0x28, 0x0a, 0x10, 0x75, 0x73, 0x65, 0x5f, 0x61, 0x66, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6d,
	0x6d, 0x69, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x75, 0x73, 0x65, 0x41, 0x66,
	0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x6c, 0x69,
	0x61, 0x73, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x61, 0x6c, 0x69, 0x61,
	0x73, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x18,
	0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x4d,
	0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, 0x08, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73,
	0x74, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64,
	0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x74, 0x72,
	0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x61,
	0x6c, 0x69, 0x7a, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x61,
	0x6c, 0x69, 0x7a, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69,
	0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49,
	0x64, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x6c,
	0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73,
	0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12,
	0x17, 0x0a, 0x07, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x62, 0x61, 0x73, 0x65, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x74, 0x6c, 0x5f,
	0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73,
	0x18, 0x12, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x74, 0x74, 0x6c, 0x44, 0x75, 0x72, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61,
	0x67, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x2b,
	0x0a, 0x11, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x62, 0x65,
	0x74, 0x61, 0x31, 0x18, 0x64, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x6e, 0x63, 0x72, 0x65,
	0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x42, 0x65, 0x74, 0x61, 0x31, 0x12, 0x31, 0x0a, 0x05, 0x5f,
	0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65,
	0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xa1,
	0x02, 0x0a, 0x10, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x4d, 0x61, 0x6e, 0x69, 0x66,
	0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a,
	0x0e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x50, 0x6f,
	0x6c, 0x69, 0x63, 0x79, 0x12, 0x5b, 0x0a, 0x15, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f,
	0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x50, 0x6f, 0x6c, 0x69,
	0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x13, 0x73, 0x74,
	0x6f, 0x72, 0x61, 0x67, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x12, 0x41, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x4d, 0x61, 0x6e,
	0x69, 0x66, 0x65, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74,
	0x65, 0x6e, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74,
	0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x10, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61,
	0x74, 0x68, 0x22, 0xa0, 0x02, 0x0a, 0x15, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x4d,
	0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04,
	0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68,
	0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x66, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x65, 0x66, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69,
	0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x1a,
	0x0a, 0x08, 0x6d, 0x69, 0x6d, 0x65, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x6d, 0x69, 0x6d, 0x65, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f,
	0x63, 0x61, 0x6c, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x50, 0x61, 0x74, 0x68, 0x12, 0x2a, 0x0a, 0x11, 0x62, 0x69, 0x72,
	0x74, 0x68, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x62, 0x69, 0x72, 0x74, 0x68, 0x41, 0x72, 0x74, 0x69, 0x66,
	0x61, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x61,
	0x63, 0x68, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x6b, 0x69, 0x70, 0x43,
	0x61, 0x63, 0x68, 0x65, 0x12, 0x2f, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x10, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x45, 0x78, 0x74, 0x72, 0x61, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05,
	0x65, 0x78, 0x74, 0x72, 0x61, 0x22, 0x3c, 0x0a, 0x09, 0x45, 0x78, 0x74, 0x72, 0x61, 0x49, 0x74,
	0x65, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x6b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6a, 0x73,
	0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4a,
	0x73, 0x6f, 0x6e, 0x22, 0x4a, 0x0a, 0x17, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x50, 0x6f,
	0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x10,
	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
	0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x4a, 0x73, 0x6f, 0x6e, 0x22,
	0x10, 0x0a, 0x0e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c,
	0x74, 0x22, 0x14, 0x0a, 0x12, 0x4c, 0x69, 0x6e, 0x6b, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63,
	0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xae, 0x02, 0x0a, 0x13, 0x4c, 0x69, 0x6e, 0x6b,
	0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x1b, 0x0a, 0x09, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09,
	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x6f, 0x72,
	0x74, 0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0d, 0x70, 0x6f, 0x72, 0x74, 0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x4e, 0x61, 0x6d, 0x65,
	0x12, 0x29, 0x0a, 0x10, 0x70, 0x6f, 0x72, 0x74, 0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x5f, 0x65, 0x6e,
	0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x6f, 0x72, 0x74,
	0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x2b, 0x0a, 0x11, 0x70,
	0x6f, 0x72, 0x74, 0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6f, 0x72, 0x74, 0x66, 0x6f, 0x6c, 0x69,
	0x6f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x6f, 0x72, 0x74,
	0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x06, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6f, 0x72, 0x74, 0x66, 0x6f, 0x6c, 0x69, 0x6f, 0x41, 0x6c,
	0x69, 0x61, 0x73, 0x65, 0x73, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e,
	0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x3b, 0x0a, 0x14, 0x4c, 0x69, 0x6e, 0x6b,
	0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x23, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65,
	0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x85, 0x01, 0x0a, 0x08, 0x54, 0x42, 0x52, 0x65, 0x63, 0x6f,
	0x72, 0x64, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52,
	0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x6c, 0x6f, 0x67, 0x5f, 0x64, 0x69, 0x72,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6c, 0x6f, 0x67, 0x44, 0x69, 0x72, 0x12, 0x19,
	0x0a, 0x08, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x07, 0x72, 0x6f, 0x6f, 0x74, 0x44, 0x69, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x61, 0x76,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x73, 0x61, 0x76, 0x65, 0x22, 0x0a, 0x0a,
	0x08, 0x54, 0x42, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xa5, 0x01, 0x0a, 0x0b, 0x41, 0x6c,
	0x65, 0x72, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74,
	0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12,
	0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74,
	0x65, 0x78, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x77, 0x61, 0x69,
	0x74, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03,
	0x52, 0x0c, 0x77, 0x61, 0x69, 0x74, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31,
	0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b,
	0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
	0x5f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66,
	0x6f, 0x22, 0x0d, 0x0a, 0x0b, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
	0x22, 0x9c, 0x13, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x0b,
	0x73, 0x74, 0x6f, 0x70, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x21, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x74, 0x6f, 0x70, 0x53, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x12, 0x4d, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x48, 0x00, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x12, 0x34, 0x0a, 0x05, 0x64, 0x65, 0x66, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x2e, 0x44, 0x65, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00,
	0x52, 0x05, 0x64, 0x65, 0x66, 0x65, 0x72, 0x12, 0x44, 0x0a, 0x0b, 0x67, 0x65, 0x74, 0x5f, 0x73,
	0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x47, 0x65,
	0x74, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48,
	0x00, 0x52, 0x0a, 0x67, 0x65, 0x74, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x34, 0x0a,
	0x05, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4c, 0x6f,
	0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x05, 0x6c, 0x6f,
	0x67, 0x69, 0x6e, 0x12, 0x34, 0x0a, 0x05, 0x70, 0x61, 0x75, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x2e, 0x50, 0x61, 0x75, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x48, 0x00, 0x52, 0x05, 0x70, 0x61, 0x75, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x06, 0x72, 0x65, 0x73,
	0x75, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6d,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75,
	0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x09, 0x70, 0x6f, 0x6c, 0x6c, 0x5f, 0x65, 0x78, 0x69, 0x74, 0x18,
	0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x50, 0x6f, 0x6c, 0x6c, 0x45, 0x78, 0x69, 0x74, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x08, 0x70, 0x6f, 0x6c, 0x6c, 0x45, 0x78,
	0x69, 0x74, 0x12, 0x50, 0x0a, 0x0f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x69,
	0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x61, 0x6d,
	0x70, 0x6c, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64, 0x48, 0x69, 0x73,
	0x74, 0x6f, 0x72, 0x79, 0x12, 0x50, 0x0a, 0x0f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x5f,
	0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e,
	0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x50,
	0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x48,
	0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x3e, 0x0a, 0x09, 0x72, 0x75, 0x6e, 0x5f, 0x73, 0x74,
	0x61, 0x72, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e, 0x53, 0x74,
	0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x08, 0x72, 0x75,
	0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x4a, 0x0a, 0x0d, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f,
	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e,
	0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x43,
	0x68, 0x65, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x12, 0x47, 0x0a, 0x0c, 0x6c, 0x6f, 0x67, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61,
	0x63, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4c, 0x6f, 0x67, 0x41, 0x72, 0x74,
	0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0b,
	0x6c, 0x6f, 0x67, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x56, 0x0a, 0x11, 0x64,
	0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74,
	0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
	0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48,
	0x00, 0x52, 0x10, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x74, 0x69, 0x66,
	0x61, 0x63, 0x74, 0x12, 0x40, 0x0a, 0x09, 0x6b, 0x65, 0x65, 0x70, 0x61, 0x6c, 0x69, 0x76, 0x65,
	0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4b, 0x65, 0x65, 0x70, 0x61, 0x6c, 0x69, 0x76,
	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x09, 0x6b, 0x65, 0x65, 0x70,
	0x61, 0x6c, 0x69, 0x76, 0x65, 0x12, 0x41, 0x0a, 0x0a, 0x72, 0x75, 0x6e, 0x5f, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x09, 0x72,
	0x75, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x37, 0x0a, 0x06, 0x63, 0x61, 0x6e, 0x63,
	0x65, 0x6c, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x06, 0x63, 0x61, 0x6e, 0x63, 0x65,
	0x6c, 0x12, 0x3d, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x16, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
	0x12, 0x56, 0x0a, 0x11, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x6d, 0x65, 0x73,
	0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x49, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x10, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x50, 0x0a, 0x0f, 0x70, 0x79, 0x74, 0x68,
	0x6f, 0x6e, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x25, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x50, 0x79, 0x74, 0x68, 0x6f, 0x6e, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x70, 0x79, 0x74, 0x68,
	0x6f, 0x6e, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x73, 0x12, 0x3d, 0x0a, 0x08, 0x73, 0x68,
	0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x40, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x68,
	0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52,
	0x08, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x37, 0x0a, 0x06, 0x61, 0x74, 0x74,
	0x61, 0x63, 0x68, 0x18, 0x41, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x74, 0x74, 0x61, 0x63,
	0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x06, 0x61, 0x74, 0x74, 0x61,
	0x63, 0x68, 0x12, 0x37, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x42, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x44, 0x0a, 0x0b, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x43, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x21, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66,
	0x6f, 0x12, 0x44, 0x0a, 0x0b, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x5f, 0x6d, 0x61, 0x72, 0x6b,
	0x18, 0x44, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4d, 0x61,
	0x72, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x65, 0x6e,
	0x64, 0x65, 0x72, 0x4d, 0x61, 0x72, 0x6b, 0x12, 0x44, 0x0a, 0x0b, 0x73, 0x65, 0x6e, 0x64, 0x65,
	0x72, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x18, 0x45, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x65,
	0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48,
	0x00, 0x52, 0x0a, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x61, 0x64, 0x12, 0x4a, 0x0a,
	0x0d, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x46,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x70, 0x6f,
	0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x73, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x4d, 0x0a, 0x0e, 0x73, 0x75, 0x6d,
	0x6d, 0x61, 0x72, 0x79, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x47, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x24, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x73, 0x75, 0x6d, 0x6d, 0x61,
	0x72, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x53, 0x0a, 0x10, 0x74, 0x65, 0x6c, 0x65,
	0x6d, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x48, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x26, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x2e, 0x54, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x52, 0x65, 0x63,
	0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x74, 0x65,
	0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x3b, 0x0a,
	0x08, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x49, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1e, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x4a, 0x6f, 0x62, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48,
	0x00, 0x52, 0x07, 0x6a, 0x6f, 0x62, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x57, 0x0a, 0x12, 0x67, 0x65,
	0x74, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73,
	0x18, 0x4a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x79, 0x73, 0x74, 0x65,
	0x6d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48,
	0x00, 0x52, 0x10, 0x67, 0x65, 0x74, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x74, 0x72,
	0x69, 0x63, 0x73, 0x12, 0x31, 0x0a, 0x04, 0x73, 0x79, 0x6e, 0x63, 0x18, 0x4c, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00,
	0x52, 0x04, 0x73, 0x79, 0x6e, 0x63, 0x12, 0x3e, 0x0a, 0x09, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x6e,
	0x70, 0x75, 0x74, 0x18, 0x4d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4a, 0x6f, 0x62, 0x49, 0x6e,
	0x70, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x08, 0x6a, 0x6f,
	0x62, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x4a, 0x0a, 0x0d, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x61,
	0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x18, 0x4e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e,
	0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4c,
	0x69, 0x6e, 0x6b, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x6c, 0x69, 0x6e, 0x6b, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61,
	0x63, 0x74, 0x12, 0x45, 0x0a, 0x0b, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x6e, 0x6a, 0x65, 0x63,
	0x74, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x49, 0x6e,
	0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x74,
	0x65, 0x73, 0x74, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x72, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x4a, 0x04, 0x08, 0x4b, 0x10, 0x4c, 0x22,
	0xf2, 0x0f, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x12,
	0x6b, 0x65, 0x65, 0x70, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4b, 0x65, 0x65, 0x70, 0x61, 0x6c,
	0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x11, 0x6b,
	0x65, 0x65, 0x70, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x12, 0x56, 0x0a, 0x14, 0x73, 0x74, 0x6f, 0x70, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f,
	0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22,
	0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
	0x53, 0x74, 0x6f, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x48, 0x00, 0x52, 0x12, 0x73, 0x74, 0x6f, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x17, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f,
	0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x48, 0x00, 0x52, 0x15, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x0e, 0x6c, 0x6f, 0x67,
	0x69, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
	0x48, 0x00, 0x52, 0x0d, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x56, 0x0a, 0x14, 0x67, 0x65, 0x74, 0x5f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79,
	0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x22, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x47, 0x65, 0x74, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x12, 0x67, 0x65, 0x74, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72,
	0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x12, 0x70, 0x6f, 0x6c,
	0x6c, 0x5f, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18,
	0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x50, 0x6f, 0x6c, 0x6c, 0x45, 0x78, 0x69, 0x74, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x10, 0x70, 0x6f, 0x6c, 0x6c, 0x45,
	0x78, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x18, 0x73,
	0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x72,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e,
	0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53,
	0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x16, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64,
	0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x50, 0x0a, 0x12, 0x72, 0x75, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x72, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e,
	0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52,
	0x10, 0x72, 0x75, 0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x12, 0x5c, 0x0a, 0x16, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x1d, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x24, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x14, 0x63, 0x68, 0x65, 0x63, 0x6b,
	0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x59, 0x0a, 0x15, 0x6c, 0x6f, 0x67, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f,
	0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23,
	0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
	0x4c, 0x6f, 0x67, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x13, 0x6c, 0x6f, 0x67, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61,
	0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x68, 0x0a, 0x1a, 0x64, 0x6f,
	0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f,
	0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28,
	0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
	0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x18, 0x64, 0x6f, 0x77, 0x6e,
	0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x13, 0x72, 0x75, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x23, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x21, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x11, 0x72, 0x75, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75,
	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0f, 0x63, 0x61, 0x6e,
	0x63, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x24, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x68, 0x0a, 0x1a, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x48, 0x00, 0x52, 0x18, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4d, 0x65,
	0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f,
	0x0a, 0x11, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x18, 0x40, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x68, 0x75, 0x74, 0x64,
	0x6f, 0x77, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x10, 0x73,
	0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
	0x49, 0x0a, 0x0f, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x18, 0x41, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x61, 0x74, 0x74, 0x61,
	0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x0f, 0x73, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x42, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x14, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f,
	0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x43, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x12, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a,
	0x11, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x18, 0x44, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4a, 0x6f, 0x62, 0x49, 0x6e, 0x66,
	0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0f, 0x6a, 0x6f, 0x62,
	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x1b,
	0x67, 0x65, 0x74, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69,
	0x63, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x45, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x28, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x74, 0x72,
	0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x18, 0x67,
	0x65, 0x74, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0d, 0x73, 0x79, 0x6e, 0x63, 0x5f,
	0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c,
	0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
	0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x0c,
	0x73, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x16,
	0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x72, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x47, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4c, 0x69,
	0x6e, 0x6b, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x48, 0x00, 0x52, 0x14, 0x6c, 0x69, 0x6e, 0x6b, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61,
	0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x14, 0x74, 0x65,
	0x73, 0x74, 0x5f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x49,
	0x6e, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52,
	0x12, 0x74, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f,
	0x74, 0x79, 0x70, 0x65, 0x22, 0xc7, 0x02, 0x0a, 0x0c, 0x44, 0x65, 0x66, 0x65, 0x72, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x44, 0x65, 0x66, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x2e, 0x44, 0x65, 0x66, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73,
	0x74, 0x61, 0x74, 0x65, 0x22, 0xf7, 0x01, 0x0a, 0x0a, 0x44, 0x65, 0x66, 0x65, 0x72, 0x53, 0x74,
	0x61, 0x74, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x42, 0x45, 0x47, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x0d,
	0x0a, 0x09, 0x46, 0x4c, 0x55, 0x53, 0x48, 0x5f, 0x52, 0x55, 0x4e, 0x10, 0x01, 0x12, 0x0f, 0x0a,
	0x0b, 0x46, 0x4c, 0x55, 0x53, 0x48, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x53, 0x10, 0x02, 0x12, 0x19,
	0x0a, 0x15, 0x46, 0x4c, 0x55, 0x53, 0x48, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, 0x41, 0x4c, 0x5f,
	0x48, 0x49, 0x53, 0x54, 0x4f, 0x52, 0x59, 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x4c, 0x55,
	0x53, 0x48, 0x5f, 0x54, 0x42, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, 0x46, 0x4c, 0x55, 0x53, 0x48,
	0x5f, 0x53, 0x55, 0x4d, 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, 0x46, 0x4c, 0x55, 0x53, 0x48, 0x5f,
	0x44, 0x45, 0x42, 0x4f, 0x55, 0x4e, 0x43, 0x45, 0x52, 0x10, 0x06, 0x12, 0x10, 0x0a, 0x0c, 0x46,
	0x4c, 0x55, 0x53, 0x48, 0x5f, 0x4f, 0x55, 0x54, 0x50, 0x55, 0x54, 0x10, 0x07, 0x12, 0x0d, 0x0a,
	0x09, 0x46, 0x4c, 0x55, 0x53, 0x48, 0x5f, 0x4a, 0x4f, 0x42, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09,
	0x46, 0x4c, 0x55, 0x53, 0x48, 0x5f, 0x44, 0x49, 0x52, 0x10, 0x09, 0x12, 0x0c, 0x0a, 0x08, 0x46,
	0x4c, 0x55, 0x53, 0x48, 0x5f, 0x46, 0x50, 0x10, 0x0a, 0x12, 0x0b, 0x0a, 0x07, 0x4a, 0x4f, 0x49,
	0x4e, 0x5f, 0x46, 0x50, 0x10, 0x0b, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x4c, 0x55, 0x53, 0x48, 0x5f,
	0x46, 0x53, 0x10, 0x0c, 0x12, 0x0f, 0x0a, 0x0b, 0x46, 0x4c, 0x55, 0x53, 0x48, 0x5f, 0x46, 0x49,
	0x4e, 0x41, 0x4c, 0x10, 0x0d, 0x12, 0x07, 0x0a, 0x03, 0x45, 0x4e, 0x44, 0x10, 0x0e, 0x22, 0x42,
	0x0a, 0x0c, 0x50, 0x61, 0x75, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32,
	0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c,
	0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
	0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e,
	0x66, 0x6f, 0x22, 0x0f, 0x0a, 0x0d, 0x50, 0x61, 0x75, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x22, 0x43, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e,
	0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x10, 0x0a, 0x0e, 0x52, 0x65, 0x73, 0x75,
	0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5b, 0x0a, 0x0c, 0x4c, 0x6f,
	0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x70,
	0x69, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x70, 0x69,
	0x4b, 0x65, 0x79, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66,
	0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x34, 0x0a, 0x0d, 0x4c, 0x6f, 0x67, 0x69, 0x6e,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63, 0x74, 0x69,
	0x76, 0x65, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0c, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x47, 0x0a,
	0x11, 0x47, 0x65, 0x74, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72,
	0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f,
	0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x45, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, 0x75, 0x6d,
	0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x04,
	0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x6d, 0x6d,
	0x61, 0x72, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22, 0x4d, 0x0a,
	0x17, 0x47, 0x65, 0x74, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66,
	0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x64, 0x0a, 0x12,
	0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x61, 0x6d, 0x70,
	0x6c, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
	0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x14, 0x0a, 0x05,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x22, 0x51, 0x0a, 0x13, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x74, 0x72,
	0x69, 0x63, 0x73, 0x42, 0x75, 0x66, 0x66, 0x65, 0x72, 0x12, 0x3a, 0x0a, 0x06, 0x72, 0x65, 0x63,
	0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x79, 0x73, 0x74, 0x65,
	0x6d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x06, 0x72,
	0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0xe5, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x53, 0x79, 0x73,
	0x74, 0x65, 0x6d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x62, 0x0a, 0x0e, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x6d, 0x65, 0x74,
	0x72, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x47, 0x65, 0x74, 0x53,
	0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x74, 0x72, 0x69,
	0x63, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0d, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d,
	0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x1a, 0x65, 0x0a, 0x12, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d,
	0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 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, 0x39,
	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e,
	0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53,
	0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x75, 0x66, 0x66,
	0x65, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x43, 0x0a,
	0x0d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32,
	0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c,
	0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
	0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e,
	0x66, 0x6f, 0x22, 0x38, 0x0a, 0x0e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x75, 0x6e, 0x5f, 0x73, 0x68, 0x6f, 0x75,
	0x6c, 0x64, 0x5f, 0x73, 0x74, 0x6f, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x72,
	0x75, 0x6e, 0x53, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x53, 0x74, 0x6f, 0x70, 0x22, 0x47, 0x0a, 0x11,
	0x53, 0x74, 0x6f, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52,
	0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x3c, 0x0a, 0x12, 0x53, 0x74, 0x6f, 0x70, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x72,
	0x75, 0x6e, 0x5f, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x5f, 0x73, 0x74, 0x6f, 0x70, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x72, 0x75, 0x6e, 0x53, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x53,
	0x74, 0x6f, 0x70, 0x22, 0x4a, 0x0a, 0x14, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74,
	0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x5f,
	0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22,
	0x62, 0x0a, 0x15, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x11, 0x6e, 0x65, 0x74, 0x77,
	0x6f, 0x72, 0x6b, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
	0x65, 0x52, 0x10, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x73, 0x22, 0x66, 0x0a, 0x0c, 0x48, 0x74, 0x74, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f,
	0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x73, 0x74, 0x61, 0x74,
	0x75, 0x73, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x68,
	0x74, 0x74, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x2c, 0x0a,
	0x12, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x74,
	0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x68, 0x74, 0x74, 0x70, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x65, 0x78, 0x74, 0x22, 0x4d, 0x0a, 0x17, 0x49,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18,
	0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x58, 0x0a, 0x18, 0x49, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
	0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73,
	0x61, 0x67, 0x65, 0x73, 0x22, 0x2c, 0x0a, 0x10, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x61, 0x72, 0x6e,
	0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x77, 0x61, 0x72, 0x6e, 0x69,
	0x6e, 0x67, 0x22, 0x45, 0x0a, 0x0f, 0x50, 0x6f, 0x6c, 0x6c, 0x45, 0x78, 0x69, 0x74, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49,
	0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xe7, 0x01, 0x0a, 0x10, 0x50, 0x6f,
	0x6c, 0x6c, 0x45, 0x78, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12,
	0x0a, 0x04, 0x64, 0x6f, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x64, 0x6f,
	0x6e, 0x65, 0x12, 0x3e, 0x0a, 0x0b, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c,
	0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e, 0x45, 0x78, 0x69, 0x74,
	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0a, 0x65, 0x78, 0x69, 0x74, 0x52, 0x65, 0x73, 0x75,
	0x6c, 0x74, 0x12, 0x42, 0x0a, 0x0c, 0x70, 0x75, 0x73, 0x68, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61,
	0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x75,
	0x73, 0x68, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x65,
	0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3b, 0x0a, 0x0b, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x46, 0x69, 0x6c,
	0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x75,
	0x6e, 0x74, 0x73, 0x22, 0x58, 0x0a, 0x0d, 0x53, 0x79, 0x6e, 0x63, 0x4f, 0x76, 0x65, 0x72, 0x77,
	0x72, 0x69, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x72, 0x75, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x75, 0x6e, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65,
	0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x6e, 0x74,
	0x69, 0x74, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x29, 0x0a,
	0x08, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x6b, 0x69, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x75, 0x74,
	0x70, 0x75, 0x74, 0x5f, 0x72, 0x61, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6f,
	0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x61, 0x77, 0x22, 0x13, 0x0a, 0x11, 0x53, 0x65, 0x6e, 0x64,
	0x65, 0x72, 0x4d, 0x61, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xbe, 0x01,
	0x0a, 0x0b, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a,
	0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74,
	0x12, 0x21, 0x0a, 0x0c, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x4f, 0x66, 0x66,
	0x73, 0x65, 0x74, 0x12, 0x3b, 0x0a, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x72, 0x69, 0x74, 0x65,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x4f, 0x76, 0x65, 0x72,
	0x77, 0x72, 0x69, 0x74, 0x65, 0x52, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x72, 0x69, 0x74, 0x65,
	0x12, 0x2c, 0x0a, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18,
	0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
	0x53, 0x79, 0x6e, 0x63, 0x53, 0x6b, 0x69, 0x70, 0x52, 0x04, 0x73, 0x6b, 0x69, 0x70, 0x22, 0x51,
	0x0a, 0x0c, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10,
	0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c,
	0x12, 0x2f, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x19, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x22, 0x59, 0x0a, 0x11, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x52, 0x65, 0x61, 0x64, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f,
	0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x74,
	0x61, 0x72, 0x74, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x69, 0x6e,
	0x61, 0x6c, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x0b, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x8e, 0x01, 0x0a,
	0x13, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x5f, 0x6e,
	0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64,
	0x4e, 0x75, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x73,
	0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x73, 0x65, 0x6e, 0x74, 0x4f, 0x66,
	0x66, 0x73, 0x65, 0x74, 0x12, 0x37, 0x0a, 0x09, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x74, 0x69, 0x6d,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
	0x61, 0x6d, 0x70, 0x52, 0x08, 0x73, 0x79, 0x6e, 0x63, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x4f, 0x0a,
	0x14, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52,
	0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x22, 0x57,
	0x0a, 0x16, 0x54, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72,
	0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x09, 0x74, 0x65, 0x6c, 0x65,
	0x6d, 0x65, 0x74, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x54, 0x65, 0x6c,
	0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x09, 0x74, 0x65,
	0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x22, 0x47, 0x0a, 0x11, 0x53, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x05,
	0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f,
	0x22, 0x97, 0x01, 0x0a, 0x12, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52,
	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
	0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4c, 0x6f, 0x63,
	0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x49, 0x6e, 0x66,
	0x6f, 0x12, 0x47, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73,
	0x61, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x43, 0x0a, 0x0e, 0x53, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x31, 0x0a, 0x04,
	0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x65, 0x72, 0x76,
	0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22,
	0x90, 0x01, 0x0a, 0x0d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
	0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x54, 0x65, 0x78, 0x74,
	0x12, 0x19, 0x0a, 0x08, 0x75, 0x74, 0x66, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x07, 0x75, 0x74, 0x66, 0x54, 0x65, 0x78, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x68,
	0x74, 0x6d, 0x6c, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
	0x68, 0x74, 0x6d, 0x6c, 0x54, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05,
	0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x65, 0x76,
	0x65, 0x6c, 0x22, 0x96, 0x01, 0x0a, 0x0a, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x43, 0x6f, 0x75,
	0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x43, 0x6f,
	0x75, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f,
	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x61, 0x72, 0x74,
	0x69, 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x74,
	0x68, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52,
	0x0a, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x7e, 0x0a, 0x0f, 0x46,
	0x69, 0x6c, 0x65, 0x50, 0x75, 0x73, 0x68, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x25,
	0x0a, 0x0e, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64,
	0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x62,
	0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61,
	0x6c, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x64, 0x75, 0x70, 0x65,
	0x64, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x64,
	0x65, 0x64, 0x75, 0x70, 0x65, 0x64, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0x25, 0x0a, 0x0d, 0x46,
	0x69, 0x6c, 0x65, 0x73, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05,
	0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x66, 0x69, 0x6c,
	0x65, 0x73, 0x22, 0xa2, 0x02, 0x0a, 0x17, 0x46, 0x69, 0x6c, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73,
	0x66, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x48,
	0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x46, 0x69,
	0x6c, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x79,
	0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x10, 0x0a, 0x03,
	0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x12,
	0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69,
	0x7a, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x64,
	0x12, 0x3b, 0x0a, 0x0b, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18,
	0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74,
	0x73, 0x52, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x22, 0x28, 0x0a,
	0x0c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a,
	0x06, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x6f, 0x77,
	0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x10, 0x01, 0x22, 0x45, 0x0a, 0x09, 0x4c, 0x6f, 0x63, 0x61, 0x6c,
	0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1e,
	0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x4f, 0x66, 0x44, 0x61, 0x74, 0x65, 0x22, 0x45,
	0x0a, 0x0f, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52,
	0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x12, 0x0a, 0x10, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77,
	0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x60, 0x0a, 0x0d, 0x41, 0x74, 0x74,
	0x61, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x74,
	0x74, 0x61, 0x63, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61,
	0x74, 0x74, 0x61, 0x63, 0x68, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
	0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x6e, 0x0a, 0x0e, 0x41,
	0x74, 0x74, 0x61, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a,
	0x03, 0x72, 0x75, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e, 0x52,
	0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x03, 0x72, 0x75, 0x6e, 0x12, 0x2f, 0x0a, 0x05, 0x65, 0x72,
	0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72,
	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0xf1, 0x03, 0x0a, 0x11,
	0x54, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x5f, 0x65, 0x78, 0x63,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x45,
	0x78, 0x63, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x5f, 0x65, 0x78,
	0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65,
	0x72, 0x45, 0x78, 0x69, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72,
	0x5f, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x68, 0x61,
	0x6e, 0x64, 0x6c, 0x65, 0x72, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65,
	0x6e, 0x64, 0x65, 0x72, 0x5f, 0x65, 0x78, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
	0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x45, 0x78, 0x63, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x6e,
	0x64, 0x65, 0x72, 0x5f, 0x65, 0x78, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a,
	0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x45, 0x78, 0x69, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65,
	0x6e, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x0b, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x12, 0x17, 0x0a,
	0x07, 0x72, 0x65, 0x71, 0x5f, 0x65, 0x78, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
	0x72, 0x65, 0x71, 0x45, 0x78, 0x63, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x5f, 0x65, 0x78,
	0x69, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x72, 0x65, 0x71, 0x45, 0x78, 0x69,
	0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x71, 0x5f, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x18, 0x09,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x71, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x12, 0x19,
	0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x5f, 0x65, 0x78, 0x63, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x07, 0x72, 0x65, 0x73, 0x70, 0x45, 0x78, 0x63, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x73,
	0x70, 0x5f, 0x65, 0x78, 0x69, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65,
	0x73, 0x70, 0x45, 0x78, 0x69, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x70, 0x5f, 0x61,
	0x62, 0x6f, 0x72, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x65, 0x73, 0x70,
	0x41, 0x62, 0x6f, 0x72, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x64, 0x72, 0x6f,
	0x70, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x44, 0x72, 0x6f, 0x70,
	0x12, 0x19, 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x5f, 0x68, 0x61, 0x6e, 0x67, 0x18, 0x0e, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x48, 0x61, 0x6e, 0x67, 0x12, 0x32, 0x0a, 0x05, 0x5f,
	0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22,
	0x14, 0x0a, 0x12, 0x54, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73,
	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x25, 0x0a, 0x0d, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79,
	0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x75, 0x73, 0x68, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x6c, 0x75, 0x73, 0x68, 0x22, 0xe4, 0x01, 0x0a,
	0x15, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01,
	0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x74, 0x65,
	0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x12, 0x2f, 0x0a, 0x04, 0x73, 0x74, 0x65, 0x70, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x74,
	0x65, 0x70, 0x52, 0x04, 0x73, 0x74, 0x65, 0x70, 0x12, 0x35, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69,
	0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72,
	0x79, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49,
	0x6e, 0x66, 0x6f, 0x22, 0x18, 0x0a, 0x16, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x48, 0x69,
	0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4b, 0x0a,
	0x15, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18,
	0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x87, 0x01, 0x0a, 0x12, 0x53,
	0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x74, 0x65,
	0x6d, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
	0x6b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x6b, 0x65,
	0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x4b,
	0x65, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f, 0x66, 0x6c, 0x6f,
	0x61, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x02, 0x52, 0x0b, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73,
	0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x5f,
	0x69, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x03, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65,
	0x73, 0x49, 0x6e, 0x74, 0x22, 0x50, 0x0a, 0x16, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64, 0x48,
	0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36,
	0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x61,
	0x6d, 0x70, 0x6c, 0x65, 0x64, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x74, 0x65, 0x6d,
	0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22, 0x46, 0x0a, 0x10, 0x52, 0x75, 0x6e, 0x53, 0x74, 0x61,
	0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69,
	0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xa4,
	0x01, 0x0a, 0x11, 0x52, 0x75, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x69, 0x74, 0x65,
	0x6d, 0x73, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e,
	0x73, 0x79, 0x6e, 0x63, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x2c,
	0x0a, 0x12, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x70, 0x65, 0x6e,
	0x64, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x73, 0x79, 0x6e, 0x63,
	0x49, 0x74, 0x65, 0x6d, 0x73, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x37, 0x0a, 0x09,
	0x73, 0x79, 0x6e, 0x63, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x08, 0x73, 0x79, 0x6e,
	0x63, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x72, 0x0a, 0x0f, 0x52, 0x75, 0x6e, 0x53, 0x74, 0x61, 0x72,
	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x03, 0x72, 0x75, 0x6e, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
	0x52, 0x03, 0x72, 0x75, 0x6e, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8,
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49,
	0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x12, 0x0a, 0x10, 0x52, 0x75, 0x6e,
	0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x72, 0x0a,
	0x13, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f,
	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63,
	0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a,
	0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
	0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66,
	0x6f, 0x22, 0x89, 0x01, 0x0a, 0x14, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x70,
	0x67, 0x72, 0x61, 0x64, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0e, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x4d, 0x65, 0x73, 0x73,
	0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x79, 0x61, 0x6e, 0x6b, 0x5f, 0x6d, 0x65, 0x73, 0x73,
	0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x79, 0x61, 0x6e, 0x6b, 0x4d,
	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65,
	0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
	0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x44, 0x0a,
	0x0e, 0x4a, 0x6f, 0x62, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49,
	0x6e, 0x66, 0x6f, 0x22, 0x4b, 0x0a, 0x0f, 0x4a, 0x6f, 0x62, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e,
	0x63, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x71, 0x75,
	0x65, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
	0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
	0x22, 0xc8, 0x01, 0x0a, 0x12, 0x4c, 0x6f, 0x67, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66,
	0x61, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66,
	0x61, 0x63, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66,
	0x61, 0x63, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x73,
	0x74, 0x65, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x68, 0x69, 0x73, 0x74, 0x6f,
	0x72, 0x79, 0x53, 0x74, 0x65, 0x70, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x67, 0x69, 0x6e,
	0x67, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x61,
	0x67, 0x69, 0x6e, 0x67, 0x44, 0x69, 0x72, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
	0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x5b, 0x0a, 0x13, 0x4c,
	0x6f, 0x67, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63,
	0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73,
	0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f,
	0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x8d, 0x02, 0x0a, 0x17, 0x44, 0x6f, 0x77,
	0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74,
	0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x66,
	0x61, 0x63, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61,
	0x64, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x6f,
	0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x38, 0x0a, 0x18, 0x61, 0x6c,
	0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, 0x66, 0x65,
	0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x61, 0x6c,
	0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65,
	0x6e, 0x63, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x61, 0x63,
	0x68, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x61,
	0x63, 0x68, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x70, 0x72, 0x65, 0x66,
	0x69, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x74, 0x68, 0x50, 0x72,
	0x65, 0x66, 0x69, 0x78, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e,
	0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x3f, 0x0a, 0x18, 0x44, 0x6f, 0x77, 0x6e,
	0x6c, 0x6f, 0x61, 0x64, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70,
	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65,
	0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72,
	0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x46, 0x0a, 0x10, 0x4b, 0x65, 0x65,
	0x70, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a,
	0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
	0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66,
	0x6f, 0x22, 0x13, 0x0a, 0x11, 0x4b, 0x65, 0x65, 0x70, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x52, 0x65,
	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xab, 0x01, 0x0a, 0x0c, 0x41, 0x72, 0x74, 0x69, 0x66,
	0x61, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66,
	0x61, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66,
	0x61, 0x63, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x70, 0x6f, 0x69, 0x6e,
	0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x70, 0x6f,
	0x69, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x6f, 0x74, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6e, 0x6f, 0x74, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12,
	0x23, 0x0a, 0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
	0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e,
	0x74, 0x65, 0x78, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x66, 0x69,
	0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72,
	0x66, 0x69, 0x6c, 0x65, 0x22, 0x39, 0x0a, 0x07, 0x47, 0x69, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12,
	0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x69,
	0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x22,
	0xc0, 0x01, 0x0a, 0x09, 0x47, 0x69, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x32, 0x0a,
	0x08, 0x67, 0x69, 0x74, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x17, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x47, 0x69, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x67, 0x69, 0x74, 0x49, 0x6e, 0x66,
	0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18,
	0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x70, 0x6f, 0x69, 0x6e,
	0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x6f, 0x74, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x08, 0x6e, 0x6f, 0x74, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x23, 0x0a,
	0x0d, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65,
	0x78, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x66, 0x69, 0x6c, 0x65,
	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x66, 0x69,
	0x6c, 0x65, 0x22, 0x23, 0x0a, 0x0b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0xa2, 0x01, 0x0a, 0x06, 0x53, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x12, 0x2b, 0x0a, 0x03, 0x67, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x19, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x47, 0x69, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x03, 0x67, 0x69, 0x74, 0x12,
	0x38, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52,
	0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x31, 0x0a, 0x05, 0x69, 0x6d, 0x61,
	0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62,
	0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x53,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x91, 0x01, 0x0a,
	0x09, 0x4a, 0x6f, 0x62, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x5f, 0x76,
	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x56, 0x65,
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f,
	0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x06,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d,
	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65,
	0x22, 0x6b, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x4a, 0x6f, 0x62, 0x41, 0x72,
	0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6a, 0x6f, 0x62, 0x5f, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6a, 0x6f, 0x62, 0x4e, 0x61, 0x6d,
	0x65, 0x12, 0x3a, 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69,
	0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4a, 0x6f, 0x62, 0x53, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xbc, 0x01,
	0x0a, 0x11, 0x55, 0x73, 0x65, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x63,
	0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x07, 0x70,
	0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x50, 0x61,
	0x72, 0x74, 0x69, 0x61, 0x6c, 0x4a, 0x6f, 0x62, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74,
	0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x31, 0x0a, 0x05, 0x5f, 0x69, 0x6e,
	0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x63, 0x6f,
	0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x13, 0x0a, 0x11,
	0x55, 0x73, 0x65, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c,
	0x74, 0x22, 0x64, 0x0a, 0x0d, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x5f, 0x73, 0x6c, 0x6f,
	0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x53,
	0x6c, 0x6f, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0xc8, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x5f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x66,
	0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x10, 0x0a, 0x0e, 0x43, 0x61, 0x6e, 0x63, 0x65,
	0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x34, 0x0a, 0x08, 0x44, 0x69, 0x73,
	0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x75,
	0x73, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x75, 0x73, 0x65, 0x64, 0x22,
	0x22, 0x0a, 0x0a, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a,
	0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x74, 0x6f,
	0x74, 0x61, 0x6c, 0x22, 0x44, 0x0a, 0x07, 0x43, 0x70, 0x75, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14,
	0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63,
	0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6c, 0x6f,
	0x67, 0x69, 0x63, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6f, 0x75,
	0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x22, 0x56, 0x0a, 0x0c, 0x47, 0x70, 0x75,
	0x41, 0x70, 0x70, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x70, 0x75,
	0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x70, 0x75, 0x54,
	0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x63,
	0x6f, 0x72, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x72, 0x65,
	0x73, 0x22, 0x89, 0x01, 0x0a, 0x0d, 0x47, 0x70, 0x75, 0x4e, 0x76, 0x69, 0x64, 0x69, 0x61, 0x49,
	0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x6f, 0x72,
	0x79, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6d,
	0x65, 0x6d, 0x6f, 0x72, 0x79, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x75,
	0x64, 0x61, 0x5f, 0x63, 0x6f, 0x72, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09,
	0x63, 0x75, 0x64, 0x61, 0x43, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x63,
	0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x0c, 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x22, 0x95, 0x03,
	0x0a, 0x0a, 0x47, 0x70, 0x75, 0x41, 0x6d, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09,
	0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x76, 0x62, 0x69,
	0x6f, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0c, 0x76, 0x62, 0x69, 0x6f, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2b,
	0x0a, 0x11, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x65,
	0x76, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x65, 0x72, 0x66, 0x6f,
	0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x67,
	0x70, 0x75, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x64, 0x72, 0x69, 0x76, 0x65, 0x18, 0x05, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0c, 0x67, 0x70, 0x75, 0x4f, 0x76, 0x65, 0x72, 0x64, 0x72, 0x69, 0x76, 0x65,
	0x12, 0x30, 0x0a, 0x14, 0x67, 0x70, 0x75, 0x5f, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x6f,
	0x76, 0x65, 0x72, 0x64, 0x72, 0x69, 0x76, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12,
	0x67, 0x70, 0x75, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x4f, 0x76, 0x65, 0x72, 0x64, 0x72, 0x69,
	0x76, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x12,
	0x16, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x06, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
	0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x16, 0x0a,
	0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x76,
	0x65, 0x6e, 0x64, 0x6f, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x6b, 0x75, 0x18, 0x0b, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x73, 0x6b, 0x75, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x63, 0x6c, 0x6b, 0x5f,
	0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x63, 0x6c,
	0x6b, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x63, 0x6c, 0x6b, 0x5f, 0x72,
	0x61, 0x6e, 0x67, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x63, 0x6c, 0x6b,
	0x52, 0x61, 0x6e, 0x67, 0x65, 0x22, 0xa9, 0x01, 0x0a, 0x0c, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69,
	0x75, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x65,
	0x6e, 0x64, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x76, 0x65, 0x6e, 0x64,
	0x6f, 0x72, 0x12, 0x2e, 0x0a, 0x13, 0x6e, 0x65, 0x75, 0x72, 0x6f, 0x6e, 0x5f, 0x64, 0x65, 0x76,
	0x69, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x11, 0x6e, 0x65, 0x75, 0x72, 0x6f, 0x6e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x75,
	0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x1b, 0x6e, 0x65, 0x75, 0x72, 0x6f, 0x6e, 0x63, 0x6f, 0x72, 0x65,
	0x5f, 0x70, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e,
	0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x6e, 0x65, 0x75, 0x72, 0x6f, 0x6e, 0x63,
	0x6f, 0x72, 0x65, 0x50, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x75, 0x6e,
	0x74, 0x22, 0xa2, 0x0a, 0x0a, 0x0f, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x02, 0x6f, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x79, 0x74, 0x68, 0x6f, 0x6e, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x79, 0x74, 0x68, 0x6f, 0x6e, 0x12, 0x3c, 0x0a,
	0x0b, 0x68, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0b,
	0x68, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x41, 0x74, 0x12, 0x38, 0x0a, 0x09, 0x73,
	0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
	0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72,
	0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x12, 0x12, 0x0a,
	0x04, 0x63, 0x75, 0x64, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x75, 0x64,
	0x61, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52,
	0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x08,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70,
	0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72,
	0x6f, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x70, 0x61,
	0x74, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x64, 0x65, 0x50, 0x61,
	0x74, 0x68, 0x12, 0x2f, 0x0a, 0x03, 0x67, 0x69, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
	0x2e, 0x47, 0x69, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x03,
	0x67, 0x69, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x0c, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6f,
	0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x12, 0x12, 0x0a,
	0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73,
	0x74, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0f, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a,
	0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x26, 0x0a,
	0x0f, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
	0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x64, 0x65, 0x50, 0x61, 0x74, 0x68,
	0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x61, 0x62, 0x18, 0x12,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x61, 0x62, 0x12, 0x1c, 0x0a, 0x09, 0x63,
	0x70, 0x75, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09,
	0x63, 0x70, 0x75, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x63, 0x70, 0x75,
	0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x18, 0x14,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x70, 0x75, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
	0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x12, 0x15, 0x0a, 0x08, 0x67, 0x70, 0x75, 0x5f, 0x74,
	0x79, 0x70, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x67, 0x70, 0x75, 0x12, 0x1c,
	0x0a, 0x09, 0x67, 0x70, 0x75, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x09, 0x67, 0x70, 0x75, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x04,
	0x64, 0x69, 0x73, 0x6b, 0x18, 0x17, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x77, 0x61, 0x6e,
	0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4d, 0x65, 0x74, 0x61,
	0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x69, 0x73, 0x6b,
	0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x64, 0x69, 0x73, 0x6b, 0x12, 0x32, 0x0a, 0x06, 0x6d,
	0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x77, 0x61,
	0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4d, 0x65, 0x6d,
	0x6f, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12,
	0x29, 0x0a, 0x03, 0x63, 0x70, 0x75, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x43, 0x70,
	0x75, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x63, 0x70, 0x75, 0x12, 0x39, 0x0a, 0x09, 0x67, 0x70,
	0x75, 0x5f, 0x61, 0x70, 0x70, 0x6c, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
	0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x47,
	0x70, 0x75, 0x41, 0x70, 0x70, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x67, 0x70, 0x75,
	0x61, 0x70, 0x70, 0x6c, 0x65, 0x12, 0x3d, 0x0a, 0x0a, 0x67, 0x70, 0x75, 0x5f, 0x6e, 0x76, 0x69,
	0x64, 0x69, 0x61, 0x18, 0x1b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x47, 0x70, 0x75, 0x4e, 0x76,
	0x69, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x67, 0x70, 0x75, 0x5f, 0x6e, 0x76,
	0x69, 0x64, 0x69, 0x61, 0x12, 0x34, 0x0a, 0x07, 0x67, 0x70, 0x75, 0x5f, 0x61, 0x6d, 0x64, 0x18,
	0x1c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e,
	0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x47, 0x70, 0x75, 0x41, 0x6d, 0x64, 0x49, 0x6e, 0x66,
	0x6f, 0x52, 0x07, 0x67, 0x70, 0x75, 0x5f, 0x61, 0x6d, 0x64, 0x12, 0x40, 0x0a, 0x05, 0x73, 0x6c,
	0x75, 0x72, 0x6d, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64,
	0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x6c, 0x75, 0x72, 0x6d,
	0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x73, 0x6c, 0x75, 0x72, 0x6d, 0x12, 0x21, 0x0a, 0x0c,
	0x63, 0x75, 0x64, 0x61, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x1e, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0b, 0x63, 0x75, 0x64, 0x61, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
	0x38, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x75, 0x6d, 0x18, 0x1f, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x75, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52,
	0x08, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x75, 0x6d, 0x1a, 0x51, 0x0a, 0x09, 0x44, 0x69, 0x73,
	0x6b, 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, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f,
	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x49, 0x6e, 0x66,
	0x6f, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x38, 0x0a, 0x0a,
	0x53, 0x6c, 0x75, 0x72, 0x6d, 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, 0xa5, 0x01, 0x0a, 0x15, 0x50, 0x79, 0x74, 0x68, 0x6f,
	0x6e, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
	0x12, 0x4d, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x33, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
	0x61, 0x6c, 0x2e, 0x50, 0x79, 0x74, 0x68, 0x6f, 0x6e, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65,
	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x79, 0x74, 0x68, 0x6f, 0x6e, 0x50,
	0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x1a,
	0x3d, 0x0a, 0x0d, 0x50, 0x79, 0x74, 0x68, 0x6f, 0x6e, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65,
	0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
	0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x22,
	0x0a, 0x0c, 0x4a, 0x6f, 0x62, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, 0x12,
	0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61,
	0x74, 0x68, 0x22, 0xed, 0x01, 0x0a, 0x0e, 0x4a, 0x6f, 0x62, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x53,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x4f, 0x0a, 0x0a, 0x72, 0x75, 0x6e, 0x5f, 0x63, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x77, 0x61, 0x6e, 0x64,
	0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4a, 0x6f, 0x62, 0x49, 0x6e,
	0x70, 0x75, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x52, 0x75, 0x6e, 0x43, 0x6f, 0x6e,
	0x66, 0x69, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x09, 0x72, 0x75, 0x6e,
	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x45, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4a, 0x6f, 0x62, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x53, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x53,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x1a, 0x11, 0x0a,
	0x0f, 0x52, 0x75, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x1a, 0x26, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x42, 0x08, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x22, 0xfd, 0x01, 0x0a, 0x0f, 0x4a, 0x6f, 0x62, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52,
	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f,
	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x77,
	0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4a, 0x6f,
	0x62, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0b, 0x69, 0x6e,
	0x70, 0x75, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x41, 0x0a, 0x0d, 0x69, 0x6e, 0x63,
	0x6c, 0x75, 0x64, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x2e, 0x4a, 0x6f, 0x62, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x50, 0x61, 0x74, 0x68, 0x52, 0x0c,
	0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x12, 0x41, 0x0a, 0x0d,
	0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x03, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x77, 0x61, 0x6e, 0x64, 0x62, 0x5f, 0x69, 0x6e, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x4a, 0x6f, 0x62, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x50, 0x61, 0x74,
	0x68, 0x52, 0x0c, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x12,
	0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x53, 0x63, 0x68, 0x65,
	0x6d, 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_wandb_proto_wandb_internal_proto_rawDescOnce sync.Once
	file_wandb_proto_wandb_internal_proto_rawDescData = file_wandb_proto_wandb_internal_proto_rawDesc
)

func file_wandb_proto_wandb_internal_proto_rawDescGZIP() []byte {
	file_wandb_proto_wandb_internal_proto_rawDescOnce.Do(func() {
		file_wandb_proto_wandb_internal_proto_rawDescData = protoimpl.X.CompressGZIP(file_wandb_proto_wandb_internal_proto_rawDescData)
	})
	return file_wandb_proto_wandb_internal_proto_rawDescData
}

var file_wandb_proto_wandb_internal_proto_enumTypes = make([]protoimpl.EnumInfo, 9)
var file_wandb_proto_wandb_internal_proto_msgTypes = make([]protoimpl.MessageInfo, 154)
var file_wandb_proto_wandb_internal_proto_goTypes = []interface{}{
	(ErrorInfo_ErrorCode)(0),                    // 0: wandb_internal.ErrorInfo.ErrorCode
	(OutputRecord_OutputType)(0),                // 1: wandb_internal.OutputRecord.OutputType
	(OutputRawRecord_OutputType)(0),             // 2: wandb_internal.OutputRawRecord.OutputType
	(MetricRecord_MetricGoal)(0),                // 3: wandb_internal.MetricRecord.MetricGoal
	(FilesItem_PolicyType)(0),                   // 4: wandb_internal.FilesItem.PolicyType
	(FilesItem_FileType)(0),                     // 5: wandb_internal.FilesItem.FileType
	(StatsRecord_StatsType)(0),                  // 6: wandb_internal.StatsRecord.StatsType
	(DeferRequest_DeferState)(0),                // 7: wandb_internal.DeferRequest.DeferState
	(FileTransferInfoRequest_TransferType)(0),   // 8: wandb_internal.FileTransferInfoRequest.TransferType
	(*Record)(nil),                              // 9: wandb_internal.Record
	(*Control)(nil),                             // 10: wandb_internal.Control
	(*Result)(nil),                              // 11: wandb_internal.Result
	(*FinalRecord)(nil),                         // 12: wandb_internal.FinalRecord
	(*VersionInfo)(nil),                         // 13: wandb_internal.VersionInfo
	(*HeaderRecord)(nil),                        // 14: wandb_internal.HeaderRecord
	(*FooterRecord)(nil),                        // 15: wandb_internal.FooterRecord
	(*RunRecord)(nil),                           // 16: wandb_internal.RunRecord
	(*GitRepoRecord)(nil),                       // 17: wandb_internal.GitRepoRecord
	(*RunUpdateResult)(nil),                     // 18: wandb_internal.RunUpdateResult
	(*ErrorInfo)(nil),                           // 19: wandb_internal.ErrorInfo
	(*RunExitRecord)(nil),                       // 20: wandb_internal.RunExitRecord
	(*RunExitResult)(nil),                       // 21: wandb_internal.RunExitResult
	(*RunPreemptingRecord)(nil),                 // 22: wandb_internal.RunPreemptingRecord
	(*RunPreemptingResult)(nil),                 // 23: wandb_internal.RunPreemptingResult
	(*SettingsRecord)(nil),                      // 24: wandb_internal.SettingsRecord
	(*SettingsItem)(nil),                        // 25: wandb_internal.SettingsItem
	(*HistoryStep)(nil),                         // 26: wandb_internal.HistoryStep
	(*HistoryRecord)(nil),                       // 27: wandb_internal.HistoryRecord
	(*HistoryItem)(nil),                         // 28: wandb_internal.HistoryItem
	(*HistoryResult)(nil),                       // 29: wandb_internal.HistoryResult
	(*OutputRecord)(nil),                        // 30: wandb_internal.OutputRecord
	(*OutputResult)(nil),                        // 31: wandb_internal.OutputResult
	(*OutputRawRecord)(nil),                     // 32: wandb_internal.OutputRawRecord
	(*OutputRawResult)(nil),                     // 33: wandb_internal.OutputRawResult
	(*MetricRecord)(nil),                        // 34: wandb_internal.MetricRecord
	(*MetricResult)(nil),                        // 35: wandb_internal.MetricResult
	(*MetricOptions)(nil),                       // 36: wandb_internal.MetricOptions
	(*MetricControl)(nil),                       // 37: wandb_internal.MetricControl
	(*MetricSummary)(nil),                       // 38: wandb_internal.MetricSummary
	(*ConfigRecord)(nil),                        // 39: wandb_internal.ConfigRecord
	(*ConfigItem)(nil),                          // 40: wandb_internal.ConfigItem
	(*ConfigResult)(nil),                        // 41: wandb_internal.ConfigResult
	(*SummaryRecord)(nil),                       // 42: wandb_internal.SummaryRecord
	(*SummaryItem)(nil),                         // 43: wandb_internal.SummaryItem
	(*SummaryResult)(nil),                       // 44: wandb_internal.SummaryResult
	(*FilesRecord)(nil),                         // 45: wandb_internal.FilesRecord
	(*FilesItem)(nil),                           // 46: wandb_internal.FilesItem
	(*FilesResult)(nil),                         // 47: wandb_internal.FilesResult
	(*StatsRecord)(nil),                         // 48: wandb_internal.StatsRecord
	(*StatsItem)(nil),                           // 49: wandb_internal.StatsItem
	(*ArtifactRecord)(nil),                      // 50: wandb_internal.ArtifactRecord
	(*ArtifactManifest)(nil),                    // 51: wandb_internal.ArtifactManifest
	(*ArtifactManifestEntry)(nil),               // 52: wandb_internal.ArtifactManifestEntry
	(*ExtraItem)(nil),                           // 53: wandb_internal.ExtraItem
	(*StoragePolicyConfigItem)(nil),             // 54: wandb_internal.StoragePolicyConfigItem
	(*ArtifactResult)(nil),                      // 55: wandb_internal.ArtifactResult
	(*LinkArtifactResult)(nil),                  // 56: wandb_internal.LinkArtifactResult
	(*LinkArtifactRequest)(nil),                 // 57: wandb_internal.LinkArtifactRequest
	(*LinkArtifactResponse)(nil),                // 58: wandb_internal.LinkArtifactResponse
	(*TBRecord)(nil),                            // 59: wandb_internal.TBRecord
	(*TBResult)(nil),                            // 60: wandb_internal.TBResult
	(*AlertRecord)(nil),                         // 61: wandb_internal.AlertRecord
	(*AlertResult)(nil),                         // 62: wandb_internal.AlertResult
	(*Request)(nil),                             // 63: wandb_internal.Request
	(*Response)(nil),                            // 64: wandb_internal.Response
	(*DeferRequest)(nil),                        // 65: wandb_internal.DeferRequest
	(*PauseRequest)(nil),                        // 66: wandb_internal.PauseRequest
	(*PauseResponse)(nil),                       // 67: wandb_internal.PauseResponse
	(*ResumeRequest)(nil),                       // 68: wandb_internal.ResumeRequest
	(*ResumeResponse)(nil),                      // 69: wandb_internal.ResumeResponse
	(*LoginRequest)(nil),                        // 70: wandb_internal.LoginRequest
	(*LoginResponse)(nil),                       // 71: wandb_internal.LoginResponse
	(*GetSummaryRequest)(nil),                   // 72: wandb_internal.GetSummaryRequest
	(*GetSummaryResponse)(nil),                  // 73: wandb_internal.GetSummaryResponse
	(*GetSystemMetricsRequest)(nil),             // 74: wandb_internal.GetSystemMetricsRequest
	(*SystemMetricSample)(nil),                  // 75: wandb_internal.SystemMetricSample
	(*SystemMetricsBuffer)(nil),                 // 76: wandb_internal.SystemMetricsBuffer
	(*GetSystemMetricsResponse)(nil),            // 77: wandb_internal.GetSystemMetricsResponse
	(*StatusRequest)(nil),                       // 78: wandb_internal.StatusRequest
	(*StatusResponse)(nil),                      // 79: wandb_internal.StatusResponse
	(*StopStatusRequest)(nil),                   // 80: wandb_internal.StopStatusRequest
	(*StopStatusResponse)(nil),                  // 81: wandb_internal.StopStatusResponse
	(*NetworkStatusRequest)(nil),                // 82: wandb_internal.NetworkStatusRequest
	(*NetworkStatusResponse)(nil),               // 83: wandb_internal.NetworkStatusResponse
	(*HttpResponse)(nil),                        // 84: wandb_internal.HttpResponse
	(*InternalMessagesRequest)(nil),             // 85: wandb_internal.InternalMessagesRequest
	(*InternalMessagesResponse)(nil),            // 86: wandb_internal.InternalMessagesResponse
	(*InternalMessages)(nil),                    // 87: wandb_internal.InternalMessages
	(*PollExitRequest)(nil),                     // 88: wandb_internal.PollExitRequest
	(*PollExitResponse)(nil),                    // 89: wandb_internal.PollExitResponse
	(*SyncOverwrite)(nil),                       // 90: wandb_internal.SyncOverwrite
	(*SyncSkip)(nil),                            // 91: wandb_internal.SyncSkip
	(*SenderMarkRequest)(nil),                   // 92: wandb_internal.SenderMarkRequest
	(*SyncRequest)(nil),                         // 93: wandb_internal.SyncRequest
	(*SyncResponse)(nil),                        // 94: wandb_internal.SyncResponse
	(*SenderReadRequest)(nil),                   // 95: wandb_internal.SenderReadRequest
	(*StatusReportRequest)(nil),                 // 96: wandb_internal.StatusReportRequest
	(*SummaryRecordRequest)(nil),                // 97: wandb_internal.SummaryRecordRequest
	(*TelemetryRecordRequest)(nil),              // 98: wandb_internal.TelemetryRecordRequest
	(*ServerInfoRequest)(nil),                   // 99: wandb_internal.ServerInfoRequest
	(*ServerInfoResponse)(nil),                  // 100: wandb_internal.ServerInfoResponse
	(*ServerMessages)(nil),                      // 101: wandb_internal.ServerMessages
	(*ServerMessage)(nil),                       // 102: wandb_internal.ServerMessage
	(*FileCounts)(nil),                          // 103: wandb_internal.FileCounts
	(*FilePusherStats)(nil),                     // 104: wandb_internal.FilePusherStats
	(*FilesUploaded)(nil),                       // 105: wandb_internal.FilesUploaded
	(*FileTransferInfoRequest)(nil),             // 106: wandb_internal.FileTransferInfoRequest
	(*LocalInfo)(nil),                           // 107: wandb_internal.LocalInfo
	(*ShutdownRequest)(nil),                     // 108: wandb_internal.ShutdownRequest
	(*ShutdownResponse)(nil),                    // 109: wandb_internal.ShutdownResponse
	(*AttachRequest)(nil),                       // 110: wandb_internal.AttachRequest
	(*AttachResponse)(nil),                      // 111: wandb_internal.AttachResponse
	(*TestInjectRequest)(nil),                   // 112: wandb_internal.TestInjectRequest
	(*TestInjectResponse)(nil),                  // 113: wandb_internal.TestInjectResponse
	(*HistoryAction)(nil),                       // 114: wandb_internal.HistoryAction
	(*PartialHistoryRequest)(nil),               // 115: wandb_internal.PartialHistoryRequest
	(*PartialHistoryResponse)(nil),              // 116: wandb_internal.PartialHistoryResponse
	(*SampledHistoryRequest)(nil),               // 117: wandb_internal.SampledHistoryRequest
	(*SampledHistoryItem)(nil),                  // 118: wandb_internal.SampledHistoryItem
	(*SampledHistoryResponse)(nil),              // 119: wandb_internal.SampledHistoryResponse
	(*RunStatusRequest)(nil),                    // 120: wandb_internal.RunStatusRequest
	(*RunStatusResponse)(nil),                   // 121: wandb_internal.RunStatusResponse
	(*RunStartRequest)(nil),                     // 122: wandb_internal.RunStartRequest
	(*RunStartResponse)(nil),                    // 123: wandb_internal.RunStartResponse
	(*CheckVersionRequest)(nil),                 // 124: wandb_internal.CheckVersionRequest
	(*CheckVersionResponse)(nil),                // 125: wandb_internal.CheckVersionResponse
	(*JobInfoRequest)(nil),                      // 126: wandb_internal.JobInfoRequest
	(*JobInfoResponse)(nil),                     // 127: wandb_internal.JobInfoResponse
	(*LogArtifactRequest)(nil),                  // 128: wandb_internal.LogArtifactRequest
	(*LogArtifactResponse)(nil),                 // 129: wandb_internal.LogArtifactResponse
	(*DownloadArtifactRequest)(nil),             // 130: wandb_internal.DownloadArtifactRequest
	(*DownloadArtifactResponse)(nil),            // 131: wandb_internal.DownloadArtifactResponse
	(*KeepaliveRequest)(nil),                    // 132: wandb_internal.KeepaliveRequest
	(*KeepaliveResponse)(nil),                   // 133: wandb_internal.KeepaliveResponse
	(*ArtifactInfo)(nil),                        // 134: wandb_internal.ArtifactInfo
	(*GitInfo)(nil),                             // 135: wandb_internal.GitInfo
	(*GitSource)(nil),                           // 136: wandb_internal.GitSource
	(*ImageSource)(nil),                         // 137: wandb_internal.ImageSource
	(*Source)(nil),                              // 138: wandb_internal.Source
	(*JobSource)(nil),                           // 139: wandb_internal.JobSource
	(*PartialJobArtifact)(nil),                  // 140: wandb_internal.PartialJobArtifact
	(*UseArtifactRecord)(nil),                   // 141: wandb_internal.UseArtifactRecord
	(*UseArtifactResult)(nil),                   // 142: wandb_internal.UseArtifactResult
	(*CancelRequest)(nil),                       // 143: wandb_internal.CancelRequest
	(*CancelResponse)(nil),                      // 144: wandb_internal.CancelResponse
	(*DiskInfo)(nil),                            // 145: wandb_internal.DiskInfo
	(*MemoryInfo)(nil),                          // 146: wandb_internal.MemoryInfo
	(*CpuInfo)(nil),                             // 147: wandb_internal.CpuInfo
	(*GpuAppleInfo)(nil),                        // 148: wandb_internal.GpuAppleInfo
	(*GpuNvidiaInfo)(nil),                       // 149: wandb_internal.GpuNvidiaInfo
	(*GpuAmdInfo)(nil),                          // 150: wandb_internal.GpuAmdInfo
	(*TrainiumInfo)(nil),                        // 151: wandb_internal.TrainiumInfo
	(*MetadataRequest)(nil),                     // 152: wandb_internal.MetadataRequest
	(*PythonPackagesRequest)(nil),               // 153: wandb_internal.PythonPackagesRequest
	(*JobInputPath)(nil),                        // 154: wandb_internal.JobInputPath
	(*JobInputSource)(nil),                      // 155: wandb_internal.JobInputSource
	(*JobInputRequest)(nil),                     // 156: wandb_internal.JobInputRequest
	nil,                                         // 157: wandb_internal.GetSystemMetricsResponse.SystemMetricsEntry
	nil,                                         // 158: wandb_internal.MetadataRequest.DiskEntry
	nil,                                         // 159: wandb_internal.MetadataRequest.SlurmEntry
	(*PythonPackagesRequest_PythonPackage)(nil), // 160: wandb_internal.PythonPackagesRequest.PythonPackage
	(*JobInputSource_RunConfigSource)(nil),      // 161: wandb_internal.JobInputSource.RunConfigSource
	(*JobInputSource_ConfigFileSource)(nil),     // 162: wandb_internal.JobInputSource.ConfigFileSource
	(*TelemetryRecord)(nil),                     // 163: wandb_internal.TelemetryRecord
	(*emptypb.Empty)(nil),                       // 164: google.protobuf.Empty
	(*XRecordInfo)(nil),                         // 165: wandb_internal._RecordInfo
	(*XResultInfo)(nil),                         // 166: wandb_internal._ResultInfo
	(*timestamppb.Timestamp)(nil),               // 167: google.protobuf.Timestamp
	(*XRequestInfo)(nil),                        // 168: wandb_internal._RequestInfo
}
var file_wandb_proto_wandb_internal_proto_depIdxs = []int32{
	27,  // 0: wandb_internal.Record.history:type_name -> wandb_internal.HistoryRecord
	42,  // 1: wandb_internal.Record.summary:type_name -> wandb_internal.SummaryRecord
	30,  // 2: wandb_internal.Record.output:type_name -> wandb_internal.OutputRecord
	39,  // 3: wandb_internal.Record.config:type_name -> wandb_internal.ConfigRecord
	45,  // 4: wandb_internal.Record.files:type_name -> wandb_internal.FilesRecord
	48,  // 5: wandb_internal.Record.stats:type_name -> wandb_internal.StatsRecord
	50,  // 6: wandb_internal.Record.artifact:type_name -> wandb_internal.ArtifactRecord
	59,  // 7: wandb_internal.Record.tbrecord:type_name -> wandb_internal.TBRecord
	61,  // 8: wandb_internal.Record.alert:type_name -> wandb_internal.AlertRecord
	163, // 9: wandb_internal.Record.telemetry:type_name -> wandb_internal.TelemetryRecord
	34,  // 10: wandb_internal.Record.metric:type_name -> wandb_internal.MetricRecord
	32,  // 11: wandb_internal.Record.output_raw:type_name -> wandb_internal.OutputRawRecord
	16,  // 12: wandb_internal.Record.run:type_name -> wandb_internal.RunRecord
	20,  // 13: wandb_internal.Record.exit:type_name -> wandb_internal.RunExitRecord
	12,  // 14: wandb_internal.Record.final:type_name -> wandb_internal.FinalRecord
	14,  // 15: wandb_internal.Record.header:type_name -> wandb_internal.HeaderRecord
	15,  // 16: wandb_internal.Record.footer:type_name -> wandb_internal.FooterRecord
	22,  // 17: wandb_internal.Record.preempting:type_name -> wandb_internal.RunPreemptingRecord
	164, // 18: wandb_internal.Record.noop_link_artifact:type_name -> google.protobuf.Empty
	141, // 19: wandb_internal.Record.use_artifact:type_name -> wandb_internal.UseArtifactRecord
	63,  // 20: wandb_internal.Record.request:type_name -> wandb_internal.Request
	10,  // 21: wandb_internal.Record.control:type_name -> wandb_internal.Control
	165, // 22: wandb_internal.Record._info:type_name -> wandb_internal._RecordInfo
	18,  // 23: wandb_internal.Result.run_result:type_name -> wandb_internal.RunUpdateResult
	21,  // 24: wandb_internal.Result.exit_result:type_name -> wandb_internal.RunExitResult
	29,  // 25: wandb_internal.Result.log_result:type_name -> wandb_internal.HistoryResult
	44,  // 26: wandb_internal.Result.summary_result:type_name -> wandb_internal.SummaryResult
	31,  // 27: wandb_internal.Result.output_result:type_name -> wandb_internal.OutputResult
	41,  // 28: wandb_internal.Result.config_result:type_name -> wandb_internal.ConfigResult
	64,  // 29: wandb_internal.Result.response:type_name -> wandb_internal.Response
	10,  // 30: wandb_internal.Result.control:type_name -> wandb_internal.Control
	166, // 31: wandb_internal.Result._info:type_name -> wandb_internal._ResultInfo
	165, // 32: wandb_internal.FinalRecord._info:type_name -> wandb_internal._RecordInfo
	165, // 33: wandb_internal.VersionInfo._info:type_name -> wandb_internal._RecordInfo
	13,  // 34: wandb_internal.HeaderRecord.version_info:type_name -> wandb_internal.VersionInfo
	165, // 35: wandb_internal.HeaderRecord._info:type_name -> wandb_internal._RecordInfo
	165, // 36: wandb_internal.FooterRecord._info:type_name -> wandb_internal._RecordInfo
	39,  // 37: wandb_internal.RunRecord.config:type_name -> wandb_internal.ConfigRecord
	42,  // 38: wandb_internal.RunRecord.summary:type_name -> wandb_internal.SummaryRecord
	24,  // 39: wandb_internal.RunRecord.settings:type_name -> wandb_internal.SettingsRecord
	167, // 40: wandb_internal.RunRecord.start_time:type_name -> google.protobuf.Timestamp
	163, // 41: wandb_internal.RunRecord.telemetry:type_name -> wandb_internal.TelemetryRecord
	17,  // 42: wandb_internal.RunRecord.git:type_name -> wandb_internal.GitRepoRecord
	165, // 43: wandb_internal.RunRecord._info:type_name -> wandb_internal._RecordInfo
	16,  // 44: wandb_internal.RunUpdateResult.run:type_name -> wandb_internal.RunRecord
	19,  // 45: wandb_internal.RunUpdateResult.error:type_name -> wandb_internal.ErrorInfo
	0,   // 46: wandb_internal.ErrorInfo.code:type_name -> wandb_internal.ErrorInfo.ErrorCode
	165, // 47: wandb_internal.RunExitRecord._info:type_name -> wandb_internal._RecordInfo
	165, // 48: wandb_internal.RunPreemptingRecord._info:type_name -> wandb_internal._RecordInfo
	25,  // 49: wandb_internal.SettingsRecord.item:type_name -> wandb_internal.SettingsItem
	165, // 50: wandb_internal.SettingsRecord._info:type_name -> wandb_internal._RecordInfo
	28,  // 51: wandb_internal.HistoryRecord.item:type_name -> wandb_internal.HistoryItem
	26,  // 52: wandb_internal.HistoryRecord.step:type_name -> wandb_internal.HistoryStep
	165, // 53: wandb_internal.HistoryRecord._info:type_name -> wandb_internal._RecordInfo
	1,   // 54: wandb_internal.OutputRecord.output_type:type_name -> wandb_internal.OutputRecord.OutputType
	167, // 55: wandb_internal.OutputRecord.timestamp:type_name -> google.protobuf.Timestamp
	165, // 56: wandb_internal.OutputRecord._info:type_name -> wandb_internal._RecordInfo
	2,   // 57: wandb_internal.OutputRawRecord.output_type:type_name -> wandb_internal.OutputRawRecord.OutputType
	167, // 58: wandb_internal.OutputRawRecord.timestamp:type_name -> google.protobuf.Timestamp
	165, // 59: wandb_internal.OutputRawRecord._info:type_name -> wandb_internal._RecordInfo
	36,  // 60: wandb_internal.MetricRecord.options:type_name -> wandb_internal.MetricOptions
	38,  // 61: wandb_internal.MetricRecord.summary:type_name -> wandb_internal.MetricSummary
	3,   // 62: wandb_internal.MetricRecord.goal:type_name -> wandb_internal.MetricRecord.MetricGoal
	37,  // 63: wandb_internal.MetricRecord._control:type_name -> wandb_internal.MetricControl
	165, // 64: wandb_internal.MetricRecord._info:type_name -> wandb_internal._RecordInfo
	40,  // 65: wandb_internal.ConfigRecord.update:type_name -> wandb_internal.ConfigItem
	40,  // 66: wandb_internal.ConfigRecord.remove:type_name -> wandb_internal.ConfigItem
	165, // 67: wandb_internal.ConfigRecord._info:type_name -> wandb_internal._RecordInfo
	43,  // 68: wandb_internal.SummaryRecord.update:type_name -> wandb_internal.SummaryItem
	43,  // 69: wandb_internal.SummaryRecord.remove:type_name -> wandb_internal.SummaryItem
	165, // 70: wandb_internal.SummaryRecord._info:type_name -> wandb_internal._RecordInfo
	46,  // 71: wandb_internal.FilesRecord.files:type_name -> wandb_internal.FilesItem
	165, // 72: wandb_internal.FilesRecord._info:type_name -> wandb_internal._RecordInfo
	4,   // 73: wandb_internal.FilesItem.policy:type_name -> wandb_internal.FilesItem.PolicyType
	5,   // 74: wandb_internal.FilesItem.type:type_name -> wandb_internal.FilesItem.FileType
	6,   // 75: wandb_internal.StatsRecord.stats_type:type_name -> wandb_internal.StatsRecord.StatsType
	167, // 76: wandb_internal.StatsRecord.timestamp:type_name -> google.protobuf.Timestamp
	49,  // 77: wandb_internal.StatsRecord.item:type_name -> wandb_internal.StatsItem
	165, // 78: wandb_internal.StatsRecord._info:type_name -> wandb_internal._RecordInfo
	51,  // 79: wandb_internal.ArtifactRecord.manifest:type_name -> wandb_internal.ArtifactManifest
	165, // 80: wandb_internal.ArtifactRecord._info:type_name -> wandb_internal._RecordInfo
	54,  // 81: wandb_internal.ArtifactManifest.storage_policy_config:type_name -> wandb_internal.StoragePolicyConfigItem
	52,  // 82: wandb_internal.ArtifactManifest.contents:type_name -> wandb_internal.ArtifactManifestEntry
	53,  // 83: wandb_internal.ArtifactManifestEntry.extra:type_name -> wandb_internal.ExtraItem
	165, // 84: wandb_internal.LinkArtifactRequest._info:type_name -> wandb_internal._RecordInfo
	165, // 85: wandb_internal.TBRecord._info:type_name -> wandb_internal._RecordInfo
	165, // 86: wandb_internal.AlertRecord._info:type_name -> wandb_internal._RecordInfo
	80,  // 87: wandb_internal.Request.stop_status:type_name -> wandb_internal.StopStatusRequest
	82,  // 88: wandb_internal.Request.network_status:type_name -> wandb_internal.NetworkStatusRequest
	65,  // 89: wandb_internal.Request.defer:type_name -> wandb_internal.DeferRequest
	72,  // 90: wandb_internal.Request.get_summary:type_name -> wandb_internal.GetSummaryRequest
	70,  // 91: wandb_internal.Request.login:type_name -> wandb_internal.LoginRequest
	66,  // 92: wandb_internal.Request.pause:type_name -> wandb_internal.PauseRequest
	68,  // 93: wandb_internal.Request.resume:type_name -> wandb_internal.ResumeRequest
	88,  // 94: wandb_internal.Request.poll_exit:type_name -> wandb_internal.PollExitRequest
	117, // 95: wandb_internal.Request.sampled_history:type_name -> wandb_internal.SampledHistoryRequest
	115, // 96: wandb_internal.Request.partial_history:type_name -> wandb_internal.PartialHistoryRequest
	122, // 97: wandb_internal.Request.run_start:type_name -> wandb_internal.RunStartRequest
	124, // 98: wandb_internal.Request.check_version:type_name -> wandb_internal.CheckVersionRequest
	128, // 99: wandb_internal.Request.log_artifact:type_name -> wandb_internal.LogArtifactRequest
	130, // 100: wandb_internal.Request.download_artifact:type_name -> wandb_internal.DownloadArtifactRequest
	132, // 101: wandb_internal.Request.keepalive:type_name -> wandb_internal.KeepaliveRequest
	120, // 102: wandb_internal.Request.run_status:type_name -> wandb_internal.RunStatusRequest
	143, // 103: wandb_internal.Request.cancel:type_name -> wandb_internal.CancelRequest
	152, // 104: wandb_internal.Request.metadata:type_name -> wandb_internal.MetadataRequest
	85,  // 105: wandb_internal.Request.internal_messages:type_name -> wandb_internal.InternalMessagesRequest
	153, // 106: wandb_internal.Request.python_packages:type_name -> wandb_internal.PythonPackagesRequest
	108, // 107: wandb_internal.Request.shutdown:type_name -> wandb_internal.ShutdownRequest
	110, // 108: wandb_internal.Request.attach:type_name -> wandb_internal.AttachRequest
	78,  // 109: wandb_internal.Request.status:type_name -> wandb_internal.StatusRequest
	99,  // 110: wandb_internal.Request.server_info:type_name -> wandb_internal.ServerInfoRequest
	92,  // 111: wandb_internal.Request.sender_mark:type_name -> wandb_internal.SenderMarkRequest
	95,  // 112: wandb_internal.Request.sender_read:type_name -> wandb_internal.SenderReadRequest
	96,  // 113: wandb_internal.Request.status_report:type_name -> wandb_internal.StatusReportRequest
	97,  // 114: wandb_internal.Request.summary_record:type_name -> wandb_internal.SummaryRecordRequest
	98,  // 115: wandb_internal.Request.telemetry_record:type_name -> wandb_internal.TelemetryRecordRequest
	126, // 116: wandb_internal.Request.job_info:type_name -> wandb_internal.JobInfoRequest
	74,  // 117: wandb_internal.Request.get_system_metrics:type_name -> wandb_internal.GetSystemMetricsRequest
	93,  // 118: wandb_internal.Request.sync:type_name -> wandb_internal.SyncRequest
	156, // 119: wandb_internal.Request.job_input:type_name -> wandb_internal.JobInputRequest
	57,  // 120: wandb_internal.Request.link_artifact:type_name -> wandb_internal.LinkArtifactRequest
	112, // 121: wandb_internal.Request.test_inject:type_name -> wandb_internal.TestInjectRequest
	133, // 122: wandb_internal.Response.keepalive_response:type_name -> wandb_internal.KeepaliveResponse
	81,  // 123: wandb_internal.Response.stop_status_response:type_name -> wandb_internal.StopStatusResponse
	83,  // 124: wandb_internal.Response.network_status_response:type_name -> wandb_internal.NetworkStatusResponse
	71,  // 125: wandb_internal.Response.login_response:type_name -> wandb_internal.LoginResponse
	73,  // 126: wandb_internal.Response.get_summary_response:type_name -> wandb_internal.GetSummaryResponse
	89,  // 127: wandb_internal.Response.poll_exit_response:type_name -> wandb_internal.PollExitResponse
	119, // 128: wandb_internal.Response.sampled_history_response:type_name -> wandb_internal.SampledHistoryResponse
	123, // 129: wandb_internal.Response.run_start_response:type_name -> wandb_internal.RunStartResponse
	125, // 130: wandb_internal.Response.check_version_response:type_name -> wandb_internal.CheckVersionResponse
	129, // 131: wandb_internal.Response.log_artifact_response:type_name -> wandb_internal.LogArtifactResponse
	131, // 132: wandb_internal.Response.download_artifact_response:type_name -> wandb_internal.DownloadArtifactResponse
	121, // 133: wandb_internal.Response.run_status_response:type_name -> wandb_internal.RunStatusResponse
	144, // 134: wandb_internal.Response.cancel_response:type_name -> wandb_internal.CancelResponse
	86,  // 135: wandb_internal.Response.internal_messages_response:type_name -> wandb_internal.InternalMessagesResponse
	109, // 136: wandb_internal.Response.shutdown_response:type_name -> wandb_internal.ShutdownResponse
	111, // 137: wandb_internal.Response.attach_response:type_name -> wandb_internal.AttachResponse
	79,  // 138: wandb_internal.Response.status_response:type_name -> wandb_internal.StatusResponse
	100, // 139: wandb_internal.Response.server_info_response:type_name -> wandb_internal.ServerInfoResponse
	127, // 140: wandb_internal.Response.job_info_response:type_name -> wandb_internal.JobInfoResponse
	77,  // 141: wandb_internal.Response.get_system_metrics_response:type_name -> wandb_internal.GetSystemMetricsResponse
	94,  // 142: wandb_internal.Response.sync_response:type_name -> wandb_internal.SyncResponse
	58,  // 143: wandb_internal.Response.link_artifact_response:type_name -> wandb_internal.LinkArtifactResponse
	113, // 144: wandb_internal.Response.test_inject_response:type_name -> wandb_internal.TestInjectResponse
	7,   // 145: wandb_internal.DeferRequest.state:type_name -> wandb_internal.DeferRequest.DeferState
	168, // 146: wandb_internal.PauseRequest._info:type_name -> wandb_internal._RequestInfo
	168, // 147: wandb_internal.ResumeRequest._info:type_name -> wandb_internal._RequestInfo
	168, // 148: wandb_internal.LoginRequest._info:type_name -> wandb_internal._RequestInfo
	168, // 149: wandb_internal.GetSummaryRequest._info:type_name -> wandb_internal._RequestInfo
	43,  // 150: wandb_internal.GetSummaryResponse.item:type_name -> wandb_internal.SummaryItem
	168, // 151: wandb_internal.GetSystemMetricsRequest._info:type_name -> wandb_internal._RequestInfo
	167, // 152: wandb_internal.SystemMetricSample.timestamp:type_name -> google.protobuf.Timestamp
	75,  // 153: wandb_internal.SystemMetricsBuffer.record:type_name -> wandb_internal.SystemMetricSample
	157, // 154: wandb_internal.GetSystemMetricsResponse.system_metrics:type_name -> wandb_internal.GetSystemMetricsResponse.SystemMetricsEntry
	168, // 155: wandb_internal.StatusRequest._info:type_name -> wandb_internal._RequestInfo
	168, // 156: wandb_internal.StopStatusRequest._info:type_name -> wandb_internal._RequestInfo
	168, // 157: wandb_internal.NetworkStatusRequest._info:type_name -> wandb_internal._RequestInfo
	84,  // 158: wandb_internal.NetworkStatusResponse.network_responses:type_name -> wandb_internal.HttpResponse
	168, // 159: wandb_internal.InternalMessagesRequest._info:type_name -> wandb_internal._RequestInfo
	87,  // 160: wandb_internal.InternalMessagesResponse.messages:type_name -> wandb_internal.InternalMessages
	168, // 161: wandb_internal.PollExitRequest._info:type_name -> wandb_internal._RequestInfo
	21,  // 162: wandb_internal.PollExitResponse.exit_result:type_name -> wandb_internal.RunExitResult
	104, // 163: wandb_internal.PollExitResponse.pusher_stats:type_name -> wandb_internal.FilePusherStats
	103, // 164: wandb_internal.PollExitResponse.file_counts:type_name -> wandb_internal.FileCounts
	90,  // 165: wandb_internal.SyncRequest.overwrite:type_name -> wandb_internal.SyncOverwrite
	91,  // 166: wandb_internal.SyncRequest.skip:type_name -> wandb_internal.SyncSkip
	19,  // 167: wandb_internal.SyncResponse.error:type_name -> wandb_internal.ErrorInfo
	167, // 168: wandb_internal.StatusReportRequest.sync_time:type_name -> google.protobuf.Timestamp
	42,  // 169: wandb_internal.SummaryRecordRequest.summary:type_name -> wandb_internal.SummaryRecord
	163, // 170: wandb_internal.TelemetryRecordRequest.telemetry:type_name -> wandb_internal.TelemetryRecord
	168, // 171: wandb_internal.ServerInfoRequest._info:type_name -> wandb_internal._RequestInfo
	107, // 172: wandb_internal.ServerInfoResponse.local_info:type_name -> wandb_internal.LocalInfo
	101, // 173: wandb_internal.ServerInfoResponse.server_messages:type_name -> wandb_internal.ServerMessages
	102, // 174: wandb_internal.ServerMessages.item:type_name -> wandb_internal.ServerMessage
	8,   // 175: wandb_internal.FileTransferInfoRequest.type:type_name -> wandb_internal.FileTransferInfoRequest.TransferType
	103, // 176: wandb_internal.FileTransferInfoRequest.file_counts:type_name -> wandb_internal.FileCounts
	168, // 177: wandb_internal.ShutdownRequest._info:type_name -> wandb_internal._RequestInfo
	168, // 178: wandb_internal.AttachRequest._info:type_name -> wandb_internal._RequestInfo
	16,  // 179: wandb_internal.AttachResponse.run:type_name -> wandb_internal.RunRecord
	19,  // 180: wandb_internal.AttachResponse.error:type_name -> wandb_internal.ErrorInfo
	168, // 181: wandb_internal.TestInjectRequest._info:type_name -> wandb_internal._RequestInfo
	28,  // 182: wandb_internal.PartialHistoryRequest.item:type_name -> wandb_internal.HistoryItem
	26,  // 183: wandb_internal.PartialHistoryRequest.step:type_name -> wandb_internal.HistoryStep
	114, // 184: wandb_internal.PartialHistoryRequest.action:type_name -> wandb_internal.HistoryAction
	168, // 185: wandb_internal.PartialHistoryRequest._info:type_name -> wandb_internal._RequestInfo
	168, // 186: wandb_internal.SampledHistoryRequest._info:type_name -> wandb_internal._RequestInfo
	118, // 187: wandb_internal.SampledHistoryResponse.item:type_name -> wandb_internal.SampledHistoryItem
	168, // 188: wandb_internal.RunStatusRequest._info:type_name -> wandb_internal._RequestInfo
	167, // 189: wandb_internal.RunStatusResponse.sync_time:type_name -> google.protobuf.Timestamp
	16,  // 190: wandb_internal.RunStartRequest.run:type_name -> wandb_internal.RunRecord
	168, // 191: wandb_internal.RunStartRequest._info:type_name -> wandb_internal._RequestInfo
	168, // 192: wandb_internal.CheckVersionRequest._info:type_name -> wandb_internal._RequestInfo
	168, // 193: wandb_internal.JobInfoRequest._info:type_name -> wandb_internal._RequestInfo
	50,  // 194: wandb_internal.LogArtifactRequest.artifact:type_name -> wandb_internal.ArtifactRecord
	168, // 195: wandb_internal.LogArtifactRequest._info:type_name -> wandb_internal._RequestInfo
	168, // 196: wandb_internal.DownloadArtifactRequest._info:type_name -> wandb_internal._RequestInfo
	168, // 197: wandb_internal.KeepaliveRequest._info:type_name -> wandb_internal._RequestInfo
	135, // 198: wandb_internal.GitSource.git_info:type_name -> wandb_internal.GitInfo
	136, // 199: wandb_internal.Source.git:type_name -> wandb_internal.GitSource
	134, // 200: wandb_internal.Source.artifact:type_name -> wandb_internal.ArtifactInfo
	137, // 201: wandb_internal.Source.image:type_name -> wandb_internal.ImageSource
	138, // 202: wandb_internal.JobSource.source:type_name -> wandb_internal.Source
	139, // 203: wandb_internal.PartialJobArtifact.source_info:type_name -> wandb_internal.JobSource
	140, // 204: wandb_internal.UseArtifactRecord.partial:type_name -> wandb_internal.PartialJobArtifact
	165, // 205: wandb_internal.UseArtifactRecord._info:type_name -> wandb_internal._RecordInfo
	168, // 206: wandb_internal.CancelRequest._info:type_name -> wandb_internal._RequestInfo
	167, // 207: wandb_internal.MetadataRequest.heartbeatAt:type_name -> google.protobuf.Timestamp
	167, // 208: wandb_internal.MetadataRequest.startedAt:type_name -> google.protobuf.Timestamp
	17,  // 209: wandb_internal.MetadataRequest.git:type_name -> wandb_internal.GitRepoRecord
	158, // 210: wandb_internal.MetadataRequest.disk:type_name -> wandb_internal.MetadataRequest.DiskEntry
	146, // 211: wandb_internal.MetadataRequest.memory:type_name -> wandb_internal.MemoryInfo
	147, // 212: wandb_internal.MetadataRequest.cpu:type_name -> wandb_internal.CpuInfo
	148, // 213: wandb_internal.MetadataRequest.gpu_apple:type_name -> wandb_internal.GpuAppleInfo
	149, // 214: wandb_internal.MetadataRequest.gpu_nvidia:type_name -> wandb_internal.GpuNvidiaInfo
	150, // 215: wandb_internal.MetadataRequest.gpu_amd:type_name -> wandb_internal.GpuAmdInfo
	159, // 216: wandb_internal.MetadataRequest.slurm:type_name -> wandb_internal.MetadataRequest.SlurmEntry
	151, // 217: wandb_internal.MetadataRequest.trainium:type_name -> wandb_internal.TrainiumInfo
	160, // 218: wandb_internal.PythonPackagesRequest.package:type_name -> wandb_internal.PythonPackagesRequest.PythonPackage
	161, // 219: wandb_internal.JobInputSource.run_config:type_name -> wandb_internal.JobInputSource.RunConfigSource
	162, // 220: wandb_internal.JobInputSource.file:type_name -> wandb_internal.JobInputSource.ConfigFileSource
	155, // 221: wandb_internal.JobInputRequest.input_source:type_name -> wandb_internal.JobInputSource
	154, // 222: wandb_internal.JobInputRequest.include_paths:type_name -> wandb_internal.JobInputPath
	154, // 223: wandb_internal.JobInputRequest.exclude_paths:type_name -> wandb_internal.JobInputPath
	76,  // 224: wandb_internal.GetSystemMetricsResponse.SystemMetricsEntry.value:type_name -> wandb_internal.SystemMetricsBuffer
	145, // 225: wandb_internal.MetadataRequest.DiskEntry.value:type_name -> wandb_internal.DiskInfo
	226, // [226:226] is the sub-list for method output_type
	226, // [226:226] is the sub-list for method input_type
	226, // [226:226] is the sub-list for extension type_name
	226, // [226:226] is the sub-list for extension extendee
	0,   // [0:226] is the sub-list for field type_name
}

func init() { file_wandb_proto_wandb_internal_proto_init() }
func file_wandb_proto_wandb_internal_proto_init() {
	if File_wandb_proto_wandb_internal_proto != nil {
		return
	}
	file_wandb_proto_wandb_base_proto_init()
	file_wandb_proto_wandb_telemetry_proto_init()
	if !protoimpl.UnsafeEnabled {
		file_wandb_proto_wandb_internal_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Record); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Control); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Result); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FinalRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*VersionInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*HeaderRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FooterRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RunRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GitRepoRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RunUpdateResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ErrorInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RunExitRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RunExitResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RunPreemptingRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RunPreemptingResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SettingsRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SettingsItem); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*HistoryStep); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*HistoryRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*HistoryItem); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*HistoryResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OutputRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OutputResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OutputRawRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*OutputRawResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MetricRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MetricResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MetricOptions); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MetricControl); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MetricSummary); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ConfigRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ConfigItem); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ConfigResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SummaryRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SummaryItem); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SummaryResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FilesRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FilesItem); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FilesResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StatsRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StatsItem); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ArtifactRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ArtifactManifest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ArtifactManifestEntry); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ExtraItem); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StoragePolicyConfigItem); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ArtifactResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LinkArtifactResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LinkArtifactRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LinkArtifactResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TBRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TBResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AlertRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AlertResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Request); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Response); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DeferRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PauseRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PauseResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ResumeRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ResumeResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LoginRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LoginResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetSummaryRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetSummaryResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetSystemMetricsRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SystemMetricSample); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SystemMetricsBuffer); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetSystemMetricsResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StatusRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StatusResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StopStatusRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StopStatusResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NetworkStatusRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NetworkStatusResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*HttpResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InternalMessagesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InternalMessagesResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InternalMessages); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PollExitRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PollExitResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SyncOverwrite); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SyncSkip); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SenderMarkRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SyncRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SyncResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SenderReadRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*StatusReportRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SummaryRecordRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TelemetryRecordRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ServerInfoRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ServerInfoResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ServerMessages); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ServerMessage); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FileCounts); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FilePusherStats); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FilesUploaded); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FileTransferInfoRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LocalInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShutdownRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ShutdownResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AttachRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AttachResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TestInjectRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TestInjectResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*HistoryAction); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PartialHistoryRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PartialHistoryResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SampledHistoryRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SampledHistoryItem); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*SampledHistoryResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RunStatusRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RunStatusResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RunStartRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RunStartResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CheckVersionRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CheckVersionResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*JobInfoRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*JobInfoResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LogArtifactRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*LogArtifactResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DownloadArtifactRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DownloadArtifactResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeepaliveRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*KeepaliveResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ArtifactInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GitInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GitSource); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ImageSource); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Source); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*JobSource); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PartialJobArtifact); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UseArtifactRecord); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*UseArtifactResult); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CancelRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CancelResponse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*DiskInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MemoryInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CpuInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GpuAppleInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GpuNvidiaInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GpuAmdInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TrainiumInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*MetadataRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PythonPackagesRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*JobInputPath); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*JobInputSource); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*JobInputRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*PythonPackagesRequest_PythonPackage); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*JobInputSource_RunConfigSource); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_wandb_proto_wandb_internal_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*JobInputSource_ConfigFileSource); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_wandb_proto_wandb_internal_proto_msgTypes[0].OneofWrappers = []interface{}{
		(*Record_History)(nil),
		(*Record_Summary)(nil),
		(*Record_Output)(nil),
		(*Record_Config)(nil),
		(*Record_Files)(nil),
		(*Record_Stats)(nil),
		(*Record_Artifact)(nil),
		(*Record_Tbrecord)(nil),
		(*Record_Alert)(nil),
		(*Record_Telemetry)(nil),
		(*Record_Metric)(nil),
		(*Record_OutputRaw)(nil),
		(*Record_Run)(nil),
		(*Record_Exit)(nil),
		(*Record_Final)(nil),
		(*Record_Header)(nil),
		(*Record_Footer)(nil),
		(*Record_Preempting)(nil),
		(*Record_NoopLinkArtifact)(nil),
		(*Record_UseArtifact)(nil),
		(*Record_Request)(nil),
	}
	file_wandb_proto_wandb_internal_proto_msgTypes[2].OneofWrappers = []interface{}{
		(*Result_RunResult)(nil),
		(*Result_ExitResult)(nil),
		(*Result_LogResult)(nil),
		(*Result_SummaryResult)(nil),
		(*Result_OutputResult)(nil),
		(*Result_ConfigResult)(nil),
		(*Result_Response)(nil),
	}
	file_wandb_proto_wandb_internal_proto_msgTypes[54].OneofWrappers = []interface{}{
		(*Request_StopStatus)(nil),
		(*Request_NetworkStatus)(nil),
		(*Request_Defer)(nil),
		(*Request_GetSummary)(nil),
		(*Request_Login)(nil),
		(*Request_Pause)(nil),
		(*Request_Resume)(nil),
		(*Request_PollExit)(nil),
		(*Request_SampledHistory)(nil),
		(*Request_PartialHistory)(nil),
		(*Request_RunStart)(nil),
		(*Request_CheckVersion)(nil),
		(*Request_LogArtifact)(nil),
		(*Request_DownloadArtifact)(nil),
		(*Request_Keepalive)(nil),
		(*Request_RunStatus)(nil),
		(*Request_Cancel)(nil),
		(*Request_Metadata)(nil),
		(*Request_InternalMessages)(nil),
		(*Request_PythonPackages)(nil),
		(*Request_Shutdown)(nil),
		(*Request_Attach)(nil),
		(*Request_Status)(nil),
		(*Request_ServerInfo)(nil),
		(*Request_SenderMark)(nil),
		(*Request_SenderRead)(nil),
		(*Request_StatusReport)(nil),
		(*Request_SummaryRecord)(nil),
		(*Request_TelemetryRecord)(nil),
		(*Request_JobInfo)(nil),
		(*Request_GetSystemMetrics)(nil),
		(*Request_Sync)(nil),
		(*Request_JobInput)(nil),
		(*Request_LinkArtifact)(nil),
		(*Request_TestInject)(nil),
	}
	file_wandb_proto_wandb_internal_proto_msgTypes[55].OneofWrappers = []interface{}{
		(*Response_KeepaliveResponse)(nil),
		(*Response_StopStatusResponse)(nil),
		(*Response_NetworkStatusResponse)(nil),
		(*Response_LoginResponse)(nil),
		(*Response_GetSummaryResponse)(nil),
		(*Response_PollExitResponse)(nil),
		(*Response_SampledHistoryResponse)(nil),
		(*Response_RunStartResponse)(nil),
		(*Response_CheckVersionResponse)(nil),
		(*Response_LogArtifactResponse)(nil),
		(*Response_DownloadArtifactResponse)(nil),
		(*Response_RunStatusResponse)(nil),
		(*Response_CancelResponse)(nil),
		(*Response_InternalMessagesResponse)(nil),
		(*Response_ShutdownResponse)(nil),
		(*Response_AttachResponse)(nil),
		(*Response_StatusResponse)(nil),
		(*Response_ServerInfoResponse)(nil),
		(*Response_JobInfoResponse)(nil),
		(*Response_GetSystemMetricsResponse)(nil),
		(*Response_SyncResponse)(nil),
		(*Response_LinkArtifactResponse)(nil),
		(*Response_TestInjectResponse)(nil),
	}
	file_wandb_proto_wandb_internal_proto_msgTypes[146].OneofWrappers = []interface{}{
		(*JobInputSource_RunConfig)(nil),
		(*JobInputSource_File)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_wandb_proto_wandb_internal_proto_rawDesc,
			NumEnums:      9,
			NumMessages:   154,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_wandb_proto_wandb_internal_proto_goTypes,
		DependencyIndexes: file_wandb_proto_wandb_internal_proto_depIdxs,
		EnumInfos:         file_wandb_proto_wandb_internal_proto_enumTypes,
		MessageInfos:      file_wandb_proto_wandb_internal_proto_msgTypes,
	}.Build()
	File_wandb_proto_wandb_internal_proto = out.File
	file_wandb_proto_wandb_internal_proto_rawDesc = nil
	file_wandb_proto_wandb_internal_proto_goTypes = nil
	file_wandb_proto_wandb_internal_proto_depIdxs = nil
}
