...

Source file src/github.com/linkerd/linkerd2-proxy-api/go/destination/destination.pb.go

Documentation: github.com/linkerd/linkerd2-proxy-api/go/destination

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // versions:
     3  // 	protoc-gen-go v1.33.0
     4  // 	protoc        v3.20.3
     5  // source: destination.proto
     6  
     7  package destination
     8  
     9  import (
    10  	duration "github.com/golang/protobuf/ptypes/duration"
    11  	http_types "github.com/linkerd/linkerd2-proxy-api/go/http_types"
    12  	net "github.com/linkerd/linkerd2-proxy-api/go/net"
    13  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    14  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    15  	reflect "reflect"
    16  	sync "sync"
    17  )
    18  
    19  const (
    20  	// Verify that this generated code is sufficiently up-to-date.
    21  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    22  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    23  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    24  )
    25  
    26  type GetDestination struct {
    27  	state         protoimpl.MessageState
    28  	sizeCache     protoimpl.SizeCache
    29  	unknownFields protoimpl.UnknownFields
    30  
    31  	Scheme string `protobuf:"bytes,1,opt,name=scheme,proto3" json:"scheme,omitempty"`
    32  	Path   string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
    33  	// An opaque value that is set at injection-time and sent with destintion
    34  	// lookups.
    35  	//
    36  	// If, for instance, the token encodes a namespace or some locality
    37  	// information, the service may alter its results to take this locality into
    38  	// account.
    39  	ContextToken string `protobuf:"bytes,3,opt,name=context_token,json=contextToken,proto3" json:"context_token,omitempty"`
    40  }
    41  
    42  func (x *GetDestination) Reset() {
    43  	*x = GetDestination{}
    44  	if protoimpl.UnsafeEnabled {
    45  		mi := &file_destination_proto_msgTypes[0]
    46  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    47  		ms.StoreMessageInfo(mi)
    48  	}
    49  }
    50  
    51  func (x *GetDestination) String() string {
    52  	return protoimpl.X.MessageStringOf(x)
    53  }
    54  
    55  func (*GetDestination) ProtoMessage() {}
    56  
    57  func (x *GetDestination) ProtoReflect() protoreflect.Message {
    58  	mi := &file_destination_proto_msgTypes[0]
    59  	if protoimpl.UnsafeEnabled && x != nil {
    60  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    61  		if ms.LoadMessageInfo() == nil {
    62  			ms.StoreMessageInfo(mi)
    63  		}
    64  		return ms
    65  	}
    66  	return mi.MessageOf(x)
    67  }
    68  
    69  // Deprecated: Use GetDestination.ProtoReflect.Descriptor instead.
    70  func (*GetDestination) Descriptor() ([]byte, []int) {
    71  	return file_destination_proto_rawDescGZIP(), []int{0}
    72  }
    73  
    74  func (x *GetDestination) GetScheme() string {
    75  	if x != nil {
    76  		return x.Scheme
    77  	}
    78  	return ""
    79  }
    80  
    81  func (x *GetDestination) GetPath() string {
    82  	if x != nil {
    83  		return x.Path
    84  	}
    85  	return ""
    86  }
    87  
    88  func (x *GetDestination) GetContextToken() string {
    89  	if x != nil {
    90  		return x.ContextToken
    91  	}
    92  	return ""
    93  }
    94  
    95  type Update struct {
    96  	state         protoimpl.MessageState
    97  	sizeCache     protoimpl.SizeCache
    98  	unknownFields protoimpl.UnknownFields
    99  
   100  	// Types that are assignable to Update:
   101  	//
   102  	//	*Update_Add
   103  	//	*Update_Remove
   104  	//	*Update_NoEndpoints
   105  	Update isUpdate_Update `protobuf_oneof:"update"`
   106  }
   107  
   108  func (x *Update) Reset() {
   109  	*x = Update{}
   110  	if protoimpl.UnsafeEnabled {
   111  		mi := &file_destination_proto_msgTypes[1]
   112  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   113  		ms.StoreMessageInfo(mi)
   114  	}
   115  }
   116  
   117  func (x *Update) String() string {
   118  	return protoimpl.X.MessageStringOf(x)
   119  }
   120  
   121  func (*Update) ProtoMessage() {}
   122  
   123  func (x *Update) ProtoReflect() protoreflect.Message {
   124  	mi := &file_destination_proto_msgTypes[1]
   125  	if protoimpl.UnsafeEnabled && x != nil {
   126  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   127  		if ms.LoadMessageInfo() == nil {
   128  			ms.StoreMessageInfo(mi)
   129  		}
   130  		return ms
   131  	}
   132  	return mi.MessageOf(x)
   133  }
   134  
   135  // Deprecated: Use Update.ProtoReflect.Descriptor instead.
   136  func (*Update) Descriptor() ([]byte, []int) {
   137  	return file_destination_proto_rawDescGZIP(), []int{1}
   138  }
   139  
   140  func (m *Update) GetUpdate() isUpdate_Update {
   141  	if m != nil {
   142  		return m.Update
   143  	}
   144  	return nil
   145  }
   146  
   147  func (x *Update) GetAdd() *WeightedAddrSet {
   148  	if x, ok := x.GetUpdate().(*Update_Add); ok {
   149  		return x.Add
   150  	}
   151  	return nil
   152  }
   153  
   154  func (x *Update) GetRemove() *AddrSet {
   155  	if x, ok := x.GetUpdate().(*Update_Remove); ok {
   156  		return x.Remove
   157  	}
   158  	return nil
   159  }
   160  
   161  func (x *Update) GetNoEndpoints() *NoEndpoints {
   162  	if x, ok := x.GetUpdate().(*Update_NoEndpoints); ok {
   163  		return x.NoEndpoints
   164  	}
   165  	return nil
   166  }
   167  
   168  type isUpdate_Update interface {
   169  	isUpdate_Update()
   170  }
   171  
   172  type Update_Add struct {
   173  	// A new set of endpoints are available for the service. The set might be
   174  	// empty.
   175  	Add *WeightedAddrSet `protobuf:"bytes,1,opt,name=add,proto3,oneof"`
   176  }
   177  
   178  type Update_Remove struct {
   179  	// Some endpoints have been removed from the service.
   180  	Remove *AddrSet `protobuf:"bytes,2,opt,name=remove,proto3,oneof"`
   181  }
   182  
   183  type Update_NoEndpoints struct {
   184  	// `no_endpoints{exists: false}` indicates that the service does not exist
   185  	// and the client MAY try an alternate service discovery method (e.g. DNS).
   186  	//
   187  	// `no_endpoints(exists: true)` indicates that the service does exist and
   188  	// the client MUST NOT fall back to an alternate service discovery method.
   189  	NoEndpoints *NoEndpoints `protobuf:"bytes,3,opt,name=no_endpoints,json=noEndpoints,proto3,oneof"`
   190  }
   191  
   192  func (*Update_Add) isUpdate_Update() {}
   193  
   194  func (*Update_Remove) isUpdate_Update() {}
   195  
   196  func (*Update_NoEndpoints) isUpdate_Update() {}
   197  
   198  type AddrSet struct {
   199  	state         protoimpl.MessageState
   200  	sizeCache     protoimpl.SizeCache
   201  	unknownFields protoimpl.UnknownFields
   202  
   203  	Addrs []*net.TcpAddress `protobuf:"bytes,1,rep,name=addrs,proto3" json:"addrs,omitempty"`
   204  }
   205  
   206  func (x *AddrSet) Reset() {
   207  	*x = AddrSet{}
   208  	if protoimpl.UnsafeEnabled {
   209  		mi := &file_destination_proto_msgTypes[2]
   210  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   211  		ms.StoreMessageInfo(mi)
   212  	}
   213  }
   214  
   215  func (x *AddrSet) String() string {
   216  	return protoimpl.X.MessageStringOf(x)
   217  }
   218  
   219  func (*AddrSet) ProtoMessage() {}
   220  
   221  func (x *AddrSet) ProtoReflect() protoreflect.Message {
   222  	mi := &file_destination_proto_msgTypes[2]
   223  	if protoimpl.UnsafeEnabled && x != nil {
   224  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   225  		if ms.LoadMessageInfo() == nil {
   226  			ms.StoreMessageInfo(mi)
   227  		}
   228  		return ms
   229  	}
   230  	return mi.MessageOf(x)
   231  }
   232  
   233  // Deprecated: Use AddrSet.ProtoReflect.Descriptor instead.
   234  func (*AddrSet) Descriptor() ([]byte, []int) {
   235  	return file_destination_proto_rawDescGZIP(), []int{2}
   236  }
   237  
   238  func (x *AddrSet) GetAddrs() []*net.TcpAddress {
   239  	if x != nil {
   240  		return x.Addrs
   241  	}
   242  	return nil
   243  }
   244  
   245  type WeightedAddrSet struct {
   246  	state         protoimpl.MessageState
   247  	sizeCache     protoimpl.SizeCache
   248  	unknownFields protoimpl.UnknownFields
   249  
   250  	Addrs        []*WeightedAddr   `protobuf:"bytes,1,rep,name=addrs,proto3" json:"addrs,omitempty"`
   251  	MetricLabels map[string]string `protobuf:"bytes,2,rep,name=metric_labels,json=metricLabels,proto3" json:"metric_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   252  }
   253  
   254  func (x *WeightedAddrSet) Reset() {
   255  	*x = WeightedAddrSet{}
   256  	if protoimpl.UnsafeEnabled {
   257  		mi := &file_destination_proto_msgTypes[3]
   258  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   259  		ms.StoreMessageInfo(mi)
   260  	}
   261  }
   262  
   263  func (x *WeightedAddrSet) String() string {
   264  	return protoimpl.X.MessageStringOf(x)
   265  }
   266  
   267  func (*WeightedAddrSet) ProtoMessage() {}
   268  
   269  func (x *WeightedAddrSet) ProtoReflect() protoreflect.Message {
   270  	mi := &file_destination_proto_msgTypes[3]
   271  	if protoimpl.UnsafeEnabled && x != nil {
   272  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   273  		if ms.LoadMessageInfo() == nil {
   274  			ms.StoreMessageInfo(mi)
   275  		}
   276  		return ms
   277  	}
   278  	return mi.MessageOf(x)
   279  }
   280  
   281  // Deprecated: Use WeightedAddrSet.ProtoReflect.Descriptor instead.
   282  func (*WeightedAddrSet) Descriptor() ([]byte, []int) {
   283  	return file_destination_proto_rawDescGZIP(), []int{3}
   284  }
   285  
   286  func (x *WeightedAddrSet) GetAddrs() []*WeightedAddr {
   287  	if x != nil {
   288  		return x.Addrs
   289  	}
   290  	return nil
   291  }
   292  
   293  func (x *WeightedAddrSet) GetMetricLabels() map[string]string {
   294  	if x != nil {
   295  		return x.MetricLabels
   296  	}
   297  	return nil
   298  }
   299  
   300  type WeightedAddr struct {
   301  	state         protoimpl.MessageState
   302  	sizeCache     protoimpl.SizeCache
   303  	unknownFields protoimpl.UnknownFields
   304  
   305  	Addr              *net.TcpAddress    `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
   306  	Weight            uint32             `protobuf:"varint,3,opt,name=weight,proto3" json:"weight,omitempty"`
   307  	MetricLabels      map[string]string  `protobuf:"bytes,4,rep,name=metric_labels,json=metricLabels,proto3" json:"metric_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   308  	TlsIdentity       *TlsIdentity       `protobuf:"bytes,5,opt,name=tls_identity,json=tlsIdentity,proto3" json:"tls_identity,omitempty"`
   309  	ProtocolHint      *ProtocolHint      `protobuf:"bytes,6,opt,name=protocol_hint,json=protocolHint,proto3" json:"protocol_hint,omitempty"`
   310  	AuthorityOverride *AuthorityOverride `protobuf:"bytes,7,opt,name=authority_override,json=authorityOverride,proto3" json:"authority_override,omitempty"`
   311  	// The HTTP/2 parameters to use when connecting to the destination, if HTTP/2
   312  	// is used. These parameters are used by proxies when the application traffic
   313  	// is HTTP/2 or when the H2 ProtocolHint is used to transport HTTP/1
   314  	// connections over HTTP/2.
   315  	Http2 *Http2ClientParams `protobuf:"bytes,8,opt,name=http2,proto3" json:"http2,omitempty"`
   316  }
   317  
   318  func (x *WeightedAddr) Reset() {
   319  	*x = WeightedAddr{}
   320  	if protoimpl.UnsafeEnabled {
   321  		mi := &file_destination_proto_msgTypes[4]
   322  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   323  		ms.StoreMessageInfo(mi)
   324  	}
   325  }
   326  
   327  func (x *WeightedAddr) String() string {
   328  	return protoimpl.X.MessageStringOf(x)
   329  }
   330  
   331  func (*WeightedAddr) ProtoMessage() {}
   332  
   333  func (x *WeightedAddr) ProtoReflect() protoreflect.Message {
   334  	mi := &file_destination_proto_msgTypes[4]
   335  	if protoimpl.UnsafeEnabled && x != nil {
   336  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   337  		if ms.LoadMessageInfo() == nil {
   338  			ms.StoreMessageInfo(mi)
   339  		}
   340  		return ms
   341  	}
   342  	return mi.MessageOf(x)
   343  }
   344  
   345  // Deprecated: Use WeightedAddr.ProtoReflect.Descriptor instead.
   346  func (*WeightedAddr) Descriptor() ([]byte, []int) {
   347  	return file_destination_proto_rawDescGZIP(), []int{4}
   348  }
   349  
   350  func (x *WeightedAddr) GetAddr() *net.TcpAddress {
   351  	if x != nil {
   352  		return x.Addr
   353  	}
   354  	return nil
   355  }
   356  
   357  func (x *WeightedAddr) GetWeight() uint32 {
   358  	if x != nil {
   359  		return x.Weight
   360  	}
   361  	return 0
   362  }
   363  
   364  func (x *WeightedAddr) GetMetricLabels() map[string]string {
   365  	if x != nil {
   366  		return x.MetricLabels
   367  	}
   368  	return nil
   369  }
   370  
   371  func (x *WeightedAddr) GetTlsIdentity() *TlsIdentity {
   372  	if x != nil {
   373  		return x.TlsIdentity
   374  	}
   375  	return nil
   376  }
   377  
   378  func (x *WeightedAddr) GetProtocolHint() *ProtocolHint {
   379  	if x != nil {
   380  		return x.ProtocolHint
   381  	}
   382  	return nil
   383  }
   384  
   385  func (x *WeightedAddr) GetAuthorityOverride() *AuthorityOverride {
   386  	if x != nil {
   387  		return x.AuthorityOverride
   388  	}
   389  	return nil
   390  }
   391  
   392  func (x *WeightedAddr) GetHttp2() *Http2ClientParams {
   393  	if x != nil {
   394  		return x.Http2
   395  	}
   396  	return nil
   397  }
   398  
   399  type TlsIdentity struct {
   400  	state         protoimpl.MessageState
   401  	sizeCache     protoimpl.SizeCache
   402  	unknownFields protoimpl.UnknownFields
   403  
   404  	// Types that are assignable to Strategy:
   405  	//
   406  	//	*TlsIdentity_DnsLikeIdentity_
   407  	//	*TlsIdentity_UriLikeIdentity_
   408  	Strategy isTlsIdentity_Strategy `protobuf_oneof:"strategy"`
   409  	// The server name of the endpoint. This is the value that needs to be included
   410  	// by clients in the ClientHello SNI extension of the TLS handshake when they
   411  	// initiate TLS connections to servers.
   412  	ServerName *TlsIdentity_DnsLikeIdentity `protobuf:"bytes,4,opt,name=server_name,json=serverName,proto3" json:"server_name,omitempty"`
   413  }
   414  
   415  func (x *TlsIdentity) Reset() {
   416  	*x = TlsIdentity{}
   417  	if protoimpl.UnsafeEnabled {
   418  		mi := &file_destination_proto_msgTypes[5]
   419  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   420  		ms.StoreMessageInfo(mi)
   421  	}
   422  }
   423  
   424  func (x *TlsIdentity) String() string {
   425  	return protoimpl.X.MessageStringOf(x)
   426  }
   427  
   428  func (*TlsIdentity) ProtoMessage() {}
   429  
   430  func (x *TlsIdentity) ProtoReflect() protoreflect.Message {
   431  	mi := &file_destination_proto_msgTypes[5]
   432  	if protoimpl.UnsafeEnabled && x != nil {
   433  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   434  		if ms.LoadMessageInfo() == nil {
   435  			ms.StoreMessageInfo(mi)
   436  		}
   437  		return ms
   438  	}
   439  	return mi.MessageOf(x)
   440  }
   441  
   442  // Deprecated: Use TlsIdentity.ProtoReflect.Descriptor instead.
   443  func (*TlsIdentity) Descriptor() ([]byte, []int) {
   444  	return file_destination_proto_rawDescGZIP(), []int{5}
   445  }
   446  
   447  func (m *TlsIdentity) GetStrategy() isTlsIdentity_Strategy {
   448  	if m != nil {
   449  		return m.Strategy
   450  	}
   451  	return nil
   452  }
   453  
   454  func (x *TlsIdentity) GetDnsLikeIdentity() *TlsIdentity_DnsLikeIdentity {
   455  	if x, ok := x.GetStrategy().(*TlsIdentity_DnsLikeIdentity_); ok {
   456  		return x.DnsLikeIdentity
   457  	}
   458  	return nil
   459  }
   460  
   461  func (x *TlsIdentity) GetUriLikeIdentity() *TlsIdentity_UriLikeIdentity {
   462  	if x, ok := x.GetStrategy().(*TlsIdentity_UriLikeIdentity_); ok {
   463  		return x.UriLikeIdentity
   464  	}
   465  	return nil
   466  }
   467  
   468  func (x *TlsIdentity) GetServerName() *TlsIdentity_DnsLikeIdentity {
   469  	if x != nil {
   470  		return x.ServerName
   471  	}
   472  	return nil
   473  }
   474  
   475  type isTlsIdentity_Strategy interface {
   476  	isTlsIdentity_Strategy()
   477  }
   478  
   479  type TlsIdentity_DnsLikeIdentity_ struct {
   480  	DnsLikeIdentity *TlsIdentity_DnsLikeIdentity `protobuf:"bytes,1,opt,name=dns_like_identity,json=dnsLikeIdentity,proto3,oneof"`
   481  }
   482  
   483  type TlsIdentity_UriLikeIdentity_ struct {
   484  	UriLikeIdentity *TlsIdentity_UriLikeIdentity `protobuf:"bytes,3,opt,name=uri_like_identity,json=uriLikeIdentity,proto3,oneof"`
   485  }
   486  
   487  func (*TlsIdentity_DnsLikeIdentity_) isTlsIdentity_Strategy() {}
   488  
   489  func (*TlsIdentity_UriLikeIdentity_) isTlsIdentity_Strategy() {}
   490  
   491  type AuthorityOverride struct {
   492  	state         protoimpl.MessageState
   493  	sizeCache     protoimpl.SizeCache
   494  	unknownFields protoimpl.UnknownFields
   495  
   496  	AuthorityOverride string `protobuf:"bytes,1,opt,name=authority_override,json=authorityOverride,proto3" json:"authority_override,omitempty"`
   497  }
   498  
   499  func (x *AuthorityOverride) Reset() {
   500  	*x = AuthorityOverride{}
   501  	if protoimpl.UnsafeEnabled {
   502  		mi := &file_destination_proto_msgTypes[6]
   503  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   504  		ms.StoreMessageInfo(mi)
   505  	}
   506  }
   507  
   508  func (x *AuthorityOverride) String() string {
   509  	return protoimpl.X.MessageStringOf(x)
   510  }
   511  
   512  func (*AuthorityOverride) ProtoMessage() {}
   513  
   514  func (x *AuthorityOverride) ProtoReflect() protoreflect.Message {
   515  	mi := &file_destination_proto_msgTypes[6]
   516  	if protoimpl.UnsafeEnabled && x != nil {
   517  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   518  		if ms.LoadMessageInfo() == nil {
   519  			ms.StoreMessageInfo(mi)
   520  		}
   521  		return ms
   522  	}
   523  	return mi.MessageOf(x)
   524  }
   525  
   526  // Deprecated: Use AuthorityOverride.ProtoReflect.Descriptor instead.
   527  func (*AuthorityOverride) Descriptor() ([]byte, []int) {
   528  	return file_destination_proto_rawDescGZIP(), []int{6}
   529  }
   530  
   531  func (x *AuthorityOverride) GetAuthorityOverride() string {
   532  	if x != nil {
   533  		return x.AuthorityOverride
   534  	}
   535  	return ""
   536  }
   537  
   538  type NoEndpoints struct {
   539  	state         protoimpl.MessageState
   540  	sizeCache     protoimpl.SizeCache
   541  	unknownFields protoimpl.UnknownFields
   542  
   543  	Exists bool `protobuf:"varint,1,opt,name=exists,proto3" json:"exists,omitempty"`
   544  }
   545  
   546  func (x *NoEndpoints) Reset() {
   547  	*x = NoEndpoints{}
   548  	if protoimpl.UnsafeEnabled {
   549  		mi := &file_destination_proto_msgTypes[7]
   550  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   551  		ms.StoreMessageInfo(mi)
   552  	}
   553  }
   554  
   555  func (x *NoEndpoints) String() string {
   556  	return protoimpl.X.MessageStringOf(x)
   557  }
   558  
   559  func (*NoEndpoints) ProtoMessage() {}
   560  
   561  func (x *NoEndpoints) ProtoReflect() protoreflect.Message {
   562  	mi := &file_destination_proto_msgTypes[7]
   563  	if protoimpl.UnsafeEnabled && x != nil {
   564  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   565  		if ms.LoadMessageInfo() == nil {
   566  			ms.StoreMessageInfo(mi)
   567  		}
   568  		return ms
   569  	}
   570  	return mi.MessageOf(x)
   571  }
   572  
   573  // Deprecated: Use NoEndpoints.ProtoReflect.Descriptor instead.
   574  func (*NoEndpoints) Descriptor() ([]byte, []int) {
   575  	return file_destination_proto_rawDescGZIP(), []int{7}
   576  }
   577  
   578  func (x *NoEndpoints) GetExists() bool {
   579  	if x != nil {
   580  		return x.Exists
   581  	}
   582  	return false
   583  }
   584  
   585  // A hint of what protocol the service knows. The default value is
   586  // for the `hint` field to be not be set, essentially meaning "unknown".
   587  type ProtocolHint struct {
   588  	state         protoimpl.MessageState
   589  	sizeCache     protoimpl.SizeCache
   590  	unknownFields protoimpl.UnknownFields
   591  
   592  	// Types that are assignable to Protocol:
   593  	//
   594  	//	*ProtocolHint_H2_
   595  	//	*ProtocolHint_Opaque_
   596  	Protocol isProtocolHint_Protocol `protobuf_oneof:"protocol"`
   597  	// When set, indicates that the target supports receiving opaque traffic
   598  	// wrapped with the Linkerd connection header on the specified port.
   599  	OpaqueTransport *ProtocolHint_OpaqueTransport `protobuf:"bytes,2,opt,name=opaque_transport,json=opaqueTransport,proto3" json:"opaque_transport,omitempty"`
   600  }
   601  
   602  func (x *ProtocolHint) Reset() {
   603  	*x = ProtocolHint{}
   604  	if protoimpl.UnsafeEnabled {
   605  		mi := &file_destination_proto_msgTypes[8]
   606  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   607  		ms.StoreMessageInfo(mi)
   608  	}
   609  }
   610  
   611  func (x *ProtocolHint) String() string {
   612  	return protoimpl.X.MessageStringOf(x)
   613  }
   614  
   615  func (*ProtocolHint) ProtoMessage() {}
   616  
   617  func (x *ProtocolHint) ProtoReflect() protoreflect.Message {
   618  	mi := &file_destination_proto_msgTypes[8]
   619  	if protoimpl.UnsafeEnabled && x != nil {
   620  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   621  		if ms.LoadMessageInfo() == nil {
   622  			ms.StoreMessageInfo(mi)
   623  		}
   624  		return ms
   625  	}
   626  	return mi.MessageOf(x)
   627  }
   628  
   629  // Deprecated: Use ProtocolHint.ProtoReflect.Descriptor instead.
   630  func (*ProtocolHint) Descriptor() ([]byte, []int) {
   631  	return file_destination_proto_rawDescGZIP(), []int{8}
   632  }
   633  
   634  func (m *ProtocolHint) GetProtocol() isProtocolHint_Protocol {
   635  	if m != nil {
   636  		return m.Protocol
   637  	}
   638  	return nil
   639  }
   640  
   641  func (x *ProtocolHint) GetH2() *ProtocolHint_H2 {
   642  	if x, ok := x.GetProtocol().(*ProtocolHint_H2_); ok {
   643  		return x.H2
   644  	}
   645  	return nil
   646  }
   647  
   648  func (x *ProtocolHint) GetOpaque() *ProtocolHint_Opaque {
   649  	if x, ok := x.GetProtocol().(*ProtocolHint_Opaque_); ok {
   650  		return x.Opaque
   651  	}
   652  	return nil
   653  }
   654  
   655  func (x *ProtocolHint) GetOpaqueTransport() *ProtocolHint_OpaqueTransport {
   656  	if x != nil {
   657  		return x.OpaqueTransport
   658  	}
   659  	return nil
   660  }
   661  
   662  type isProtocolHint_Protocol interface {
   663  	isProtocolHint_Protocol()
   664  }
   665  
   666  type ProtocolHint_H2_ struct {
   667  	// Hints that the service understands HTTP2 and the proxy's internal
   668  	// http2-upgrade mechanism.
   669  	H2 *ProtocolHint_H2 `protobuf:"bytes,1,opt,name=h2,proto3,oneof"`
   670  }
   671  
   672  type ProtocolHint_Opaque_ struct {
   673  	// Hints that the destination will handle this connection as an opaque TCP
   674  	// stream, and (if `opaque_transport` is set) that the proxy should not send
   675  	// a `SessionProtocol` as part of its transport header.
   676  	Opaque *ProtocolHint_Opaque `protobuf:"bytes,3,opt,name=opaque,proto3,oneof"`
   677  }
   678  
   679  func (*ProtocolHint_H2_) isProtocolHint_Protocol() {}
   680  
   681  func (*ProtocolHint_Opaque_) isProtocolHint_Protocol() {}
   682  
   683  // Configures the parameters used to initialize an HTTP/2 connection.
   684  type Http2ClientParams struct {
   685  	state         protoimpl.MessageState
   686  	sizeCache     protoimpl.SizeCache
   687  	unknownFields protoimpl.UnknownFields
   688  
   689  	// Overrides the default client flow control settings.
   690  	FlowControl *Http2ClientParams_FlowControl `protobuf:"bytes,1,opt,name=flow_control,json=flowControl,proto3" json:"flow_control,omitempty"`
   691  	// Enables keep-alive timeouts.
   692  	KeepAlive *Http2ClientParams_KeepAlive `protobuf:"bytes,2,opt,name=keep_alive,json=keepAlive,proto3" json:"keep_alive,omitempty"`
   693  	// Configures Hyper internals.
   694  	Internals *Http2ClientParams_Internals `protobuf:"bytes,3,opt,name=internals,proto3" json:"internals,omitempty"`
   695  }
   696  
   697  func (x *Http2ClientParams) Reset() {
   698  	*x = Http2ClientParams{}
   699  	if protoimpl.UnsafeEnabled {
   700  		mi := &file_destination_proto_msgTypes[9]
   701  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   702  		ms.StoreMessageInfo(mi)
   703  	}
   704  }
   705  
   706  func (x *Http2ClientParams) String() string {
   707  	return protoimpl.X.MessageStringOf(x)
   708  }
   709  
   710  func (*Http2ClientParams) ProtoMessage() {}
   711  
   712  func (x *Http2ClientParams) ProtoReflect() protoreflect.Message {
   713  	mi := &file_destination_proto_msgTypes[9]
   714  	if protoimpl.UnsafeEnabled && x != nil {
   715  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   716  		if ms.LoadMessageInfo() == nil {
   717  			ms.StoreMessageInfo(mi)
   718  		}
   719  		return ms
   720  	}
   721  	return mi.MessageOf(x)
   722  }
   723  
   724  // Deprecated: Use Http2ClientParams.ProtoReflect.Descriptor instead.
   725  func (*Http2ClientParams) Descriptor() ([]byte, []int) {
   726  	return file_destination_proto_rawDescGZIP(), []int{9}
   727  }
   728  
   729  func (x *Http2ClientParams) GetFlowControl() *Http2ClientParams_FlowControl {
   730  	if x != nil {
   731  		return x.FlowControl
   732  	}
   733  	return nil
   734  }
   735  
   736  func (x *Http2ClientParams) GetKeepAlive() *Http2ClientParams_KeepAlive {
   737  	if x != nil {
   738  		return x.KeepAlive
   739  	}
   740  	return nil
   741  }
   742  
   743  func (x *Http2ClientParams) GetInternals() *Http2ClientParams_Internals {
   744  	if x != nil {
   745  		return x.Internals
   746  	}
   747  	return nil
   748  }
   749  
   750  type DestinationProfile struct {
   751  	state         protoimpl.MessageState
   752  	sizeCache     protoimpl.SizeCache
   753  	unknownFields protoimpl.UnknownFields
   754  
   755  	// The fully-qualified service name, if one exists.
   756  	//
   757  	// When resolving (especially by IP), this field provides the fully-qualified
   758  	// name of the resolved service, if one exists. This field does NOT include
   759  	// any port information. E.g. a lookup for 10.2.3.4:8080 might have a name
   760  	// like `foo.bar.svc.cluster.local`.
   761  	//
   762  	// Implementations MAY provide names for non-service IP-lookups (e.g., pod or
   763  	// node dns names), but this is not required.
   764  	//
   765  	// If the lookup does not refer to a known named entity, this field MUST be
   766  	// left empty.
   767  	FullyQualifiedName string `protobuf:"bytes,5,opt,name=fully_qualified_name,json=fullyQualifiedName,proto3" json:"fully_qualified_name,omitempty"`
   768  	// Indicates that connections on this service address should be handled as
   769  	// opaque TCP streams. HTTP routes returned on for such services will be
   770  	// ignored.
   771  	OpaqueProtocol bool `protobuf:"varint,4,opt,name=opaque_protocol,json=opaqueProtocol,proto3" json:"opaque_protocol,omitempty"`
   772  	// A list of routes, each with a RequestMatch.  If a request matches
   773  	// more than one route, the first match wins.
   774  	Routes []*Route `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"`
   775  	// The retry budget controls how much additional load the proxy can generate
   776  	// as retries. Failured requests on retryable routes will not be retried if
   777  	// there is no available budget.
   778  	RetryBudget *RetryBudget `protobuf:"bytes,2,opt,name=retry_budget,json=retryBudget,proto3" json:"retry_budget,omitempty"`
   779  	// If this list is non-empty, requests to this destination should instead be
   780  	// split between the destinations in this list.  Each destination should
   781  	// receive a portion of the requests proportional to its weight.  If this
   782  	// list is empty, requests should be sent to this destination as normal.
   783  	DstOverrides []*WeightedDst `protobuf:"bytes,3,rep,name=dst_overrides,json=dstOverrides,proto3" json:"dst_overrides,omitempty"`
   784  	// If this field is set, it indicates that the target is a known endpoint (and
   785  	// not a service address). The values of `fully_qualified_name` and
   786  	// `dst_overrides` will be ignored for the purposes of service discovery--
   787  	// traffic split and load balancing will be skipped and the single endpoint
   788  	// are used.
   789  	//
   790  	// No endpoint should be set If the target is unknown.
   791  	Endpoint *WeightedAddr `protobuf:"bytes,6,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
   792  }
   793  
   794  func (x *DestinationProfile) Reset() {
   795  	*x = DestinationProfile{}
   796  	if protoimpl.UnsafeEnabled {
   797  		mi := &file_destination_proto_msgTypes[10]
   798  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   799  		ms.StoreMessageInfo(mi)
   800  	}
   801  }
   802  
   803  func (x *DestinationProfile) String() string {
   804  	return protoimpl.X.MessageStringOf(x)
   805  }
   806  
   807  func (*DestinationProfile) ProtoMessage() {}
   808  
   809  func (x *DestinationProfile) ProtoReflect() protoreflect.Message {
   810  	mi := &file_destination_proto_msgTypes[10]
   811  	if protoimpl.UnsafeEnabled && x != nil {
   812  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   813  		if ms.LoadMessageInfo() == nil {
   814  			ms.StoreMessageInfo(mi)
   815  		}
   816  		return ms
   817  	}
   818  	return mi.MessageOf(x)
   819  }
   820  
   821  // Deprecated: Use DestinationProfile.ProtoReflect.Descriptor instead.
   822  func (*DestinationProfile) Descriptor() ([]byte, []int) {
   823  	return file_destination_proto_rawDescGZIP(), []int{10}
   824  }
   825  
   826  func (x *DestinationProfile) GetFullyQualifiedName() string {
   827  	if x != nil {
   828  		return x.FullyQualifiedName
   829  	}
   830  	return ""
   831  }
   832  
   833  func (x *DestinationProfile) GetOpaqueProtocol() bool {
   834  	if x != nil {
   835  		return x.OpaqueProtocol
   836  	}
   837  	return false
   838  }
   839  
   840  func (x *DestinationProfile) GetRoutes() []*Route {
   841  	if x != nil {
   842  		return x.Routes
   843  	}
   844  	return nil
   845  }
   846  
   847  func (x *DestinationProfile) GetRetryBudget() *RetryBudget {
   848  	if x != nil {
   849  		return x.RetryBudget
   850  	}
   851  	return nil
   852  }
   853  
   854  func (x *DestinationProfile) GetDstOverrides() []*WeightedDst {
   855  	if x != nil {
   856  		return x.DstOverrides
   857  	}
   858  	return nil
   859  }
   860  
   861  func (x *DestinationProfile) GetEndpoint() *WeightedAddr {
   862  	if x != nil {
   863  		return x.Endpoint
   864  	}
   865  	return nil
   866  }
   867  
   868  type Route struct {
   869  	state         protoimpl.MessageState
   870  	sizeCache     protoimpl.SizeCache
   871  	unknownFields protoimpl.UnknownFields
   872  
   873  	// This route contains requests which match this condition.
   874  	Condition *RequestMatch `protobuf:"bytes,1,opt,name=condition,proto3" json:"condition,omitempty"`
   875  	// A list of response classes for this route.  If a response matches
   876  	// more than one ResponseClass, the first match wins.  If a response does not
   877  	// match any ResponseClasses, it is considered to be a successful response.
   878  	ResponseClasses []*ResponseClass `protobuf:"bytes,2,rep,name=response_classes,json=responseClasses,proto3" json:"response_classes,omitempty"`
   879  	// Metric labels to attach to requests and responses that match this route.
   880  	MetricsLabels map[string]string `protobuf:"bytes,3,rep,name=metrics_labels,json=metricsLabels,proto3" json:"metrics_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   881  	// If a route is retryable, any failed requests on that route may be retried
   882  	// by the proxy.
   883  	IsRetryable bool `protobuf:"varint,4,opt,name=is_retryable,json=isRetryable,proto3" json:"is_retryable,omitempty"`
   884  	// After this time has elapsed since receiving the initial request, any
   885  	// outstanding request will be cancelled, a timeout error response will be
   886  	// returned, and no more retries will be attempted.
   887  	Timeout *duration.Duration `protobuf:"bytes,5,opt,name=timeout,proto3" json:"timeout,omitempty"`
   888  }
   889  
   890  func (x *Route) Reset() {
   891  	*x = Route{}
   892  	if protoimpl.UnsafeEnabled {
   893  		mi := &file_destination_proto_msgTypes[11]
   894  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   895  		ms.StoreMessageInfo(mi)
   896  	}
   897  }
   898  
   899  func (x *Route) String() string {
   900  	return protoimpl.X.MessageStringOf(x)
   901  }
   902  
   903  func (*Route) ProtoMessage() {}
   904  
   905  func (x *Route) ProtoReflect() protoreflect.Message {
   906  	mi := &file_destination_proto_msgTypes[11]
   907  	if protoimpl.UnsafeEnabled && x != nil {
   908  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   909  		if ms.LoadMessageInfo() == nil {
   910  			ms.StoreMessageInfo(mi)
   911  		}
   912  		return ms
   913  	}
   914  	return mi.MessageOf(x)
   915  }
   916  
   917  // Deprecated: Use Route.ProtoReflect.Descriptor instead.
   918  func (*Route) Descriptor() ([]byte, []int) {
   919  	return file_destination_proto_rawDescGZIP(), []int{11}
   920  }
   921  
   922  func (x *Route) GetCondition() *RequestMatch {
   923  	if x != nil {
   924  		return x.Condition
   925  	}
   926  	return nil
   927  }
   928  
   929  func (x *Route) GetResponseClasses() []*ResponseClass {
   930  	if x != nil {
   931  		return x.ResponseClasses
   932  	}
   933  	return nil
   934  }
   935  
   936  func (x *Route) GetMetricsLabels() map[string]string {
   937  	if x != nil {
   938  		return x.MetricsLabels
   939  	}
   940  	return nil
   941  }
   942  
   943  func (x *Route) GetIsRetryable() bool {
   944  	if x != nil {
   945  		return x.IsRetryable
   946  	}
   947  	return false
   948  }
   949  
   950  func (x *Route) GetTimeout() *duration.Duration {
   951  	if x != nil {
   952  		return x.Timeout
   953  	}
   954  	return nil
   955  }
   956  
   957  type RetryBudget struct {
   958  	state         protoimpl.MessageState
   959  	sizeCache     protoimpl.SizeCache
   960  	unknownFields protoimpl.UnknownFields
   961  
   962  	// The ratio of additional traffic that may be added by retries.  A
   963  	// retry_ratio of 0.1 means that 1 retry may be attempted for every 10 regular
   964  	// requests.  A retry_ratio of 1.0 means that 1 retry may be attempted for
   965  	// every 1 regular request (in other words, total request load may be doubled
   966  	// as a result of retries).
   967  	RetryRatio float32 `protobuf:"fixed32,1,opt,name=retry_ratio,json=retryRatio,proto3" json:"retry_ratio,omitempty"`
   968  	// The proxy may always attempt this number of retries per second, even if it
   969  	// would violate the retry_ratio.  This is to allow retries to happen even
   970  	// when the request rate is very low.
   971  	MinRetriesPerSecond uint32 `protobuf:"varint,2,opt,name=min_retries_per_second,json=minRetriesPerSecond,proto3" json:"min_retries_per_second,omitempty"`
   972  	// This duration indicates for how long requests should be considered for the
   973  	// purposes of enforcing the retry_ratio.  A higher value considers a larger
   974  	// window and therefore allows burstier retries.
   975  	Ttl *duration.Duration `protobuf:"bytes,3,opt,name=ttl,proto3" json:"ttl,omitempty"`
   976  }
   977  
   978  func (x *RetryBudget) Reset() {
   979  	*x = RetryBudget{}
   980  	if protoimpl.UnsafeEnabled {
   981  		mi := &file_destination_proto_msgTypes[12]
   982  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   983  		ms.StoreMessageInfo(mi)
   984  	}
   985  }
   986  
   987  func (x *RetryBudget) String() string {
   988  	return protoimpl.X.MessageStringOf(x)
   989  }
   990  
   991  func (*RetryBudget) ProtoMessage() {}
   992  
   993  func (x *RetryBudget) ProtoReflect() protoreflect.Message {
   994  	mi := &file_destination_proto_msgTypes[12]
   995  	if protoimpl.UnsafeEnabled && x != nil {
   996  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   997  		if ms.LoadMessageInfo() == nil {
   998  			ms.StoreMessageInfo(mi)
   999  		}
  1000  		return ms
  1001  	}
  1002  	return mi.MessageOf(x)
  1003  }
  1004  
  1005  // Deprecated: Use RetryBudget.ProtoReflect.Descriptor instead.
  1006  func (*RetryBudget) Descriptor() ([]byte, []int) {
  1007  	return file_destination_proto_rawDescGZIP(), []int{12}
  1008  }
  1009  
  1010  func (x *RetryBudget) GetRetryRatio() float32 {
  1011  	if x != nil {
  1012  		return x.RetryRatio
  1013  	}
  1014  	return 0
  1015  }
  1016  
  1017  func (x *RetryBudget) GetMinRetriesPerSecond() uint32 {
  1018  	if x != nil {
  1019  		return x.MinRetriesPerSecond
  1020  	}
  1021  	return 0
  1022  }
  1023  
  1024  func (x *RetryBudget) GetTtl() *duration.Duration {
  1025  	if x != nil {
  1026  		return x.Ttl
  1027  	}
  1028  	return nil
  1029  }
  1030  
  1031  type ResponseClass struct {
  1032  	state         protoimpl.MessageState
  1033  	sizeCache     protoimpl.SizeCache
  1034  	unknownFields protoimpl.UnknownFields
  1035  
  1036  	// This class contains responses which match this condition.
  1037  	Condition *ResponseMatch `protobuf:"bytes,1,opt,name=condition,proto3" json:"condition,omitempty"`
  1038  	// If responses in this class should be considered failures.  This defaults
  1039  	// to false (success).
  1040  	IsFailure bool `protobuf:"varint,2,opt,name=is_failure,json=isFailure,proto3" json:"is_failure,omitempty"`
  1041  }
  1042  
  1043  func (x *ResponseClass) Reset() {
  1044  	*x = ResponseClass{}
  1045  	if protoimpl.UnsafeEnabled {
  1046  		mi := &file_destination_proto_msgTypes[13]
  1047  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1048  		ms.StoreMessageInfo(mi)
  1049  	}
  1050  }
  1051  
  1052  func (x *ResponseClass) String() string {
  1053  	return protoimpl.X.MessageStringOf(x)
  1054  }
  1055  
  1056  func (*ResponseClass) ProtoMessage() {}
  1057  
  1058  func (x *ResponseClass) ProtoReflect() protoreflect.Message {
  1059  	mi := &file_destination_proto_msgTypes[13]
  1060  	if protoimpl.UnsafeEnabled && x != nil {
  1061  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1062  		if ms.LoadMessageInfo() == nil {
  1063  			ms.StoreMessageInfo(mi)
  1064  		}
  1065  		return ms
  1066  	}
  1067  	return mi.MessageOf(x)
  1068  }
  1069  
  1070  // Deprecated: Use ResponseClass.ProtoReflect.Descriptor instead.
  1071  func (*ResponseClass) Descriptor() ([]byte, []int) {
  1072  	return file_destination_proto_rawDescGZIP(), []int{13}
  1073  }
  1074  
  1075  func (x *ResponseClass) GetCondition() *ResponseMatch {
  1076  	if x != nil {
  1077  		return x.Condition
  1078  	}
  1079  	return nil
  1080  }
  1081  
  1082  func (x *ResponseClass) GetIsFailure() bool {
  1083  	if x != nil {
  1084  		return x.IsFailure
  1085  	}
  1086  	return false
  1087  }
  1088  
  1089  type RequestMatch struct {
  1090  	state         protoimpl.MessageState
  1091  	sizeCache     protoimpl.SizeCache
  1092  	unknownFields protoimpl.UnknownFields
  1093  
  1094  	// Types that are assignable to Match:
  1095  	//
  1096  	//	*RequestMatch_All
  1097  	//	*RequestMatch_Any
  1098  	//	*RequestMatch_Not
  1099  	//	*RequestMatch_Path
  1100  	//	*RequestMatch_Method
  1101  	Match isRequestMatch_Match `protobuf_oneof:"match"`
  1102  }
  1103  
  1104  func (x *RequestMatch) Reset() {
  1105  	*x = RequestMatch{}
  1106  	if protoimpl.UnsafeEnabled {
  1107  		mi := &file_destination_proto_msgTypes[14]
  1108  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1109  		ms.StoreMessageInfo(mi)
  1110  	}
  1111  }
  1112  
  1113  func (x *RequestMatch) String() string {
  1114  	return protoimpl.X.MessageStringOf(x)
  1115  }
  1116  
  1117  func (*RequestMatch) ProtoMessage() {}
  1118  
  1119  func (x *RequestMatch) ProtoReflect() protoreflect.Message {
  1120  	mi := &file_destination_proto_msgTypes[14]
  1121  	if protoimpl.UnsafeEnabled && x != nil {
  1122  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1123  		if ms.LoadMessageInfo() == nil {
  1124  			ms.StoreMessageInfo(mi)
  1125  		}
  1126  		return ms
  1127  	}
  1128  	return mi.MessageOf(x)
  1129  }
  1130  
  1131  // Deprecated: Use RequestMatch.ProtoReflect.Descriptor instead.
  1132  func (*RequestMatch) Descriptor() ([]byte, []int) {
  1133  	return file_destination_proto_rawDescGZIP(), []int{14}
  1134  }
  1135  
  1136  func (m *RequestMatch) GetMatch() isRequestMatch_Match {
  1137  	if m != nil {
  1138  		return m.Match
  1139  	}
  1140  	return nil
  1141  }
  1142  
  1143  func (x *RequestMatch) GetAll() *RequestMatch_Seq {
  1144  	if x, ok := x.GetMatch().(*RequestMatch_All); ok {
  1145  		return x.All
  1146  	}
  1147  	return nil
  1148  }
  1149  
  1150  func (x *RequestMatch) GetAny() *RequestMatch_Seq {
  1151  	if x, ok := x.GetMatch().(*RequestMatch_Any); ok {
  1152  		return x.Any
  1153  	}
  1154  	return nil
  1155  }
  1156  
  1157  func (x *RequestMatch) GetNot() *RequestMatch {
  1158  	if x, ok := x.GetMatch().(*RequestMatch_Not); ok {
  1159  		return x.Not
  1160  	}
  1161  	return nil
  1162  }
  1163  
  1164  func (x *RequestMatch) GetPath() *PathMatch {
  1165  	if x, ok := x.GetMatch().(*RequestMatch_Path); ok {
  1166  		return x.Path
  1167  	}
  1168  	return nil
  1169  }
  1170  
  1171  func (x *RequestMatch) GetMethod() *http_types.HttpMethod {
  1172  	if x, ok := x.GetMatch().(*RequestMatch_Method); ok {
  1173  		return x.Method
  1174  	}
  1175  	return nil
  1176  }
  1177  
  1178  type isRequestMatch_Match interface {
  1179  	isRequestMatch_Match()
  1180  }
  1181  
  1182  type RequestMatch_All struct {
  1183  	All *RequestMatch_Seq `protobuf:"bytes,1,opt,name=all,proto3,oneof"`
  1184  }
  1185  
  1186  type RequestMatch_Any struct {
  1187  	Any *RequestMatch_Seq `protobuf:"bytes,2,opt,name=any,proto3,oneof"`
  1188  }
  1189  
  1190  type RequestMatch_Not struct {
  1191  	Not *RequestMatch `protobuf:"bytes,3,opt,name=not,proto3,oneof"`
  1192  }
  1193  
  1194  type RequestMatch_Path struct {
  1195  	Path *PathMatch `protobuf:"bytes,4,opt,name=path,proto3,oneof"`
  1196  }
  1197  
  1198  type RequestMatch_Method struct {
  1199  	Method *http_types.HttpMethod `protobuf:"bytes,5,opt,name=method,proto3,oneof"` // TODO: match on arbitrary header
  1200  }
  1201  
  1202  func (*RequestMatch_All) isRequestMatch_Match() {}
  1203  
  1204  func (*RequestMatch_Any) isRequestMatch_Match() {}
  1205  
  1206  func (*RequestMatch_Not) isRequestMatch_Match() {}
  1207  
  1208  func (*RequestMatch_Path) isRequestMatch_Match() {}
  1209  
  1210  func (*RequestMatch_Method) isRequestMatch_Match() {}
  1211  
  1212  type PathMatch struct {
  1213  	state         protoimpl.MessageState
  1214  	sizeCache     protoimpl.SizeCache
  1215  	unknownFields protoimpl.UnknownFields
  1216  
  1217  	// Match if the request path matches this regex.
  1218  	Regex string `protobuf:"bytes,1,opt,name=regex,proto3" json:"regex,omitempty"`
  1219  }
  1220  
  1221  func (x *PathMatch) Reset() {
  1222  	*x = PathMatch{}
  1223  	if protoimpl.UnsafeEnabled {
  1224  		mi := &file_destination_proto_msgTypes[15]
  1225  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1226  		ms.StoreMessageInfo(mi)
  1227  	}
  1228  }
  1229  
  1230  func (x *PathMatch) String() string {
  1231  	return protoimpl.X.MessageStringOf(x)
  1232  }
  1233  
  1234  func (*PathMatch) ProtoMessage() {}
  1235  
  1236  func (x *PathMatch) ProtoReflect() protoreflect.Message {
  1237  	mi := &file_destination_proto_msgTypes[15]
  1238  	if protoimpl.UnsafeEnabled && x != nil {
  1239  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1240  		if ms.LoadMessageInfo() == nil {
  1241  			ms.StoreMessageInfo(mi)
  1242  		}
  1243  		return ms
  1244  	}
  1245  	return mi.MessageOf(x)
  1246  }
  1247  
  1248  // Deprecated: Use PathMatch.ProtoReflect.Descriptor instead.
  1249  func (*PathMatch) Descriptor() ([]byte, []int) {
  1250  	return file_destination_proto_rawDescGZIP(), []int{15}
  1251  }
  1252  
  1253  func (x *PathMatch) GetRegex() string {
  1254  	if x != nil {
  1255  		return x.Regex
  1256  	}
  1257  	return ""
  1258  }
  1259  
  1260  type ResponseMatch struct {
  1261  	state         protoimpl.MessageState
  1262  	sizeCache     protoimpl.SizeCache
  1263  	unknownFields protoimpl.UnknownFields
  1264  
  1265  	// Types that are assignable to Match:
  1266  	//
  1267  	//	*ResponseMatch_All
  1268  	//	*ResponseMatch_Any
  1269  	//	*ResponseMatch_Not
  1270  	//	*ResponseMatch_Status
  1271  	Match isResponseMatch_Match `protobuf_oneof:"match"`
  1272  }
  1273  
  1274  func (x *ResponseMatch) Reset() {
  1275  	*x = ResponseMatch{}
  1276  	if protoimpl.UnsafeEnabled {
  1277  		mi := &file_destination_proto_msgTypes[16]
  1278  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1279  		ms.StoreMessageInfo(mi)
  1280  	}
  1281  }
  1282  
  1283  func (x *ResponseMatch) String() string {
  1284  	return protoimpl.X.MessageStringOf(x)
  1285  }
  1286  
  1287  func (*ResponseMatch) ProtoMessage() {}
  1288  
  1289  func (x *ResponseMatch) ProtoReflect() protoreflect.Message {
  1290  	mi := &file_destination_proto_msgTypes[16]
  1291  	if protoimpl.UnsafeEnabled && x != nil {
  1292  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1293  		if ms.LoadMessageInfo() == nil {
  1294  			ms.StoreMessageInfo(mi)
  1295  		}
  1296  		return ms
  1297  	}
  1298  	return mi.MessageOf(x)
  1299  }
  1300  
  1301  // Deprecated: Use ResponseMatch.ProtoReflect.Descriptor instead.
  1302  func (*ResponseMatch) Descriptor() ([]byte, []int) {
  1303  	return file_destination_proto_rawDescGZIP(), []int{16}
  1304  }
  1305  
  1306  func (m *ResponseMatch) GetMatch() isResponseMatch_Match {
  1307  	if m != nil {
  1308  		return m.Match
  1309  	}
  1310  	return nil
  1311  }
  1312  
  1313  func (x *ResponseMatch) GetAll() *ResponseMatch_Seq {
  1314  	if x, ok := x.GetMatch().(*ResponseMatch_All); ok {
  1315  		return x.All
  1316  	}
  1317  	return nil
  1318  }
  1319  
  1320  func (x *ResponseMatch) GetAny() *ResponseMatch_Seq {
  1321  	if x, ok := x.GetMatch().(*ResponseMatch_Any); ok {
  1322  		return x.Any
  1323  	}
  1324  	return nil
  1325  }
  1326  
  1327  func (x *ResponseMatch) GetNot() *ResponseMatch {
  1328  	if x, ok := x.GetMatch().(*ResponseMatch_Not); ok {
  1329  		return x.Not
  1330  	}
  1331  	return nil
  1332  }
  1333  
  1334  func (x *ResponseMatch) GetStatus() *HttpStatusRange {
  1335  	if x, ok := x.GetMatch().(*ResponseMatch_Status); ok {
  1336  		return x.Status
  1337  	}
  1338  	return nil
  1339  }
  1340  
  1341  type isResponseMatch_Match interface {
  1342  	isResponseMatch_Match()
  1343  }
  1344  
  1345  type ResponseMatch_All struct {
  1346  	All *ResponseMatch_Seq `protobuf:"bytes,1,opt,name=all,proto3,oneof"`
  1347  }
  1348  
  1349  type ResponseMatch_Any struct {
  1350  	Any *ResponseMatch_Seq `protobuf:"bytes,2,opt,name=any,proto3,oneof"`
  1351  }
  1352  
  1353  type ResponseMatch_Not struct {
  1354  	Not *ResponseMatch `protobuf:"bytes,3,opt,name=not,proto3,oneof"`
  1355  }
  1356  
  1357  type ResponseMatch_Status struct {
  1358  	Status *HttpStatusRange `protobuf:"bytes,4,opt,name=status,proto3,oneof"` // TODO: match on arbitrary header or trailer
  1359  }
  1360  
  1361  func (*ResponseMatch_All) isResponseMatch_Match() {}
  1362  
  1363  func (*ResponseMatch_Any) isResponseMatch_Match() {}
  1364  
  1365  func (*ResponseMatch_Not) isResponseMatch_Match() {}
  1366  
  1367  func (*ResponseMatch_Status) isResponseMatch_Match() {}
  1368  
  1369  // If either a minimum or maximum is not specified, the range is considered to
  1370  // be over a discrete value.
  1371  type HttpStatusRange struct {
  1372  	state         protoimpl.MessageState
  1373  	sizeCache     protoimpl.SizeCache
  1374  	unknownFields protoimpl.UnknownFields
  1375  
  1376  	// Minimum matching http status code (inclusive), if specified.
  1377  	Min uint32 `protobuf:"varint,1,opt,name=min,proto3" json:"min,omitempty"`
  1378  	// Maximum matching http status code (inclusive), if specified.
  1379  	Max uint32 `protobuf:"varint,2,opt,name=max,proto3" json:"max,omitempty"`
  1380  }
  1381  
  1382  func (x *HttpStatusRange) Reset() {
  1383  	*x = HttpStatusRange{}
  1384  	if protoimpl.UnsafeEnabled {
  1385  		mi := &file_destination_proto_msgTypes[17]
  1386  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1387  		ms.StoreMessageInfo(mi)
  1388  	}
  1389  }
  1390  
  1391  func (x *HttpStatusRange) String() string {
  1392  	return protoimpl.X.MessageStringOf(x)
  1393  }
  1394  
  1395  func (*HttpStatusRange) ProtoMessage() {}
  1396  
  1397  func (x *HttpStatusRange) ProtoReflect() protoreflect.Message {
  1398  	mi := &file_destination_proto_msgTypes[17]
  1399  	if protoimpl.UnsafeEnabled && x != nil {
  1400  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1401  		if ms.LoadMessageInfo() == nil {
  1402  			ms.StoreMessageInfo(mi)
  1403  		}
  1404  		return ms
  1405  	}
  1406  	return mi.MessageOf(x)
  1407  }
  1408  
  1409  // Deprecated: Use HttpStatusRange.ProtoReflect.Descriptor instead.
  1410  func (*HttpStatusRange) Descriptor() ([]byte, []int) {
  1411  	return file_destination_proto_rawDescGZIP(), []int{17}
  1412  }
  1413  
  1414  func (x *HttpStatusRange) GetMin() uint32 {
  1415  	if x != nil {
  1416  		return x.Min
  1417  	}
  1418  	return 0
  1419  }
  1420  
  1421  func (x *HttpStatusRange) GetMax() uint32 {
  1422  	if x != nil {
  1423  		return x.Max
  1424  	}
  1425  	return 0
  1426  }
  1427  
  1428  type WeightedDst struct {
  1429  	state         protoimpl.MessageState
  1430  	sizeCache     protoimpl.SizeCache
  1431  	unknownFields protoimpl.UnknownFields
  1432  
  1433  	// This authority will be used as the `path` in a call to the Destination.Get
  1434  	// rpc.
  1435  	Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"`
  1436  	// The proportion of requests to send to this destination.  This value is
  1437  	// relative to other weights in the same dst_overrides list.
  1438  	Weight uint32 `protobuf:"varint,2,opt,name=weight,proto3" json:"weight,omitempty"`
  1439  }
  1440  
  1441  func (x *WeightedDst) Reset() {
  1442  	*x = WeightedDst{}
  1443  	if protoimpl.UnsafeEnabled {
  1444  		mi := &file_destination_proto_msgTypes[18]
  1445  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1446  		ms.StoreMessageInfo(mi)
  1447  	}
  1448  }
  1449  
  1450  func (x *WeightedDst) String() string {
  1451  	return protoimpl.X.MessageStringOf(x)
  1452  }
  1453  
  1454  func (*WeightedDst) ProtoMessage() {}
  1455  
  1456  func (x *WeightedDst) ProtoReflect() protoreflect.Message {
  1457  	mi := &file_destination_proto_msgTypes[18]
  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 WeightedDst.ProtoReflect.Descriptor instead.
  1469  func (*WeightedDst) Descriptor() ([]byte, []int) {
  1470  	return file_destination_proto_rawDescGZIP(), []int{18}
  1471  }
  1472  
  1473  func (x *WeightedDst) GetAuthority() string {
  1474  	if x != nil {
  1475  		return x.Authority
  1476  	}
  1477  	return ""
  1478  }
  1479  
  1480  func (x *WeightedDst) GetWeight() uint32 {
  1481  	if x != nil {
  1482  		return x.Weight
  1483  	}
  1484  	return 0
  1485  }
  1486  
  1487  // Verify the certificate based on the Kubernetes pod identity.
  1488  type TlsIdentity_DnsLikeIdentity struct {
  1489  	state         protoimpl.MessageState
  1490  	sizeCache     protoimpl.SizeCache
  1491  	unknownFields protoimpl.UnknownFields
  1492  
  1493  	// A DNS-like name that encodes workload coordinates.
  1494  	//
  1495  	// For example:
  1496  	//
  1497  	//	{name}.{namespace}.{type}.identity.{control-namespace}.{trust-domain...}
  1498  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  1499  }
  1500  
  1501  func (x *TlsIdentity_DnsLikeIdentity) Reset() {
  1502  	*x = TlsIdentity_DnsLikeIdentity{}
  1503  	if protoimpl.UnsafeEnabled {
  1504  		mi := &file_destination_proto_msgTypes[21]
  1505  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1506  		ms.StoreMessageInfo(mi)
  1507  	}
  1508  }
  1509  
  1510  func (x *TlsIdentity_DnsLikeIdentity) String() string {
  1511  	return protoimpl.X.MessageStringOf(x)
  1512  }
  1513  
  1514  func (*TlsIdentity_DnsLikeIdentity) ProtoMessage() {}
  1515  
  1516  func (x *TlsIdentity_DnsLikeIdentity) ProtoReflect() protoreflect.Message {
  1517  	mi := &file_destination_proto_msgTypes[21]
  1518  	if protoimpl.UnsafeEnabled && x != nil {
  1519  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1520  		if ms.LoadMessageInfo() == nil {
  1521  			ms.StoreMessageInfo(mi)
  1522  		}
  1523  		return ms
  1524  	}
  1525  	return mi.MessageOf(x)
  1526  }
  1527  
  1528  // Deprecated: Use TlsIdentity_DnsLikeIdentity.ProtoReflect.Descriptor instead.
  1529  func (*TlsIdentity_DnsLikeIdentity) Descriptor() ([]byte, []int) {
  1530  	return file_destination_proto_rawDescGZIP(), []int{5, 0}
  1531  }
  1532  
  1533  func (x *TlsIdentity_DnsLikeIdentity) GetName() string {
  1534  	if x != nil {
  1535  		return x.Name
  1536  	}
  1537  	return ""
  1538  }
  1539  
  1540  // Verify the certificate based on an URI identity.
  1541  type TlsIdentity_UriLikeIdentity struct {
  1542  	state         protoimpl.MessageState
  1543  	sizeCache     protoimpl.SizeCache
  1544  	unknownFields protoimpl.UnknownFields
  1545  
  1546  	// A URI name that encodes workload identity.
  1547  	//
  1548  	// For example:
  1549  	//
  1550  	//	spiffe://trust-domain/workload-dentifier
  1551  	Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
  1552  }
  1553  
  1554  func (x *TlsIdentity_UriLikeIdentity) Reset() {
  1555  	*x = TlsIdentity_UriLikeIdentity{}
  1556  	if protoimpl.UnsafeEnabled {
  1557  		mi := &file_destination_proto_msgTypes[22]
  1558  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1559  		ms.StoreMessageInfo(mi)
  1560  	}
  1561  }
  1562  
  1563  func (x *TlsIdentity_UriLikeIdentity) String() string {
  1564  	return protoimpl.X.MessageStringOf(x)
  1565  }
  1566  
  1567  func (*TlsIdentity_UriLikeIdentity) ProtoMessage() {}
  1568  
  1569  func (x *TlsIdentity_UriLikeIdentity) ProtoReflect() protoreflect.Message {
  1570  	mi := &file_destination_proto_msgTypes[22]
  1571  	if protoimpl.UnsafeEnabled && x != nil {
  1572  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1573  		if ms.LoadMessageInfo() == nil {
  1574  			ms.StoreMessageInfo(mi)
  1575  		}
  1576  		return ms
  1577  	}
  1578  	return mi.MessageOf(x)
  1579  }
  1580  
  1581  // Deprecated: Use TlsIdentity_UriLikeIdentity.ProtoReflect.Descriptor instead.
  1582  func (*TlsIdentity_UriLikeIdentity) Descriptor() ([]byte, []int) {
  1583  	return file_destination_proto_rawDescGZIP(), []int{5, 1}
  1584  }
  1585  
  1586  func (x *TlsIdentity_UriLikeIdentity) GetUri() string {
  1587  	if x != nil {
  1588  		return x.Uri
  1589  	}
  1590  	return ""
  1591  }
  1592  
  1593  type ProtocolHint_H2 struct {
  1594  	state         protoimpl.MessageState
  1595  	sizeCache     protoimpl.SizeCache
  1596  	unknownFields protoimpl.UnknownFields
  1597  }
  1598  
  1599  func (x *ProtocolHint_H2) Reset() {
  1600  	*x = ProtocolHint_H2{}
  1601  	if protoimpl.UnsafeEnabled {
  1602  		mi := &file_destination_proto_msgTypes[23]
  1603  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1604  		ms.StoreMessageInfo(mi)
  1605  	}
  1606  }
  1607  
  1608  func (x *ProtocolHint_H2) String() string {
  1609  	return protoimpl.X.MessageStringOf(x)
  1610  }
  1611  
  1612  func (*ProtocolHint_H2) ProtoMessage() {}
  1613  
  1614  func (x *ProtocolHint_H2) ProtoReflect() protoreflect.Message {
  1615  	mi := &file_destination_proto_msgTypes[23]
  1616  	if protoimpl.UnsafeEnabled && x != nil {
  1617  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1618  		if ms.LoadMessageInfo() == nil {
  1619  			ms.StoreMessageInfo(mi)
  1620  		}
  1621  		return ms
  1622  	}
  1623  	return mi.MessageOf(x)
  1624  }
  1625  
  1626  // Deprecated: Use ProtocolHint_H2.ProtoReflect.Descriptor instead.
  1627  func (*ProtocolHint_H2) Descriptor() ([]byte, []int) {
  1628  	return file_destination_proto_rawDescGZIP(), []int{8, 0}
  1629  }
  1630  
  1631  type ProtocolHint_Opaque struct {
  1632  	state         protoimpl.MessageState
  1633  	sizeCache     protoimpl.SizeCache
  1634  	unknownFields protoimpl.UnknownFields
  1635  }
  1636  
  1637  func (x *ProtocolHint_Opaque) Reset() {
  1638  	*x = ProtocolHint_Opaque{}
  1639  	if protoimpl.UnsafeEnabled {
  1640  		mi := &file_destination_proto_msgTypes[24]
  1641  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1642  		ms.StoreMessageInfo(mi)
  1643  	}
  1644  }
  1645  
  1646  func (x *ProtocolHint_Opaque) String() string {
  1647  	return protoimpl.X.MessageStringOf(x)
  1648  }
  1649  
  1650  func (*ProtocolHint_Opaque) ProtoMessage() {}
  1651  
  1652  func (x *ProtocolHint_Opaque) ProtoReflect() protoreflect.Message {
  1653  	mi := &file_destination_proto_msgTypes[24]
  1654  	if protoimpl.UnsafeEnabled && x != nil {
  1655  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1656  		if ms.LoadMessageInfo() == nil {
  1657  			ms.StoreMessageInfo(mi)
  1658  		}
  1659  		return ms
  1660  	}
  1661  	return mi.MessageOf(x)
  1662  }
  1663  
  1664  // Deprecated: Use ProtocolHint_Opaque.ProtoReflect.Descriptor instead.
  1665  func (*ProtocolHint_Opaque) Descriptor() ([]byte, []int) {
  1666  	return file_destination_proto_rawDescGZIP(), []int{8, 1}
  1667  }
  1668  
  1669  type ProtocolHint_OpaqueTransport struct {
  1670  	state         protoimpl.MessageState
  1671  	sizeCache     protoimpl.SizeCache
  1672  	unknownFields protoimpl.UnknownFields
  1673  
  1674  	// The target proxy's inbound port.
  1675  	InboundPort uint32 `protobuf:"varint,1,opt,name=inbound_port,json=inboundPort,proto3" json:"inbound_port,omitempty"`
  1676  }
  1677  
  1678  func (x *ProtocolHint_OpaqueTransport) Reset() {
  1679  	*x = ProtocolHint_OpaqueTransport{}
  1680  	if protoimpl.UnsafeEnabled {
  1681  		mi := &file_destination_proto_msgTypes[25]
  1682  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1683  		ms.StoreMessageInfo(mi)
  1684  	}
  1685  }
  1686  
  1687  func (x *ProtocolHint_OpaqueTransport) String() string {
  1688  	return protoimpl.X.MessageStringOf(x)
  1689  }
  1690  
  1691  func (*ProtocolHint_OpaqueTransport) ProtoMessage() {}
  1692  
  1693  func (x *ProtocolHint_OpaqueTransport) ProtoReflect() protoreflect.Message {
  1694  	mi := &file_destination_proto_msgTypes[25]
  1695  	if protoimpl.UnsafeEnabled && x != nil {
  1696  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1697  		if ms.LoadMessageInfo() == nil {
  1698  			ms.StoreMessageInfo(mi)
  1699  		}
  1700  		return ms
  1701  	}
  1702  	return mi.MessageOf(x)
  1703  }
  1704  
  1705  // Deprecated: Use ProtocolHint_OpaqueTransport.ProtoReflect.Descriptor instead.
  1706  func (*ProtocolHint_OpaqueTransport) Descriptor() ([]byte, []int) {
  1707  	return file_destination_proto_rawDescGZIP(), []int{8, 2}
  1708  }
  1709  
  1710  func (x *ProtocolHint_OpaqueTransport) GetInboundPort() uint32 {
  1711  	if x != nil {
  1712  		return x.InboundPort
  1713  	}
  1714  	return 0
  1715  }
  1716  
  1717  type Http2ClientParams_FlowControl struct {
  1718  	state         protoimpl.MessageState
  1719  	sizeCache     protoimpl.SizeCache
  1720  	unknownFields protoimpl.UnknownFields
  1721  
  1722  	// Configures the maximum connection-level flow control window size.
  1723  	InitialConnectionWindowSize uint32 `protobuf:"varint,1,opt,name=initial_connection_window_size,json=initialConnectionWindowSize,proto3" json:"initial_connection_window_size,omitempty"`
  1724  	// Configures the maximum stream-level flow control window size.
  1725  	InitialStreamWindowSize uint32 `protobuf:"varint,2,opt,name=initial_stream_window_size,json=initialStreamWindowSize,proto3" json:"initial_stream_window_size,omitempty"`
  1726  	// Enables Hyper's adaptive flow control, ignoring other window settings.
  1727  	AdaptiveFlowControl bool `protobuf:"varint,3,opt,name=adaptive_flow_control,json=adaptiveFlowControl,proto3" json:"adaptive_flow_control,omitempty"`
  1728  }
  1729  
  1730  func (x *Http2ClientParams_FlowControl) Reset() {
  1731  	*x = Http2ClientParams_FlowControl{}
  1732  	if protoimpl.UnsafeEnabled {
  1733  		mi := &file_destination_proto_msgTypes[26]
  1734  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1735  		ms.StoreMessageInfo(mi)
  1736  	}
  1737  }
  1738  
  1739  func (x *Http2ClientParams_FlowControl) String() string {
  1740  	return protoimpl.X.MessageStringOf(x)
  1741  }
  1742  
  1743  func (*Http2ClientParams_FlowControl) ProtoMessage() {}
  1744  
  1745  func (x *Http2ClientParams_FlowControl) ProtoReflect() protoreflect.Message {
  1746  	mi := &file_destination_proto_msgTypes[26]
  1747  	if protoimpl.UnsafeEnabled && x != nil {
  1748  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1749  		if ms.LoadMessageInfo() == nil {
  1750  			ms.StoreMessageInfo(mi)
  1751  		}
  1752  		return ms
  1753  	}
  1754  	return mi.MessageOf(x)
  1755  }
  1756  
  1757  // Deprecated: Use Http2ClientParams_FlowControl.ProtoReflect.Descriptor instead.
  1758  func (*Http2ClientParams_FlowControl) Descriptor() ([]byte, []int) {
  1759  	return file_destination_proto_rawDescGZIP(), []int{9, 0}
  1760  }
  1761  
  1762  func (x *Http2ClientParams_FlowControl) GetInitialConnectionWindowSize() uint32 {
  1763  	if x != nil {
  1764  		return x.InitialConnectionWindowSize
  1765  	}
  1766  	return 0
  1767  }
  1768  
  1769  func (x *Http2ClientParams_FlowControl) GetInitialStreamWindowSize() uint32 {
  1770  	if x != nil {
  1771  		return x.InitialStreamWindowSize
  1772  	}
  1773  	return 0
  1774  }
  1775  
  1776  func (x *Http2ClientParams_FlowControl) GetAdaptiveFlowControl() bool {
  1777  	if x != nil {
  1778  		return x.AdaptiveFlowControl
  1779  	}
  1780  	return false
  1781  }
  1782  
  1783  type Http2ClientParams_KeepAlive struct {
  1784  	state         protoimpl.MessageState
  1785  	sizeCache     protoimpl.SizeCache
  1786  	unknownFields protoimpl.UnknownFields
  1787  
  1788  	// The time between pings.
  1789  	Interval *duration.Duration `protobuf:"bytes,1,opt,name=interval,proto3" json:"interval,omitempty"`
  1790  	// The time to wait for a ping response before considering the connection
  1791  	// dead.
  1792  	Timeout *duration.Duration `protobuf:"bytes,2,opt,name=timeout,proto3" json:"timeout,omitempty"`
  1793  	// Whether to send pings when there is no other traffic.
  1794  	WhileIdle bool `protobuf:"varint,3,opt,name=while_idle,json=whileIdle,proto3" json:"while_idle,omitempty"`
  1795  }
  1796  
  1797  func (x *Http2ClientParams_KeepAlive) Reset() {
  1798  	*x = Http2ClientParams_KeepAlive{}
  1799  	if protoimpl.UnsafeEnabled {
  1800  		mi := &file_destination_proto_msgTypes[27]
  1801  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1802  		ms.StoreMessageInfo(mi)
  1803  	}
  1804  }
  1805  
  1806  func (x *Http2ClientParams_KeepAlive) String() string {
  1807  	return protoimpl.X.MessageStringOf(x)
  1808  }
  1809  
  1810  func (*Http2ClientParams_KeepAlive) ProtoMessage() {}
  1811  
  1812  func (x *Http2ClientParams_KeepAlive) ProtoReflect() protoreflect.Message {
  1813  	mi := &file_destination_proto_msgTypes[27]
  1814  	if protoimpl.UnsafeEnabled && x != nil {
  1815  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1816  		if ms.LoadMessageInfo() == nil {
  1817  			ms.StoreMessageInfo(mi)
  1818  		}
  1819  		return ms
  1820  	}
  1821  	return mi.MessageOf(x)
  1822  }
  1823  
  1824  // Deprecated: Use Http2ClientParams_KeepAlive.ProtoReflect.Descriptor instead.
  1825  func (*Http2ClientParams_KeepAlive) Descriptor() ([]byte, []int) {
  1826  	return file_destination_proto_rawDescGZIP(), []int{9, 1}
  1827  }
  1828  
  1829  func (x *Http2ClientParams_KeepAlive) GetInterval() *duration.Duration {
  1830  	if x != nil {
  1831  		return x.Interval
  1832  	}
  1833  	return nil
  1834  }
  1835  
  1836  func (x *Http2ClientParams_KeepAlive) GetTimeout() *duration.Duration {
  1837  	if x != nil {
  1838  		return x.Timeout
  1839  	}
  1840  	return nil
  1841  }
  1842  
  1843  func (x *Http2ClientParams_KeepAlive) GetWhileIdle() bool {
  1844  	if x != nil {
  1845  		return x.WhileIdle
  1846  	}
  1847  	return false
  1848  }
  1849  
  1850  type Http2ClientParams_Internals struct {
  1851  	state         protoimpl.MessageState
  1852  	sizeCache     protoimpl.SizeCache
  1853  	unknownFields protoimpl.UnknownFields
  1854  
  1855  	MaxConcurrentResetStreams uint32 `protobuf:"varint,1,opt,name=max_concurrent_reset_streams,json=maxConcurrentResetStreams,proto3" json:"max_concurrent_reset_streams,omitempty"`
  1856  	MaxFrameSize              uint32 `protobuf:"varint,2,opt,name=max_frame_size,json=maxFrameSize,proto3" json:"max_frame_size,omitempty"`
  1857  	MaxSendBufSize            uint32 `protobuf:"varint,3,opt,name=max_send_buf_size,json=maxSendBufSize,proto3" json:"max_send_buf_size,omitempty"`
  1858  }
  1859  
  1860  func (x *Http2ClientParams_Internals) Reset() {
  1861  	*x = Http2ClientParams_Internals{}
  1862  	if protoimpl.UnsafeEnabled {
  1863  		mi := &file_destination_proto_msgTypes[28]
  1864  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1865  		ms.StoreMessageInfo(mi)
  1866  	}
  1867  }
  1868  
  1869  func (x *Http2ClientParams_Internals) String() string {
  1870  	return protoimpl.X.MessageStringOf(x)
  1871  }
  1872  
  1873  func (*Http2ClientParams_Internals) ProtoMessage() {}
  1874  
  1875  func (x *Http2ClientParams_Internals) ProtoReflect() protoreflect.Message {
  1876  	mi := &file_destination_proto_msgTypes[28]
  1877  	if protoimpl.UnsafeEnabled && x != nil {
  1878  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1879  		if ms.LoadMessageInfo() == nil {
  1880  			ms.StoreMessageInfo(mi)
  1881  		}
  1882  		return ms
  1883  	}
  1884  	return mi.MessageOf(x)
  1885  }
  1886  
  1887  // Deprecated: Use Http2ClientParams_Internals.ProtoReflect.Descriptor instead.
  1888  func (*Http2ClientParams_Internals) Descriptor() ([]byte, []int) {
  1889  	return file_destination_proto_rawDescGZIP(), []int{9, 2}
  1890  }
  1891  
  1892  func (x *Http2ClientParams_Internals) GetMaxConcurrentResetStreams() uint32 {
  1893  	if x != nil {
  1894  		return x.MaxConcurrentResetStreams
  1895  	}
  1896  	return 0
  1897  }
  1898  
  1899  func (x *Http2ClientParams_Internals) GetMaxFrameSize() uint32 {
  1900  	if x != nil {
  1901  		return x.MaxFrameSize
  1902  	}
  1903  	return 0
  1904  }
  1905  
  1906  func (x *Http2ClientParams_Internals) GetMaxSendBufSize() uint32 {
  1907  	if x != nil {
  1908  		return x.MaxSendBufSize
  1909  	}
  1910  	return 0
  1911  }
  1912  
  1913  type RequestMatch_Seq struct {
  1914  	state         protoimpl.MessageState
  1915  	sizeCache     protoimpl.SizeCache
  1916  	unknownFields protoimpl.UnknownFields
  1917  
  1918  	Matches []*RequestMatch `protobuf:"bytes,1,rep,name=matches,proto3" json:"matches,omitempty"`
  1919  }
  1920  
  1921  func (x *RequestMatch_Seq) Reset() {
  1922  	*x = RequestMatch_Seq{}
  1923  	if protoimpl.UnsafeEnabled {
  1924  		mi := &file_destination_proto_msgTypes[30]
  1925  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1926  		ms.StoreMessageInfo(mi)
  1927  	}
  1928  }
  1929  
  1930  func (x *RequestMatch_Seq) String() string {
  1931  	return protoimpl.X.MessageStringOf(x)
  1932  }
  1933  
  1934  func (*RequestMatch_Seq) ProtoMessage() {}
  1935  
  1936  func (x *RequestMatch_Seq) ProtoReflect() protoreflect.Message {
  1937  	mi := &file_destination_proto_msgTypes[30]
  1938  	if protoimpl.UnsafeEnabled && x != nil {
  1939  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1940  		if ms.LoadMessageInfo() == nil {
  1941  			ms.StoreMessageInfo(mi)
  1942  		}
  1943  		return ms
  1944  	}
  1945  	return mi.MessageOf(x)
  1946  }
  1947  
  1948  // Deprecated: Use RequestMatch_Seq.ProtoReflect.Descriptor instead.
  1949  func (*RequestMatch_Seq) Descriptor() ([]byte, []int) {
  1950  	return file_destination_proto_rawDescGZIP(), []int{14, 0}
  1951  }
  1952  
  1953  func (x *RequestMatch_Seq) GetMatches() []*RequestMatch {
  1954  	if x != nil {
  1955  		return x.Matches
  1956  	}
  1957  	return nil
  1958  }
  1959  
  1960  type ResponseMatch_Seq struct {
  1961  	state         protoimpl.MessageState
  1962  	sizeCache     protoimpl.SizeCache
  1963  	unknownFields protoimpl.UnknownFields
  1964  
  1965  	Matches []*ResponseMatch `protobuf:"bytes,1,rep,name=matches,proto3" json:"matches,omitempty"`
  1966  }
  1967  
  1968  func (x *ResponseMatch_Seq) Reset() {
  1969  	*x = ResponseMatch_Seq{}
  1970  	if protoimpl.UnsafeEnabled {
  1971  		mi := &file_destination_proto_msgTypes[31]
  1972  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1973  		ms.StoreMessageInfo(mi)
  1974  	}
  1975  }
  1976  
  1977  func (x *ResponseMatch_Seq) String() string {
  1978  	return protoimpl.X.MessageStringOf(x)
  1979  }
  1980  
  1981  func (*ResponseMatch_Seq) ProtoMessage() {}
  1982  
  1983  func (x *ResponseMatch_Seq) ProtoReflect() protoreflect.Message {
  1984  	mi := &file_destination_proto_msgTypes[31]
  1985  	if protoimpl.UnsafeEnabled && x != nil {
  1986  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1987  		if ms.LoadMessageInfo() == nil {
  1988  			ms.StoreMessageInfo(mi)
  1989  		}
  1990  		return ms
  1991  	}
  1992  	return mi.MessageOf(x)
  1993  }
  1994  
  1995  // Deprecated: Use ResponseMatch_Seq.ProtoReflect.Descriptor instead.
  1996  func (*ResponseMatch_Seq) Descriptor() ([]byte, []int) {
  1997  	return file_destination_proto_rawDescGZIP(), []int{16, 0}
  1998  }
  1999  
  2000  func (x *ResponseMatch_Seq) GetMatches() []*ResponseMatch {
  2001  	if x != nil {
  2002  		return x.Matches
  2003  	}
  2004  	return nil
  2005  }
  2006  
  2007  var File_destination_proto protoreflect.FileDescriptor
  2008  
  2009  var file_destination_proto_rawDesc = []byte{
  2010  	0x0a, 0x11, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
  2011  	0x6f, 0x74, 0x6f, 0x12, 0x1c, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e,
  2012  	0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
  2013  	0x6e, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  2014  	0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  2015  	0x6f, 0x1a, 0x10, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72,
  2016  	0x6f, 0x74, 0x6f, 0x1a, 0x09, 0x6e, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x61,
  2017  	0x0a, 0x0e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  2018  	0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
  2019  	0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68,
  2020  	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x23, 0x0a, 0x0d,
  2021  	0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20,
  2022  	0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x54, 0x6f, 0x6b, 0x65,
  2023  	0x6e, 0x22, 0xe6, 0x01, 0x0a, 0x06, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x41, 0x0a, 0x03,
  2024  	0x61, 0x64, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6f, 0x2e, 0x6c,
  2025  	0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73,
  2026  	0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x65,
  2027  	0x64, 0x41, 0x64, 0x64, 0x72, 0x53, 0x65, 0x74, 0x48, 0x00, 0x52, 0x03, 0x61, 0x64, 0x64, 0x12,
  2028  	0x3f, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
  2029  	0x25, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f,
  2030  	0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41,
  2031  	0x64, 0x64, 0x72, 0x53, 0x65, 0x74, 0x48, 0x00, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65,
  2032  	0x12, 0x4e, 0x0a, 0x0c, 0x6e, 0x6f, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73,
  2033  	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b,
  2034  	0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
  2035  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4e, 0x6f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
  2036  	0x73, 0x48, 0x00, 0x52, 0x0b, 0x6e, 0x6f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73,
  2037  	0x42, 0x08, 0x0a, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x41, 0x0a, 0x07, 0x41, 0x64,
  2038  	0x64, 0x72, 0x53, 0x65, 0x74, 0x12, 0x36, 0x0a, 0x05, 0x61, 0x64, 0x64, 0x72, 0x73, 0x18, 0x01,
  2039  	0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72,
  2040  	0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x6e, 0x65, 0x74, 0x2e, 0x54, 0x63, 0x70, 0x41,
  2041  	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x05, 0x61, 0x64, 0x64, 0x72, 0x73, 0x22, 0xfa, 0x01,
  2042  	0x0a, 0x0f, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x53, 0x65,
  2043  	0x74, 0x12, 0x40, 0x0a, 0x05, 0x61, 0x64, 0x64, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
  2044  	0x32, 0x2a, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72,
  2045  	0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
  2046  	0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x52, 0x05, 0x61, 0x64,
  2047  	0x64, 0x72, 0x73, 0x12, 0x64, 0x0a, 0x0d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x6c, 0x61,
  2048  	0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x69, 0x6f, 0x2e,
  2049  	0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65,
  2050  	0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74,
  2051  	0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x53, 0x65, 0x74, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63,
  2052  	0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x6d, 0x65, 0x74,
  2053  	0x72, 0x69, 0x63, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x3f, 0x0a, 0x11, 0x4d, 0x65, 0x74,
  2054  	0x72, 0x69, 0x63, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
  2055  	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
  2056  	0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
  2057  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc6, 0x04, 0x0a, 0x0c, 0x57,
  2058  	0x65, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x12, 0x34, 0x0a, 0x04, 0x61,
  2059  	0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x69, 0x6f, 0x2e, 0x6c,
  2060  	0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x6e, 0x65, 0x74,
  2061  	0x2e, 0x54, 0x63, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x04, 0x61, 0x64, 0x64,
  2062  	0x72, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
  2063  	0x0d, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x61, 0x0a, 0x0d, 0x6d, 0x65, 0x74,
  2064  	0x72, 0x69, 0x63, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b,
  2065  	0x32, 0x3c, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72,
  2066  	0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
  2067  	0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x2e, 0x4d, 0x65, 0x74,
  2068  	0x72, 0x69, 0x63, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c,
  2069  	0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x4c, 0x0a, 0x0c,
  2070  	0x74, 0x6c, 0x73, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01,
  2071  	0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e,
  2072  	0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
  2073  	0x6e, 0x2e, 0x54, 0x6c, 0x73, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x0b, 0x74,
  2074  	0x6c, 0x73, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x4f, 0x0a, 0x0d, 0x70, 0x72,
  2075  	0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28,
  2076  	0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70,
  2077  	0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  2078  	0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x48, 0x69, 0x6e, 0x74, 0x52, 0x0c, 0x70,
  2079  	0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x48, 0x69, 0x6e, 0x74, 0x12, 0x5e, 0x0a, 0x12, 0x61,
  2080  	0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64,
  2081  	0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e,
  2082  	0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69,
  2083  	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79,
  2084  	0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x52, 0x11, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72,
  2085  	0x69, 0x74, 0x79, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x45, 0x0a, 0x05, 0x68,
  2086  	0x74, 0x74, 0x70, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x69, 0x6f, 0x2e,
  2087  	0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65,
  2088  	0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x32, 0x43,
  2089  	0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x05, 0x68, 0x74, 0x74,
  2090  	0x70, 0x32, 0x1a, 0x3f, 0x0a, 0x11, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4c, 0x61, 0x62, 0x65,
  2091  	0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
  2092  	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
  2093  	0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
  2094  	0x02, 0x38, 0x01, 0x22, 0xab, 0x03, 0x0a, 0x0b, 0x54, 0x6c, 0x73, 0x49, 0x64, 0x65, 0x6e, 0x74,
  2095  	0x69, 0x74, 0x79, 0x12, 0x67, 0x0a, 0x11, 0x64, 0x6e, 0x73, 0x5f, 0x6c, 0x69, 0x6b, 0x65, 0x5f,
  2096  	0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39,
  2097  	0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78,
  2098  	0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54, 0x6c,
  2099  	0x73, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x44, 0x6e, 0x73, 0x4c, 0x69, 0x6b,
  2100  	0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x48, 0x00, 0x52, 0x0f, 0x64, 0x6e, 0x73,
  2101  	0x4c, 0x69, 0x6b, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x67, 0x0a, 0x11,
  2102  	0x75, 0x72, 0x69, 0x5f, 0x6c, 0x69, 0x6b, 0x65, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74,
  2103  	0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e,
  2104  	0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69,
  2105  	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54, 0x6c, 0x73, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69,
  2106  	0x74, 0x79, 0x2e, 0x55, 0x72, 0x69, 0x4c, 0x69, 0x6b, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69,
  2107  	0x74, 0x79, 0x48, 0x00, 0x52, 0x0f, 0x75, 0x72, 0x69, 0x4c, 0x69, 0x6b, 0x65, 0x49, 0x64, 0x65,
  2108  	0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x5a, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f,
  2109  	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6f, 0x2e,
  2110  	0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65,
  2111  	0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54, 0x6c, 0x73, 0x49, 0x64, 0x65,
  2112  	0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x44, 0x6e, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x49, 0x64, 0x65,
  2113  	0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d,
  2114  	0x65, 0x1a, 0x25, 0x0a, 0x0f, 0x44, 0x6e, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x49, 0x64, 0x65, 0x6e,
  2115  	0x74, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
  2116  	0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x23, 0x0a, 0x0f, 0x55, 0x72, 0x69, 0x4c,
  2117  	0x69, 0x6b, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x75,
  2118  	0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x42, 0x0a, 0x0a,
  2119  	0x08, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x52,
  2120  	0x10, 0x6b, 0x38, 0x73, 0x5f, 0x70, 0x6f, 0x64, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74,
  2121  	0x79, 0x22, 0x42, 0x0a, 0x11, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4f, 0x76,
  2122  	0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72,
  2123  	0x69, 0x74, 0x79, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01,
  2124  	0x28, 0x09, 0x52, 0x11, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4f, 0x76, 0x65,
  2125  	0x72, 0x72, 0x69, 0x64, 0x65, 0x22, 0x25, 0x0a, 0x0b, 0x4e, 0x6f, 0x45, 0x6e, 0x64, 0x70, 0x6f,
  2126  	0x69, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x01,
  2127  	0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0xd5, 0x02, 0x0a,
  2128  	0x0c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x48, 0x69, 0x6e, 0x74, 0x12, 0x3f, 0x0a,
  2129  	0x02, 0x68, 0x32, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6f, 0x2e, 0x6c,
  2130  	0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73,
  2131  	0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
  2132  	0x6c, 0x48, 0x69, 0x6e, 0x74, 0x2e, 0x48, 0x32, 0x48, 0x00, 0x52, 0x02, 0x68, 0x32, 0x12, 0x4b,
  2133  	0x0a, 0x06, 0x6f, 0x70, 0x61, 0x71, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31,
  2134  	0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78,
  2135  	0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x72,
  2136  	0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x48, 0x69, 0x6e, 0x74, 0x2e, 0x4f, 0x70, 0x61, 0x71, 0x75,
  2137  	0x65, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x70, 0x61, 0x71, 0x75, 0x65, 0x12, 0x65, 0x0a, 0x10, 0x6f,
  2138  	0x70, 0x61, 0x71, 0x75, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x18,
  2139  	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65,
  2140  	0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
  2141  	0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x48, 0x69, 0x6e,
  2142  	0x74, 0x2e, 0x4f, 0x70, 0x61, 0x71, 0x75, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72,
  2143  	0x74, 0x52, 0x0f, 0x6f, 0x70, 0x61, 0x71, 0x75, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f,
  2144  	0x72, 0x74, 0x1a, 0x04, 0x0a, 0x02, 0x48, 0x32, 0x1a, 0x08, 0x0a, 0x06, 0x4f, 0x70, 0x61, 0x71,
  2145  	0x75, 0x65, 0x1a, 0x34, 0x0a, 0x0f, 0x4f, 0x70, 0x61, 0x71, 0x75, 0x65, 0x54, 0x72, 0x61, 0x6e,
  2146  	0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64,
  2147  	0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x69, 0x6e, 0x62,
  2148  	0x6f, 0x75, 0x6e, 0x64, 0x50, 0x6f, 0x72, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74,
  2149  	0x6f, 0x63, 0x6f, 0x6c, 0x22, 0xa5, 0x06, 0x0a, 0x11, 0x48, 0x74, 0x74, 0x70, 0x32, 0x43, 0x6c,
  2150  	0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x5e, 0x0a, 0x0c, 0x66, 0x6c,
  2151  	0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
  2152  	0x32, 0x3b, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72,
  2153  	0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
  2154  	0x48, 0x74, 0x74, 0x70, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d,
  2155  	0x73, 0x2e, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x0b, 0x66,
  2156  	0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x58, 0x0a, 0x0a, 0x6b, 0x65,
  2157  	0x65, 0x70, 0x5f, 0x61, 0x6c, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39,
  2158  	0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78,
  2159  	0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x48, 0x74,
  2160  	0x74, 0x70, 0x32, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e,
  2161  	0x4b, 0x65, 0x65, 0x70, 0x41, 0x6c, 0x69, 0x76, 0x65, 0x52, 0x09, 0x6b, 0x65, 0x65, 0x70, 0x41,
  2162  	0x6c, 0x69, 0x76, 0x65, 0x12, 0x57, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
  2163  	0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e,
  2164  	0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69,
  2165  	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x32, 0x43, 0x6c, 0x69, 0x65,
  2166  	0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
  2167  	0x6c, 0x73, 0x52, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x73, 0x1a, 0xc3, 0x01,
  2168  	0x0a, 0x0b, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x43, 0x0a,
  2169  	0x1e, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
  2170  	0x69, 0x6f, 0x6e, 0x5f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18,
  2171  	0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1b, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x43, 0x6f,
  2172  	0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x53, 0x69,
  2173  	0x7a, 0x65, 0x12, 0x3b, 0x0a, 0x1a, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x74,
  2174  	0x72, 0x65, 0x61, 0x6d, 0x5f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x5f, 0x73, 0x69, 0x7a, 0x65,
  2175  	0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x53,
  2176  	0x74, 0x72, 0x65, 0x61, 0x6d, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x53, 0x69, 0x7a, 0x65, 0x12,
  2177  	0x32, 0x0a, 0x15, 0x61, 0x64, 0x61, 0x70, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x66, 0x6c, 0x6f, 0x77,
  2178  	0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13,
  2179  	0x61, 0x64, 0x61, 0x70, 0x74, 0x69, 0x76, 0x65, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x74,
  2180  	0x72, 0x6f, 0x6c, 0x1a, 0x96, 0x01, 0x0a, 0x09, 0x4b, 0x65, 0x65, 0x70, 0x41, 0x6c, 0x69, 0x76,
  2181  	0x65, 0x12, 0x35, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20,
  2182  	0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
  2183  	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08,
  2184  	0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x33, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65,
  2185  	0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2186  	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61,
  2187  	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x1d, 0x0a,
  2188  	0x0a, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
  2189  	0x08, 0x52, 0x09, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x49, 0x64, 0x6c, 0x65, 0x1a, 0x9d, 0x01, 0x0a,
  2190  	0x09, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x73, 0x12, 0x3f, 0x0a, 0x1c, 0x6d, 0x61,
  2191  	0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x73,
  2192  	0x65, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
  2193  	0x52, 0x19, 0x6d, 0x61, 0x78, 0x43, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x52,
  2194  	0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x6d,
  2195  	0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20,
  2196  	0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x53, 0x69, 0x7a,
  2197  	0x65, 0x12, 0x29, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x62, 0x75,
  2198  	0x66, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x61,
  2199  	0x78, 0x53, 0x65, 0x6e, 0x64, 0x42, 0x75, 0x66, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x92, 0x03, 0x0a,
  2200  	0x12, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66,
  2201  	0x69, 0x6c, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x66, 0x75, 0x6c, 0x6c, 0x79, 0x5f, 0x71, 0x75, 0x61,
  2202  	0x6c, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28,
  2203  	0x09, 0x52, 0x12, 0x66, 0x75, 0x6c, 0x6c, 0x79, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x65,
  2204  	0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x70, 0x61, 0x71, 0x75, 0x65, 0x5f,
  2205  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e,
  2206  	0x6f, 0x70, 0x61, 0x71, 0x75, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x3b,
  2207  	0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23,
  2208  	0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78,
  2209  	0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x6f,
  2210  	0x75, 0x74, 0x65, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x4c, 0x0a, 0x0c, 0x72,
  2211  	0x65, 0x74, 0x72, 0x79, 0x5f, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
  2212  	0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70,
  2213  	0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  2214  	0x2e, 0x52, 0x65, 0x74, 0x72, 0x79, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x52, 0x0b, 0x72, 0x65,
  2215  	0x74, 0x72, 0x79, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x12, 0x4e, 0x0a, 0x0d, 0x64, 0x73, 0x74,
  2216  	0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b,
  2217  	0x32, 0x29, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72,
  2218  	0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
  2219  	0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x44, 0x73, 0x74, 0x52, 0x0c, 0x64, 0x73, 0x74,
  2220  	0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x12, 0x46, 0x0a, 0x08, 0x65, 0x6e, 0x64,
  2221  	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6f,
  2222  	0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64,
  2223  	0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x57, 0x65, 0x69, 0x67, 0x68,
  2224  	0x74, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e,
  2225  	0x74, 0x22, 0xa2, 0x03, 0x0a, 0x05, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x48, 0x0a, 0x09, 0x63,
  2226  	0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a,
  2227  	0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78,
  2228  	0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65,
  2229  	0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x64,
  2230  	0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x56, 0x0a, 0x10, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  2231  	0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
  2232  	0x2b, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f,
  2233  	0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52,
  2234  	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x52, 0x0f, 0x72, 0x65,
  2235  	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x12, 0x5d, 0x0a,
  2236  	0x0e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18,
  2237  	0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65,
  2238  	0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
  2239  	0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69,
  2240  	0x63, 0x73, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0d, 0x6d,
  2241  	0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c,
  2242  	0x69, 0x73, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01,
  2243  	0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x52, 0x65, 0x74, 0x72, 0x79, 0x61, 0x62, 0x6c, 0x65, 0x12,
  2244  	0x33, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
  2245  	0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  2246  	0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x74, 0x69, 0x6d,
  2247  	0x65, 0x6f, 0x75, 0x74, 0x1a, 0x40, 0x0a, 0x12, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x4c,
  2248  	0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
  2249  	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
  2250  	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c,
  2251  	0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x90, 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x74, 0x72, 0x79,
  2252  	0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f,
  2253  	0x72, 0x61, 0x74, 0x69, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x72, 0x65, 0x74,
  2254  	0x72, 0x79, 0x52, 0x61, 0x74, 0x69, 0x6f, 0x12, 0x33, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x5f, 0x72,
  2255  	0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e,
  2256  	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x74, 0x72,
  2257  	0x69, 0x65, 0x73, 0x50, 0x65, 0x72, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x12, 0x2b, 0x0a, 0x03,
  2258  	0x74, 0x74, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2259  	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61,
  2260  	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x03, 0x74, 0x74, 0x6c, 0x22, 0x79, 0x0a, 0x0d, 0x52, 0x65, 0x73,
  2261  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x49, 0x0a, 0x09, 0x63, 0x6f,
  2262  	0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
  2263  	0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79,
  2264  	0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x73,
  2265  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x64,
  2266  	0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x66, 0x61, 0x69, 0x6c,
  2267  	0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x46, 0x61, 0x69,
  2268  	0x6c, 0x75, 0x72, 0x65, 0x22, 0xae, 0x03, 0x0a, 0x0c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  2269  	0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x42, 0x0a, 0x03, 0x61, 0x6c, 0x6c, 0x18, 0x01, 0x20, 0x01,
  2270  	0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e,
  2271  	0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
  2272  	0x6e, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x53,
  2273  	0x65, 0x71, 0x48, 0x00, 0x52, 0x03, 0x61, 0x6c, 0x6c, 0x12, 0x42, 0x0a, 0x03, 0x61, 0x6e, 0x79,
  2274  	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b,
  2275  	0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
  2276  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x74,
  2277  	0x63, 0x68, 0x2e, 0x53, 0x65, 0x71, 0x48, 0x00, 0x52, 0x03, 0x61, 0x6e, 0x79, 0x12, 0x3e, 0x0a,
  2278  	0x03, 0x6e, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6f, 0x2e,
  2279  	0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65,
  2280  	0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
  2281  	0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x00, 0x52, 0x03, 0x6e, 0x6f, 0x74, 0x12, 0x3d, 0x0a,
  2282  	0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6f,
  2283  	0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64,
  2284  	0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x74, 0x68, 0x4d,
  2285  	0x61, 0x74, 0x63, 0x68, 0x48, 0x00, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x41, 0x0a, 0x06,
  2286  	0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69,
  2287  	0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e,
  2288  	0x68, 0x74, 0x74, 0x70, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x4d,
  2289  	0x65, 0x74, 0x68, 0x6f, 0x64, 0x48, 0x00, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x1a,
  2290  	0x4b, 0x0a, 0x03, 0x53, 0x65, 0x71, 0x12, 0x44, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65,
  2291  	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e,
  2292  	0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69,
  2293  	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x61,
  2294  	0x74, 0x63, 0x68, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x42, 0x07, 0x0a, 0x05,
  2295  	0x6d, 0x61, 0x74, 0x63, 0x68, 0x22, 0x21, 0x0a, 0x09, 0x50, 0x61, 0x74, 0x68, 0x4d, 0x61, 0x74,
  2296  	0x63, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x67, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28,
  2297  	0x09, 0x52, 0x05, 0x72, 0x65, 0x67, 0x65, 0x78, 0x22, 0xfa, 0x02, 0x0a, 0x0d, 0x52, 0x65, 0x73,
  2298  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x43, 0x0a, 0x03, 0x61, 0x6c,
  2299  	0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e,
  2300  	0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69,
  2301  	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d,
  2302  	0x61, 0x74, 0x63, 0x68, 0x2e, 0x53, 0x65, 0x71, 0x48, 0x00, 0x52, 0x03, 0x61, 0x6c, 0x6c, 0x12,
  2303  	0x43, 0x0a, 0x03, 0x61, 0x6e, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x69,
  2304  	0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e,
  2305  	0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x73, 0x70,
  2306  	0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x53, 0x65, 0x71, 0x48, 0x00, 0x52,
  2307  	0x03, 0x61, 0x6e, 0x79, 0x12, 0x3f, 0x0a, 0x03, 0x6e, 0x6f, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
  2308  	0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70,
  2309  	0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  2310  	0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x48, 0x00,
  2311  	0x52, 0x03, 0x6e, 0x6f, 0x74, 0x12, 0x47, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
  2312  	0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65,
  2313  	0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
  2314  	0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
  2315  	0x61, 0x6e, 0x67, 0x65, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, 0x4c,
  2316  	0x0a, 0x03, 0x53, 0x65, 0x71, 0x12, 0x45, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73,
  2317  	0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b,
  2318  	0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
  2319  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x61,
  2320  	0x74, 0x63, 0x68, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x42, 0x07, 0x0a, 0x05,
  2321  	0x6d, 0x61, 0x74, 0x63, 0x68, 0x22, 0x35, 0x0a, 0x0f, 0x48, 0x74, 0x74, 0x70, 0x53, 0x74, 0x61,
  2322  	0x74, 0x75, 0x73, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x18,
  2323  	0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x61,
  2324  	0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6d, 0x61, 0x78, 0x22, 0x43, 0x0a, 0x0b,
  2325  	0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x44, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x61,
  2326  	0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
  2327  	0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65, 0x69,
  2328  	0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68,
  2329  	0x74, 0x32, 0xde, 0x01, 0x0a, 0x0b, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
  2330  	0x6e, 0x12, 0x5d, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x2c, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69,
  2331  	0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74,
  2332  	0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x73, 0x74, 0x69,
  2333  	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x24, 0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b,
  2334  	0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
  2335  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x00, 0x30, 0x01,
  2336  	0x12, 0x70, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x2c,
  2337  	0x2e, 0x69, 0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78,
  2338  	0x79, 0x2e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x47, 0x65,
  2339  	0x74, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x30, 0x2e, 0x69,
  2340  	0x6f, 0x2e, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e,
  2341  	0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x73, 0x74,
  2342  	0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x00,
  2343  	0x30, 0x01, 0x42, 0x36, 0x5a, 0x34, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
  2344  	0x2f, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64, 0x2f, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x72, 0x64,
  2345  	0x32, 0x2d, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2d, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x64,
  2346  	0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
  2347  	0x6f, 0x33,
  2348  }
  2349  
  2350  var (
  2351  	file_destination_proto_rawDescOnce sync.Once
  2352  	file_destination_proto_rawDescData = file_destination_proto_rawDesc
  2353  )
  2354  
  2355  func file_destination_proto_rawDescGZIP() []byte {
  2356  	file_destination_proto_rawDescOnce.Do(func() {
  2357  		file_destination_proto_rawDescData = protoimpl.X.CompressGZIP(file_destination_proto_rawDescData)
  2358  	})
  2359  	return file_destination_proto_rawDescData
  2360  }
  2361  
  2362  var file_destination_proto_msgTypes = make([]protoimpl.MessageInfo, 32)
  2363  var file_destination_proto_goTypes = []interface{}{
  2364  	(*GetDestination)(nil),                // 0: io.linkerd.proxy.destination.GetDestination
  2365  	(*Update)(nil),                        // 1: io.linkerd.proxy.destination.Update
  2366  	(*AddrSet)(nil),                       // 2: io.linkerd.proxy.destination.AddrSet
  2367  	(*WeightedAddrSet)(nil),               // 3: io.linkerd.proxy.destination.WeightedAddrSet
  2368  	(*WeightedAddr)(nil),                  // 4: io.linkerd.proxy.destination.WeightedAddr
  2369  	(*TlsIdentity)(nil),                   // 5: io.linkerd.proxy.destination.TlsIdentity
  2370  	(*AuthorityOverride)(nil),             // 6: io.linkerd.proxy.destination.AuthorityOverride
  2371  	(*NoEndpoints)(nil),                   // 7: io.linkerd.proxy.destination.NoEndpoints
  2372  	(*ProtocolHint)(nil),                  // 8: io.linkerd.proxy.destination.ProtocolHint
  2373  	(*Http2ClientParams)(nil),             // 9: io.linkerd.proxy.destination.Http2ClientParams
  2374  	(*DestinationProfile)(nil),            // 10: io.linkerd.proxy.destination.DestinationProfile
  2375  	(*Route)(nil),                         // 11: io.linkerd.proxy.destination.Route
  2376  	(*RetryBudget)(nil),                   // 12: io.linkerd.proxy.destination.RetryBudget
  2377  	(*ResponseClass)(nil),                 // 13: io.linkerd.proxy.destination.ResponseClass
  2378  	(*RequestMatch)(nil),                  // 14: io.linkerd.proxy.destination.RequestMatch
  2379  	(*PathMatch)(nil),                     // 15: io.linkerd.proxy.destination.PathMatch
  2380  	(*ResponseMatch)(nil),                 // 16: io.linkerd.proxy.destination.ResponseMatch
  2381  	(*HttpStatusRange)(nil),               // 17: io.linkerd.proxy.destination.HttpStatusRange
  2382  	(*WeightedDst)(nil),                   // 18: io.linkerd.proxy.destination.WeightedDst
  2383  	nil,                                   // 19: io.linkerd.proxy.destination.WeightedAddrSet.MetricLabelsEntry
  2384  	nil,                                   // 20: io.linkerd.proxy.destination.WeightedAddr.MetricLabelsEntry
  2385  	(*TlsIdentity_DnsLikeIdentity)(nil),   // 21: io.linkerd.proxy.destination.TlsIdentity.DnsLikeIdentity
  2386  	(*TlsIdentity_UriLikeIdentity)(nil),   // 22: io.linkerd.proxy.destination.TlsIdentity.UriLikeIdentity
  2387  	(*ProtocolHint_H2)(nil),               // 23: io.linkerd.proxy.destination.ProtocolHint.H2
  2388  	(*ProtocolHint_Opaque)(nil),           // 24: io.linkerd.proxy.destination.ProtocolHint.Opaque
  2389  	(*ProtocolHint_OpaqueTransport)(nil),  // 25: io.linkerd.proxy.destination.ProtocolHint.OpaqueTransport
  2390  	(*Http2ClientParams_FlowControl)(nil), // 26: io.linkerd.proxy.destination.Http2ClientParams.FlowControl
  2391  	(*Http2ClientParams_KeepAlive)(nil),   // 27: io.linkerd.proxy.destination.Http2ClientParams.KeepAlive
  2392  	(*Http2ClientParams_Internals)(nil),   // 28: io.linkerd.proxy.destination.Http2ClientParams.Internals
  2393  	nil,                                   // 29: io.linkerd.proxy.destination.Route.MetricsLabelsEntry
  2394  	(*RequestMatch_Seq)(nil),              // 30: io.linkerd.proxy.destination.RequestMatch.Seq
  2395  	(*ResponseMatch_Seq)(nil),             // 31: io.linkerd.proxy.destination.ResponseMatch.Seq
  2396  	(*net.TcpAddress)(nil),                // 32: io.linkerd.proxy.net.TcpAddress
  2397  	(*duration.Duration)(nil),             // 33: google.protobuf.Duration
  2398  	(*http_types.HttpMethod)(nil),         // 34: io.linkerd.proxy.http_types.HttpMethod
  2399  }
  2400  var file_destination_proto_depIdxs = []int32{
  2401  	3,  // 0: io.linkerd.proxy.destination.Update.add:type_name -> io.linkerd.proxy.destination.WeightedAddrSet
  2402  	2,  // 1: io.linkerd.proxy.destination.Update.remove:type_name -> io.linkerd.proxy.destination.AddrSet
  2403  	7,  // 2: io.linkerd.proxy.destination.Update.no_endpoints:type_name -> io.linkerd.proxy.destination.NoEndpoints
  2404  	32, // 3: io.linkerd.proxy.destination.AddrSet.addrs:type_name -> io.linkerd.proxy.net.TcpAddress
  2405  	4,  // 4: io.linkerd.proxy.destination.WeightedAddrSet.addrs:type_name -> io.linkerd.proxy.destination.WeightedAddr
  2406  	19, // 5: io.linkerd.proxy.destination.WeightedAddrSet.metric_labels:type_name -> io.linkerd.proxy.destination.WeightedAddrSet.MetricLabelsEntry
  2407  	32, // 6: io.linkerd.proxy.destination.WeightedAddr.addr:type_name -> io.linkerd.proxy.net.TcpAddress
  2408  	20, // 7: io.linkerd.proxy.destination.WeightedAddr.metric_labels:type_name -> io.linkerd.proxy.destination.WeightedAddr.MetricLabelsEntry
  2409  	5,  // 8: io.linkerd.proxy.destination.WeightedAddr.tls_identity:type_name -> io.linkerd.proxy.destination.TlsIdentity
  2410  	8,  // 9: io.linkerd.proxy.destination.WeightedAddr.protocol_hint:type_name -> io.linkerd.proxy.destination.ProtocolHint
  2411  	6,  // 10: io.linkerd.proxy.destination.WeightedAddr.authority_override:type_name -> io.linkerd.proxy.destination.AuthorityOverride
  2412  	9,  // 11: io.linkerd.proxy.destination.WeightedAddr.http2:type_name -> io.linkerd.proxy.destination.Http2ClientParams
  2413  	21, // 12: io.linkerd.proxy.destination.TlsIdentity.dns_like_identity:type_name -> io.linkerd.proxy.destination.TlsIdentity.DnsLikeIdentity
  2414  	22, // 13: io.linkerd.proxy.destination.TlsIdentity.uri_like_identity:type_name -> io.linkerd.proxy.destination.TlsIdentity.UriLikeIdentity
  2415  	21, // 14: io.linkerd.proxy.destination.TlsIdentity.server_name:type_name -> io.linkerd.proxy.destination.TlsIdentity.DnsLikeIdentity
  2416  	23, // 15: io.linkerd.proxy.destination.ProtocolHint.h2:type_name -> io.linkerd.proxy.destination.ProtocolHint.H2
  2417  	24, // 16: io.linkerd.proxy.destination.ProtocolHint.opaque:type_name -> io.linkerd.proxy.destination.ProtocolHint.Opaque
  2418  	25, // 17: io.linkerd.proxy.destination.ProtocolHint.opaque_transport:type_name -> io.linkerd.proxy.destination.ProtocolHint.OpaqueTransport
  2419  	26, // 18: io.linkerd.proxy.destination.Http2ClientParams.flow_control:type_name -> io.linkerd.proxy.destination.Http2ClientParams.FlowControl
  2420  	27, // 19: io.linkerd.proxy.destination.Http2ClientParams.keep_alive:type_name -> io.linkerd.proxy.destination.Http2ClientParams.KeepAlive
  2421  	28, // 20: io.linkerd.proxy.destination.Http2ClientParams.internals:type_name -> io.linkerd.proxy.destination.Http2ClientParams.Internals
  2422  	11, // 21: io.linkerd.proxy.destination.DestinationProfile.routes:type_name -> io.linkerd.proxy.destination.Route
  2423  	12, // 22: io.linkerd.proxy.destination.DestinationProfile.retry_budget:type_name -> io.linkerd.proxy.destination.RetryBudget
  2424  	18, // 23: io.linkerd.proxy.destination.DestinationProfile.dst_overrides:type_name -> io.linkerd.proxy.destination.WeightedDst
  2425  	4,  // 24: io.linkerd.proxy.destination.DestinationProfile.endpoint:type_name -> io.linkerd.proxy.destination.WeightedAddr
  2426  	14, // 25: io.linkerd.proxy.destination.Route.condition:type_name -> io.linkerd.proxy.destination.RequestMatch
  2427  	13, // 26: io.linkerd.proxy.destination.Route.response_classes:type_name -> io.linkerd.proxy.destination.ResponseClass
  2428  	29, // 27: io.linkerd.proxy.destination.Route.metrics_labels:type_name -> io.linkerd.proxy.destination.Route.MetricsLabelsEntry
  2429  	33, // 28: io.linkerd.proxy.destination.Route.timeout:type_name -> google.protobuf.Duration
  2430  	33, // 29: io.linkerd.proxy.destination.RetryBudget.ttl:type_name -> google.protobuf.Duration
  2431  	16, // 30: io.linkerd.proxy.destination.ResponseClass.condition:type_name -> io.linkerd.proxy.destination.ResponseMatch
  2432  	30, // 31: io.linkerd.proxy.destination.RequestMatch.all:type_name -> io.linkerd.proxy.destination.RequestMatch.Seq
  2433  	30, // 32: io.linkerd.proxy.destination.RequestMatch.any:type_name -> io.linkerd.proxy.destination.RequestMatch.Seq
  2434  	14, // 33: io.linkerd.proxy.destination.RequestMatch.not:type_name -> io.linkerd.proxy.destination.RequestMatch
  2435  	15, // 34: io.linkerd.proxy.destination.RequestMatch.path:type_name -> io.linkerd.proxy.destination.PathMatch
  2436  	34, // 35: io.linkerd.proxy.destination.RequestMatch.method:type_name -> io.linkerd.proxy.http_types.HttpMethod
  2437  	31, // 36: io.linkerd.proxy.destination.ResponseMatch.all:type_name -> io.linkerd.proxy.destination.ResponseMatch.Seq
  2438  	31, // 37: io.linkerd.proxy.destination.ResponseMatch.any:type_name -> io.linkerd.proxy.destination.ResponseMatch.Seq
  2439  	16, // 38: io.linkerd.proxy.destination.ResponseMatch.not:type_name -> io.linkerd.proxy.destination.ResponseMatch
  2440  	17, // 39: io.linkerd.proxy.destination.ResponseMatch.status:type_name -> io.linkerd.proxy.destination.HttpStatusRange
  2441  	33, // 40: io.linkerd.proxy.destination.Http2ClientParams.KeepAlive.interval:type_name -> google.protobuf.Duration
  2442  	33, // 41: io.linkerd.proxy.destination.Http2ClientParams.KeepAlive.timeout:type_name -> google.protobuf.Duration
  2443  	14, // 42: io.linkerd.proxy.destination.RequestMatch.Seq.matches:type_name -> io.linkerd.proxy.destination.RequestMatch
  2444  	16, // 43: io.linkerd.proxy.destination.ResponseMatch.Seq.matches:type_name -> io.linkerd.proxy.destination.ResponseMatch
  2445  	0,  // 44: io.linkerd.proxy.destination.Destination.Get:input_type -> io.linkerd.proxy.destination.GetDestination
  2446  	0,  // 45: io.linkerd.proxy.destination.Destination.GetProfile:input_type -> io.linkerd.proxy.destination.GetDestination
  2447  	1,  // 46: io.linkerd.proxy.destination.Destination.Get:output_type -> io.linkerd.proxy.destination.Update
  2448  	10, // 47: io.linkerd.proxy.destination.Destination.GetProfile:output_type -> io.linkerd.proxy.destination.DestinationProfile
  2449  	46, // [46:48] is the sub-list for method output_type
  2450  	44, // [44:46] is the sub-list for method input_type
  2451  	44, // [44:44] is the sub-list for extension type_name
  2452  	44, // [44:44] is the sub-list for extension extendee
  2453  	0,  // [0:44] is the sub-list for field type_name
  2454  }
  2455  
  2456  func init() { file_destination_proto_init() }
  2457  func file_destination_proto_init() {
  2458  	if File_destination_proto != nil {
  2459  		return
  2460  	}
  2461  	if !protoimpl.UnsafeEnabled {
  2462  		file_destination_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  2463  			switch v := v.(*GetDestination); i {
  2464  			case 0:
  2465  				return &v.state
  2466  			case 1:
  2467  				return &v.sizeCache
  2468  			case 2:
  2469  				return &v.unknownFields
  2470  			default:
  2471  				return nil
  2472  			}
  2473  		}
  2474  		file_destination_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  2475  			switch v := v.(*Update); i {
  2476  			case 0:
  2477  				return &v.state
  2478  			case 1:
  2479  				return &v.sizeCache
  2480  			case 2:
  2481  				return &v.unknownFields
  2482  			default:
  2483  				return nil
  2484  			}
  2485  		}
  2486  		file_destination_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  2487  			switch v := v.(*AddrSet); i {
  2488  			case 0:
  2489  				return &v.state
  2490  			case 1:
  2491  				return &v.sizeCache
  2492  			case 2:
  2493  				return &v.unknownFields
  2494  			default:
  2495  				return nil
  2496  			}
  2497  		}
  2498  		file_destination_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  2499  			switch v := v.(*WeightedAddrSet); i {
  2500  			case 0:
  2501  				return &v.state
  2502  			case 1:
  2503  				return &v.sizeCache
  2504  			case 2:
  2505  				return &v.unknownFields
  2506  			default:
  2507  				return nil
  2508  			}
  2509  		}
  2510  		file_destination_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  2511  			switch v := v.(*WeightedAddr); i {
  2512  			case 0:
  2513  				return &v.state
  2514  			case 1:
  2515  				return &v.sizeCache
  2516  			case 2:
  2517  				return &v.unknownFields
  2518  			default:
  2519  				return nil
  2520  			}
  2521  		}
  2522  		file_destination_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  2523  			switch v := v.(*TlsIdentity); i {
  2524  			case 0:
  2525  				return &v.state
  2526  			case 1:
  2527  				return &v.sizeCache
  2528  			case 2:
  2529  				return &v.unknownFields
  2530  			default:
  2531  				return nil
  2532  			}
  2533  		}
  2534  		file_destination_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  2535  			switch v := v.(*AuthorityOverride); i {
  2536  			case 0:
  2537  				return &v.state
  2538  			case 1:
  2539  				return &v.sizeCache
  2540  			case 2:
  2541  				return &v.unknownFields
  2542  			default:
  2543  				return nil
  2544  			}
  2545  		}
  2546  		file_destination_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  2547  			switch v := v.(*NoEndpoints); i {
  2548  			case 0:
  2549  				return &v.state
  2550  			case 1:
  2551  				return &v.sizeCache
  2552  			case 2:
  2553  				return &v.unknownFields
  2554  			default:
  2555  				return nil
  2556  			}
  2557  		}
  2558  		file_destination_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  2559  			switch v := v.(*ProtocolHint); i {
  2560  			case 0:
  2561  				return &v.state
  2562  			case 1:
  2563  				return &v.sizeCache
  2564  			case 2:
  2565  				return &v.unknownFields
  2566  			default:
  2567  				return nil
  2568  			}
  2569  		}
  2570  		file_destination_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  2571  			switch v := v.(*Http2ClientParams); i {
  2572  			case 0:
  2573  				return &v.state
  2574  			case 1:
  2575  				return &v.sizeCache
  2576  			case 2:
  2577  				return &v.unknownFields
  2578  			default:
  2579  				return nil
  2580  			}
  2581  		}
  2582  		file_destination_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  2583  			switch v := v.(*DestinationProfile); i {
  2584  			case 0:
  2585  				return &v.state
  2586  			case 1:
  2587  				return &v.sizeCache
  2588  			case 2:
  2589  				return &v.unknownFields
  2590  			default:
  2591  				return nil
  2592  			}
  2593  		}
  2594  		file_destination_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  2595  			switch v := v.(*Route); i {
  2596  			case 0:
  2597  				return &v.state
  2598  			case 1:
  2599  				return &v.sizeCache
  2600  			case 2:
  2601  				return &v.unknownFields
  2602  			default:
  2603  				return nil
  2604  			}
  2605  		}
  2606  		file_destination_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
  2607  			switch v := v.(*RetryBudget); i {
  2608  			case 0:
  2609  				return &v.state
  2610  			case 1:
  2611  				return &v.sizeCache
  2612  			case 2:
  2613  				return &v.unknownFields
  2614  			default:
  2615  				return nil
  2616  			}
  2617  		}
  2618  		file_destination_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
  2619  			switch v := v.(*ResponseClass); i {
  2620  			case 0:
  2621  				return &v.state
  2622  			case 1:
  2623  				return &v.sizeCache
  2624  			case 2:
  2625  				return &v.unknownFields
  2626  			default:
  2627  				return nil
  2628  			}
  2629  		}
  2630  		file_destination_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
  2631  			switch v := v.(*RequestMatch); i {
  2632  			case 0:
  2633  				return &v.state
  2634  			case 1:
  2635  				return &v.sizeCache
  2636  			case 2:
  2637  				return &v.unknownFields
  2638  			default:
  2639  				return nil
  2640  			}
  2641  		}
  2642  		file_destination_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
  2643  			switch v := v.(*PathMatch); i {
  2644  			case 0:
  2645  				return &v.state
  2646  			case 1:
  2647  				return &v.sizeCache
  2648  			case 2:
  2649  				return &v.unknownFields
  2650  			default:
  2651  				return nil
  2652  			}
  2653  		}
  2654  		file_destination_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
  2655  			switch v := v.(*ResponseMatch); i {
  2656  			case 0:
  2657  				return &v.state
  2658  			case 1:
  2659  				return &v.sizeCache
  2660  			case 2:
  2661  				return &v.unknownFields
  2662  			default:
  2663  				return nil
  2664  			}
  2665  		}
  2666  		file_destination_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
  2667  			switch v := v.(*HttpStatusRange); i {
  2668  			case 0:
  2669  				return &v.state
  2670  			case 1:
  2671  				return &v.sizeCache
  2672  			case 2:
  2673  				return &v.unknownFields
  2674  			default:
  2675  				return nil
  2676  			}
  2677  		}
  2678  		file_destination_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
  2679  			switch v := v.(*WeightedDst); i {
  2680  			case 0:
  2681  				return &v.state
  2682  			case 1:
  2683  				return &v.sizeCache
  2684  			case 2:
  2685  				return &v.unknownFields
  2686  			default:
  2687  				return nil
  2688  			}
  2689  		}
  2690  		file_destination_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
  2691  			switch v := v.(*TlsIdentity_DnsLikeIdentity); i {
  2692  			case 0:
  2693  				return &v.state
  2694  			case 1:
  2695  				return &v.sizeCache
  2696  			case 2:
  2697  				return &v.unknownFields
  2698  			default:
  2699  				return nil
  2700  			}
  2701  		}
  2702  		file_destination_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
  2703  			switch v := v.(*TlsIdentity_UriLikeIdentity); i {
  2704  			case 0:
  2705  				return &v.state
  2706  			case 1:
  2707  				return &v.sizeCache
  2708  			case 2:
  2709  				return &v.unknownFields
  2710  			default:
  2711  				return nil
  2712  			}
  2713  		}
  2714  		file_destination_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
  2715  			switch v := v.(*ProtocolHint_H2); i {
  2716  			case 0:
  2717  				return &v.state
  2718  			case 1:
  2719  				return &v.sizeCache
  2720  			case 2:
  2721  				return &v.unknownFields
  2722  			default:
  2723  				return nil
  2724  			}
  2725  		}
  2726  		file_destination_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
  2727  			switch v := v.(*ProtocolHint_Opaque); i {
  2728  			case 0:
  2729  				return &v.state
  2730  			case 1:
  2731  				return &v.sizeCache
  2732  			case 2:
  2733  				return &v.unknownFields
  2734  			default:
  2735  				return nil
  2736  			}
  2737  		}
  2738  		file_destination_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
  2739  			switch v := v.(*ProtocolHint_OpaqueTransport); i {
  2740  			case 0:
  2741  				return &v.state
  2742  			case 1:
  2743  				return &v.sizeCache
  2744  			case 2:
  2745  				return &v.unknownFields
  2746  			default:
  2747  				return nil
  2748  			}
  2749  		}
  2750  		file_destination_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
  2751  			switch v := v.(*Http2ClientParams_FlowControl); i {
  2752  			case 0:
  2753  				return &v.state
  2754  			case 1:
  2755  				return &v.sizeCache
  2756  			case 2:
  2757  				return &v.unknownFields
  2758  			default:
  2759  				return nil
  2760  			}
  2761  		}
  2762  		file_destination_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
  2763  			switch v := v.(*Http2ClientParams_KeepAlive); i {
  2764  			case 0:
  2765  				return &v.state
  2766  			case 1:
  2767  				return &v.sizeCache
  2768  			case 2:
  2769  				return &v.unknownFields
  2770  			default:
  2771  				return nil
  2772  			}
  2773  		}
  2774  		file_destination_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
  2775  			switch v := v.(*Http2ClientParams_Internals); i {
  2776  			case 0:
  2777  				return &v.state
  2778  			case 1:
  2779  				return &v.sizeCache
  2780  			case 2:
  2781  				return &v.unknownFields
  2782  			default:
  2783  				return nil
  2784  			}
  2785  		}
  2786  		file_destination_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
  2787  			switch v := v.(*RequestMatch_Seq); i {
  2788  			case 0:
  2789  				return &v.state
  2790  			case 1:
  2791  				return &v.sizeCache
  2792  			case 2:
  2793  				return &v.unknownFields
  2794  			default:
  2795  				return nil
  2796  			}
  2797  		}
  2798  		file_destination_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
  2799  			switch v := v.(*ResponseMatch_Seq); i {
  2800  			case 0:
  2801  				return &v.state
  2802  			case 1:
  2803  				return &v.sizeCache
  2804  			case 2:
  2805  				return &v.unknownFields
  2806  			default:
  2807  				return nil
  2808  			}
  2809  		}
  2810  	}
  2811  	file_destination_proto_msgTypes[1].OneofWrappers = []interface{}{
  2812  		(*Update_Add)(nil),
  2813  		(*Update_Remove)(nil),
  2814  		(*Update_NoEndpoints)(nil),
  2815  	}
  2816  	file_destination_proto_msgTypes[5].OneofWrappers = []interface{}{
  2817  		(*TlsIdentity_DnsLikeIdentity_)(nil),
  2818  		(*TlsIdentity_UriLikeIdentity_)(nil),
  2819  	}
  2820  	file_destination_proto_msgTypes[8].OneofWrappers = []interface{}{
  2821  		(*ProtocolHint_H2_)(nil),
  2822  		(*ProtocolHint_Opaque_)(nil),
  2823  	}
  2824  	file_destination_proto_msgTypes[14].OneofWrappers = []interface{}{
  2825  		(*RequestMatch_All)(nil),
  2826  		(*RequestMatch_Any)(nil),
  2827  		(*RequestMatch_Not)(nil),
  2828  		(*RequestMatch_Path)(nil),
  2829  		(*RequestMatch_Method)(nil),
  2830  	}
  2831  	file_destination_proto_msgTypes[16].OneofWrappers = []interface{}{
  2832  		(*ResponseMatch_All)(nil),
  2833  		(*ResponseMatch_Any)(nil),
  2834  		(*ResponseMatch_Not)(nil),
  2835  		(*ResponseMatch_Status)(nil),
  2836  	}
  2837  	type x struct{}
  2838  	out := protoimpl.TypeBuilder{
  2839  		File: protoimpl.DescBuilder{
  2840  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  2841  			RawDescriptor: file_destination_proto_rawDesc,
  2842  			NumEnums:      0,
  2843  			NumMessages:   32,
  2844  			NumExtensions: 0,
  2845  			NumServices:   1,
  2846  		},
  2847  		GoTypes:           file_destination_proto_goTypes,
  2848  		DependencyIndexes: file_destination_proto_depIdxs,
  2849  		MessageInfos:      file_destination_proto_msgTypes,
  2850  	}.Build()
  2851  	File_destination_proto = out.File
  2852  	file_destination_proto_rawDesc = nil
  2853  	file_destination_proto_goTypes = nil
  2854  	file_destination_proto_depIdxs = nil
  2855  }
  2856  

View as plain text