gitee.com/ks-custle/core-gm@v0.0.0-20230922171213-b83bdd97b62c/grpc/channelz/grpc_channelz_v1/channelz.pb.go (about)

     1  // Copyright 2018 The gRPC Authors
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // This file defines an interface for exporting monitoring information
    16  // out of gRPC servers.  See the full design at
    17  // https://github.com/grpc/proposal/blob/master/A14-channelz.md
    18  //
    19  // The canonical version of this proto can be found at
    20  // https://github.com/grpc/grpc-proto/blob/master/grpc/channelz/v1/channelz.proto
    21  
    22  // Code generated by protoc-gen-go. DO NOT EDIT.
    23  // versions:
    24  // 	protoc-gen-go v1.25.0
    25  // 	protoc        v3.14.0
    26  // source: grpc/channelz/v1/channelz.proto
    27  
    28  package grpc_channelz_v1
    29  
    30  import (
    31  	proto "github.com/golang/protobuf/proto"
    32  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    33  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    34  	anypb "google.golang.org/protobuf/types/known/anypb"
    35  	durationpb "google.golang.org/protobuf/types/known/durationpb"
    36  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    37  	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
    38  	reflect "reflect"
    39  	sync "sync"
    40  )
    41  
    42  const (
    43  	// Verify that this generated code is sufficiently up-to-date.
    44  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    45  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    46  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    47  )
    48  
    49  // This is a compile-time assertion that a sufficiently up-to-date version
    50  // of the legacy proto package is being used.
    51  const _ = proto.ProtoPackageIsVersion4
    52  
    53  type ChannelConnectivityState_State int32
    54  
    55  const (
    56  	ChannelConnectivityState_UNKNOWN           ChannelConnectivityState_State = 0
    57  	ChannelConnectivityState_IDLE              ChannelConnectivityState_State = 1
    58  	ChannelConnectivityState_CONNECTING        ChannelConnectivityState_State = 2
    59  	ChannelConnectivityState_READY             ChannelConnectivityState_State = 3
    60  	ChannelConnectivityState_TRANSIENT_FAILURE ChannelConnectivityState_State = 4
    61  	ChannelConnectivityState_SHUTDOWN          ChannelConnectivityState_State = 5
    62  )
    63  
    64  // Enum value maps for ChannelConnectivityState_State.
    65  var (
    66  	ChannelConnectivityState_State_name = map[int32]string{
    67  		0: "UNKNOWN",
    68  		1: "IDLE",
    69  		2: "CONNECTING",
    70  		3: "READY",
    71  		4: "TRANSIENT_FAILURE",
    72  		5: "SHUTDOWN",
    73  	}
    74  	ChannelConnectivityState_State_value = map[string]int32{
    75  		"UNKNOWN":           0,
    76  		"IDLE":              1,
    77  		"CONNECTING":        2,
    78  		"READY":             3,
    79  		"TRANSIENT_FAILURE": 4,
    80  		"SHUTDOWN":          5,
    81  	}
    82  )
    83  
    84  func (x ChannelConnectivityState_State) Enum() *ChannelConnectivityState_State {
    85  	p := new(ChannelConnectivityState_State)
    86  	*p = x
    87  	return p
    88  }
    89  
    90  func (x ChannelConnectivityState_State) String() string {
    91  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    92  }
    93  
    94  func (ChannelConnectivityState_State) Descriptor() protoreflect.EnumDescriptor {
    95  	return file_grpc_channelz_v1_channelz_proto_enumTypes[0].Descriptor()
    96  }
    97  
    98  func (ChannelConnectivityState_State) Type() protoreflect.EnumType {
    99  	return &file_grpc_channelz_v1_channelz_proto_enumTypes[0]
   100  }
   101  
   102  func (x ChannelConnectivityState_State) Number() protoreflect.EnumNumber {
   103  	return protoreflect.EnumNumber(x)
   104  }
   105  
   106  // Deprecated: Use ChannelConnectivityState_State.Descriptor instead.
   107  func (ChannelConnectivityState_State) EnumDescriptor() ([]byte, []int) {
   108  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{2, 0}
   109  }
   110  
   111  // The supported severity levels of trace events.
   112  type ChannelTraceEvent_Severity int32
   113  
   114  const (
   115  	ChannelTraceEvent_CT_UNKNOWN ChannelTraceEvent_Severity = 0
   116  	ChannelTraceEvent_CT_INFO    ChannelTraceEvent_Severity = 1
   117  	ChannelTraceEvent_CT_WARNING ChannelTraceEvent_Severity = 2
   118  	ChannelTraceEvent_CT_ERROR   ChannelTraceEvent_Severity = 3
   119  )
   120  
   121  // Enum value maps for ChannelTraceEvent_Severity.
   122  var (
   123  	ChannelTraceEvent_Severity_name = map[int32]string{
   124  		0: "CT_UNKNOWN",
   125  		1: "CT_INFO",
   126  		2: "CT_WARNING",
   127  		3: "CT_ERROR",
   128  	}
   129  	ChannelTraceEvent_Severity_value = map[string]int32{
   130  		"CT_UNKNOWN": 0,
   131  		"CT_INFO":    1,
   132  		"CT_WARNING": 2,
   133  		"CT_ERROR":   3,
   134  	}
   135  )
   136  
   137  func (x ChannelTraceEvent_Severity) Enum() *ChannelTraceEvent_Severity {
   138  	p := new(ChannelTraceEvent_Severity)
   139  	*p = x
   140  	return p
   141  }
   142  
   143  func (x ChannelTraceEvent_Severity) String() string {
   144  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   145  }
   146  
   147  func (ChannelTraceEvent_Severity) Descriptor() protoreflect.EnumDescriptor {
   148  	return file_grpc_channelz_v1_channelz_proto_enumTypes[1].Descriptor()
   149  }
   150  
   151  func (ChannelTraceEvent_Severity) Type() protoreflect.EnumType {
   152  	return &file_grpc_channelz_v1_channelz_proto_enumTypes[1]
   153  }
   154  
   155  func (x ChannelTraceEvent_Severity) Number() protoreflect.EnumNumber {
   156  	return protoreflect.EnumNumber(x)
   157  }
   158  
   159  // Deprecated: Use ChannelTraceEvent_Severity.Descriptor instead.
   160  func (ChannelTraceEvent_Severity) EnumDescriptor() ([]byte, []int) {
   161  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{4, 0}
   162  }
   163  
   164  // Channel is a logical grouping of channels, subchannels, and sockets.
   165  type Channel struct {
   166  	state         protoimpl.MessageState
   167  	sizeCache     protoimpl.SizeCache
   168  	unknownFields protoimpl.UnknownFields
   169  
   170  	// The identifier for this channel. This should be set.
   171  	Ref *ChannelRef `protobuf:"bytes,1,opt,name=ref,proto3" json:"ref,omitempty"`
   172  	// Data specific to this channel.
   173  	Data *ChannelData `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"` // At most one of 'channel_ref+subchannel_ref' and 'socket' is set.
   174  	// There are no ordering guarantees on the order of channel refs.
   175  	// There may not be cycles in the ref graph.
   176  	// A channel ref may be present in more than one channel or subchannel.
   177  	ChannelRef []*ChannelRef `protobuf:"bytes,3,rep,name=channel_ref,json=channelRef,proto3" json:"channel_ref,omitempty"`
   178  	// At most one of 'channel_ref+subchannel_ref' and 'socket' is set.
   179  	// There are no ordering guarantees on the order of subchannel refs.
   180  	// There may not be cycles in the ref graph.
   181  	// A sub channel ref may be present in more than one channel or subchannel.
   182  	SubchannelRef []*SubchannelRef `protobuf:"bytes,4,rep,name=subchannel_ref,json=subchannelRef,proto3" json:"subchannel_ref,omitempty"`
   183  	// There are no ordering guarantees on the order of sockets.
   184  	SocketRef []*SocketRef `protobuf:"bytes,5,rep,name=socket_ref,json=socketRef,proto3" json:"socket_ref,omitempty"`
   185  }
   186  
   187  func (x *Channel) Reset() {
   188  	*x = Channel{}
   189  	if protoimpl.UnsafeEnabled {
   190  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[0]
   191  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   192  		ms.StoreMessageInfo(mi)
   193  	}
   194  }
   195  
   196  func (x *Channel) String() string {
   197  	return protoimpl.X.MessageStringOf(x)
   198  }
   199  
   200  func (*Channel) ProtoMessage() {}
   201  
   202  func (x *Channel) ProtoReflect() protoreflect.Message {
   203  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[0]
   204  	if protoimpl.UnsafeEnabled && x != nil {
   205  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   206  		if ms.LoadMessageInfo() == nil {
   207  			ms.StoreMessageInfo(mi)
   208  		}
   209  		return ms
   210  	}
   211  	return mi.MessageOf(x)
   212  }
   213  
   214  // Deprecated: Use Channel.ProtoReflect.Descriptor instead.
   215  func (*Channel) Descriptor() ([]byte, []int) {
   216  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{0}
   217  }
   218  
   219  func (x *Channel) GetRef() *ChannelRef {
   220  	if x != nil {
   221  		return x.Ref
   222  	}
   223  	return nil
   224  }
   225  
   226  func (x *Channel) GetData() *ChannelData {
   227  	if x != nil {
   228  		return x.Data
   229  	}
   230  	return nil
   231  }
   232  
   233  func (x *Channel) GetChannelRef() []*ChannelRef {
   234  	if x != nil {
   235  		return x.ChannelRef
   236  	}
   237  	return nil
   238  }
   239  
   240  func (x *Channel) GetSubchannelRef() []*SubchannelRef {
   241  	if x != nil {
   242  		return x.SubchannelRef
   243  	}
   244  	return nil
   245  }
   246  
   247  func (x *Channel) GetSocketRef() []*SocketRef {
   248  	if x != nil {
   249  		return x.SocketRef
   250  	}
   251  	return nil
   252  }
   253  
   254  // Subchannel is a logical grouping of channels, subchannels, and sockets.
   255  // A subchannel is load balanced over by it's ancestor
   256  type Subchannel struct {
   257  	state         protoimpl.MessageState
   258  	sizeCache     protoimpl.SizeCache
   259  	unknownFields protoimpl.UnknownFields
   260  
   261  	// The identifier for this channel.
   262  	Ref *SubchannelRef `protobuf:"bytes,1,opt,name=ref,proto3" json:"ref,omitempty"`
   263  	// Data specific to this channel.
   264  	Data *ChannelData `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"` // At most one of 'channel_ref+subchannel_ref' and 'socket' is set.
   265  	// There are no ordering guarantees on the order of channel refs.
   266  	// There may not be cycles in the ref graph.
   267  	// A channel ref may be present in more than one channel or subchannel.
   268  	ChannelRef []*ChannelRef `protobuf:"bytes,3,rep,name=channel_ref,json=channelRef,proto3" json:"channel_ref,omitempty"`
   269  	// At most one of 'channel_ref+subchannel_ref' and 'socket' is set.
   270  	// There are no ordering guarantees on the order of subchannel refs.
   271  	// There may not be cycles in the ref graph.
   272  	// A sub channel ref may be present in more than one channel or subchannel.
   273  	SubchannelRef []*SubchannelRef `protobuf:"bytes,4,rep,name=subchannel_ref,json=subchannelRef,proto3" json:"subchannel_ref,omitempty"`
   274  	// There are no ordering guarantees on the order of sockets.
   275  	SocketRef []*SocketRef `protobuf:"bytes,5,rep,name=socket_ref,json=socketRef,proto3" json:"socket_ref,omitempty"`
   276  }
   277  
   278  func (x *Subchannel) Reset() {
   279  	*x = Subchannel{}
   280  	if protoimpl.UnsafeEnabled {
   281  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[1]
   282  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   283  		ms.StoreMessageInfo(mi)
   284  	}
   285  }
   286  
   287  func (x *Subchannel) String() string {
   288  	return protoimpl.X.MessageStringOf(x)
   289  }
   290  
   291  func (*Subchannel) ProtoMessage() {}
   292  
   293  func (x *Subchannel) ProtoReflect() protoreflect.Message {
   294  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[1]
   295  	if protoimpl.UnsafeEnabled && x != nil {
   296  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   297  		if ms.LoadMessageInfo() == nil {
   298  			ms.StoreMessageInfo(mi)
   299  		}
   300  		return ms
   301  	}
   302  	return mi.MessageOf(x)
   303  }
   304  
   305  // Deprecated: Use Subchannel.ProtoReflect.Descriptor instead.
   306  func (*Subchannel) Descriptor() ([]byte, []int) {
   307  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{1}
   308  }
   309  
   310  func (x *Subchannel) GetRef() *SubchannelRef {
   311  	if x != nil {
   312  		return x.Ref
   313  	}
   314  	return nil
   315  }
   316  
   317  func (x *Subchannel) GetData() *ChannelData {
   318  	if x != nil {
   319  		return x.Data
   320  	}
   321  	return nil
   322  }
   323  
   324  func (x *Subchannel) GetChannelRef() []*ChannelRef {
   325  	if x != nil {
   326  		return x.ChannelRef
   327  	}
   328  	return nil
   329  }
   330  
   331  func (x *Subchannel) GetSubchannelRef() []*SubchannelRef {
   332  	if x != nil {
   333  		return x.SubchannelRef
   334  	}
   335  	return nil
   336  }
   337  
   338  func (x *Subchannel) GetSocketRef() []*SocketRef {
   339  	if x != nil {
   340  		return x.SocketRef
   341  	}
   342  	return nil
   343  }
   344  
   345  // These come from the specified states in this document:
   346  // https://github.com/grpc/grpc/blob/master/doc/connectivity-semantics-and-api.md
   347  type ChannelConnectivityState struct {
   348  	state         protoimpl.MessageState
   349  	sizeCache     protoimpl.SizeCache
   350  	unknownFields protoimpl.UnknownFields
   351  
   352  	State ChannelConnectivityState_State `protobuf:"varint,1,opt,name=state,proto3,enum=grpc.channelz.v1.ChannelConnectivityState_State" json:"state,omitempty"`
   353  }
   354  
   355  func (x *ChannelConnectivityState) Reset() {
   356  	*x = ChannelConnectivityState{}
   357  	if protoimpl.UnsafeEnabled {
   358  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[2]
   359  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   360  		ms.StoreMessageInfo(mi)
   361  	}
   362  }
   363  
   364  func (x *ChannelConnectivityState) String() string {
   365  	return protoimpl.X.MessageStringOf(x)
   366  }
   367  
   368  func (*ChannelConnectivityState) ProtoMessage() {}
   369  
   370  func (x *ChannelConnectivityState) ProtoReflect() protoreflect.Message {
   371  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[2]
   372  	if protoimpl.UnsafeEnabled && x != nil {
   373  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   374  		if ms.LoadMessageInfo() == nil {
   375  			ms.StoreMessageInfo(mi)
   376  		}
   377  		return ms
   378  	}
   379  	return mi.MessageOf(x)
   380  }
   381  
   382  // Deprecated: Use ChannelConnectivityState.ProtoReflect.Descriptor instead.
   383  func (*ChannelConnectivityState) Descriptor() ([]byte, []int) {
   384  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{2}
   385  }
   386  
   387  func (x *ChannelConnectivityState) GetState() ChannelConnectivityState_State {
   388  	if x != nil {
   389  		return x.State
   390  	}
   391  	return ChannelConnectivityState_UNKNOWN
   392  }
   393  
   394  // Channel data is data related to a specific Channel or Subchannel.
   395  type ChannelData struct {
   396  	state         protoimpl.MessageState
   397  	sizeCache     protoimpl.SizeCache
   398  	unknownFields protoimpl.UnknownFields
   399  
   400  	// The connectivity state of the channel or subchannel.  Implementations
   401  	// should always set this.
   402  	State *ChannelConnectivityState `protobuf:"bytes,1,opt,name=state,proto3" json:"state,omitempty"`
   403  	// The target this channel originally tried to connect to.  May be absent
   404  	Target string `protobuf:"bytes,2,opt,name=target,proto3" json:"target,omitempty"`
   405  	// A trace of recent events on the channel.  May be absent.
   406  	Trace *ChannelTrace `protobuf:"bytes,3,opt,name=trace,proto3" json:"trace,omitempty"`
   407  	// The number of calls started on the channel
   408  	CallsStarted int64 `protobuf:"varint,4,opt,name=calls_started,json=callsStarted,proto3" json:"calls_started,omitempty"`
   409  	// The number of calls that have completed with an OK status
   410  	CallsSucceeded int64 `protobuf:"varint,5,opt,name=calls_succeeded,json=callsSucceeded,proto3" json:"calls_succeeded,omitempty"`
   411  	// The number of calls that have completed with a non-OK status
   412  	CallsFailed int64 `protobuf:"varint,6,opt,name=calls_failed,json=callsFailed,proto3" json:"calls_failed,omitempty"`
   413  	// The last time a call was started on the channel.
   414  	LastCallStartedTimestamp *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=last_call_started_timestamp,json=lastCallStartedTimestamp,proto3" json:"last_call_started_timestamp,omitempty"`
   415  }
   416  
   417  func (x *ChannelData) Reset() {
   418  	*x = ChannelData{}
   419  	if protoimpl.UnsafeEnabled {
   420  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[3]
   421  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   422  		ms.StoreMessageInfo(mi)
   423  	}
   424  }
   425  
   426  func (x *ChannelData) String() string {
   427  	return protoimpl.X.MessageStringOf(x)
   428  }
   429  
   430  func (*ChannelData) ProtoMessage() {}
   431  
   432  func (x *ChannelData) ProtoReflect() protoreflect.Message {
   433  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[3]
   434  	if protoimpl.UnsafeEnabled && x != nil {
   435  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   436  		if ms.LoadMessageInfo() == nil {
   437  			ms.StoreMessageInfo(mi)
   438  		}
   439  		return ms
   440  	}
   441  	return mi.MessageOf(x)
   442  }
   443  
   444  // Deprecated: Use ChannelData.ProtoReflect.Descriptor instead.
   445  func (*ChannelData) Descriptor() ([]byte, []int) {
   446  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{3}
   447  }
   448  
   449  func (x *ChannelData) GetState() *ChannelConnectivityState {
   450  	if x != nil {
   451  		return x.State
   452  	}
   453  	return nil
   454  }
   455  
   456  func (x *ChannelData) GetTarget() string {
   457  	if x != nil {
   458  		return x.Target
   459  	}
   460  	return ""
   461  }
   462  
   463  func (x *ChannelData) GetTrace() *ChannelTrace {
   464  	if x != nil {
   465  		return x.Trace
   466  	}
   467  	return nil
   468  }
   469  
   470  func (x *ChannelData) GetCallsStarted() int64 {
   471  	if x != nil {
   472  		return x.CallsStarted
   473  	}
   474  	return 0
   475  }
   476  
   477  func (x *ChannelData) GetCallsSucceeded() int64 {
   478  	if x != nil {
   479  		return x.CallsSucceeded
   480  	}
   481  	return 0
   482  }
   483  
   484  func (x *ChannelData) GetCallsFailed() int64 {
   485  	if x != nil {
   486  		return x.CallsFailed
   487  	}
   488  	return 0
   489  }
   490  
   491  func (x *ChannelData) GetLastCallStartedTimestamp() *timestamppb.Timestamp {
   492  	if x != nil {
   493  		return x.LastCallStartedTimestamp
   494  	}
   495  	return nil
   496  }
   497  
   498  // A trace event is an interesting thing that happened to a channel or
   499  // subchannel, such as creation, address resolution, subchannel creation, etc.
   500  type ChannelTraceEvent struct {
   501  	state         protoimpl.MessageState
   502  	sizeCache     protoimpl.SizeCache
   503  	unknownFields protoimpl.UnknownFields
   504  
   505  	// High level description of the event.
   506  	Description string `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
   507  	// the severity of the trace event
   508  	Severity ChannelTraceEvent_Severity `protobuf:"varint,2,opt,name=severity,proto3,enum=grpc.channelz.v1.ChannelTraceEvent_Severity" json:"severity,omitempty"`
   509  	// When this event occurred.
   510  	Timestamp *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
   511  	// ref of referenced channel or subchannel.
   512  	// Optional, only present if this event refers to a child object. For example,
   513  	// this field would be filled if this trace event was for a subchannel being
   514  	// created.
   515  	//
   516  	// Types that are assignable to ChildRef:
   517  	//	*ChannelTraceEvent_ChannelRef
   518  	//	*ChannelTraceEvent_SubchannelRef
   519  	ChildRef isChannelTraceEvent_ChildRef `protobuf_oneof:"child_ref"`
   520  }
   521  
   522  func (x *ChannelTraceEvent) Reset() {
   523  	*x = ChannelTraceEvent{}
   524  	if protoimpl.UnsafeEnabled {
   525  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[4]
   526  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   527  		ms.StoreMessageInfo(mi)
   528  	}
   529  }
   530  
   531  func (x *ChannelTraceEvent) String() string {
   532  	return protoimpl.X.MessageStringOf(x)
   533  }
   534  
   535  func (*ChannelTraceEvent) ProtoMessage() {}
   536  
   537  func (x *ChannelTraceEvent) ProtoReflect() protoreflect.Message {
   538  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[4]
   539  	if protoimpl.UnsafeEnabled && x != nil {
   540  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   541  		if ms.LoadMessageInfo() == nil {
   542  			ms.StoreMessageInfo(mi)
   543  		}
   544  		return ms
   545  	}
   546  	return mi.MessageOf(x)
   547  }
   548  
   549  // Deprecated: Use ChannelTraceEvent.ProtoReflect.Descriptor instead.
   550  func (*ChannelTraceEvent) Descriptor() ([]byte, []int) {
   551  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{4}
   552  }
   553  
   554  func (x *ChannelTraceEvent) GetDescription() string {
   555  	if x != nil {
   556  		return x.Description
   557  	}
   558  	return ""
   559  }
   560  
   561  func (x *ChannelTraceEvent) GetSeverity() ChannelTraceEvent_Severity {
   562  	if x != nil {
   563  		return x.Severity
   564  	}
   565  	return ChannelTraceEvent_CT_UNKNOWN
   566  }
   567  
   568  func (x *ChannelTraceEvent) GetTimestamp() *timestamppb.Timestamp {
   569  	if x != nil {
   570  		return x.Timestamp
   571  	}
   572  	return nil
   573  }
   574  
   575  func (m *ChannelTraceEvent) GetChildRef() isChannelTraceEvent_ChildRef {
   576  	if m != nil {
   577  		return m.ChildRef
   578  	}
   579  	return nil
   580  }
   581  
   582  func (x *ChannelTraceEvent) GetChannelRef() *ChannelRef {
   583  	if x, ok := x.GetChildRef().(*ChannelTraceEvent_ChannelRef); ok {
   584  		return x.ChannelRef
   585  	}
   586  	return nil
   587  }
   588  
   589  func (x *ChannelTraceEvent) GetSubchannelRef() *SubchannelRef {
   590  	if x, ok := x.GetChildRef().(*ChannelTraceEvent_SubchannelRef); ok {
   591  		return x.SubchannelRef
   592  	}
   593  	return nil
   594  }
   595  
   596  type isChannelTraceEvent_ChildRef interface {
   597  	isChannelTraceEvent_ChildRef()
   598  }
   599  
   600  type ChannelTraceEvent_ChannelRef struct {
   601  	ChannelRef *ChannelRef `protobuf:"bytes,4,opt,name=channel_ref,json=channelRef,proto3,oneof"`
   602  }
   603  
   604  type ChannelTraceEvent_SubchannelRef struct {
   605  	SubchannelRef *SubchannelRef `protobuf:"bytes,5,opt,name=subchannel_ref,json=subchannelRef,proto3,oneof"`
   606  }
   607  
   608  func (*ChannelTraceEvent_ChannelRef) isChannelTraceEvent_ChildRef() {}
   609  
   610  func (*ChannelTraceEvent_SubchannelRef) isChannelTraceEvent_ChildRef() {}
   611  
   612  // ChannelTrace represents the recent events that have occurred on the channel.
   613  type ChannelTrace struct {
   614  	state         protoimpl.MessageState
   615  	sizeCache     protoimpl.SizeCache
   616  	unknownFields protoimpl.UnknownFields
   617  
   618  	// Number of events ever logged in this tracing object. This can differ from
   619  	// events.size() because events can be overwritten or garbage collected by
   620  	// implementations.
   621  	NumEventsLogged int64 `protobuf:"varint,1,opt,name=num_events_logged,json=numEventsLogged,proto3" json:"num_events_logged,omitempty"`
   622  	// Time that this channel was created.
   623  	CreationTimestamp *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=creation_timestamp,json=creationTimestamp,proto3" json:"creation_timestamp,omitempty"`
   624  	// List of events that have occurred on this channel.
   625  	Events []*ChannelTraceEvent `protobuf:"bytes,3,rep,name=events,proto3" json:"events,omitempty"`
   626  }
   627  
   628  func (x *ChannelTrace) Reset() {
   629  	*x = ChannelTrace{}
   630  	if protoimpl.UnsafeEnabled {
   631  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[5]
   632  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   633  		ms.StoreMessageInfo(mi)
   634  	}
   635  }
   636  
   637  func (x *ChannelTrace) String() string {
   638  	return protoimpl.X.MessageStringOf(x)
   639  }
   640  
   641  func (*ChannelTrace) ProtoMessage() {}
   642  
   643  func (x *ChannelTrace) ProtoReflect() protoreflect.Message {
   644  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[5]
   645  	if protoimpl.UnsafeEnabled && x != nil {
   646  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   647  		if ms.LoadMessageInfo() == nil {
   648  			ms.StoreMessageInfo(mi)
   649  		}
   650  		return ms
   651  	}
   652  	return mi.MessageOf(x)
   653  }
   654  
   655  // Deprecated: Use ChannelTrace.ProtoReflect.Descriptor instead.
   656  func (*ChannelTrace) Descriptor() ([]byte, []int) {
   657  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{5}
   658  }
   659  
   660  func (x *ChannelTrace) GetNumEventsLogged() int64 {
   661  	if x != nil {
   662  		return x.NumEventsLogged
   663  	}
   664  	return 0
   665  }
   666  
   667  func (x *ChannelTrace) GetCreationTimestamp() *timestamppb.Timestamp {
   668  	if x != nil {
   669  		return x.CreationTimestamp
   670  	}
   671  	return nil
   672  }
   673  
   674  func (x *ChannelTrace) GetEvents() []*ChannelTraceEvent {
   675  	if x != nil {
   676  		return x.Events
   677  	}
   678  	return nil
   679  }
   680  
   681  // ChannelRef is a reference to a Channel.
   682  type ChannelRef struct {
   683  	state         protoimpl.MessageState
   684  	sizeCache     protoimpl.SizeCache
   685  	unknownFields protoimpl.UnknownFields
   686  
   687  	// The globally unique id for this channel.  Must be a positive number.
   688  	ChannelId int64 `protobuf:"varint,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
   689  	// An optional name associated with the channel.
   690  	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
   691  }
   692  
   693  func (x *ChannelRef) Reset() {
   694  	*x = ChannelRef{}
   695  	if protoimpl.UnsafeEnabled {
   696  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[6]
   697  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   698  		ms.StoreMessageInfo(mi)
   699  	}
   700  }
   701  
   702  func (x *ChannelRef) String() string {
   703  	return protoimpl.X.MessageStringOf(x)
   704  }
   705  
   706  func (*ChannelRef) ProtoMessage() {}
   707  
   708  func (x *ChannelRef) ProtoReflect() protoreflect.Message {
   709  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[6]
   710  	if protoimpl.UnsafeEnabled && x != nil {
   711  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   712  		if ms.LoadMessageInfo() == nil {
   713  			ms.StoreMessageInfo(mi)
   714  		}
   715  		return ms
   716  	}
   717  	return mi.MessageOf(x)
   718  }
   719  
   720  // Deprecated: Use ChannelRef.ProtoReflect.Descriptor instead.
   721  func (*ChannelRef) Descriptor() ([]byte, []int) {
   722  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{6}
   723  }
   724  
   725  func (x *ChannelRef) GetChannelId() int64 {
   726  	if x != nil {
   727  		return x.ChannelId
   728  	}
   729  	return 0
   730  }
   731  
   732  func (x *ChannelRef) GetName() string {
   733  	if x != nil {
   734  		return x.Name
   735  	}
   736  	return ""
   737  }
   738  
   739  // SubchannelRef is a reference to a Subchannel.
   740  type SubchannelRef struct {
   741  	state         protoimpl.MessageState
   742  	sizeCache     protoimpl.SizeCache
   743  	unknownFields protoimpl.UnknownFields
   744  
   745  	// The globally unique id for this subchannel.  Must be a positive number.
   746  	SubchannelId int64 `protobuf:"varint,7,opt,name=subchannel_id,json=subchannelId,proto3" json:"subchannel_id,omitempty"`
   747  	// An optional name associated with the subchannel.
   748  	Name string `protobuf:"bytes,8,opt,name=name,proto3" json:"name,omitempty"`
   749  }
   750  
   751  func (x *SubchannelRef) Reset() {
   752  	*x = SubchannelRef{}
   753  	if protoimpl.UnsafeEnabled {
   754  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[7]
   755  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   756  		ms.StoreMessageInfo(mi)
   757  	}
   758  }
   759  
   760  func (x *SubchannelRef) String() string {
   761  	return protoimpl.X.MessageStringOf(x)
   762  }
   763  
   764  func (*SubchannelRef) ProtoMessage() {}
   765  
   766  func (x *SubchannelRef) ProtoReflect() protoreflect.Message {
   767  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[7]
   768  	if protoimpl.UnsafeEnabled && x != nil {
   769  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   770  		if ms.LoadMessageInfo() == nil {
   771  			ms.StoreMessageInfo(mi)
   772  		}
   773  		return ms
   774  	}
   775  	return mi.MessageOf(x)
   776  }
   777  
   778  // Deprecated: Use SubchannelRef.ProtoReflect.Descriptor instead.
   779  func (*SubchannelRef) Descriptor() ([]byte, []int) {
   780  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{7}
   781  }
   782  
   783  func (x *SubchannelRef) GetSubchannelId() int64 {
   784  	if x != nil {
   785  		return x.SubchannelId
   786  	}
   787  	return 0
   788  }
   789  
   790  func (x *SubchannelRef) GetName() string {
   791  	if x != nil {
   792  		return x.Name
   793  	}
   794  	return ""
   795  }
   796  
   797  // SocketRef is a reference to a Socket.
   798  type SocketRef struct {
   799  	state         protoimpl.MessageState
   800  	sizeCache     protoimpl.SizeCache
   801  	unknownFields protoimpl.UnknownFields
   802  
   803  	// The globally unique id for this socket.  Must be a positive number.
   804  	SocketId int64 `protobuf:"varint,3,opt,name=socket_id,json=socketId,proto3" json:"socket_id,omitempty"`
   805  	// An optional name associated with the socket.
   806  	Name string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"`
   807  }
   808  
   809  func (x *SocketRef) Reset() {
   810  	*x = SocketRef{}
   811  	if protoimpl.UnsafeEnabled {
   812  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[8]
   813  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   814  		ms.StoreMessageInfo(mi)
   815  	}
   816  }
   817  
   818  func (x *SocketRef) String() string {
   819  	return protoimpl.X.MessageStringOf(x)
   820  }
   821  
   822  func (*SocketRef) ProtoMessage() {}
   823  
   824  func (x *SocketRef) ProtoReflect() protoreflect.Message {
   825  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[8]
   826  	if protoimpl.UnsafeEnabled && x != nil {
   827  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   828  		if ms.LoadMessageInfo() == nil {
   829  			ms.StoreMessageInfo(mi)
   830  		}
   831  		return ms
   832  	}
   833  	return mi.MessageOf(x)
   834  }
   835  
   836  // Deprecated: Use SocketRef.ProtoReflect.Descriptor instead.
   837  func (*SocketRef) Descriptor() ([]byte, []int) {
   838  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{8}
   839  }
   840  
   841  func (x *SocketRef) GetSocketId() int64 {
   842  	if x != nil {
   843  		return x.SocketId
   844  	}
   845  	return 0
   846  }
   847  
   848  func (x *SocketRef) GetName() string {
   849  	if x != nil {
   850  		return x.Name
   851  	}
   852  	return ""
   853  }
   854  
   855  // ServerRef is a reference to a Server.
   856  type ServerRef struct {
   857  	state         protoimpl.MessageState
   858  	sizeCache     protoimpl.SizeCache
   859  	unknownFields protoimpl.UnknownFields
   860  
   861  	// A globally unique identifier for this server.  Must be a positive number.
   862  	ServerId int64 `protobuf:"varint,5,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
   863  	// An optional name associated with the server.
   864  	Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"`
   865  }
   866  
   867  func (x *ServerRef) Reset() {
   868  	*x = ServerRef{}
   869  	if protoimpl.UnsafeEnabled {
   870  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[9]
   871  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   872  		ms.StoreMessageInfo(mi)
   873  	}
   874  }
   875  
   876  func (x *ServerRef) String() string {
   877  	return protoimpl.X.MessageStringOf(x)
   878  }
   879  
   880  func (*ServerRef) ProtoMessage() {}
   881  
   882  func (x *ServerRef) ProtoReflect() protoreflect.Message {
   883  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[9]
   884  	if protoimpl.UnsafeEnabled && x != nil {
   885  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   886  		if ms.LoadMessageInfo() == nil {
   887  			ms.StoreMessageInfo(mi)
   888  		}
   889  		return ms
   890  	}
   891  	return mi.MessageOf(x)
   892  }
   893  
   894  // Deprecated: Use ServerRef.ProtoReflect.Descriptor instead.
   895  func (*ServerRef) Descriptor() ([]byte, []int) {
   896  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{9}
   897  }
   898  
   899  func (x *ServerRef) GetServerId() int64 {
   900  	if x != nil {
   901  		return x.ServerId
   902  	}
   903  	return 0
   904  }
   905  
   906  func (x *ServerRef) GetName() string {
   907  	if x != nil {
   908  		return x.Name
   909  	}
   910  	return ""
   911  }
   912  
   913  // Server represents a single server.  There may be multiple servers in a single
   914  // program.
   915  type Server struct {
   916  	state         protoimpl.MessageState
   917  	sizeCache     protoimpl.SizeCache
   918  	unknownFields protoimpl.UnknownFields
   919  
   920  	// The identifier for a Server.  This should be set.
   921  	Ref *ServerRef `protobuf:"bytes,1,opt,name=ref,proto3" json:"ref,omitempty"`
   922  	// The associated data of the Server.
   923  	Data *ServerData `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
   924  	// The sockets that the server is listening on.  There are no ordering
   925  	// guarantees.  This may be absent.
   926  	ListenSocket []*SocketRef `protobuf:"bytes,3,rep,name=listen_socket,json=listenSocket,proto3" json:"listen_socket,omitempty"`
   927  }
   928  
   929  func (x *Server) Reset() {
   930  	*x = Server{}
   931  	if protoimpl.UnsafeEnabled {
   932  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[10]
   933  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   934  		ms.StoreMessageInfo(mi)
   935  	}
   936  }
   937  
   938  func (x *Server) String() string {
   939  	return protoimpl.X.MessageStringOf(x)
   940  }
   941  
   942  func (*Server) ProtoMessage() {}
   943  
   944  func (x *Server) ProtoReflect() protoreflect.Message {
   945  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[10]
   946  	if protoimpl.UnsafeEnabled && x != nil {
   947  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   948  		if ms.LoadMessageInfo() == nil {
   949  			ms.StoreMessageInfo(mi)
   950  		}
   951  		return ms
   952  	}
   953  	return mi.MessageOf(x)
   954  }
   955  
   956  // Deprecated: Use Server.ProtoReflect.Descriptor instead.
   957  func (*Server) Descriptor() ([]byte, []int) {
   958  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{10}
   959  }
   960  
   961  func (x *Server) GetRef() *ServerRef {
   962  	if x != nil {
   963  		return x.Ref
   964  	}
   965  	return nil
   966  }
   967  
   968  func (x *Server) GetData() *ServerData {
   969  	if x != nil {
   970  		return x.Data
   971  	}
   972  	return nil
   973  }
   974  
   975  func (x *Server) GetListenSocket() []*SocketRef {
   976  	if x != nil {
   977  		return x.ListenSocket
   978  	}
   979  	return nil
   980  }
   981  
   982  // ServerData is data for a specific Server.
   983  type ServerData struct {
   984  	state         protoimpl.MessageState
   985  	sizeCache     protoimpl.SizeCache
   986  	unknownFields protoimpl.UnknownFields
   987  
   988  	// A trace of recent events on the server.  May be absent.
   989  	Trace *ChannelTrace `protobuf:"bytes,1,opt,name=trace,proto3" json:"trace,omitempty"`
   990  	// The number of incoming calls started on the server
   991  	CallsStarted int64 `protobuf:"varint,2,opt,name=calls_started,json=callsStarted,proto3" json:"calls_started,omitempty"`
   992  	// The number of incoming calls that have completed with an OK status
   993  	CallsSucceeded int64 `protobuf:"varint,3,opt,name=calls_succeeded,json=callsSucceeded,proto3" json:"calls_succeeded,omitempty"`
   994  	// The number of incoming calls that have a completed with a non-OK status
   995  	CallsFailed int64 `protobuf:"varint,4,opt,name=calls_failed,json=callsFailed,proto3" json:"calls_failed,omitempty"`
   996  	// The last time a call was started on the server.
   997  	LastCallStartedTimestamp *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=last_call_started_timestamp,json=lastCallStartedTimestamp,proto3" json:"last_call_started_timestamp,omitempty"`
   998  }
   999  
  1000  func (x *ServerData) Reset() {
  1001  	*x = ServerData{}
  1002  	if protoimpl.UnsafeEnabled {
  1003  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[11]
  1004  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1005  		ms.StoreMessageInfo(mi)
  1006  	}
  1007  }
  1008  
  1009  func (x *ServerData) String() string {
  1010  	return protoimpl.X.MessageStringOf(x)
  1011  }
  1012  
  1013  func (*ServerData) ProtoMessage() {}
  1014  
  1015  func (x *ServerData) ProtoReflect() protoreflect.Message {
  1016  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[11]
  1017  	if protoimpl.UnsafeEnabled && x != nil {
  1018  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1019  		if ms.LoadMessageInfo() == nil {
  1020  			ms.StoreMessageInfo(mi)
  1021  		}
  1022  		return ms
  1023  	}
  1024  	return mi.MessageOf(x)
  1025  }
  1026  
  1027  // Deprecated: Use ServerData.ProtoReflect.Descriptor instead.
  1028  func (*ServerData) Descriptor() ([]byte, []int) {
  1029  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{11}
  1030  }
  1031  
  1032  func (x *ServerData) GetTrace() *ChannelTrace {
  1033  	if x != nil {
  1034  		return x.Trace
  1035  	}
  1036  	return nil
  1037  }
  1038  
  1039  func (x *ServerData) GetCallsStarted() int64 {
  1040  	if x != nil {
  1041  		return x.CallsStarted
  1042  	}
  1043  	return 0
  1044  }
  1045  
  1046  func (x *ServerData) GetCallsSucceeded() int64 {
  1047  	if x != nil {
  1048  		return x.CallsSucceeded
  1049  	}
  1050  	return 0
  1051  }
  1052  
  1053  func (x *ServerData) GetCallsFailed() int64 {
  1054  	if x != nil {
  1055  		return x.CallsFailed
  1056  	}
  1057  	return 0
  1058  }
  1059  
  1060  func (x *ServerData) GetLastCallStartedTimestamp() *timestamppb.Timestamp {
  1061  	if x != nil {
  1062  		return x.LastCallStartedTimestamp
  1063  	}
  1064  	return nil
  1065  }
  1066  
  1067  // Information about an actual connection.  Pronounced "sock-ay".
  1068  type Socket struct {
  1069  	state         protoimpl.MessageState
  1070  	sizeCache     protoimpl.SizeCache
  1071  	unknownFields protoimpl.UnknownFields
  1072  
  1073  	// The identifier for the Socket.
  1074  	Ref *SocketRef `protobuf:"bytes,1,opt,name=ref,proto3" json:"ref,omitempty"`
  1075  	// Data specific to this Socket.
  1076  	Data *SocketData `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
  1077  	// The locally bound address.
  1078  	Local *Address `protobuf:"bytes,3,opt,name=local,proto3" json:"local,omitempty"`
  1079  	// The remote bound address.  May be absent.
  1080  	Remote *Address `protobuf:"bytes,4,opt,name=remote,proto3" json:"remote,omitempty"`
  1081  	// Security details for this socket.  May be absent if not available, or
  1082  	// there is no security on the socket.
  1083  	Security *Security `protobuf:"bytes,5,opt,name=security,proto3" json:"security,omitempty"`
  1084  	// Optional, represents the name of the remote endpoint, if different than
  1085  	// the original target name.
  1086  	RemoteName string `protobuf:"bytes,6,opt,name=remote_name,json=remoteName,proto3" json:"remote_name,omitempty"`
  1087  }
  1088  
  1089  func (x *Socket) Reset() {
  1090  	*x = Socket{}
  1091  	if protoimpl.UnsafeEnabled {
  1092  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[12]
  1093  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1094  		ms.StoreMessageInfo(mi)
  1095  	}
  1096  }
  1097  
  1098  func (x *Socket) String() string {
  1099  	return protoimpl.X.MessageStringOf(x)
  1100  }
  1101  
  1102  func (*Socket) ProtoMessage() {}
  1103  
  1104  func (x *Socket) ProtoReflect() protoreflect.Message {
  1105  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[12]
  1106  	if protoimpl.UnsafeEnabled && x != nil {
  1107  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1108  		if ms.LoadMessageInfo() == nil {
  1109  			ms.StoreMessageInfo(mi)
  1110  		}
  1111  		return ms
  1112  	}
  1113  	return mi.MessageOf(x)
  1114  }
  1115  
  1116  // Deprecated: Use Socket.ProtoReflect.Descriptor instead.
  1117  func (*Socket) Descriptor() ([]byte, []int) {
  1118  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{12}
  1119  }
  1120  
  1121  func (x *Socket) GetRef() *SocketRef {
  1122  	if x != nil {
  1123  		return x.Ref
  1124  	}
  1125  	return nil
  1126  }
  1127  
  1128  func (x *Socket) GetData() *SocketData {
  1129  	if x != nil {
  1130  		return x.Data
  1131  	}
  1132  	return nil
  1133  }
  1134  
  1135  func (x *Socket) GetLocal() *Address {
  1136  	if x != nil {
  1137  		return x.Local
  1138  	}
  1139  	return nil
  1140  }
  1141  
  1142  func (x *Socket) GetRemote() *Address {
  1143  	if x != nil {
  1144  		return x.Remote
  1145  	}
  1146  	return nil
  1147  }
  1148  
  1149  func (x *Socket) GetSecurity() *Security {
  1150  	if x != nil {
  1151  		return x.Security
  1152  	}
  1153  	return nil
  1154  }
  1155  
  1156  func (x *Socket) GetRemoteName() string {
  1157  	if x != nil {
  1158  		return x.RemoteName
  1159  	}
  1160  	return ""
  1161  }
  1162  
  1163  // SocketData is data associated for a specific Socket.  The fields present
  1164  // are specific to the implementation, so there may be minor differences in
  1165  // the semantics.  (e.g. flow control windows)
  1166  type SocketData struct {
  1167  	state         protoimpl.MessageState
  1168  	sizeCache     protoimpl.SizeCache
  1169  	unknownFields protoimpl.UnknownFields
  1170  
  1171  	// The number of streams that have been started.
  1172  	StreamsStarted int64 `protobuf:"varint,1,opt,name=streams_started,json=streamsStarted,proto3" json:"streams_started,omitempty"`
  1173  	// The number of streams that have ended successfully:
  1174  	// On client side, received frame with eos bit set;
  1175  	// On server side, sent frame with eos bit set.
  1176  	StreamsSucceeded int64 `protobuf:"varint,2,opt,name=streams_succeeded,json=streamsSucceeded,proto3" json:"streams_succeeded,omitempty"`
  1177  	// The number of streams that have ended unsuccessfully:
  1178  	// On client side, ended without receiving frame with eos bit set;
  1179  	// On server side, ended without sending frame with eos bit set.
  1180  	StreamsFailed int64 `protobuf:"varint,3,opt,name=streams_failed,json=streamsFailed,proto3" json:"streams_failed,omitempty"`
  1181  	// The number of grpc messages successfully sent on this socket.
  1182  	MessagesSent int64 `protobuf:"varint,4,opt,name=messages_sent,json=messagesSent,proto3" json:"messages_sent,omitempty"`
  1183  	// The number of grpc messages received on this socket.
  1184  	MessagesReceived int64 `protobuf:"varint,5,opt,name=messages_received,json=messagesReceived,proto3" json:"messages_received,omitempty"`
  1185  	// The number of keep alives sent.  This is typically implemented with HTTP/2
  1186  	// ping messages.
  1187  	KeepAlivesSent int64 `protobuf:"varint,6,opt,name=keep_alives_sent,json=keepAlivesSent,proto3" json:"keep_alives_sent,omitempty"`
  1188  	// The last time a stream was created by this endpoint.  Usually unset for
  1189  	// servers.
  1190  	LastLocalStreamCreatedTimestamp *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=last_local_stream_created_timestamp,json=lastLocalStreamCreatedTimestamp,proto3" json:"last_local_stream_created_timestamp,omitempty"`
  1191  	// The last time a stream was created by the remote endpoint.  Usually unset
  1192  	// for clients.
  1193  	LastRemoteStreamCreatedTimestamp *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=last_remote_stream_created_timestamp,json=lastRemoteStreamCreatedTimestamp,proto3" json:"last_remote_stream_created_timestamp,omitempty"`
  1194  	// The last time a message was sent by this endpoint.
  1195  	LastMessageSentTimestamp *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=last_message_sent_timestamp,json=lastMessageSentTimestamp,proto3" json:"last_message_sent_timestamp,omitempty"`
  1196  	// The last time a message was received by this endpoint.
  1197  	LastMessageReceivedTimestamp *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=last_message_received_timestamp,json=lastMessageReceivedTimestamp,proto3" json:"last_message_received_timestamp,omitempty"`
  1198  	// The amount of window, granted to the local endpoint by the remote endpoint.
  1199  	// This may be slightly out of date due to network latency.  This does NOT
  1200  	// include stream level or TCP level flow control info.
  1201  	LocalFlowControlWindow *wrapperspb.Int64Value `protobuf:"bytes,11,opt,name=local_flow_control_window,json=localFlowControlWindow,proto3" json:"local_flow_control_window,omitempty"`
  1202  	// The amount of window, granted to the remote endpoint by the local endpoint.
  1203  	// This may be slightly out of date due to network latency.  This does NOT
  1204  	// include stream level or TCP level flow control info.
  1205  	RemoteFlowControlWindow *wrapperspb.Int64Value `protobuf:"bytes,12,opt,name=remote_flow_control_window,json=remoteFlowControlWindow,proto3" json:"remote_flow_control_window,omitempty"`
  1206  	// Socket options set on this socket.  May be absent if 'summary' is set
  1207  	// on GetSocketRequest.
  1208  	Option []*SocketOption `protobuf:"bytes,13,rep,name=option,proto3" json:"option,omitempty"`
  1209  }
  1210  
  1211  func (x *SocketData) Reset() {
  1212  	*x = SocketData{}
  1213  	if protoimpl.UnsafeEnabled {
  1214  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[13]
  1215  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1216  		ms.StoreMessageInfo(mi)
  1217  	}
  1218  }
  1219  
  1220  func (x *SocketData) String() string {
  1221  	return protoimpl.X.MessageStringOf(x)
  1222  }
  1223  
  1224  func (*SocketData) ProtoMessage() {}
  1225  
  1226  func (x *SocketData) ProtoReflect() protoreflect.Message {
  1227  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[13]
  1228  	if protoimpl.UnsafeEnabled && x != nil {
  1229  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1230  		if ms.LoadMessageInfo() == nil {
  1231  			ms.StoreMessageInfo(mi)
  1232  		}
  1233  		return ms
  1234  	}
  1235  	return mi.MessageOf(x)
  1236  }
  1237  
  1238  // Deprecated: Use SocketData.ProtoReflect.Descriptor instead.
  1239  func (*SocketData) Descriptor() ([]byte, []int) {
  1240  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{13}
  1241  }
  1242  
  1243  func (x *SocketData) GetStreamsStarted() int64 {
  1244  	if x != nil {
  1245  		return x.StreamsStarted
  1246  	}
  1247  	return 0
  1248  }
  1249  
  1250  func (x *SocketData) GetStreamsSucceeded() int64 {
  1251  	if x != nil {
  1252  		return x.StreamsSucceeded
  1253  	}
  1254  	return 0
  1255  }
  1256  
  1257  func (x *SocketData) GetStreamsFailed() int64 {
  1258  	if x != nil {
  1259  		return x.StreamsFailed
  1260  	}
  1261  	return 0
  1262  }
  1263  
  1264  func (x *SocketData) GetMessagesSent() int64 {
  1265  	if x != nil {
  1266  		return x.MessagesSent
  1267  	}
  1268  	return 0
  1269  }
  1270  
  1271  func (x *SocketData) GetMessagesReceived() int64 {
  1272  	if x != nil {
  1273  		return x.MessagesReceived
  1274  	}
  1275  	return 0
  1276  }
  1277  
  1278  func (x *SocketData) GetKeepAlivesSent() int64 {
  1279  	if x != nil {
  1280  		return x.KeepAlivesSent
  1281  	}
  1282  	return 0
  1283  }
  1284  
  1285  func (x *SocketData) GetLastLocalStreamCreatedTimestamp() *timestamppb.Timestamp {
  1286  	if x != nil {
  1287  		return x.LastLocalStreamCreatedTimestamp
  1288  	}
  1289  	return nil
  1290  }
  1291  
  1292  func (x *SocketData) GetLastRemoteStreamCreatedTimestamp() *timestamppb.Timestamp {
  1293  	if x != nil {
  1294  		return x.LastRemoteStreamCreatedTimestamp
  1295  	}
  1296  	return nil
  1297  }
  1298  
  1299  func (x *SocketData) GetLastMessageSentTimestamp() *timestamppb.Timestamp {
  1300  	if x != nil {
  1301  		return x.LastMessageSentTimestamp
  1302  	}
  1303  	return nil
  1304  }
  1305  
  1306  func (x *SocketData) GetLastMessageReceivedTimestamp() *timestamppb.Timestamp {
  1307  	if x != nil {
  1308  		return x.LastMessageReceivedTimestamp
  1309  	}
  1310  	return nil
  1311  }
  1312  
  1313  func (x *SocketData) GetLocalFlowControlWindow() *wrapperspb.Int64Value {
  1314  	if x != nil {
  1315  		return x.LocalFlowControlWindow
  1316  	}
  1317  	return nil
  1318  }
  1319  
  1320  func (x *SocketData) GetRemoteFlowControlWindow() *wrapperspb.Int64Value {
  1321  	if x != nil {
  1322  		return x.RemoteFlowControlWindow
  1323  	}
  1324  	return nil
  1325  }
  1326  
  1327  func (x *SocketData) GetOption() []*SocketOption {
  1328  	if x != nil {
  1329  		return x.Option
  1330  	}
  1331  	return nil
  1332  }
  1333  
  1334  // Address represents the address used to create the socket.
  1335  type Address struct {
  1336  	state         protoimpl.MessageState
  1337  	sizeCache     protoimpl.SizeCache
  1338  	unknownFields protoimpl.UnknownFields
  1339  
  1340  	// Types that are assignable to Address:
  1341  	//	*Address_TcpipAddress
  1342  	//	*Address_UdsAddress_
  1343  	//	*Address_OtherAddress_
  1344  	Address isAddress_Address `protobuf_oneof:"address"`
  1345  }
  1346  
  1347  func (x *Address) Reset() {
  1348  	*x = Address{}
  1349  	if protoimpl.UnsafeEnabled {
  1350  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[14]
  1351  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1352  		ms.StoreMessageInfo(mi)
  1353  	}
  1354  }
  1355  
  1356  func (x *Address) String() string {
  1357  	return protoimpl.X.MessageStringOf(x)
  1358  }
  1359  
  1360  func (*Address) ProtoMessage() {}
  1361  
  1362  func (x *Address) ProtoReflect() protoreflect.Message {
  1363  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[14]
  1364  	if protoimpl.UnsafeEnabled && x != nil {
  1365  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1366  		if ms.LoadMessageInfo() == nil {
  1367  			ms.StoreMessageInfo(mi)
  1368  		}
  1369  		return ms
  1370  	}
  1371  	return mi.MessageOf(x)
  1372  }
  1373  
  1374  // Deprecated: Use Address.ProtoReflect.Descriptor instead.
  1375  func (*Address) Descriptor() ([]byte, []int) {
  1376  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{14}
  1377  }
  1378  
  1379  func (m *Address) GetAddress() isAddress_Address {
  1380  	if m != nil {
  1381  		return m.Address
  1382  	}
  1383  	return nil
  1384  }
  1385  
  1386  func (x *Address) GetTcpipAddress() *Address_TcpIpAddress {
  1387  	if x, ok := x.GetAddress().(*Address_TcpipAddress); ok {
  1388  		return x.TcpipAddress
  1389  	}
  1390  	return nil
  1391  }
  1392  
  1393  func (x *Address) GetUdsAddress() *Address_UdsAddress {
  1394  	if x, ok := x.GetAddress().(*Address_UdsAddress_); ok {
  1395  		return x.UdsAddress
  1396  	}
  1397  	return nil
  1398  }
  1399  
  1400  func (x *Address) GetOtherAddress() *Address_OtherAddress {
  1401  	if x, ok := x.GetAddress().(*Address_OtherAddress_); ok {
  1402  		return x.OtherAddress
  1403  	}
  1404  	return nil
  1405  }
  1406  
  1407  type isAddress_Address interface {
  1408  	isAddress_Address()
  1409  }
  1410  
  1411  type Address_TcpipAddress struct {
  1412  	TcpipAddress *Address_TcpIpAddress `protobuf:"bytes,1,opt,name=tcpip_address,json=tcpipAddress,proto3,oneof"`
  1413  }
  1414  
  1415  type Address_UdsAddress_ struct {
  1416  	UdsAddress *Address_UdsAddress `protobuf:"bytes,2,opt,name=uds_address,json=udsAddress,proto3,oneof"`
  1417  }
  1418  
  1419  type Address_OtherAddress_ struct {
  1420  	OtherAddress *Address_OtherAddress `protobuf:"bytes,3,opt,name=other_address,json=otherAddress,proto3,oneof"`
  1421  }
  1422  
  1423  func (*Address_TcpipAddress) isAddress_Address() {}
  1424  
  1425  func (*Address_UdsAddress_) isAddress_Address() {}
  1426  
  1427  func (*Address_OtherAddress_) isAddress_Address() {}
  1428  
  1429  // Security represents details about how secure the socket is.
  1430  type Security struct {
  1431  	state         protoimpl.MessageState
  1432  	sizeCache     protoimpl.SizeCache
  1433  	unknownFields protoimpl.UnknownFields
  1434  
  1435  	// Types that are assignable to Model:
  1436  	//	*Security_Tls_
  1437  	//	*Security_Other
  1438  	Model isSecurity_Model `protobuf_oneof:"model"`
  1439  }
  1440  
  1441  func (x *Security) Reset() {
  1442  	*x = Security{}
  1443  	if protoimpl.UnsafeEnabled {
  1444  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[15]
  1445  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1446  		ms.StoreMessageInfo(mi)
  1447  	}
  1448  }
  1449  
  1450  func (x *Security) String() string {
  1451  	return protoimpl.X.MessageStringOf(x)
  1452  }
  1453  
  1454  func (*Security) ProtoMessage() {}
  1455  
  1456  func (x *Security) ProtoReflect() protoreflect.Message {
  1457  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[15]
  1458  	if protoimpl.UnsafeEnabled && x != nil {
  1459  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1460  		if ms.LoadMessageInfo() == nil {
  1461  			ms.StoreMessageInfo(mi)
  1462  		}
  1463  		return ms
  1464  	}
  1465  	return mi.MessageOf(x)
  1466  }
  1467  
  1468  // Deprecated: Use Security.ProtoReflect.Descriptor instead.
  1469  func (*Security) Descriptor() ([]byte, []int) {
  1470  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{15}
  1471  }
  1472  
  1473  func (m *Security) GetModel() isSecurity_Model {
  1474  	if m != nil {
  1475  		return m.Model
  1476  	}
  1477  	return nil
  1478  }
  1479  
  1480  func (x *Security) GetTls() *Security_Tls {
  1481  	if x, ok := x.GetModel().(*Security_Tls_); ok {
  1482  		return x.Tls
  1483  	}
  1484  	return nil
  1485  }
  1486  
  1487  func (x *Security) GetOther() *Security_OtherSecurity {
  1488  	if x, ok := x.GetModel().(*Security_Other); ok {
  1489  		return x.Other
  1490  	}
  1491  	return nil
  1492  }
  1493  
  1494  type isSecurity_Model interface {
  1495  	isSecurity_Model()
  1496  }
  1497  
  1498  type Security_Tls_ struct {
  1499  	Tls *Security_Tls `protobuf:"bytes,1,opt,name=tls,proto3,oneof"`
  1500  }
  1501  
  1502  type Security_Other struct {
  1503  	Other *Security_OtherSecurity `protobuf:"bytes,2,opt,name=other,proto3,oneof"`
  1504  }
  1505  
  1506  func (*Security_Tls_) isSecurity_Model() {}
  1507  
  1508  func (*Security_Other) isSecurity_Model() {}
  1509  
  1510  // SocketOption represents socket options for a socket.  Specifically, these
  1511  // are the options returned by getsockopt().
  1512  type SocketOption struct {
  1513  	state         protoimpl.MessageState
  1514  	sizeCache     protoimpl.SizeCache
  1515  	unknownFields protoimpl.UnknownFields
  1516  
  1517  	// The full name of the socket option.  Typically this will be the upper case
  1518  	// name, such as "SO_REUSEPORT".
  1519  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  1520  	// The human readable value of this socket option.  At least one of value or
  1521  	// additional will be set.
  1522  	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
  1523  	// Additional data associated with the socket option.  At least one of value
  1524  	// or additional will be set.
  1525  	Additional *anypb.Any `protobuf:"bytes,3,opt,name=additional,proto3" json:"additional,omitempty"`
  1526  }
  1527  
  1528  func (x *SocketOption) Reset() {
  1529  	*x = SocketOption{}
  1530  	if protoimpl.UnsafeEnabled {
  1531  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[16]
  1532  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1533  		ms.StoreMessageInfo(mi)
  1534  	}
  1535  }
  1536  
  1537  func (x *SocketOption) String() string {
  1538  	return protoimpl.X.MessageStringOf(x)
  1539  }
  1540  
  1541  func (*SocketOption) ProtoMessage() {}
  1542  
  1543  func (x *SocketOption) ProtoReflect() protoreflect.Message {
  1544  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[16]
  1545  	if protoimpl.UnsafeEnabled && x != nil {
  1546  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1547  		if ms.LoadMessageInfo() == nil {
  1548  			ms.StoreMessageInfo(mi)
  1549  		}
  1550  		return ms
  1551  	}
  1552  	return mi.MessageOf(x)
  1553  }
  1554  
  1555  // Deprecated: Use SocketOption.ProtoReflect.Descriptor instead.
  1556  func (*SocketOption) Descriptor() ([]byte, []int) {
  1557  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{16}
  1558  }
  1559  
  1560  func (x *SocketOption) GetName() string {
  1561  	if x != nil {
  1562  		return x.Name
  1563  	}
  1564  	return ""
  1565  }
  1566  
  1567  func (x *SocketOption) GetValue() string {
  1568  	if x != nil {
  1569  		return x.Value
  1570  	}
  1571  	return ""
  1572  }
  1573  
  1574  func (x *SocketOption) GetAdditional() *anypb.Any {
  1575  	if x != nil {
  1576  		return x.Additional
  1577  	}
  1578  	return nil
  1579  }
  1580  
  1581  // For use with SocketOption's additional field.  This is primarily used for
  1582  // SO_RCVTIMEO and SO_SNDTIMEO
  1583  type SocketOptionTimeout struct {
  1584  	state         protoimpl.MessageState
  1585  	sizeCache     protoimpl.SizeCache
  1586  	unknownFields protoimpl.UnknownFields
  1587  
  1588  	Duration *durationpb.Duration `protobuf:"bytes,1,opt,name=duration,proto3" json:"duration,omitempty"`
  1589  }
  1590  
  1591  func (x *SocketOptionTimeout) Reset() {
  1592  	*x = SocketOptionTimeout{}
  1593  	if protoimpl.UnsafeEnabled {
  1594  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[17]
  1595  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1596  		ms.StoreMessageInfo(mi)
  1597  	}
  1598  }
  1599  
  1600  func (x *SocketOptionTimeout) String() string {
  1601  	return protoimpl.X.MessageStringOf(x)
  1602  }
  1603  
  1604  func (*SocketOptionTimeout) ProtoMessage() {}
  1605  
  1606  func (x *SocketOptionTimeout) ProtoReflect() protoreflect.Message {
  1607  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[17]
  1608  	if protoimpl.UnsafeEnabled && x != nil {
  1609  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1610  		if ms.LoadMessageInfo() == nil {
  1611  			ms.StoreMessageInfo(mi)
  1612  		}
  1613  		return ms
  1614  	}
  1615  	return mi.MessageOf(x)
  1616  }
  1617  
  1618  // Deprecated: Use SocketOptionTimeout.ProtoReflect.Descriptor instead.
  1619  func (*SocketOptionTimeout) Descriptor() ([]byte, []int) {
  1620  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{17}
  1621  }
  1622  
  1623  func (x *SocketOptionTimeout) GetDuration() *durationpb.Duration {
  1624  	if x != nil {
  1625  		return x.Duration
  1626  	}
  1627  	return nil
  1628  }
  1629  
  1630  // For use with SocketOption's additional field.  This is primarily used for
  1631  // SO_LINGER.
  1632  type SocketOptionLinger struct {
  1633  	state         protoimpl.MessageState
  1634  	sizeCache     protoimpl.SizeCache
  1635  	unknownFields protoimpl.UnknownFields
  1636  
  1637  	// active maps to `struct linger.l_onoff`
  1638  	Active bool `protobuf:"varint,1,opt,name=active,proto3" json:"active,omitempty"`
  1639  	// duration maps to `struct linger.l_linger`
  1640  	Duration *durationpb.Duration `protobuf:"bytes,2,opt,name=duration,proto3" json:"duration,omitempty"`
  1641  }
  1642  
  1643  func (x *SocketOptionLinger) Reset() {
  1644  	*x = SocketOptionLinger{}
  1645  	if protoimpl.UnsafeEnabled {
  1646  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[18]
  1647  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1648  		ms.StoreMessageInfo(mi)
  1649  	}
  1650  }
  1651  
  1652  func (x *SocketOptionLinger) String() string {
  1653  	return protoimpl.X.MessageStringOf(x)
  1654  }
  1655  
  1656  func (*SocketOptionLinger) ProtoMessage() {}
  1657  
  1658  func (x *SocketOptionLinger) ProtoReflect() protoreflect.Message {
  1659  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[18]
  1660  	if protoimpl.UnsafeEnabled && x != nil {
  1661  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1662  		if ms.LoadMessageInfo() == nil {
  1663  			ms.StoreMessageInfo(mi)
  1664  		}
  1665  		return ms
  1666  	}
  1667  	return mi.MessageOf(x)
  1668  }
  1669  
  1670  // Deprecated: Use SocketOptionLinger.ProtoReflect.Descriptor instead.
  1671  func (*SocketOptionLinger) Descriptor() ([]byte, []int) {
  1672  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{18}
  1673  }
  1674  
  1675  func (x *SocketOptionLinger) GetActive() bool {
  1676  	if x != nil {
  1677  		return x.Active
  1678  	}
  1679  	return false
  1680  }
  1681  
  1682  func (x *SocketOptionLinger) GetDuration() *durationpb.Duration {
  1683  	if x != nil {
  1684  		return x.Duration
  1685  	}
  1686  	return nil
  1687  }
  1688  
  1689  // For use with SocketOption's additional field.  Tcp info for
  1690  // SOL_TCP and TCP_INFO.
  1691  type SocketOptionTcpInfo struct {
  1692  	state         protoimpl.MessageState
  1693  	sizeCache     protoimpl.SizeCache
  1694  	unknownFields protoimpl.UnknownFields
  1695  
  1696  	TcpiState        uint32 `protobuf:"varint,1,opt,name=tcpi_state,json=tcpiState,proto3" json:"tcpi_state,omitempty"`
  1697  	TcpiCaState      uint32 `protobuf:"varint,2,opt,name=tcpi_ca_state,json=tcpiCaState,proto3" json:"tcpi_ca_state,omitempty"`
  1698  	TcpiRetransmits  uint32 `protobuf:"varint,3,opt,name=tcpi_retransmits,json=tcpiRetransmits,proto3" json:"tcpi_retransmits,omitempty"`
  1699  	TcpiProbes       uint32 `protobuf:"varint,4,opt,name=tcpi_probes,json=tcpiProbes,proto3" json:"tcpi_probes,omitempty"`
  1700  	TcpiBackoff      uint32 `protobuf:"varint,5,opt,name=tcpi_backoff,json=tcpiBackoff,proto3" json:"tcpi_backoff,omitempty"`
  1701  	TcpiOptions      uint32 `protobuf:"varint,6,opt,name=tcpi_options,json=tcpiOptions,proto3" json:"tcpi_options,omitempty"`
  1702  	TcpiSndWscale    uint32 `protobuf:"varint,7,opt,name=tcpi_snd_wscale,json=tcpiSndWscale,proto3" json:"tcpi_snd_wscale,omitempty"`
  1703  	TcpiRcvWscale    uint32 `protobuf:"varint,8,opt,name=tcpi_rcv_wscale,json=tcpiRcvWscale,proto3" json:"tcpi_rcv_wscale,omitempty"`
  1704  	TcpiRto          uint32 `protobuf:"varint,9,opt,name=tcpi_rto,json=tcpiRto,proto3" json:"tcpi_rto,omitempty"`
  1705  	TcpiAto          uint32 `protobuf:"varint,10,opt,name=tcpi_ato,json=tcpiAto,proto3" json:"tcpi_ato,omitempty"`
  1706  	TcpiSndMss       uint32 `protobuf:"varint,11,opt,name=tcpi_snd_mss,json=tcpiSndMss,proto3" json:"tcpi_snd_mss,omitempty"`
  1707  	TcpiRcvMss       uint32 `protobuf:"varint,12,opt,name=tcpi_rcv_mss,json=tcpiRcvMss,proto3" json:"tcpi_rcv_mss,omitempty"`
  1708  	TcpiUnacked      uint32 `protobuf:"varint,13,opt,name=tcpi_unacked,json=tcpiUnacked,proto3" json:"tcpi_unacked,omitempty"`
  1709  	TcpiSacked       uint32 `protobuf:"varint,14,opt,name=tcpi_sacked,json=tcpiSacked,proto3" json:"tcpi_sacked,omitempty"`
  1710  	TcpiLost         uint32 `protobuf:"varint,15,opt,name=tcpi_lost,json=tcpiLost,proto3" json:"tcpi_lost,omitempty"`
  1711  	TcpiRetrans      uint32 `protobuf:"varint,16,opt,name=tcpi_retrans,json=tcpiRetrans,proto3" json:"tcpi_retrans,omitempty"`
  1712  	TcpiFackets      uint32 `protobuf:"varint,17,opt,name=tcpi_fackets,json=tcpiFackets,proto3" json:"tcpi_fackets,omitempty"`
  1713  	TcpiLastDataSent uint32 `protobuf:"varint,18,opt,name=tcpi_last_data_sent,json=tcpiLastDataSent,proto3" json:"tcpi_last_data_sent,omitempty"`
  1714  	TcpiLastAckSent  uint32 `protobuf:"varint,19,opt,name=tcpi_last_ack_sent,json=tcpiLastAckSent,proto3" json:"tcpi_last_ack_sent,omitempty"`
  1715  	TcpiLastDataRecv uint32 `protobuf:"varint,20,opt,name=tcpi_last_data_recv,json=tcpiLastDataRecv,proto3" json:"tcpi_last_data_recv,omitempty"`
  1716  	TcpiLastAckRecv  uint32 `protobuf:"varint,21,opt,name=tcpi_last_ack_recv,json=tcpiLastAckRecv,proto3" json:"tcpi_last_ack_recv,omitempty"`
  1717  	TcpiPmtu         uint32 `protobuf:"varint,22,opt,name=tcpi_pmtu,json=tcpiPmtu,proto3" json:"tcpi_pmtu,omitempty"`
  1718  	TcpiRcvSsthresh  uint32 `protobuf:"varint,23,opt,name=tcpi_rcv_ssthresh,json=tcpiRcvSsthresh,proto3" json:"tcpi_rcv_ssthresh,omitempty"`
  1719  	TcpiRtt          uint32 `protobuf:"varint,24,opt,name=tcpi_rtt,json=tcpiRtt,proto3" json:"tcpi_rtt,omitempty"`
  1720  	TcpiRttvar       uint32 `protobuf:"varint,25,opt,name=tcpi_rttvar,json=tcpiRttvar,proto3" json:"tcpi_rttvar,omitempty"`
  1721  	TcpiSndSsthresh  uint32 `protobuf:"varint,26,opt,name=tcpi_snd_ssthresh,json=tcpiSndSsthresh,proto3" json:"tcpi_snd_ssthresh,omitempty"`
  1722  	TcpiSndCwnd      uint32 `protobuf:"varint,27,opt,name=tcpi_snd_cwnd,json=tcpiSndCwnd,proto3" json:"tcpi_snd_cwnd,omitempty"`
  1723  	TcpiAdvmss       uint32 `protobuf:"varint,28,opt,name=tcpi_advmss,json=tcpiAdvmss,proto3" json:"tcpi_advmss,omitempty"`
  1724  	TcpiReordering   uint32 `protobuf:"varint,29,opt,name=tcpi_reordering,json=tcpiReordering,proto3" json:"tcpi_reordering,omitempty"`
  1725  }
  1726  
  1727  func (x *SocketOptionTcpInfo) Reset() {
  1728  	*x = SocketOptionTcpInfo{}
  1729  	if protoimpl.UnsafeEnabled {
  1730  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[19]
  1731  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1732  		ms.StoreMessageInfo(mi)
  1733  	}
  1734  }
  1735  
  1736  func (x *SocketOptionTcpInfo) String() string {
  1737  	return protoimpl.X.MessageStringOf(x)
  1738  }
  1739  
  1740  func (*SocketOptionTcpInfo) ProtoMessage() {}
  1741  
  1742  func (x *SocketOptionTcpInfo) ProtoReflect() protoreflect.Message {
  1743  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[19]
  1744  	if protoimpl.UnsafeEnabled && x != nil {
  1745  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1746  		if ms.LoadMessageInfo() == nil {
  1747  			ms.StoreMessageInfo(mi)
  1748  		}
  1749  		return ms
  1750  	}
  1751  	return mi.MessageOf(x)
  1752  }
  1753  
  1754  // Deprecated: Use SocketOptionTcpInfo.ProtoReflect.Descriptor instead.
  1755  func (*SocketOptionTcpInfo) Descriptor() ([]byte, []int) {
  1756  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{19}
  1757  }
  1758  
  1759  func (x *SocketOptionTcpInfo) GetTcpiState() uint32 {
  1760  	if x != nil {
  1761  		return x.TcpiState
  1762  	}
  1763  	return 0
  1764  }
  1765  
  1766  func (x *SocketOptionTcpInfo) GetTcpiCaState() uint32 {
  1767  	if x != nil {
  1768  		return x.TcpiCaState
  1769  	}
  1770  	return 0
  1771  }
  1772  
  1773  func (x *SocketOptionTcpInfo) GetTcpiRetransmits() uint32 {
  1774  	if x != nil {
  1775  		return x.TcpiRetransmits
  1776  	}
  1777  	return 0
  1778  }
  1779  
  1780  func (x *SocketOptionTcpInfo) GetTcpiProbes() uint32 {
  1781  	if x != nil {
  1782  		return x.TcpiProbes
  1783  	}
  1784  	return 0
  1785  }
  1786  
  1787  func (x *SocketOptionTcpInfo) GetTcpiBackoff() uint32 {
  1788  	if x != nil {
  1789  		return x.TcpiBackoff
  1790  	}
  1791  	return 0
  1792  }
  1793  
  1794  func (x *SocketOptionTcpInfo) GetTcpiOptions() uint32 {
  1795  	if x != nil {
  1796  		return x.TcpiOptions
  1797  	}
  1798  	return 0
  1799  }
  1800  
  1801  func (x *SocketOptionTcpInfo) GetTcpiSndWscale() uint32 {
  1802  	if x != nil {
  1803  		return x.TcpiSndWscale
  1804  	}
  1805  	return 0
  1806  }
  1807  
  1808  func (x *SocketOptionTcpInfo) GetTcpiRcvWscale() uint32 {
  1809  	if x != nil {
  1810  		return x.TcpiRcvWscale
  1811  	}
  1812  	return 0
  1813  }
  1814  
  1815  func (x *SocketOptionTcpInfo) GetTcpiRto() uint32 {
  1816  	if x != nil {
  1817  		return x.TcpiRto
  1818  	}
  1819  	return 0
  1820  }
  1821  
  1822  func (x *SocketOptionTcpInfo) GetTcpiAto() uint32 {
  1823  	if x != nil {
  1824  		return x.TcpiAto
  1825  	}
  1826  	return 0
  1827  }
  1828  
  1829  func (x *SocketOptionTcpInfo) GetTcpiSndMss() uint32 {
  1830  	if x != nil {
  1831  		return x.TcpiSndMss
  1832  	}
  1833  	return 0
  1834  }
  1835  
  1836  func (x *SocketOptionTcpInfo) GetTcpiRcvMss() uint32 {
  1837  	if x != nil {
  1838  		return x.TcpiRcvMss
  1839  	}
  1840  	return 0
  1841  }
  1842  
  1843  func (x *SocketOptionTcpInfo) GetTcpiUnacked() uint32 {
  1844  	if x != nil {
  1845  		return x.TcpiUnacked
  1846  	}
  1847  	return 0
  1848  }
  1849  
  1850  func (x *SocketOptionTcpInfo) GetTcpiSacked() uint32 {
  1851  	if x != nil {
  1852  		return x.TcpiSacked
  1853  	}
  1854  	return 0
  1855  }
  1856  
  1857  func (x *SocketOptionTcpInfo) GetTcpiLost() uint32 {
  1858  	if x != nil {
  1859  		return x.TcpiLost
  1860  	}
  1861  	return 0
  1862  }
  1863  
  1864  func (x *SocketOptionTcpInfo) GetTcpiRetrans() uint32 {
  1865  	if x != nil {
  1866  		return x.TcpiRetrans
  1867  	}
  1868  	return 0
  1869  }
  1870  
  1871  func (x *SocketOptionTcpInfo) GetTcpiFackets() uint32 {
  1872  	if x != nil {
  1873  		return x.TcpiFackets
  1874  	}
  1875  	return 0
  1876  }
  1877  
  1878  func (x *SocketOptionTcpInfo) GetTcpiLastDataSent() uint32 {
  1879  	if x != nil {
  1880  		return x.TcpiLastDataSent
  1881  	}
  1882  	return 0
  1883  }
  1884  
  1885  func (x *SocketOptionTcpInfo) GetTcpiLastAckSent() uint32 {
  1886  	if x != nil {
  1887  		return x.TcpiLastAckSent
  1888  	}
  1889  	return 0
  1890  }
  1891  
  1892  func (x *SocketOptionTcpInfo) GetTcpiLastDataRecv() uint32 {
  1893  	if x != nil {
  1894  		return x.TcpiLastDataRecv
  1895  	}
  1896  	return 0
  1897  }
  1898  
  1899  func (x *SocketOptionTcpInfo) GetTcpiLastAckRecv() uint32 {
  1900  	if x != nil {
  1901  		return x.TcpiLastAckRecv
  1902  	}
  1903  	return 0
  1904  }
  1905  
  1906  func (x *SocketOptionTcpInfo) GetTcpiPmtu() uint32 {
  1907  	if x != nil {
  1908  		return x.TcpiPmtu
  1909  	}
  1910  	return 0
  1911  }
  1912  
  1913  func (x *SocketOptionTcpInfo) GetTcpiRcvSsthresh() uint32 {
  1914  	if x != nil {
  1915  		return x.TcpiRcvSsthresh
  1916  	}
  1917  	return 0
  1918  }
  1919  
  1920  func (x *SocketOptionTcpInfo) GetTcpiRtt() uint32 {
  1921  	if x != nil {
  1922  		return x.TcpiRtt
  1923  	}
  1924  	return 0
  1925  }
  1926  
  1927  func (x *SocketOptionTcpInfo) GetTcpiRttvar() uint32 {
  1928  	if x != nil {
  1929  		return x.TcpiRttvar
  1930  	}
  1931  	return 0
  1932  }
  1933  
  1934  func (x *SocketOptionTcpInfo) GetTcpiSndSsthresh() uint32 {
  1935  	if x != nil {
  1936  		return x.TcpiSndSsthresh
  1937  	}
  1938  	return 0
  1939  }
  1940  
  1941  func (x *SocketOptionTcpInfo) GetTcpiSndCwnd() uint32 {
  1942  	if x != nil {
  1943  		return x.TcpiSndCwnd
  1944  	}
  1945  	return 0
  1946  }
  1947  
  1948  func (x *SocketOptionTcpInfo) GetTcpiAdvmss() uint32 {
  1949  	if x != nil {
  1950  		return x.TcpiAdvmss
  1951  	}
  1952  	return 0
  1953  }
  1954  
  1955  func (x *SocketOptionTcpInfo) GetTcpiReordering() uint32 {
  1956  	if x != nil {
  1957  		return x.TcpiReordering
  1958  	}
  1959  	return 0
  1960  }
  1961  
  1962  type GetTopChannelsRequest struct {
  1963  	state         protoimpl.MessageState
  1964  	sizeCache     protoimpl.SizeCache
  1965  	unknownFields protoimpl.UnknownFields
  1966  
  1967  	// start_channel_id indicates that only channels at or above this id should be
  1968  	// included in the results.
  1969  	// To request the first page, this should be set to 0. To request
  1970  	// subsequent pages, the client generates this value by adding 1 to
  1971  	// the highest seen result ID.
  1972  	StartChannelId int64 `protobuf:"varint,1,opt,name=start_channel_id,json=startChannelId,proto3" json:"start_channel_id,omitempty"`
  1973  	// If non-zero, the server will return a page of results containing
  1974  	// at most this many items. If zero, the server will choose a
  1975  	// reasonable page size.  Must never be negative.
  1976  	MaxResults int64 `protobuf:"varint,2,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"`
  1977  }
  1978  
  1979  func (x *GetTopChannelsRequest) Reset() {
  1980  	*x = GetTopChannelsRequest{}
  1981  	if protoimpl.UnsafeEnabled {
  1982  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[20]
  1983  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1984  		ms.StoreMessageInfo(mi)
  1985  	}
  1986  }
  1987  
  1988  func (x *GetTopChannelsRequest) String() string {
  1989  	return protoimpl.X.MessageStringOf(x)
  1990  }
  1991  
  1992  func (*GetTopChannelsRequest) ProtoMessage() {}
  1993  
  1994  func (x *GetTopChannelsRequest) ProtoReflect() protoreflect.Message {
  1995  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[20]
  1996  	if protoimpl.UnsafeEnabled && x != nil {
  1997  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1998  		if ms.LoadMessageInfo() == nil {
  1999  			ms.StoreMessageInfo(mi)
  2000  		}
  2001  		return ms
  2002  	}
  2003  	return mi.MessageOf(x)
  2004  }
  2005  
  2006  // Deprecated: Use GetTopChannelsRequest.ProtoReflect.Descriptor instead.
  2007  func (*GetTopChannelsRequest) Descriptor() ([]byte, []int) {
  2008  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{20}
  2009  }
  2010  
  2011  func (x *GetTopChannelsRequest) GetStartChannelId() int64 {
  2012  	if x != nil {
  2013  		return x.StartChannelId
  2014  	}
  2015  	return 0
  2016  }
  2017  
  2018  func (x *GetTopChannelsRequest) GetMaxResults() int64 {
  2019  	if x != nil {
  2020  		return x.MaxResults
  2021  	}
  2022  	return 0
  2023  }
  2024  
  2025  type GetTopChannelsResponse struct {
  2026  	state         protoimpl.MessageState
  2027  	sizeCache     protoimpl.SizeCache
  2028  	unknownFields protoimpl.UnknownFields
  2029  
  2030  	// list of channels that the connection detail service knows about.  Sorted in
  2031  	// ascending channel_id order.
  2032  	// Must contain at least 1 result, otherwise 'end' must be true.
  2033  	Channel []*Channel `protobuf:"bytes,1,rep,name=channel,proto3" json:"channel,omitempty"`
  2034  	// If set, indicates that the list of channels is the final list.  Requesting
  2035  	// more channels can only return more if they are created after this RPC
  2036  	// completes.
  2037  	End bool `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"`
  2038  }
  2039  
  2040  func (x *GetTopChannelsResponse) Reset() {
  2041  	*x = GetTopChannelsResponse{}
  2042  	if protoimpl.UnsafeEnabled {
  2043  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[21]
  2044  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2045  		ms.StoreMessageInfo(mi)
  2046  	}
  2047  }
  2048  
  2049  func (x *GetTopChannelsResponse) String() string {
  2050  	return protoimpl.X.MessageStringOf(x)
  2051  }
  2052  
  2053  func (*GetTopChannelsResponse) ProtoMessage() {}
  2054  
  2055  func (x *GetTopChannelsResponse) ProtoReflect() protoreflect.Message {
  2056  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[21]
  2057  	if protoimpl.UnsafeEnabled && x != nil {
  2058  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2059  		if ms.LoadMessageInfo() == nil {
  2060  			ms.StoreMessageInfo(mi)
  2061  		}
  2062  		return ms
  2063  	}
  2064  	return mi.MessageOf(x)
  2065  }
  2066  
  2067  // Deprecated: Use GetTopChannelsResponse.ProtoReflect.Descriptor instead.
  2068  func (*GetTopChannelsResponse) Descriptor() ([]byte, []int) {
  2069  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{21}
  2070  }
  2071  
  2072  func (x *GetTopChannelsResponse) GetChannel() []*Channel {
  2073  	if x != nil {
  2074  		return x.Channel
  2075  	}
  2076  	return nil
  2077  }
  2078  
  2079  func (x *GetTopChannelsResponse) GetEnd() bool {
  2080  	if x != nil {
  2081  		return x.End
  2082  	}
  2083  	return false
  2084  }
  2085  
  2086  type GetServersRequest struct {
  2087  	state         protoimpl.MessageState
  2088  	sizeCache     protoimpl.SizeCache
  2089  	unknownFields protoimpl.UnknownFields
  2090  
  2091  	// start_server_id indicates that only servers at or above this id should be
  2092  	// included in the results.
  2093  	// To request the first page, this must be set to 0. To request
  2094  	// subsequent pages, the client generates this value by adding 1 to
  2095  	// the highest seen result ID.
  2096  	StartServerId int64 `protobuf:"varint,1,opt,name=start_server_id,json=startServerId,proto3" json:"start_server_id,omitempty"`
  2097  	// If non-zero, the server will return a page of results containing
  2098  	// at most this many items. If zero, the server will choose a
  2099  	// reasonable page size.  Must never be negative.
  2100  	MaxResults int64 `protobuf:"varint,2,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"`
  2101  }
  2102  
  2103  func (x *GetServersRequest) Reset() {
  2104  	*x = GetServersRequest{}
  2105  	if protoimpl.UnsafeEnabled {
  2106  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[22]
  2107  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2108  		ms.StoreMessageInfo(mi)
  2109  	}
  2110  }
  2111  
  2112  func (x *GetServersRequest) String() string {
  2113  	return protoimpl.X.MessageStringOf(x)
  2114  }
  2115  
  2116  func (*GetServersRequest) ProtoMessage() {}
  2117  
  2118  func (x *GetServersRequest) ProtoReflect() protoreflect.Message {
  2119  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[22]
  2120  	if protoimpl.UnsafeEnabled && x != nil {
  2121  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2122  		if ms.LoadMessageInfo() == nil {
  2123  			ms.StoreMessageInfo(mi)
  2124  		}
  2125  		return ms
  2126  	}
  2127  	return mi.MessageOf(x)
  2128  }
  2129  
  2130  // Deprecated: Use GetServersRequest.ProtoReflect.Descriptor instead.
  2131  func (*GetServersRequest) Descriptor() ([]byte, []int) {
  2132  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{22}
  2133  }
  2134  
  2135  func (x *GetServersRequest) GetStartServerId() int64 {
  2136  	if x != nil {
  2137  		return x.StartServerId
  2138  	}
  2139  	return 0
  2140  }
  2141  
  2142  func (x *GetServersRequest) GetMaxResults() int64 {
  2143  	if x != nil {
  2144  		return x.MaxResults
  2145  	}
  2146  	return 0
  2147  }
  2148  
  2149  type GetServersResponse struct {
  2150  	state         protoimpl.MessageState
  2151  	sizeCache     protoimpl.SizeCache
  2152  	unknownFields protoimpl.UnknownFields
  2153  
  2154  	// list of servers that the connection detail service knows about.  Sorted in
  2155  	// ascending server_id order.
  2156  	// Must contain at least 1 result, otherwise 'end' must be true.
  2157  	Server []*Server `protobuf:"bytes,1,rep,name=server,proto3" json:"server,omitempty"`
  2158  	// If set, indicates that the list of servers is the final list.  Requesting
  2159  	// more servers will only return more if they are created after this RPC
  2160  	// completes.
  2161  	End bool `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"`
  2162  }
  2163  
  2164  func (x *GetServersResponse) Reset() {
  2165  	*x = GetServersResponse{}
  2166  	if protoimpl.UnsafeEnabled {
  2167  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[23]
  2168  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2169  		ms.StoreMessageInfo(mi)
  2170  	}
  2171  }
  2172  
  2173  func (x *GetServersResponse) String() string {
  2174  	return protoimpl.X.MessageStringOf(x)
  2175  }
  2176  
  2177  func (*GetServersResponse) ProtoMessage() {}
  2178  
  2179  func (x *GetServersResponse) ProtoReflect() protoreflect.Message {
  2180  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[23]
  2181  	if protoimpl.UnsafeEnabled && x != nil {
  2182  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2183  		if ms.LoadMessageInfo() == nil {
  2184  			ms.StoreMessageInfo(mi)
  2185  		}
  2186  		return ms
  2187  	}
  2188  	return mi.MessageOf(x)
  2189  }
  2190  
  2191  // Deprecated: Use GetServersResponse.ProtoReflect.Descriptor instead.
  2192  func (*GetServersResponse) Descriptor() ([]byte, []int) {
  2193  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{23}
  2194  }
  2195  
  2196  func (x *GetServersResponse) GetServer() []*Server {
  2197  	if x != nil {
  2198  		return x.Server
  2199  	}
  2200  	return nil
  2201  }
  2202  
  2203  func (x *GetServersResponse) GetEnd() bool {
  2204  	if x != nil {
  2205  		return x.End
  2206  	}
  2207  	return false
  2208  }
  2209  
  2210  type GetServerRequest struct {
  2211  	state         protoimpl.MessageState
  2212  	sizeCache     protoimpl.SizeCache
  2213  	unknownFields protoimpl.UnknownFields
  2214  
  2215  	// server_id is the identifier of the specific server to get.
  2216  	ServerId int64 `protobuf:"varint,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
  2217  }
  2218  
  2219  func (x *GetServerRequest) Reset() {
  2220  	*x = GetServerRequest{}
  2221  	if protoimpl.UnsafeEnabled {
  2222  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[24]
  2223  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2224  		ms.StoreMessageInfo(mi)
  2225  	}
  2226  }
  2227  
  2228  func (x *GetServerRequest) String() string {
  2229  	return protoimpl.X.MessageStringOf(x)
  2230  }
  2231  
  2232  func (*GetServerRequest) ProtoMessage() {}
  2233  
  2234  func (x *GetServerRequest) ProtoReflect() protoreflect.Message {
  2235  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[24]
  2236  	if protoimpl.UnsafeEnabled && x != nil {
  2237  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2238  		if ms.LoadMessageInfo() == nil {
  2239  			ms.StoreMessageInfo(mi)
  2240  		}
  2241  		return ms
  2242  	}
  2243  	return mi.MessageOf(x)
  2244  }
  2245  
  2246  // Deprecated: Use GetServerRequest.ProtoReflect.Descriptor instead.
  2247  func (*GetServerRequest) Descriptor() ([]byte, []int) {
  2248  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{24}
  2249  }
  2250  
  2251  func (x *GetServerRequest) GetServerId() int64 {
  2252  	if x != nil {
  2253  		return x.ServerId
  2254  	}
  2255  	return 0
  2256  }
  2257  
  2258  type GetServerResponse struct {
  2259  	state         protoimpl.MessageState
  2260  	sizeCache     protoimpl.SizeCache
  2261  	unknownFields protoimpl.UnknownFields
  2262  
  2263  	// The Server that corresponds to the requested server_id.  This field
  2264  	// should be set.
  2265  	Server *Server `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"`
  2266  }
  2267  
  2268  func (x *GetServerResponse) Reset() {
  2269  	*x = GetServerResponse{}
  2270  	if protoimpl.UnsafeEnabled {
  2271  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[25]
  2272  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2273  		ms.StoreMessageInfo(mi)
  2274  	}
  2275  }
  2276  
  2277  func (x *GetServerResponse) String() string {
  2278  	return protoimpl.X.MessageStringOf(x)
  2279  }
  2280  
  2281  func (*GetServerResponse) ProtoMessage() {}
  2282  
  2283  func (x *GetServerResponse) ProtoReflect() protoreflect.Message {
  2284  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[25]
  2285  	if protoimpl.UnsafeEnabled && x != nil {
  2286  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2287  		if ms.LoadMessageInfo() == nil {
  2288  			ms.StoreMessageInfo(mi)
  2289  		}
  2290  		return ms
  2291  	}
  2292  	return mi.MessageOf(x)
  2293  }
  2294  
  2295  // Deprecated: Use GetServerResponse.ProtoReflect.Descriptor instead.
  2296  func (*GetServerResponse) Descriptor() ([]byte, []int) {
  2297  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{25}
  2298  }
  2299  
  2300  func (x *GetServerResponse) GetServer() *Server {
  2301  	if x != nil {
  2302  		return x.Server
  2303  	}
  2304  	return nil
  2305  }
  2306  
  2307  type GetServerSocketsRequest struct {
  2308  	state         protoimpl.MessageState
  2309  	sizeCache     protoimpl.SizeCache
  2310  	unknownFields protoimpl.UnknownFields
  2311  
  2312  	ServerId int64 `protobuf:"varint,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
  2313  	// start_socket_id indicates that only sockets at or above this id should be
  2314  	// included in the results.
  2315  	// To request the first page, this must be set to 0. To request
  2316  	// subsequent pages, the client generates this value by adding 1 to
  2317  	// the highest seen result ID.
  2318  	StartSocketId int64 `protobuf:"varint,2,opt,name=start_socket_id,json=startSocketId,proto3" json:"start_socket_id,omitempty"`
  2319  	// If non-zero, the server will return a page of results containing
  2320  	// at most this many items. If zero, the server will choose a
  2321  	// reasonable page size.  Must never be negative.
  2322  	MaxResults int64 `protobuf:"varint,3,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"`
  2323  }
  2324  
  2325  func (x *GetServerSocketsRequest) Reset() {
  2326  	*x = GetServerSocketsRequest{}
  2327  	if protoimpl.UnsafeEnabled {
  2328  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[26]
  2329  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2330  		ms.StoreMessageInfo(mi)
  2331  	}
  2332  }
  2333  
  2334  func (x *GetServerSocketsRequest) String() string {
  2335  	return protoimpl.X.MessageStringOf(x)
  2336  }
  2337  
  2338  func (*GetServerSocketsRequest) ProtoMessage() {}
  2339  
  2340  func (x *GetServerSocketsRequest) ProtoReflect() protoreflect.Message {
  2341  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[26]
  2342  	if protoimpl.UnsafeEnabled && x != nil {
  2343  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2344  		if ms.LoadMessageInfo() == nil {
  2345  			ms.StoreMessageInfo(mi)
  2346  		}
  2347  		return ms
  2348  	}
  2349  	return mi.MessageOf(x)
  2350  }
  2351  
  2352  // Deprecated: Use GetServerSocketsRequest.ProtoReflect.Descriptor instead.
  2353  func (*GetServerSocketsRequest) Descriptor() ([]byte, []int) {
  2354  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{26}
  2355  }
  2356  
  2357  func (x *GetServerSocketsRequest) GetServerId() int64 {
  2358  	if x != nil {
  2359  		return x.ServerId
  2360  	}
  2361  	return 0
  2362  }
  2363  
  2364  func (x *GetServerSocketsRequest) GetStartSocketId() int64 {
  2365  	if x != nil {
  2366  		return x.StartSocketId
  2367  	}
  2368  	return 0
  2369  }
  2370  
  2371  func (x *GetServerSocketsRequest) GetMaxResults() int64 {
  2372  	if x != nil {
  2373  		return x.MaxResults
  2374  	}
  2375  	return 0
  2376  }
  2377  
  2378  type GetServerSocketsResponse struct {
  2379  	state         protoimpl.MessageState
  2380  	sizeCache     protoimpl.SizeCache
  2381  	unknownFields protoimpl.UnknownFields
  2382  
  2383  	// list of socket refs that the connection detail service knows about.  Sorted in
  2384  	// ascending socket_id order.
  2385  	// Must contain at least 1 result, otherwise 'end' must be true.
  2386  	SocketRef []*SocketRef `protobuf:"bytes,1,rep,name=socket_ref,json=socketRef,proto3" json:"socket_ref,omitempty"`
  2387  	// If set, indicates that the list of sockets is the final list.  Requesting
  2388  	// more sockets will only return more if they are created after this RPC
  2389  	// completes.
  2390  	End bool `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"`
  2391  }
  2392  
  2393  func (x *GetServerSocketsResponse) Reset() {
  2394  	*x = GetServerSocketsResponse{}
  2395  	if protoimpl.UnsafeEnabled {
  2396  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[27]
  2397  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2398  		ms.StoreMessageInfo(mi)
  2399  	}
  2400  }
  2401  
  2402  func (x *GetServerSocketsResponse) String() string {
  2403  	return protoimpl.X.MessageStringOf(x)
  2404  }
  2405  
  2406  func (*GetServerSocketsResponse) ProtoMessage() {}
  2407  
  2408  func (x *GetServerSocketsResponse) ProtoReflect() protoreflect.Message {
  2409  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[27]
  2410  	if protoimpl.UnsafeEnabled && x != nil {
  2411  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2412  		if ms.LoadMessageInfo() == nil {
  2413  			ms.StoreMessageInfo(mi)
  2414  		}
  2415  		return ms
  2416  	}
  2417  	return mi.MessageOf(x)
  2418  }
  2419  
  2420  // Deprecated: Use GetServerSocketsResponse.ProtoReflect.Descriptor instead.
  2421  func (*GetServerSocketsResponse) Descriptor() ([]byte, []int) {
  2422  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{27}
  2423  }
  2424  
  2425  func (x *GetServerSocketsResponse) GetSocketRef() []*SocketRef {
  2426  	if x != nil {
  2427  		return x.SocketRef
  2428  	}
  2429  	return nil
  2430  }
  2431  
  2432  func (x *GetServerSocketsResponse) GetEnd() bool {
  2433  	if x != nil {
  2434  		return x.End
  2435  	}
  2436  	return false
  2437  }
  2438  
  2439  type GetChannelRequest struct {
  2440  	state         protoimpl.MessageState
  2441  	sizeCache     protoimpl.SizeCache
  2442  	unknownFields protoimpl.UnknownFields
  2443  
  2444  	// channel_id is the identifier of the specific channel to get.
  2445  	ChannelId int64 `protobuf:"varint,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
  2446  }
  2447  
  2448  func (x *GetChannelRequest) Reset() {
  2449  	*x = GetChannelRequest{}
  2450  	if protoimpl.UnsafeEnabled {
  2451  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[28]
  2452  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2453  		ms.StoreMessageInfo(mi)
  2454  	}
  2455  }
  2456  
  2457  func (x *GetChannelRequest) String() string {
  2458  	return protoimpl.X.MessageStringOf(x)
  2459  }
  2460  
  2461  func (*GetChannelRequest) ProtoMessage() {}
  2462  
  2463  func (x *GetChannelRequest) ProtoReflect() protoreflect.Message {
  2464  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[28]
  2465  	if protoimpl.UnsafeEnabled && x != nil {
  2466  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2467  		if ms.LoadMessageInfo() == nil {
  2468  			ms.StoreMessageInfo(mi)
  2469  		}
  2470  		return ms
  2471  	}
  2472  	return mi.MessageOf(x)
  2473  }
  2474  
  2475  // Deprecated: Use GetChannelRequest.ProtoReflect.Descriptor instead.
  2476  func (*GetChannelRequest) Descriptor() ([]byte, []int) {
  2477  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{28}
  2478  }
  2479  
  2480  func (x *GetChannelRequest) GetChannelId() int64 {
  2481  	if x != nil {
  2482  		return x.ChannelId
  2483  	}
  2484  	return 0
  2485  }
  2486  
  2487  type GetChannelResponse struct {
  2488  	state         protoimpl.MessageState
  2489  	sizeCache     protoimpl.SizeCache
  2490  	unknownFields protoimpl.UnknownFields
  2491  
  2492  	// The Channel that corresponds to the requested channel_id.  This field
  2493  	// should be set.
  2494  	Channel *Channel `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"`
  2495  }
  2496  
  2497  func (x *GetChannelResponse) Reset() {
  2498  	*x = GetChannelResponse{}
  2499  	if protoimpl.UnsafeEnabled {
  2500  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[29]
  2501  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2502  		ms.StoreMessageInfo(mi)
  2503  	}
  2504  }
  2505  
  2506  func (x *GetChannelResponse) String() string {
  2507  	return protoimpl.X.MessageStringOf(x)
  2508  }
  2509  
  2510  func (*GetChannelResponse) ProtoMessage() {}
  2511  
  2512  func (x *GetChannelResponse) ProtoReflect() protoreflect.Message {
  2513  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[29]
  2514  	if protoimpl.UnsafeEnabled && x != nil {
  2515  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2516  		if ms.LoadMessageInfo() == nil {
  2517  			ms.StoreMessageInfo(mi)
  2518  		}
  2519  		return ms
  2520  	}
  2521  	return mi.MessageOf(x)
  2522  }
  2523  
  2524  // Deprecated: Use GetChannelResponse.ProtoReflect.Descriptor instead.
  2525  func (*GetChannelResponse) Descriptor() ([]byte, []int) {
  2526  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{29}
  2527  }
  2528  
  2529  func (x *GetChannelResponse) GetChannel() *Channel {
  2530  	if x != nil {
  2531  		return x.Channel
  2532  	}
  2533  	return nil
  2534  }
  2535  
  2536  type GetSubchannelRequest struct {
  2537  	state         protoimpl.MessageState
  2538  	sizeCache     protoimpl.SizeCache
  2539  	unknownFields protoimpl.UnknownFields
  2540  
  2541  	// subchannel_id is the identifier of the specific subchannel to get.
  2542  	SubchannelId int64 `protobuf:"varint,1,opt,name=subchannel_id,json=subchannelId,proto3" json:"subchannel_id,omitempty"`
  2543  }
  2544  
  2545  func (x *GetSubchannelRequest) Reset() {
  2546  	*x = GetSubchannelRequest{}
  2547  	if protoimpl.UnsafeEnabled {
  2548  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[30]
  2549  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2550  		ms.StoreMessageInfo(mi)
  2551  	}
  2552  }
  2553  
  2554  func (x *GetSubchannelRequest) String() string {
  2555  	return protoimpl.X.MessageStringOf(x)
  2556  }
  2557  
  2558  func (*GetSubchannelRequest) ProtoMessage() {}
  2559  
  2560  func (x *GetSubchannelRequest) ProtoReflect() protoreflect.Message {
  2561  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[30]
  2562  	if protoimpl.UnsafeEnabled && x != nil {
  2563  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2564  		if ms.LoadMessageInfo() == nil {
  2565  			ms.StoreMessageInfo(mi)
  2566  		}
  2567  		return ms
  2568  	}
  2569  	return mi.MessageOf(x)
  2570  }
  2571  
  2572  // Deprecated: Use GetSubchannelRequest.ProtoReflect.Descriptor instead.
  2573  func (*GetSubchannelRequest) Descriptor() ([]byte, []int) {
  2574  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{30}
  2575  }
  2576  
  2577  func (x *GetSubchannelRequest) GetSubchannelId() int64 {
  2578  	if x != nil {
  2579  		return x.SubchannelId
  2580  	}
  2581  	return 0
  2582  }
  2583  
  2584  type GetSubchannelResponse struct {
  2585  	state         protoimpl.MessageState
  2586  	sizeCache     protoimpl.SizeCache
  2587  	unknownFields protoimpl.UnknownFields
  2588  
  2589  	// The Subchannel that corresponds to the requested subchannel_id.  This
  2590  	// field should be set.
  2591  	Subchannel *Subchannel `protobuf:"bytes,1,opt,name=subchannel,proto3" json:"subchannel,omitempty"`
  2592  }
  2593  
  2594  func (x *GetSubchannelResponse) Reset() {
  2595  	*x = GetSubchannelResponse{}
  2596  	if protoimpl.UnsafeEnabled {
  2597  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[31]
  2598  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2599  		ms.StoreMessageInfo(mi)
  2600  	}
  2601  }
  2602  
  2603  func (x *GetSubchannelResponse) String() string {
  2604  	return protoimpl.X.MessageStringOf(x)
  2605  }
  2606  
  2607  func (*GetSubchannelResponse) ProtoMessage() {}
  2608  
  2609  func (x *GetSubchannelResponse) ProtoReflect() protoreflect.Message {
  2610  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[31]
  2611  	if protoimpl.UnsafeEnabled && x != nil {
  2612  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2613  		if ms.LoadMessageInfo() == nil {
  2614  			ms.StoreMessageInfo(mi)
  2615  		}
  2616  		return ms
  2617  	}
  2618  	return mi.MessageOf(x)
  2619  }
  2620  
  2621  // Deprecated: Use GetSubchannelResponse.ProtoReflect.Descriptor instead.
  2622  func (*GetSubchannelResponse) Descriptor() ([]byte, []int) {
  2623  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{31}
  2624  }
  2625  
  2626  func (x *GetSubchannelResponse) GetSubchannel() *Subchannel {
  2627  	if x != nil {
  2628  		return x.Subchannel
  2629  	}
  2630  	return nil
  2631  }
  2632  
  2633  type GetSocketRequest struct {
  2634  	state         protoimpl.MessageState
  2635  	sizeCache     protoimpl.SizeCache
  2636  	unknownFields protoimpl.UnknownFields
  2637  
  2638  	// socket_id is the identifier of the specific socket to get.
  2639  	SocketId int64 `protobuf:"varint,1,opt,name=socket_id,json=socketId,proto3" json:"socket_id,omitempty"`
  2640  	// If true, the response will contain only high level information
  2641  	// that is inexpensive to obtain. Fields thay may be omitted are
  2642  	// documented.
  2643  	Summary bool `protobuf:"varint,2,opt,name=summary,proto3" json:"summary,omitempty"`
  2644  }
  2645  
  2646  func (x *GetSocketRequest) Reset() {
  2647  	*x = GetSocketRequest{}
  2648  	if protoimpl.UnsafeEnabled {
  2649  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[32]
  2650  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2651  		ms.StoreMessageInfo(mi)
  2652  	}
  2653  }
  2654  
  2655  func (x *GetSocketRequest) String() string {
  2656  	return protoimpl.X.MessageStringOf(x)
  2657  }
  2658  
  2659  func (*GetSocketRequest) ProtoMessage() {}
  2660  
  2661  func (x *GetSocketRequest) ProtoReflect() protoreflect.Message {
  2662  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[32]
  2663  	if protoimpl.UnsafeEnabled && x != nil {
  2664  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2665  		if ms.LoadMessageInfo() == nil {
  2666  			ms.StoreMessageInfo(mi)
  2667  		}
  2668  		return ms
  2669  	}
  2670  	return mi.MessageOf(x)
  2671  }
  2672  
  2673  // Deprecated: Use GetSocketRequest.ProtoReflect.Descriptor instead.
  2674  func (*GetSocketRequest) Descriptor() ([]byte, []int) {
  2675  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{32}
  2676  }
  2677  
  2678  func (x *GetSocketRequest) GetSocketId() int64 {
  2679  	if x != nil {
  2680  		return x.SocketId
  2681  	}
  2682  	return 0
  2683  }
  2684  
  2685  func (x *GetSocketRequest) GetSummary() bool {
  2686  	if x != nil {
  2687  		return x.Summary
  2688  	}
  2689  	return false
  2690  }
  2691  
  2692  type GetSocketResponse struct {
  2693  	state         protoimpl.MessageState
  2694  	sizeCache     protoimpl.SizeCache
  2695  	unknownFields protoimpl.UnknownFields
  2696  
  2697  	// The Socket that corresponds to the requested socket_id.  This field
  2698  	// should be set.
  2699  	Socket *Socket `protobuf:"bytes,1,opt,name=socket,proto3" json:"socket,omitempty"`
  2700  }
  2701  
  2702  func (x *GetSocketResponse) Reset() {
  2703  	*x = GetSocketResponse{}
  2704  	if protoimpl.UnsafeEnabled {
  2705  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[33]
  2706  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2707  		ms.StoreMessageInfo(mi)
  2708  	}
  2709  }
  2710  
  2711  func (x *GetSocketResponse) String() string {
  2712  	return protoimpl.X.MessageStringOf(x)
  2713  }
  2714  
  2715  func (*GetSocketResponse) ProtoMessage() {}
  2716  
  2717  func (x *GetSocketResponse) ProtoReflect() protoreflect.Message {
  2718  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[33]
  2719  	if protoimpl.UnsafeEnabled && x != nil {
  2720  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2721  		if ms.LoadMessageInfo() == nil {
  2722  			ms.StoreMessageInfo(mi)
  2723  		}
  2724  		return ms
  2725  	}
  2726  	return mi.MessageOf(x)
  2727  }
  2728  
  2729  // Deprecated: Use GetSocketResponse.ProtoReflect.Descriptor instead.
  2730  func (*GetSocketResponse) Descriptor() ([]byte, []int) {
  2731  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{33}
  2732  }
  2733  
  2734  func (x *GetSocketResponse) GetSocket() *Socket {
  2735  	if x != nil {
  2736  		return x.Socket
  2737  	}
  2738  	return nil
  2739  }
  2740  
  2741  type Address_TcpIpAddress struct {
  2742  	state         protoimpl.MessageState
  2743  	sizeCache     protoimpl.SizeCache
  2744  	unknownFields protoimpl.UnknownFields
  2745  
  2746  	// Either the IPv4 or IPv6 address in bytes.  Will be either 4 bytes or 16
  2747  	// bytes in length.
  2748  	IpAddress []byte `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
  2749  	// 0-64k, or -1 if not appropriate.
  2750  	Port int32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
  2751  }
  2752  
  2753  func (x *Address_TcpIpAddress) Reset() {
  2754  	*x = Address_TcpIpAddress{}
  2755  	if protoimpl.UnsafeEnabled {
  2756  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[34]
  2757  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2758  		ms.StoreMessageInfo(mi)
  2759  	}
  2760  }
  2761  
  2762  func (x *Address_TcpIpAddress) String() string {
  2763  	return protoimpl.X.MessageStringOf(x)
  2764  }
  2765  
  2766  func (*Address_TcpIpAddress) ProtoMessage() {}
  2767  
  2768  func (x *Address_TcpIpAddress) ProtoReflect() protoreflect.Message {
  2769  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[34]
  2770  	if protoimpl.UnsafeEnabled && x != nil {
  2771  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2772  		if ms.LoadMessageInfo() == nil {
  2773  			ms.StoreMessageInfo(mi)
  2774  		}
  2775  		return ms
  2776  	}
  2777  	return mi.MessageOf(x)
  2778  }
  2779  
  2780  // Deprecated: Use Address_TcpIpAddress.ProtoReflect.Descriptor instead.
  2781  func (*Address_TcpIpAddress) Descriptor() ([]byte, []int) {
  2782  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{14, 0}
  2783  }
  2784  
  2785  func (x *Address_TcpIpAddress) GetIpAddress() []byte {
  2786  	if x != nil {
  2787  		return x.IpAddress
  2788  	}
  2789  	return nil
  2790  }
  2791  
  2792  func (x *Address_TcpIpAddress) GetPort() int32 {
  2793  	if x != nil {
  2794  		return x.Port
  2795  	}
  2796  	return 0
  2797  }
  2798  
  2799  // A Unix Domain Socket address.
  2800  type Address_UdsAddress struct {
  2801  	state         protoimpl.MessageState
  2802  	sizeCache     protoimpl.SizeCache
  2803  	unknownFields protoimpl.UnknownFields
  2804  
  2805  	Filename string `protobuf:"bytes,1,opt,name=filename,proto3" json:"filename,omitempty"`
  2806  }
  2807  
  2808  func (x *Address_UdsAddress) Reset() {
  2809  	*x = Address_UdsAddress{}
  2810  	if protoimpl.UnsafeEnabled {
  2811  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[35]
  2812  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2813  		ms.StoreMessageInfo(mi)
  2814  	}
  2815  }
  2816  
  2817  func (x *Address_UdsAddress) String() string {
  2818  	return protoimpl.X.MessageStringOf(x)
  2819  }
  2820  
  2821  func (*Address_UdsAddress) ProtoMessage() {}
  2822  
  2823  func (x *Address_UdsAddress) ProtoReflect() protoreflect.Message {
  2824  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[35]
  2825  	if protoimpl.UnsafeEnabled && x != nil {
  2826  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2827  		if ms.LoadMessageInfo() == nil {
  2828  			ms.StoreMessageInfo(mi)
  2829  		}
  2830  		return ms
  2831  	}
  2832  	return mi.MessageOf(x)
  2833  }
  2834  
  2835  // Deprecated: Use Address_UdsAddress.ProtoReflect.Descriptor instead.
  2836  func (*Address_UdsAddress) Descriptor() ([]byte, []int) {
  2837  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{14, 1}
  2838  }
  2839  
  2840  func (x *Address_UdsAddress) GetFilename() string {
  2841  	if x != nil {
  2842  		return x.Filename
  2843  	}
  2844  	return ""
  2845  }
  2846  
  2847  // An address type not included above.
  2848  type Address_OtherAddress struct {
  2849  	state         protoimpl.MessageState
  2850  	sizeCache     protoimpl.SizeCache
  2851  	unknownFields protoimpl.UnknownFields
  2852  
  2853  	// The human readable version of the value.  This value should be set.
  2854  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  2855  	// The actual address message.
  2856  	Value *anypb.Any `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
  2857  }
  2858  
  2859  func (x *Address_OtherAddress) Reset() {
  2860  	*x = Address_OtherAddress{}
  2861  	if protoimpl.UnsafeEnabled {
  2862  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[36]
  2863  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2864  		ms.StoreMessageInfo(mi)
  2865  	}
  2866  }
  2867  
  2868  func (x *Address_OtherAddress) String() string {
  2869  	return protoimpl.X.MessageStringOf(x)
  2870  }
  2871  
  2872  func (*Address_OtherAddress) ProtoMessage() {}
  2873  
  2874  func (x *Address_OtherAddress) ProtoReflect() protoreflect.Message {
  2875  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[36]
  2876  	if protoimpl.UnsafeEnabled && x != nil {
  2877  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2878  		if ms.LoadMessageInfo() == nil {
  2879  			ms.StoreMessageInfo(mi)
  2880  		}
  2881  		return ms
  2882  	}
  2883  	return mi.MessageOf(x)
  2884  }
  2885  
  2886  // Deprecated: Use Address_OtherAddress.ProtoReflect.Descriptor instead.
  2887  func (*Address_OtherAddress) Descriptor() ([]byte, []int) {
  2888  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{14, 2}
  2889  }
  2890  
  2891  func (x *Address_OtherAddress) GetName() string {
  2892  	if x != nil {
  2893  		return x.Name
  2894  	}
  2895  	return ""
  2896  }
  2897  
  2898  func (x *Address_OtherAddress) GetValue() *anypb.Any {
  2899  	if x != nil {
  2900  		return x.Value
  2901  	}
  2902  	return nil
  2903  }
  2904  
  2905  type Security_Tls struct {
  2906  	state         protoimpl.MessageState
  2907  	sizeCache     protoimpl.SizeCache
  2908  	unknownFields protoimpl.UnknownFields
  2909  
  2910  	// Types that are assignable to CipherSuite:
  2911  	//	*Security_Tls_StandardName
  2912  	//	*Security_Tls_OtherName
  2913  	CipherSuite isSecurity_Tls_CipherSuite `protobuf_oneof:"cipher_suite"`
  2914  	// the certificate used by this endpoint.
  2915  	LocalCertificate []byte `protobuf:"bytes,3,opt,name=local_certificate,json=localCertificate,proto3" json:"local_certificate,omitempty"`
  2916  	// the certificate used by the remote endpoint.
  2917  	RemoteCertificate []byte `protobuf:"bytes,4,opt,name=remote_certificate,json=remoteCertificate,proto3" json:"remote_certificate,omitempty"`
  2918  }
  2919  
  2920  func (x *Security_Tls) Reset() {
  2921  	*x = Security_Tls{}
  2922  	if protoimpl.UnsafeEnabled {
  2923  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[37]
  2924  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2925  		ms.StoreMessageInfo(mi)
  2926  	}
  2927  }
  2928  
  2929  func (x *Security_Tls) String() string {
  2930  	return protoimpl.X.MessageStringOf(x)
  2931  }
  2932  
  2933  func (*Security_Tls) ProtoMessage() {}
  2934  
  2935  func (x *Security_Tls) ProtoReflect() protoreflect.Message {
  2936  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[37]
  2937  	if protoimpl.UnsafeEnabled && x != nil {
  2938  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2939  		if ms.LoadMessageInfo() == nil {
  2940  			ms.StoreMessageInfo(mi)
  2941  		}
  2942  		return ms
  2943  	}
  2944  	return mi.MessageOf(x)
  2945  }
  2946  
  2947  // Deprecated: Use Security_Tls.ProtoReflect.Descriptor instead.
  2948  func (*Security_Tls) Descriptor() ([]byte, []int) {
  2949  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{15, 0}
  2950  }
  2951  
  2952  func (m *Security_Tls) GetCipherSuite() isSecurity_Tls_CipherSuite {
  2953  	if m != nil {
  2954  		return m.CipherSuite
  2955  	}
  2956  	return nil
  2957  }
  2958  
  2959  func (x *Security_Tls) GetStandardName() string {
  2960  	if x, ok := x.GetCipherSuite().(*Security_Tls_StandardName); ok {
  2961  		return x.StandardName
  2962  	}
  2963  	return ""
  2964  }
  2965  
  2966  func (x *Security_Tls) GetOtherName() string {
  2967  	if x, ok := x.GetCipherSuite().(*Security_Tls_OtherName); ok {
  2968  		return x.OtherName
  2969  	}
  2970  	return ""
  2971  }
  2972  
  2973  func (x *Security_Tls) GetLocalCertificate() []byte {
  2974  	if x != nil {
  2975  		return x.LocalCertificate
  2976  	}
  2977  	return nil
  2978  }
  2979  
  2980  func (x *Security_Tls) GetRemoteCertificate() []byte {
  2981  	if x != nil {
  2982  		return x.RemoteCertificate
  2983  	}
  2984  	return nil
  2985  }
  2986  
  2987  type isSecurity_Tls_CipherSuite interface {
  2988  	isSecurity_Tls_CipherSuite()
  2989  }
  2990  
  2991  type Security_Tls_StandardName struct {
  2992  	// The cipher suite name in the RFC 4346 format:
  2993  	// https://tools.ietf.org/html/rfc4346#appendix-C
  2994  	StandardName string `protobuf:"bytes,1,opt,name=standard_name,json=standardName,proto3,oneof"`
  2995  }
  2996  
  2997  type Security_Tls_OtherName struct {
  2998  	// Some other way to describe the cipher suite if
  2999  	// the RFC 4346 name is not available.
  3000  	OtherName string `protobuf:"bytes,2,opt,name=other_name,json=otherName,proto3,oneof"`
  3001  }
  3002  
  3003  func (*Security_Tls_StandardName) isSecurity_Tls_CipherSuite() {}
  3004  
  3005  func (*Security_Tls_OtherName) isSecurity_Tls_CipherSuite() {}
  3006  
  3007  type Security_OtherSecurity struct {
  3008  	state         protoimpl.MessageState
  3009  	sizeCache     protoimpl.SizeCache
  3010  	unknownFields protoimpl.UnknownFields
  3011  
  3012  	// The human readable version of the value.
  3013  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  3014  	// The actual security details message.
  3015  	Value *anypb.Any `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
  3016  }
  3017  
  3018  func (x *Security_OtherSecurity) Reset() {
  3019  	*x = Security_OtherSecurity{}
  3020  	if protoimpl.UnsafeEnabled {
  3021  		mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[38]
  3022  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3023  		ms.StoreMessageInfo(mi)
  3024  	}
  3025  }
  3026  
  3027  func (x *Security_OtherSecurity) String() string {
  3028  	return protoimpl.X.MessageStringOf(x)
  3029  }
  3030  
  3031  func (*Security_OtherSecurity) ProtoMessage() {}
  3032  
  3033  func (x *Security_OtherSecurity) ProtoReflect() protoreflect.Message {
  3034  	mi := &file_grpc_channelz_v1_channelz_proto_msgTypes[38]
  3035  	if protoimpl.UnsafeEnabled && x != nil {
  3036  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  3037  		if ms.LoadMessageInfo() == nil {
  3038  			ms.StoreMessageInfo(mi)
  3039  		}
  3040  		return ms
  3041  	}
  3042  	return mi.MessageOf(x)
  3043  }
  3044  
  3045  // Deprecated: Use Security_OtherSecurity.ProtoReflect.Descriptor instead.
  3046  func (*Security_OtherSecurity) Descriptor() ([]byte, []int) {
  3047  	return file_grpc_channelz_v1_channelz_proto_rawDescGZIP(), []int{15, 1}
  3048  }
  3049  
  3050  func (x *Security_OtherSecurity) GetName() string {
  3051  	if x != nil {
  3052  		return x.Name
  3053  	}
  3054  	return ""
  3055  }
  3056  
  3057  func (x *Security_OtherSecurity) GetValue() *anypb.Any {
  3058  	if x != nil {
  3059  		return x.Value
  3060  	}
  3061  	return nil
  3062  }
  3063  
  3064  var File_grpc_channelz_v1_channelz_proto protoreflect.FileDescriptor
  3065  
  3066  var file_grpc_channelz_v1_channelz_proto_rawDesc = []byte{
  3067  	0x0a, 0x1f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2f,
  3068  	0x76, 0x31, 0x2f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  3069  	0x6f, 0x12, 0x10, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a,
  3070  	0x2e, 0x76, 0x31, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74,
  3071  	0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e,
  3072  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
  3073  	0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f,
  3074  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
  3075  	0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
  3076  	0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  3077  	0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
  3078  	0xaf, 0x02, 0x0a, 0x07, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x2e, 0x0a, 0x03, 0x72,
  3079  	0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
  3080  	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e,
  3081  	0x6e, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x52, 0x03, 0x72, 0x65, 0x66, 0x12, 0x31, 0x0a, 0x04, 0x64,
  3082  	0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x72, 0x70, 0x63,
  3083  	0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61,
  3084  	0x6e, 0x6e, 0x65, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3d,
  3085  	0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x03, 0x20,
  3086  	0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e,
  3087  	0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65,
  3088  	0x66, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x12, 0x46, 0x0a,
  3089  	0x0e, 0x73, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x18,
  3090  	0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61,
  3091  	0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e,
  3092  	0x6e, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e,
  3093  	0x65, 0x6c, 0x52, 0x65, 0x66, 0x12, 0x3a, 0x0a, 0x0a, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f,
  3094  	0x72, 0x65, 0x66, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63,
  3095  	0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6f, 0x63,
  3096  	0x6b, 0x65, 0x74, 0x52, 0x65, 0x66, 0x52, 0x09, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65,
  3097  	0x66, 0x22, 0xb5, 0x02, 0x0a, 0x0a, 0x53, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
  3098  	0x12, 0x31, 0x0a, 0x03, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e,
  3099  	0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31,
  3100  	0x2e, 0x53, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x52, 0x03,
  3101  	0x72, 0x65, 0x66, 0x12, 0x31, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28,
  3102  	0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
  3103  	0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x44, 0x61, 0x74, 0x61,
  3104  	0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3d, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
  3105  	0x6c, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x72,
  3106  	0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x43,
  3107  	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e,
  3108  	0x65, 0x6c, 0x52, 0x65, 0x66, 0x12, 0x46, 0x0a, 0x0e, 0x73, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e,
  3109  	0x6e, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e,
  3110  	0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31,
  3111  	0x2e, 0x53, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x52, 0x0d,
  3112  	0x73, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x12, 0x3a, 0x0a,
  3113  	0x0a, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x05, 0x20, 0x03, 0x28,
  3114  	0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
  3115  	0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x66, 0x52, 0x09,
  3116  	0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x66, 0x22, 0xc2, 0x01, 0x0a, 0x18, 0x43, 0x68,
  3117  	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74,
  3118  	0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x46, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18,
  3119  	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61,
  3120  	0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
  3121  	0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74,
  3122  	0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x5e,
  3123  	0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f,
  3124  	0x57, 0x4e, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x44, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x0e,
  3125  	0x0a, 0x0a, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x09,
  3126  	0x0a, 0x05, 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x54, 0x52, 0x41,
  3127  	0x4e, 0x53, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10, 0x04,
  3128  	0x12, 0x0c, 0x0a, 0x08, 0x53, 0x48, 0x55, 0x54, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x05, 0x22, 0xe9,
  3129  	0x02, 0x0a, 0x0b, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x12, 0x40,
  3130  	0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e,
  3131  	0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31,
  3132  	0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69,
  3133  	0x76, 0x69, 0x74, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65,
  3134  	0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
  3135  	0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x34, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x63,
  3136  	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63,
  3137  	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e,
  3138  	0x65, 0x6c, 0x54, 0x72, 0x61, 0x63, 0x65, 0x52, 0x05, 0x74, 0x72, 0x61, 0x63, 0x65, 0x12, 0x23,
  3139  	0x0a, 0x0d, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x18,
  3140  	0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x53, 0x74, 0x61, 0x72,
  3141  	0x74, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x5f, 0x73, 0x75, 0x63,
  3142  	0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x63, 0x61,
  3143  	0x6c, 0x6c, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c,
  3144  	0x63, 0x61, 0x6c, 0x6c, 0x73, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01,
  3145  	0x28, 0x03, 0x52, 0x0b, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x12,
  3146  	0x59, 0x0a, 0x1b, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x61,
  3147  	0x72, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x07,
  3148  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
  3149  	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
  3150  	0x52, 0x18, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65,
  3151  	0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x98, 0x03, 0x0a, 0x11, 0x43,
  3152  	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x72, 0x61, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74,
  3153  	0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
  3154  	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
  3155  	0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x02,
  3156  	0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e,
  3157  	0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54,
  3158  	0x72, 0x61, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69,
  3159  	0x74, 0x79, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x38, 0x0a, 0x09,
  3160  	0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
  3161  	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  3162  	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d,
  3163  	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x3f, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
  3164  	0x6c, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x72,
  3165  	0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x43,
  3166  	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x48, 0x00, 0x52, 0x0a, 0x63, 0x68, 0x61,
  3167  	0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x12, 0x48, 0x0a, 0x0e, 0x73, 0x75, 0x62, 0x63, 0x68,
  3168  	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
  3169  	0x1f, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e,
  3170  	0x76, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x66,
  3171  	0x48, 0x00, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65,
  3172  	0x66, 0x22, 0x45, 0x0a, 0x08, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x0e, 0x0a,
  3173  	0x0a, 0x43, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a,
  3174  	0x07, 0x43, 0x54, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x54,
  3175  	0x5f, 0x57, 0x41, 0x52, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x54,
  3176  	0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x42, 0x0b, 0x0a, 0x09, 0x63, 0x68, 0x69, 0x6c,
  3177  	0x64, 0x5f, 0x72, 0x65, 0x66, 0x22, 0xc2, 0x01, 0x0a, 0x0c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
  3178  	0x6c, 0x54, 0x72, 0x61, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x6e, 0x75, 0x6d, 0x5f, 0x65, 0x76,
  3179  	0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
  3180  	0x03, 0x52, 0x0f, 0x6e, 0x75, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x4c, 0x6f, 0x67, 0x67,
  3181  	0x65, 0x64, 0x12, 0x49, 0x0a, 0x12, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74,
  3182  	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
  3183  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  3184  	0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x11, 0x63, 0x72, 0x65, 0x61,
  3185  	0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x3b, 0x0a,
  3186  	0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e,
  3187  	0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31,
  3188  	0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x72, 0x61, 0x63, 0x65, 0x45, 0x76, 0x65,
  3189  	0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x63, 0x0a, 0x0a, 0x43, 0x68,
  3190  	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e,
  3191  	0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x68,
  3192  	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
  3193  	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x4a, 0x04, 0x08, 0x03, 0x10,
  3194  	0x04, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x4a, 0x04, 0x08,
  3195  	0x06, 0x10, 0x07, 0x4a, 0x04, 0x08, 0x07, 0x10, 0x08, 0x4a, 0x04, 0x08, 0x08, 0x10, 0x09, 0x22,
  3196  	0x6c, 0x0a, 0x0d, 0x53, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x66,
  3197  	0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69,
  3198  	0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e,
  3199  	0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20,
  3200  	0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x4a,
  3201  	0x04, 0x08, 0x02, 0x10, 0x03, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x4a, 0x04, 0x08, 0x04, 0x10,
  3202  	0x05, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x4a, 0x04, 0x08, 0x06, 0x10, 0x07, 0x22, 0x60, 0x0a,
  3203  	0x09, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x66, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6f,
  3204  	0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73,
  3205  	0x6f, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
  3206  	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10,
  3207  	0x02, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x4a, 0x04, 0x08,
  3208  	0x06, 0x10, 0x07, 0x4a, 0x04, 0x08, 0x07, 0x10, 0x08, 0x4a, 0x04, 0x08, 0x08, 0x10, 0x09, 0x22,
  3209  	0x60, 0x0a, 0x09, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x66, 0x12, 0x1b, 0x0a, 0x09,
  3210  	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52,
  3211  	0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
  3212  	0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x4a, 0x04, 0x08,
  3213  	0x01, 0x10, 0x02, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x4a,
  3214  	0x04, 0x08, 0x04, 0x10, 0x05, 0x4a, 0x04, 0x08, 0x07, 0x10, 0x08, 0x4a, 0x04, 0x08, 0x08, 0x10,
  3215  	0x09, 0x22, 0xab, 0x01, 0x0a, 0x06, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x03,
  3216  	0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63,
  3217  	0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72,
  3218  	0x76, 0x65, 0x72, 0x52, 0x65, 0x66, 0x52, 0x03, 0x72, 0x65, 0x66, 0x12, 0x30, 0x0a, 0x04, 0x64,
  3219  	0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x72, 0x70, 0x63,
  3220  	0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72,
  3221  	0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x40, 0x0a,
  3222  	0x0d, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x03,
  3223  	0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e,
  3224  	0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65,
  3225  	0x66, 0x52, 0x0c, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x22,
  3226  	0x8e, 0x02, 0x0a, 0x0a, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x12, 0x34,
  3227  	0x0a, 0x05, 0x74, 0x72, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e,
  3228  	0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31,
  3229  	0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x72, 0x61, 0x63, 0x65, 0x52, 0x05, 0x74,
  3230  	0x72, 0x61, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x5f, 0x73, 0x74,
  3231  	0x61, 0x72, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x63, 0x61, 0x6c,
  3232  	0x6c, 0x73, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x61, 0x6c,
  3233  	0x6c, 0x73, 0x5f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01,
  3234  	0x28, 0x03, 0x52, 0x0e, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64,
  3235  	0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x5f, 0x66, 0x61, 0x69, 0x6c,
  3236  	0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x46,
  3237  	0x61, 0x69, 0x6c, 0x65, 0x64, 0x12, 0x59, 0x0a, 0x1b, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x61,
  3238  	0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73,
  3239  	0x74, 0x61, 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
  3240  	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
  3241  	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x18, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x61, 0x6c, 0x6c,
  3242  	0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
  3243  	0x22, 0xa6, 0x02, 0x0a, 0x06, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x2d, 0x0a, 0x03, 0x72,
  3244  	0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
  3245  	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6f, 0x63, 0x6b,
  3246  	0x65, 0x74, 0x52, 0x65, 0x66, 0x52, 0x03, 0x72, 0x65, 0x66, 0x12, 0x30, 0x0a, 0x04, 0x64, 0x61,
  3247  	0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
  3248  	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6f, 0x63, 0x6b,
  3249  	0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x2f, 0x0a, 0x05,
  3250  	0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x72,
  3251  	0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x41,
  3252  	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x12, 0x31, 0x0a,
  3253  	0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
  3254  	0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31,
  3255  	0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65,
  3256  	0x12, 0x36, 0x0a, 0x08, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01,
  3257  	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
  3258  	0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08,
  3259  	0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x6d, 0x6f,
  3260  	0x74, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72,
  3261  	0x65, 0x6d, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x83, 0x07, 0x0a, 0x0a, 0x53, 0x6f,
  3262  	0x63, 0x6b, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x74, 0x72, 0x65,
  3263  	0x61, 0x6d, 0x73, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
  3264  	0x03, 0x52, 0x0e, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65,
  3265  	0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x5f, 0x73, 0x75, 0x63,
  3266  	0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x73, 0x74,
  3267  	0x72, 0x65, 0x61, 0x6d, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x12, 0x25,
  3268  	0x0a, 0x0e, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64,
  3269  	0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x46,
  3270  	0x61, 0x69, 0x6c, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
  3271  	0x73, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6d, 0x65,
  3272  	0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x53, 0x65, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x6d, 0x65,
  3273  	0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x18,
  3274  	0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52,
  3275  	0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x6b, 0x65, 0x65, 0x70, 0x5f,
  3276  	0x61, 0x6c, 0x69, 0x76, 0x65, 0x73, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28,
  3277  	0x03, 0x52, 0x0e, 0x6b, 0x65, 0x65, 0x70, 0x41, 0x6c, 0x69, 0x76, 0x65, 0x73, 0x53, 0x65, 0x6e,
  3278  	0x74, 0x12, 0x68, 0x0a, 0x23, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f,
  3279  	0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x74,
  3280  	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
  3281  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  3282  	0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x1f, 0x6c, 0x61, 0x73, 0x74,
  3283  	0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 0x72, 0x65, 0x61, 0x74,
  3284  	0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x6a, 0x0a, 0x24, 0x6c,
  3285  	0x61, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61,
  3286  	0x6d, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
  3287  	0x61, 0x6d, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  3288  	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
  3289  	0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x20, 0x6c, 0x61, 0x73, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x74,
  3290  	0x65, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x69,
  3291  	0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x59, 0x0a, 0x1b, 0x6c, 0x61, 0x73, 0x74, 0x5f,
  3292  	0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d,
  3293  	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
  3294  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
  3295  	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x18, 0x6c, 0x61, 0x73, 0x74, 0x4d, 0x65,
  3296  	0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
  3297  	0x6d, 0x70, 0x12, 0x61, 0x0a, 0x1f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61,
  3298  	0x67, 0x65, 0x5f, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65,
  3299  	0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
  3300  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
  3301  	0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x1c, 0x6c, 0x61, 0x73, 0x74, 0x4d, 0x65, 0x73,
  3302  	0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65,
  3303  	0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x56, 0x0a, 0x19, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x66,
  3304  	0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x77, 0x69, 0x6e, 0x64,
  3305  	0x6f, 0x77, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3306  	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34,
  3307  	0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x16, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x46, 0x6c, 0x6f, 0x77,
  3308  	0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x12, 0x58, 0x0a,
  3309  	0x1a, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x66, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6e,
  3310  	0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x18, 0x0c, 0x20, 0x01, 0x28,
  3311  	0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  3312  	0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x17,
  3313  	0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
  3314  	0x6c, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x12, 0x36, 0x0a, 0x06, 0x6f, 0x70, 0x74, 0x69, 0x6f,
  3315  	0x6e, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63,
  3316  	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6f, 0x63, 0x6b, 0x65,
  3317  	0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22,
  3318  	0xb8, 0x03, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x4d, 0x0a, 0x0d, 0x74,
  3319  	0x63, 0x70, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01,
  3320  	0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
  3321  	0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x54, 0x63,
  3322  	0x70, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x48, 0x00, 0x52, 0x0c, 0x74, 0x63,
  3323  	0x70, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x47, 0x0a, 0x0b, 0x75, 0x64,
  3324  	0x73, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
  3325  	0x24, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e,
  3326  	0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x55, 0x64, 0x73, 0x41, 0x64,
  3327  	0x64, 0x72, 0x65, 0x73, 0x73, 0x48, 0x00, 0x52, 0x0a, 0x75, 0x64, 0x73, 0x41, 0x64, 0x64, 0x72,
  3328  	0x65, 0x73, 0x73, 0x12, 0x4d, 0x0a, 0x0d, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x64,
  3329  	0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x72, 0x70,
  3330  	0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64,
  3331  	0x64, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65,
  3332  	0x73, 0x73, 0x48, 0x00, 0x52, 0x0c, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65,
  3333  	0x73, 0x73, 0x1a, 0x41, 0x0a, 0x0c, 0x54, 0x63, 0x70, 0x49, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65,
  3334  	0x73, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
  3335  	0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
  3336  	0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
  3337  	0x04, 0x70, 0x6f, 0x72, 0x74, 0x1a, 0x28, 0x0a, 0x0a, 0x55, 0x64, 0x73, 0x41, 0x64, 0x64, 0x72,
  3338  	0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18,
  3339  	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x1a,
  3340  	0x4e, 0x0a, 0x0c, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12,
  3341  	0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
  3342  	0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
  3343  	0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  3344  	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42,
  3345  	0x09, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x96, 0x03, 0x0a, 0x08, 0x53,
  3346  	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x12, 0x32, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x01,
  3347  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e,
  3348  	0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
  3349  	0x2e, 0x54, 0x6c, 0x73, 0x48, 0x00, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x40, 0x0a, 0x05, 0x6f,
  3350  	0x74, 0x68, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x72, 0x70,
  3351  	0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65,
  3352  	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x53, 0x65, 0x63, 0x75,
  3353  	0x72, 0x69, 0x74, 0x79, 0x48, 0x00, 0x52, 0x05, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x1a, 0xb9, 0x01,
  3354  	0x0a, 0x03, 0x54, 0x6c, 0x73, 0x12, 0x25, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72,
  3355  	0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0c,
  3356  	0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0a,
  3357  	0x6f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
  3358  	0x48, 0x00, 0x52, 0x09, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a,
  3359  	0x11, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
  3360  	0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x10, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x43,
  3361  	0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65,
  3362  	0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65,
  3363  	0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x11, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x65,
  3364  	0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x42, 0x0e, 0x0a, 0x0c, 0x63, 0x69, 0x70,
  3365  	0x68, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x69, 0x74, 0x65, 0x1a, 0x4f, 0x0a, 0x0d, 0x4f, 0x74, 0x68,
  3366  	0x65, 0x72, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
  3367  	0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2a,
  3368  	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e,
  3369  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
  3370  	0x41, 0x6e, 0x79, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x6d, 0x6f,
  3371  	0x64, 0x65, 0x6c, 0x22, 0x6e, 0x0a, 0x0c, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74,
  3372  	0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
  3373  	0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
  3374  	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x34, 0x0a,
  3375  	0x0a, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28,
  3376  	0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  3377  	0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x0a, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f,
  3378  	0x6e, 0x61, 0x6c, 0x22, 0x4c, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74,
  3379  	0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x35, 0x0a, 0x08, 0x64, 0x75,
  3380  	0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67,
  3381  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44,
  3382  	0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
  3383  	0x6e, 0x22, 0x63, 0x0a, 0x12, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f,
  3384  	0x6e, 0x4c, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76,
  3385  	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12,
  3386  	0x35, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
  3387  	0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  3388  	0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x64, 0x75,
  3389  	0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb2, 0x08, 0x0a, 0x13, 0x53, 0x6f, 0x63, 0x6b, 0x65,
  3390  	0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x63, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d,
  3391  	0x0a, 0x0a, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01,
  3392  	0x28, 0x0d, 0x52, 0x09, 0x74, 0x63, 0x70, 0x69, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a,
  3393  	0x0d, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x63, 0x61, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02,
  3394  	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x63, 0x70, 0x69, 0x43, 0x61, 0x53, 0x74, 0x61, 0x74,
  3395  	0x65, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x61, 0x6e,
  3396  	0x73, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x63, 0x70,
  3397  	0x69, 0x52, 0x65, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b,
  3398  	0x74, 0x63, 0x70, 0x69, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
  3399  	0x0d, 0x52, 0x0a, 0x74, 0x63, 0x70, 0x69, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x73, 0x12, 0x21, 0x0a,
  3400  	0x0c, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66, 0x18, 0x05, 0x20,
  3401  	0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x63, 0x70, 0x69, 0x42, 0x61, 0x63, 0x6b, 0x6f, 0x66, 0x66,
  3402  	0x12, 0x21, 0x0a, 0x0c, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
  3403  	0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x63, 0x70, 0x69, 0x4f, 0x70, 0x74, 0x69,
  3404  	0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x73, 0x6e, 0x64, 0x5f,
  3405  	0x77, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x63,
  3406  	0x70, 0x69, 0x53, 0x6e, 0x64, 0x57, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x74,
  3407  	0x63, 0x70, 0x69, 0x5f, 0x72, 0x63, 0x76, 0x5f, 0x77, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x08,
  3408  	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x74, 0x63, 0x70, 0x69, 0x52, 0x63, 0x76, 0x57, 0x73, 0x63,
  3409  	0x61, 0x6c, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x72, 0x74, 0x6f, 0x18,
  3410  	0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x63, 0x70, 0x69, 0x52, 0x74, 0x6f, 0x12, 0x19,
  3411  	0x0a, 0x08, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x61, 0x74, 0x6f, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d,
  3412  	0x52, 0x07, 0x74, 0x63, 0x70, 0x69, 0x41, 0x74, 0x6f, 0x12, 0x20, 0x0a, 0x0c, 0x74, 0x63, 0x70,
  3413  	0x69, 0x5f, 0x73, 0x6e, 0x64, 0x5f, 0x6d, 0x73, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52,
  3414  	0x0a, 0x74, 0x63, 0x70, 0x69, 0x53, 0x6e, 0x64, 0x4d, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x74,
  3415  	0x63, 0x70, 0x69, 0x5f, 0x72, 0x63, 0x76, 0x5f, 0x6d, 0x73, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28,
  3416  	0x0d, 0x52, 0x0a, 0x74, 0x63, 0x70, 0x69, 0x52, 0x63, 0x76, 0x4d, 0x73, 0x73, 0x12, 0x21, 0x0a,
  3417  	0x0c, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x75, 0x6e, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x0d, 0x20,
  3418  	0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x63, 0x70, 0x69, 0x55, 0x6e, 0x61, 0x63, 0x6b, 0x65, 0x64,
  3419  	0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x73, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18,
  3420  	0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x63, 0x70, 0x69, 0x53, 0x61, 0x63, 0x6b, 0x65,
  3421  	0x64, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x6c, 0x6f, 0x73, 0x74, 0x18, 0x0f,
  3422  	0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x74, 0x63, 0x70, 0x69, 0x4c, 0x6f, 0x73, 0x74, 0x12, 0x21,
  3423  	0x0a, 0x0c, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x18, 0x10,
  3424  	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x63, 0x70, 0x69, 0x52, 0x65, 0x74, 0x72, 0x61, 0x6e,
  3425  	0x73, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x66, 0x61, 0x63, 0x6b, 0x65, 0x74,
  3426  	0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x63, 0x70, 0x69, 0x46, 0x61, 0x63,
  3427  	0x6b, 0x65, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x13, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x6c, 0x61, 0x73,
  3428  	0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28,
  3429  	0x0d, 0x52, 0x10, 0x74, 0x63, 0x70, 0x69, 0x4c, 0x61, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x53,
  3430  	0x65, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x12, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x6c, 0x61, 0x73, 0x74,
  3431  	0x5f, 0x61, 0x63, 0x6b, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52,
  3432  	0x0f, 0x74, 0x63, 0x70, 0x69, 0x4c, 0x61, 0x73, 0x74, 0x41, 0x63, 0x6b, 0x53, 0x65, 0x6e, 0x74,
  3433  	0x12, 0x2d, 0x0a, 0x13, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x64, 0x61,
  3434  	0x74, 0x61, 0x5f, 0x72, 0x65, 0x63, 0x76, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x74,
  3435  	0x63, 0x70, 0x69, 0x4c, 0x61, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x63, 0x76, 0x12,
  3436  	0x2b, 0x0a, 0x12, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x61, 0x63, 0x6b,
  3437  	0x5f, 0x72, 0x65, 0x63, 0x76, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x63, 0x70,
  3438  	0x69, 0x4c, 0x61, 0x73, 0x74, 0x41, 0x63, 0x6b, 0x52, 0x65, 0x63, 0x76, 0x12, 0x1b, 0x0a, 0x09,
  3439  	0x74, 0x63, 0x70, 0x69, 0x5f, 0x70, 0x6d, 0x74, 0x75, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52,
  3440  	0x08, 0x74, 0x63, 0x70, 0x69, 0x50, 0x6d, 0x74, 0x75, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x63, 0x70,
  3441  	0x69, 0x5f, 0x72, 0x63, 0x76, 0x5f, 0x73, 0x73, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x18, 0x17,
  3442  	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x63, 0x70, 0x69, 0x52, 0x63, 0x76, 0x53, 0x73, 0x74,
  3443  	0x68, 0x72, 0x65, 0x73, 0x68, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x72, 0x74,
  3444  	0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x63, 0x70, 0x69, 0x52, 0x74, 0x74,
  3445  	0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x72, 0x74, 0x74, 0x76, 0x61, 0x72, 0x18,
  3446  	0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x63, 0x70, 0x69, 0x52, 0x74, 0x74, 0x76, 0x61,
  3447  	0x72, 0x12, 0x2a, 0x0a, 0x11, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x73, 0x6e, 0x64, 0x5f, 0x73, 0x73,
  3448  	0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x74, 0x63,
  3449  	0x70, 0x69, 0x53, 0x6e, 0x64, 0x53, 0x73, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x12, 0x22, 0x0a,
  3450  	0x0d, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x73, 0x6e, 0x64, 0x5f, 0x63, 0x77, 0x6e, 0x64, 0x18, 0x1b,
  3451  	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x74, 0x63, 0x70, 0x69, 0x53, 0x6e, 0x64, 0x43, 0x77, 0x6e,
  3452  	0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x61, 0x64, 0x76, 0x6d, 0x73, 0x73,
  3453  	0x18, 0x1c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x74, 0x63, 0x70, 0x69, 0x41, 0x64, 0x76, 0x6d,
  3454  	0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x63, 0x70, 0x69, 0x5f, 0x72, 0x65, 0x6f, 0x72, 0x64,
  3455  	0x65, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x74, 0x63, 0x70,
  3456  	0x69, 0x52, 0x65, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x62, 0x0a, 0x15, 0x47,
  3457  	0x65, 0x74, 0x54, 0x6f, 0x70, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71,
  3458  	0x75, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x63, 0x68,
  3459  	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e,
  3460  	0x73, 0x74, 0x61, 0x72, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1f,
  3461  	0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20,
  3462  	0x01, 0x28, 0x03, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22,
  3463  	0x5f, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
  3464  	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x07, 0x63, 0x68, 0x61,
  3465  	0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x72, 0x70,
  3466  	0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68,
  3467  	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x10,
  3468  	0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x65, 0x6e, 0x64,
  3469  	0x22, 0x5c, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65,
  3470  	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x73,
  3471  	0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d,
  3472  	0x73, 0x74, 0x61, 0x72, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1f, 0x0a,
  3473  	0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01,
  3474  	0x28, 0x03, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0x58,
  3475  	0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70,
  3476  	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01,
  3477  	0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e,
  3478  	0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x06,
  3479  	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20,
  3480  	0x01, 0x28, 0x08, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x22, 0x2f, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x53,
  3481  	0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09,
  3482  	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52,
  3483  	0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x22, 0x45, 0x0a, 0x11, 0x47, 0x65, 0x74,
  3484  	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30,
  3485  	0x0a, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18,
  3486  	0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76,
  3487  	0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
  3488  	0x22, 0x7f, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x6f, 0x63,
  3489  	0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73,
  3490  	0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08,
  3491  	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x74, 0x61, 0x72,
  3492  	0x74, 0x5f, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
  3493  	0x03, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64,
  3494  	0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18,
  3495  	0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
  3496  	0x73, 0x22, 0x68, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x6f,
  3497  	0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a,
  3498  	0x0a, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x03, 0x28,
  3499  	0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
  3500  	0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x66, 0x52, 0x09,
  3501  	0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64,
  3502  	0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x22, 0x32, 0x0a, 0x11, 0x47,
  3503  	0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  3504  	0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01,
  3505  	0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x22,
  3506  	0x49, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73,
  3507  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
  3508  	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68,
  3509  	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
  3510  	0x6c, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0x3b, 0x0a, 0x14, 0x47, 0x65,
  3511  	0x74, 0x53, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
  3512  	0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
  3513  	0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x63, 0x68,
  3514  	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x22, 0x55, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x53, 0x75,
  3515  	0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
  3516  	0x12, 0x3c, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01,
  3517  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e,
  3518  	0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e,
  3519  	0x65, 0x6c, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0x49,
  3520  	0x0a, 0x10, 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
  3521  	0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18,
  3522  	0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12,
  3523  	0x18, 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
  3524  	0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x22, 0x45, 0x0a, 0x11, 0x47, 0x65, 0x74,
  3525  	0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30,
  3526  	0x0a, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18,
  3527  	0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76,
  3528  	0x31, 0x2e, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x73, 0x6f, 0x63, 0x6b, 0x65, 0x74,
  3529  	0x32, 0x9a, 0x05, 0x0a, 0x08, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x12, 0x63, 0x0a,
  3530  	0x0e, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12,
  3531  	0x27, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e,
  3532  	0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x6f, 0x70, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
  3533  	0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
  3534  	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x54,
  3535  	0x6f, 0x70, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
  3536  	0x73, 0x65, 0x12, 0x57, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73,
  3537  	0x12, 0x23, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a,
  3538  	0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x52, 0x65,
  3539  	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61,
  3540  	0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76,
  3541  	0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x09, 0x47,
  3542  	0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x22, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
  3543  	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53,
  3544  	0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x67,
  3545  	0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e,
  3546  	0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  3547  	0x65, 0x12, 0x69, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x6f,
  3548  	0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x29, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61,
  3549  	0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76,
  3550  	0x65, 0x72, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  3551  	0x1a, 0x2a, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a,
  3552  	0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x6f, 0x63,
  3553  	0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x0a,
  3554  	0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x23, 0x2e, 0x67, 0x72, 0x70,
  3555  	0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65,
  3556  	0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
  3557  	0x24, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e,
  3558  	0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73,
  3559  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x53, 0x75, 0x62, 0x63,
  3560  	0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x26, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68,
  3561  	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x75, 0x62,
  3562  	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27,
  3563  	0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76,
  3564  	0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x75, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52,
  3565  	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x53, 0x6f,
  3566  	0x63, 0x6b, 0x65, 0x74, 0x12, 0x22, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e,
  3567  	0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, 0x6b, 0x65,
  3568  	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
  3569  	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x53,
  3570  	0x6f, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x58, 0x0a,
  3571  	0x13, 0x69, 0x6f, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
  3572  	0x7a, 0x2e, 0x76, 0x31, 0x42, 0x0d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x50, 0x72,
  3573  	0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x30, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f,
  3574  	0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x63, 0x68,
  3575  	0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7a, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x5f, 0x63, 0x68, 0x61, 0x6e,
  3576  	0x6e, 0x65, 0x6c, 0x7a, 0x5f, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  3577  }
  3578  
  3579  var (
  3580  	file_grpc_channelz_v1_channelz_proto_rawDescOnce sync.Once
  3581  	file_grpc_channelz_v1_channelz_proto_rawDescData = file_grpc_channelz_v1_channelz_proto_rawDesc
  3582  )
  3583  
  3584  func file_grpc_channelz_v1_channelz_proto_rawDescGZIP() []byte {
  3585  	file_grpc_channelz_v1_channelz_proto_rawDescOnce.Do(func() {
  3586  		file_grpc_channelz_v1_channelz_proto_rawDescData = protoimpl.X.CompressGZIP(file_grpc_channelz_v1_channelz_proto_rawDescData)
  3587  	})
  3588  	return file_grpc_channelz_v1_channelz_proto_rawDescData
  3589  }
  3590  
  3591  var file_grpc_channelz_v1_channelz_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
  3592  var file_grpc_channelz_v1_channelz_proto_msgTypes = make([]protoimpl.MessageInfo, 39)
  3593  var file_grpc_channelz_v1_channelz_proto_goTypes = []interface{}{
  3594  	(ChannelConnectivityState_State)(0), // 0: grpc.channelz.v1.ChannelConnectivityState.State
  3595  	(ChannelTraceEvent_Severity)(0),     // 1: grpc.channelz.v1.ChannelTraceEvent.Severity
  3596  	(*Channel)(nil),                     // 2: grpc.channelz.v1.Channel
  3597  	(*Subchannel)(nil),                  // 3: grpc.channelz.v1.Subchannel
  3598  	(*ChannelConnectivityState)(nil),    // 4: grpc.channelz.v1.ChannelConnectivityState
  3599  	(*ChannelData)(nil),                 // 5: grpc.channelz.v1.ChannelData
  3600  	(*ChannelTraceEvent)(nil),           // 6: grpc.channelz.v1.ChannelTraceEvent
  3601  	(*ChannelTrace)(nil),                // 7: grpc.channelz.v1.ChannelTrace
  3602  	(*ChannelRef)(nil),                  // 8: grpc.channelz.v1.ChannelRef
  3603  	(*SubchannelRef)(nil),               // 9: grpc.channelz.v1.SubchannelRef
  3604  	(*SocketRef)(nil),                   // 10: grpc.channelz.v1.SocketRef
  3605  	(*ServerRef)(nil),                   // 11: grpc.channelz.v1.ServerRef
  3606  	(*Server)(nil),                      // 12: grpc.channelz.v1.Server
  3607  	(*ServerData)(nil),                  // 13: grpc.channelz.v1.ServerData
  3608  	(*Socket)(nil),                      // 14: grpc.channelz.v1.Socket
  3609  	(*SocketData)(nil),                  // 15: grpc.channelz.v1.SocketData
  3610  	(*Address)(nil),                     // 16: grpc.channelz.v1.Address
  3611  	(*Security)(nil),                    // 17: grpc.channelz.v1.Security
  3612  	(*SocketOption)(nil),                // 18: grpc.channelz.v1.SocketOption
  3613  	(*SocketOptionTimeout)(nil),         // 19: grpc.channelz.v1.SocketOptionTimeout
  3614  	(*SocketOptionLinger)(nil),          // 20: grpc.channelz.v1.SocketOptionLinger
  3615  	(*SocketOptionTcpInfo)(nil),         // 21: grpc.channelz.v1.SocketOptionTcpInfo
  3616  	(*GetTopChannelsRequest)(nil),       // 22: grpc.channelz.v1.GetTopChannelsRequest
  3617  	(*GetTopChannelsResponse)(nil),      // 23: grpc.channelz.v1.GetTopChannelsResponse
  3618  	(*GetServersRequest)(nil),           // 24: grpc.channelz.v1.GetServersRequest
  3619  	(*GetServersResponse)(nil),          // 25: grpc.channelz.v1.GetServersResponse
  3620  	(*GetServerRequest)(nil),            // 26: grpc.channelz.v1.GetServerRequest
  3621  	(*GetServerResponse)(nil),           // 27: grpc.channelz.v1.GetServerResponse
  3622  	(*GetServerSocketsRequest)(nil),     // 28: grpc.channelz.v1.GetServerSocketsRequest
  3623  	(*GetServerSocketsResponse)(nil),    // 29: grpc.channelz.v1.GetServerSocketsResponse
  3624  	(*GetChannelRequest)(nil),           // 30: grpc.channelz.v1.GetChannelRequest
  3625  	(*GetChannelResponse)(nil),          // 31: grpc.channelz.v1.GetChannelResponse
  3626  	(*GetSubchannelRequest)(nil),        // 32: grpc.channelz.v1.GetSubchannelRequest
  3627  	(*GetSubchannelResponse)(nil),       // 33: grpc.channelz.v1.GetSubchannelResponse
  3628  	(*GetSocketRequest)(nil),            // 34: grpc.channelz.v1.GetSocketRequest
  3629  	(*GetSocketResponse)(nil),           // 35: grpc.channelz.v1.GetSocketResponse
  3630  	(*Address_TcpIpAddress)(nil),        // 36: grpc.channelz.v1.Address.TcpIpAddress
  3631  	(*Address_UdsAddress)(nil),          // 37: grpc.channelz.v1.Address.UdsAddress
  3632  	(*Address_OtherAddress)(nil),        // 38: grpc.channelz.v1.Address.OtherAddress
  3633  	(*Security_Tls)(nil),                // 39: grpc.channelz.v1.Security.Tls
  3634  	(*Security_OtherSecurity)(nil),      // 40: grpc.channelz.v1.Security.OtherSecurity
  3635  	(*timestamppb.Timestamp)(nil),       // 41: google.protobuf.Timestamp
  3636  	(*wrapperspb.Int64Value)(nil),       // 42: google.protobuf.Int64Value
  3637  	(*anypb.Any)(nil),                   // 43: google.protobuf.Any
  3638  	(*durationpb.Duration)(nil),         // 44: google.protobuf.Duration
  3639  }
  3640  var file_grpc_channelz_v1_channelz_proto_depIdxs = []int32{
  3641  	8,  // 0: grpc.channelz.v1.Channel.ref:type_name -> grpc.channelz.v1.ChannelRef
  3642  	5,  // 1: grpc.channelz.v1.Channel.data:type_name -> grpc.channelz.v1.ChannelData
  3643  	8,  // 2: grpc.channelz.v1.Channel.channel_ref:type_name -> grpc.channelz.v1.ChannelRef
  3644  	9,  // 3: grpc.channelz.v1.Channel.subchannel_ref:type_name -> grpc.channelz.v1.SubchannelRef
  3645  	10, // 4: grpc.channelz.v1.Channel.socket_ref:type_name -> grpc.channelz.v1.SocketRef
  3646  	9,  // 5: grpc.channelz.v1.Subchannel.ref:type_name -> grpc.channelz.v1.SubchannelRef
  3647  	5,  // 6: grpc.channelz.v1.Subchannel.data:type_name -> grpc.channelz.v1.ChannelData
  3648  	8,  // 7: grpc.channelz.v1.Subchannel.channel_ref:type_name -> grpc.channelz.v1.ChannelRef
  3649  	9,  // 8: grpc.channelz.v1.Subchannel.subchannel_ref:type_name -> grpc.channelz.v1.SubchannelRef
  3650  	10, // 9: grpc.channelz.v1.Subchannel.socket_ref:type_name -> grpc.channelz.v1.SocketRef
  3651  	0,  // 10: grpc.channelz.v1.ChannelConnectivityState.state:type_name -> grpc.channelz.v1.ChannelConnectivityState.State
  3652  	4,  // 11: grpc.channelz.v1.ChannelData.state:type_name -> grpc.channelz.v1.ChannelConnectivityState
  3653  	7,  // 12: grpc.channelz.v1.ChannelData.trace:type_name -> grpc.channelz.v1.ChannelTrace
  3654  	41, // 13: grpc.channelz.v1.ChannelData.last_call_started_timestamp:type_name -> google.protobuf.Timestamp
  3655  	1,  // 14: grpc.channelz.v1.ChannelTraceEvent.severity:type_name -> grpc.channelz.v1.ChannelTraceEvent.Severity
  3656  	41, // 15: grpc.channelz.v1.ChannelTraceEvent.timestamp:type_name -> google.protobuf.Timestamp
  3657  	8,  // 16: grpc.channelz.v1.ChannelTraceEvent.channel_ref:type_name -> grpc.channelz.v1.ChannelRef
  3658  	9,  // 17: grpc.channelz.v1.ChannelTraceEvent.subchannel_ref:type_name -> grpc.channelz.v1.SubchannelRef
  3659  	41, // 18: grpc.channelz.v1.ChannelTrace.creation_timestamp:type_name -> google.protobuf.Timestamp
  3660  	6,  // 19: grpc.channelz.v1.ChannelTrace.events:type_name -> grpc.channelz.v1.ChannelTraceEvent
  3661  	11, // 20: grpc.channelz.v1.Server.ref:type_name -> grpc.channelz.v1.ServerRef
  3662  	13, // 21: grpc.channelz.v1.Server.data:type_name -> grpc.channelz.v1.ServerData
  3663  	10, // 22: grpc.channelz.v1.Server.listen_socket:type_name -> grpc.channelz.v1.SocketRef
  3664  	7,  // 23: grpc.channelz.v1.ServerData.trace:type_name -> grpc.channelz.v1.ChannelTrace
  3665  	41, // 24: grpc.channelz.v1.ServerData.last_call_started_timestamp:type_name -> google.protobuf.Timestamp
  3666  	10, // 25: grpc.channelz.v1.Socket.ref:type_name -> grpc.channelz.v1.SocketRef
  3667  	15, // 26: grpc.channelz.v1.Socket.data:type_name -> grpc.channelz.v1.SocketData
  3668  	16, // 27: grpc.channelz.v1.Socket.local:type_name -> grpc.channelz.v1.Address
  3669  	16, // 28: grpc.channelz.v1.Socket.remote:type_name -> grpc.channelz.v1.Address
  3670  	17, // 29: grpc.channelz.v1.Socket.security:type_name -> grpc.channelz.v1.Security
  3671  	41, // 30: grpc.channelz.v1.SocketData.last_local_stream_created_timestamp:type_name -> google.protobuf.Timestamp
  3672  	41, // 31: grpc.channelz.v1.SocketData.last_remote_stream_created_timestamp:type_name -> google.protobuf.Timestamp
  3673  	41, // 32: grpc.channelz.v1.SocketData.last_message_sent_timestamp:type_name -> google.protobuf.Timestamp
  3674  	41, // 33: grpc.channelz.v1.SocketData.last_message_received_timestamp:type_name -> google.protobuf.Timestamp
  3675  	42, // 34: grpc.channelz.v1.SocketData.local_flow_control_window:type_name -> google.protobuf.Int64Value
  3676  	42, // 35: grpc.channelz.v1.SocketData.remote_flow_control_window:type_name -> google.protobuf.Int64Value
  3677  	18, // 36: grpc.channelz.v1.SocketData.option:type_name -> grpc.channelz.v1.SocketOption
  3678  	36, // 37: grpc.channelz.v1.Address.tcpip_address:type_name -> grpc.channelz.v1.Address.TcpIpAddress
  3679  	37, // 38: grpc.channelz.v1.Address.uds_address:type_name -> grpc.channelz.v1.Address.UdsAddress
  3680  	38, // 39: grpc.channelz.v1.Address.other_address:type_name -> grpc.channelz.v1.Address.OtherAddress
  3681  	39, // 40: grpc.channelz.v1.Security.tls:type_name -> grpc.channelz.v1.Security.Tls
  3682  	40, // 41: grpc.channelz.v1.Security.other:type_name -> grpc.channelz.v1.Security.OtherSecurity
  3683  	43, // 42: grpc.channelz.v1.SocketOption.additional:type_name -> google.protobuf.Any
  3684  	44, // 43: grpc.channelz.v1.SocketOptionTimeout.duration:type_name -> google.protobuf.Duration
  3685  	44, // 44: grpc.channelz.v1.SocketOptionLinger.duration:type_name -> google.protobuf.Duration
  3686  	2,  // 45: grpc.channelz.v1.GetTopChannelsResponse.channel:type_name -> grpc.channelz.v1.Channel
  3687  	12, // 46: grpc.channelz.v1.GetServersResponse.server:type_name -> grpc.channelz.v1.Server
  3688  	12, // 47: grpc.channelz.v1.GetServerResponse.server:type_name -> grpc.channelz.v1.Server
  3689  	10, // 48: grpc.channelz.v1.GetServerSocketsResponse.socket_ref:type_name -> grpc.channelz.v1.SocketRef
  3690  	2,  // 49: grpc.channelz.v1.GetChannelResponse.channel:type_name -> grpc.channelz.v1.Channel
  3691  	3,  // 50: grpc.channelz.v1.GetSubchannelResponse.subchannel:type_name -> grpc.channelz.v1.Subchannel
  3692  	14, // 51: grpc.channelz.v1.GetSocketResponse.socket:type_name -> grpc.channelz.v1.Socket
  3693  	43, // 52: grpc.channelz.v1.Address.OtherAddress.value:type_name -> google.protobuf.Any
  3694  	43, // 53: grpc.channelz.v1.Security.OtherSecurity.value:type_name -> google.protobuf.Any
  3695  	22, // 54: grpc.channelz.v1.Channelz.GetTopChannels:input_type -> grpc.channelz.v1.GetTopChannelsRequest
  3696  	24, // 55: grpc.channelz.v1.Channelz.GetServers:input_type -> grpc.channelz.v1.GetServersRequest
  3697  	26, // 56: grpc.channelz.v1.Channelz.GetServer:input_type -> grpc.channelz.v1.GetServerRequest
  3698  	28, // 57: grpc.channelz.v1.Channelz.GetServerSockets:input_type -> grpc.channelz.v1.GetServerSocketsRequest
  3699  	30, // 58: grpc.channelz.v1.Channelz.GetChannel:input_type -> grpc.channelz.v1.GetChannelRequest
  3700  	32, // 59: grpc.channelz.v1.Channelz.GetSubchannel:input_type -> grpc.channelz.v1.GetSubchannelRequest
  3701  	34, // 60: grpc.channelz.v1.Channelz.GetSocket:input_type -> grpc.channelz.v1.GetSocketRequest
  3702  	23, // 61: grpc.channelz.v1.Channelz.GetTopChannels:output_type -> grpc.channelz.v1.GetTopChannelsResponse
  3703  	25, // 62: grpc.channelz.v1.Channelz.GetServers:output_type -> grpc.channelz.v1.GetServersResponse
  3704  	27, // 63: grpc.channelz.v1.Channelz.GetServer:output_type -> grpc.channelz.v1.GetServerResponse
  3705  	29, // 64: grpc.channelz.v1.Channelz.GetServerSockets:output_type -> grpc.channelz.v1.GetServerSocketsResponse
  3706  	31, // 65: grpc.channelz.v1.Channelz.GetChannel:output_type -> grpc.channelz.v1.GetChannelResponse
  3707  	33, // 66: grpc.channelz.v1.Channelz.GetSubchannel:output_type -> grpc.channelz.v1.GetSubchannelResponse
  3708  	35, // 67: grpc.channelz.v1.Channelz.GetSocket:output_type -> grpc.channelz.v1.GetSocketResponse
  3709  	61, // [61:68] is the sub-list for method output_type
  3710  	54, // [54:61] is the sub-list for method input_type
  3711  	54, // [54:54] is the sub-list for extension type_name
  3712  	54, // [54:54] is the sub-list for extension extendee
  3713  	0,  // [0:54] is the sub-list for field type_name
  3714  }
  3715  
  3716  func init() { file_grpc_channelz_v1_channelz_proto_init() }
  3717  func file_grpc_channelz_v1_channelz_proto_init() {
  3718  	if File_grpc_channelz_v1_channelz_proto != nil {
  3719  		return
  3720  	}
  3721  	if !protoimpl.UnsafeEnabled {
  3722  		file_grpc_channelz_v1_channelz_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  3723  			switch v := v.(*Channel); i {
  3724  			case 0:
  3725  				return &v.state
  3726  			case 1:
  3727  				return &v.sizeCache
  3728  			case 2:
  3729  				return &v.unknownFields
  3730  			default:
  3731  				return nil
  3732  			}
  3733  		}
  3734  		file_grpc_channelz_v1_channelz_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  3735  			switch v := v.(*Subchannel); i {
  3736  			case 0:
  3737  				return &v.state
  3738  			case 1:
  3739  				return &v.sizeCache
  3740  			case 2:
  3741  				return &v.unknownFields
  3742  			default:
  3743  				return nil
  3744  			}
  3745  		}
  3746  		file_grpc_channelz_v1_channelz_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  3747  			switch v := v.(*ChannelConnectivityState); i {
  3748  			case 0:
  3749  				return &v.state
  3750  			case 1:
  3751  				return &v.sizeCache
  3752  			case 2:
  3753  				return &v.unknownFields
  3754  			default:
  3755  				return nil
  3756  			}
  3757  		}
  3758  		file_grpc_channelz_v1_channelz_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  3759  			switch v := v.(*ChannelData); i {
  3760  			case 0:
  3761  				return &v.state
  3762  			case 1:
  3763  				return &v.sizeCache
  3764  			case 2:
  3765  				return &v.unknownFields
  3766  			default:
  3767  				return nil
  3768  			}
  3769  		}
  3770  		file_grpc_channelz_v1_channelz_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  3771  			switch v := v.(*ChannelTraceEvent); i {
  3772  			case 0:
  3773  				return &v.state
  3774  			case 1:
  3775  				return &v.sizeCache
  3776  			case 2:
  3777  				return &v.unknownFields
  3778  			default:
  3779  				return nil
  3780  			}
  3781  		}
  3782  		file_grpc_channelz_v1_channelz_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  3783  			switch v := v.(*ChannelTrace); i {
  3784  			case 0:
  3785  				return &v.state
  3786  			case 1:
  3787  				return &v.sizeCache
  3788  			case 2:
  3789  				return &v.unknownFields
  3790  			default:
  3791  				return nil
  3792  			}
  3793  		}
  3794  		file_grpc_channelz_v1_channelz_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  3795  			switch v := v.(*ChannelRef); i {
  3796  			case 0:
  3797  				return &v.state
  3798  			case 1:
  3799  				return &v.sizeCache
  3800  			case 2:
  3801  				return &v.unknownFields
  3802  			default:
  3803  				return nil
  3804  			}
  3805  		}
  3806  		file_grpc_channelz_v1_channelz_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  3807  			switch v := v.(*SubchannelRef); i {
  3808  			case 0:
  3809  				return &v.state
  3810  			case 1:
  3811  				return &v.sizeCache
  3812  			case 2:
  3813  				return &v.unknownFields
  3814  			default:
  3815  				return nil
  3816  			}
  3817  		}
  3818  		file_grpc_channelz_v1_channelz_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  3819  			switch v := v.(*SocketRef); i {
  3820  			case 0:
  3821  				return &v.state
  3822  			case 1:
  3823  				return &v.sizeCache
  3824  			case 2:
  3825  				return &v.unknownFields
  3826  			default:
  3827  				return nil
  3828  			}
  3829  		}
  3830  		file_grpc_channelz_v1_channelz_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  3831  			switch v := v.(*ServerRef); i {
  3832  			case 0:
  3833  				return &v.state
  3834  			case 1:
  3835  				return &v.sizeCache
  3836  			case 2:
  3837  				return &v.unknownFields
  3838  			default:
  3839  				return nil
  3840  			}
  3841  		}
  3842  		file_grpc_channelz_v1_channelz_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  3843  			switch v := v.(*Server); i {
  3844  			case 0:
  3845  				return &v.state
  3846  			case 1:
  3847  				return &v.sizeCache
  3848  			case 2:
  3849  				return &v.unknownFields
  3850  			default:
  3851  				return nil
  3852  			}
  3853  		}
  3854  		file_grpc_channelz_v1_channelz_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  3855  			switch v := v.(*ServerData); i {
  3856  			case 0:
  3857  				return &v.state
  3858  			case 1:
  3859  				return &v.sizeCache
  3860  			case 2:
  3861  				return &v.unknownFields
  3862  			default:
  3863  				return nil
  3864  			}
  3865  		}
  3866  		file_grpc_channelz_v1_channelz_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
  3867  			switch v := v.(*Socket); i {
  3868  			case 0:
  3869  				return &v.state
  3870  			case 1:
  3871  				return &v.sizeCache
  3872  			case 2:
  3873  				return &v.unknownFields
  3874  			default:
  3875  				return nil
  3876  			}
  3877  		}
  3878  		file_grpc_channelz_v1_channelz_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
  3879  			switch v := v.(*SocketData); i {
  3880  			case 0:
  3881  				return &v.state
  3882  			case 1:
  3883  				return &v.sizeCache
  3884  			case 2:
  3885  				return &v.unknownFields
  3886  			default:
  3887  				return nil
  3888  			}
  3889  		}
  3890  		file_grpc_channelz_v1_channelz_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
  3891  			switch v := v.(*Address); i {
  3892  			case 0:
  3893  				return &v.state
  3894  			case 1:
  3895  				return &v.sizeCache
  3896  			case 2:
  3897  				return &v.unknownFields
  3898  			default:
  3899  				return nil
  3900  			}
  3901  		}
  3902  		file_grpc_channelz_v1_channelz_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
  3903  			switch v := v.(*Security); i {
  3904  			case 0:
  3905  				return &v.state
  3906  			case 1:
  3907  				return &v.sizeCache
  3908  			case 2:
  3909  				return &v.unknownFields
  3910  			default:
  3911  				return nil
  3912  			}
  3913  		}
  3914  		file_grpc_channelz_v1_channelz_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
  3915  			switch v := v.(*SocketOption); i {
  3916  			case 0:
  3917  				return &v.state
  3918  			case 1:
  3919  				return &v.sizeCache
  3920  			case 2:
  3921  				return &v.unknownFields
  3922  			default:
  3923  				return nil
  3924  			}
  3925  		}
  3926  		file_grpc_channelz_v1_channelz_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
  3927  			switch v := v.(*SocketOptionTimeout); i {
  3928  			case 0:
  3929  				return &v.state
  3930  			case 1:
  3931  				return &v.sizeCache
  3932  			case 2:
  3933  				return &v.unknownFields
  3934  			default:
  3935  				return nil
  3936  			}
  3937  		}
  3938  		file_grpc_channelz_v1_channelz_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
  3939  			switch v := v.(*SocketOptionLinger); i {
  3940  			case 0:
  3941  				return &v.state
  3942  			case 1:
  3943  				return &v.sizeCache
  3944  			case 2:
  3945  				return &v.unknownFields
  3946  			default:
  3947  				return nil
  3948  			}
  3949  		}
  3950  		file_grpc_channelz_v1_channelz_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
  3951  			switch v := v.(*SocketOptionTcpInfo); i {
  3952  			case 0:
  3953  				return &v.state
  3954  			case 1:
  3955  				return &v.sizeCache
  3956  			case 2:
  3957  				return &v.unknownFields
  3958  			default:
  3959  				return nil
  3960  			}
  3961  		}
  3962  		file_grpc_channelz_v1_channelz_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
  3963  			switch v := v.(*GetTopChannelsRequest); i {
  3964  			case 0:
  3965  				return &v.state
  3966  			case 1:
  3967  				return &v.sizeCache
  3968  			case 2:
  3969  				return &v.unknownFields
  3970  			default:
  3971  				return nil
  3972  			}
  3973  		}
  3974  		file_grpc_channelz_v1_channelz_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
  3975  			switch v := v.(*GetTopChannelsResponse); i {
  3976  			case 0:
  3977  				return &v.state
  3978  			case 1:
  3979  				return &v.sizeCache
  3980  			case 2:
  3981  				return &v.unknownFields
  3982  			default:
  3983  				return nil
  3984  			}
  3985  		}
  3986  		file_grpc_channelz_v1_channelz_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
  3987  			switch v := v.(*GetServersRequest); i {
  3988  			case 0:
  3989  				return &v.state
  3990  			case 1:
  3991  				return &v.sizeCache
  3992  			case 2:
  3993  				return &v.unknownFields
  3994  			default:
  3995  				return nil
  3996  			}
  3997  		}
  3998  		file_grpc_channelz_v1_channelz_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
  3999  			switch v := v.(*GetServersResponse); i {
  4000  			case 0:
  4001  				return &v.state
  4002  			case 1:
  4003  				return &v.sizeCache
  4004  			case 2:
  4005  				return &v.unknownFields
  4006  			default:
  4007  				return nil
  4008  			}
  4009  		}
  4010  		file_grpc_channelz_v1_channelz_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
  4011  			switch v := v.(*GetServerRequest); i {
  4012  			case 0:
  4013  				return &v.state
  4014  			case 1:
  4015  				return &v.sizeCache
  4016  			case 2:
  4017  				return &v.unknownFields
  4018  			default:
  4019  				return nil
  4020  			}
  4021  		}
  4022  		file_grpc_channelz_v1_channelz_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
  4023  			switch v := v.(*GetServerResponse); i {
  4024  			case 0:
  4025  				return &v.state
  4026  			case 1:
  4027  				return &v.sizeCache
  4028  			case 2:
  4029  				return &v.unknownFields
  4030  			default:
  4031  				return nil
  4032  			}
  4033  		}
  4034  		file_grpc_channelz_v1_channelz_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
  4035  			switch v := v.(*GetServerSocketsRequest); i {
  4036  			case 0:
  4037  				return &v.state
  4038  			case 1:
  4039  				return &v.sizeCache
  4040  			case 2:
  4041  				return &v.unknownFields
  4042  			default:
  4043  				return nil
  4044  			}
  4045  		}
  4046  		file_grpc_channelz_v1_channelz_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
  4047  			switch v := v.(*GetServerSocketsResponse); i {
  4048  			case 0:
  4049  				return &v.state
  4050  			case 1:
  4051  				return &v.sizeCache
  4052  			case 2:
  4053  				return &v.unknownFields
  4054  			default:
  4055  				return nil
  4056  			}
  4057  		}
  4058  		file_grpc_channelz_v1_channelz_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
  4059  			switch v := v.(*GetChannelRequest); i {
  4060  			case 0:
  4061  				return &v.state
  4062  			case 1:
  4063  				return &v.sizeCache
  4064  			case 2:
  4065  				return &v.unknownFields
  4066  			default:
  4067  				return nil
  4068  			}
  4069  		}
  4070  		file_grpc_channelz_v1_channelz_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
  4071  			switch v := v.(*GetChannelResponse); i {
  4072  			case 0:
  4073  				return &v.state
  4074  			case 1:
  4075  				return &v.sizeCache
  4076  			case 2:
  4077  				return &v.unknownFields
  4078  			default:
  4079  				return nil
  4080  			}
  4081  		}
  4082  		file_grpc_channelz_v1_channelz_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
  4083  			switch v := v.(*GetSubchannelRequest); i {
  4084  			case 0:
  4085  				return &v.state
  4086  			case 1:
  4087  				return &v.sizeCache
  4088  			case 2:
  4089  				return &v.unknownFields
  4090  			default:
  4091  				return nil
  4092  			}
  4093  		}
  4094  		file_grpc_channelz_v1_channelz_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
  4095  			switch v := v.(*GetSubchannelResponse); i {
  4096  			case 0:
  4097  				return &v.state
  4098  			case 1:
  4099  				return &v.sizeCache
  4100  			case 2:
  4101  				return &v.unknownFields
  4102  			default:
  4103  				return nil
  4104  			}
  4105  		}
  4106  		file_grpc_channelz_v1_channelz_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
  4107  			switch v := v.(*GetSocketRequest); i {
  4108  			case 0:
  4109  				return &v.state
  4110  			case 1:
  4111  				return &v.sizeCache
  4112  			case 2:
  4113  				return &v.unknownFields
  4114  			default:
  4115  				return nil
  4116  			}
  4117  		}
  4118  		file_grpc_channelz_v1_channelz_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
  4119  			switch v := v.(*GetSocketResponse); i {
  4120  			case 0:
  4121  				return &v.state
  4122  			case 1:
  4123  				return &v.sizeCache
  4124  			case 2:
  4125  				return &v.unknownFields
  4126  			default:
  4127  				return nil
  4128  			}
  4129  		}
  4130  		file_grpc_channelz_v1_channelz_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
  4131  			switch v := v.(*Address_TcpIpAddress); i {
  4132  			case 0:
  4133  				return &v.state
  4134  			case 1:
  4135  				return &v.sizeCache
  4136  			case 2:
  4137  				return &v.unknownFields
  4138  			default:
  4139  				return nil
  4140  			}
  4141  		}
  4142  		file_grpc_channelz_v1_channelz_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
  4143  			switch v := v.(*Address_UdsAddress); i {
  4144  			case 0:
  4145  				return &v.state
  4146  			case 1:
  4147  				return &v.sizeCache
  4148  			case 2:
  4149  				return &v.unknownFields
  4150  			default:
  4151  				return nil
  4152  			}
  4153  		}
  4154  		file_grpc_channelz_v1_channelz_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
  4155  			switch v := v.(*Address_OtherAddress); i {
  4156  			case 0:
  4157  				return &v.state
  4158  			case 1:
  4159  				return &v.sizeCache
  4160  			case 2:
  4161  				return &v.unknownFields
  4162  			default:
  4163  				return nil
  4164  			}
  4165  		}
  4166  		file_grpc_channelz_v1_channelz_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
  4167  			switch v := v.(*Security_Tls); i {
  4168  			case 0:
  4169  				return &v.state
  4170  			case 1:
  4171  				return &v.sizeCache
  4172  			case 2:
  4173  				return &v.unknownFields
  4174  			default:
  4175  				return nil
  4176  			}
  4177  		}
  4178  		file_grpc_channelz_v1_channelz_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
  4179  			switch v := v.(*Security_OtherSecurity); i {
  4180  			case 0:
  4181  				return &v.state
  4182  			case 1:
  4183  				return &v.sizeCache
  4184  			case 2:
  4185  				return &v.unknownFields
  4186  			default:
  4187  				return nil
  4188  			}
  4189  		}
  4190  	}
  4191  	file_grpc_channelz_v1_channelz_proto_msgTypes[4].OneofWrappers = []interface{}{
  4192  		(*ChannelTraceEvent_ChannelRef)(nil),
  4193  		(*ChannelTraceEvent_SubchannelRef)(nil),
  4194  	}
  4195  	file_grpc_channelz_v1_channelz_proto_msgTypes[14].OneofWrappers = []interface{}{
  4196  		(*Address_TcpipAddress)(nil),
  4197  		(*Address_UdsAddress_)(nil),
  4198  		(*Address_OtherAddress_)(nil),
  4199  	}
  4200  	file_grpc_channelz_v1_channelz_proto_msgTypes[15].OneofWrappers = []interface{}{
  4201  		(*Security_Tls_)(nil),
  4202  		(*Security_Other)(nil),
  4203  	}
  4204  	file_grpc_channelz_v1_channelz_proto_msgTypes[37].OneofWrappers = []interface{}{
  4205  		(*Security_Tls_StandardName)(nil),
  4206  		(*Security_Tls_OtherName)(nil),
  4207  	}
  4208  	type x struct{}
  4209  	out := protoimpl.TypeBuilder{
  4210  		File: protoimpl.DescBuilder{
  4211  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  4212  			RawDescriptor: file_grpc_channelz_v1_channelz_proto_rawDesc,
  4213  			NumEnums:      2,
  4214  			NumMessages:   39,
  4215  			NumExtensions: 0,
  4216  			NumServices:   1,
  4217  		},
  4218  		GoTypes:           file_grpc_channelz_v1_channelz_proto_goTypes,
  4219  		DependencyIndexes: file_grpc_channelz_v1_channelz_proto_depIdxs,
  4220  		EnumInfos:         file_grpc_channelz_v1_channelz_proto_enumTypes,
  4221  		MessageInfos:      file_grpc_channelz_v1_channelz_proto_msgTypes,
  4222  	}.Build()
  4223  	File_grpc_channelz_v1_channelz_proto = out.File
  4224  	file_grpc_channelz_v1_channelz_proto_rawDesc = nil
  4225  	file_grpc_channelz_v1_channelz_proto_goTypes = nil
  4226  	file_grpc_channelz_v1_channelz_proto_depIdxs = nil
  4227  }