github.com/thanos-io/thanos@v0.32.5/pkg/store/hintspb/hints.pb.go (about)

     1  // Code generated by protoc-gen-gogo. DO NOT EDIT.
     2  // source: store/hintspb/hints.proto
     3  
     4  package hintspb
     5  
     6  import (
     7  	fmt "fmt"
     8  	io "io"
     9  	math "math"
    10  	math_bits "math/bits"
    11  
    12  	_ "github.com/gogo/protobuf/gogoproto"
    13  	proto "github.com/gogo/protobuf/proto"
    14  	storepb "github.com/thanos-io/thanos/pkg/store/storepb"
    15  )
    16  
    17  // Reference imports to suppress errors if they are not otherwise used.
    18  var _ = proto.Marshal
    19  var _ = fmt.Errorf
    20  var _ = math.Inf
    21  
    22  // This is a compile-time assertion to ensure that this generated file
    23  // is compatible with the proto package it is being compiled against.
    24  // A compilation error at this line likely means your copy of the
    25  // proto package needs to be updated.
    26  const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
    27  
    28  type SeriesRequestHints struct {
    29  	/// block_matchers is a list of label matchers that are evaluated against each single block's
    30  	/// labels to filter which blocks get queried. If the list is empty, no per-block filtering
    31  	/// is applied.
    32  	BlockMatchers    []storepb.LabelMatcher `protobuf:"bytes,1,rep,name=block_matchers,json=blockMatchers,proto3" json:"block_matchers"`
    33  	EnableQueryStats bool                   `protobuf:"varint,2,opt,name=enable_query_stats,json=enableQueryStats,proto3" json:"enable_query_stats,omitempty"`
    34  }
    35  
    36  func (m *SeriesRequestHints) Reset()         { *m = SeriesRequestHints{} }
    37  func (m *SeriesRequestHints) String() string { return proto.CompactTextString(m) }
    38  func (*SeriesRequestHints) ProtoMessage()    {}
    39  func (*SeriesRequestHints) Descriptor() ([]byte, []int) {
    40  	return fileDescriptor_b82aa23c4c11e83f, []int{0}
    41  }
    42  func (m *SeriesRequestHints) XXX_Unmarshal(b []byte) error {
    43  	return m.Unmarshal(b)
    44  }
    45  func (m *SeriesRequestHints) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    46  	if deterministic {
    47  		return xxx_messageInfo_SeriesRequestHints.Marshal(b, m, deterministic)
    48  	} else {
    49  		b = b[:cap(b)]
    50  		n, err := m.MarshalToSizedBuffer(b)
    51  		if err != nil {
    52  			return nil, err
    53  		}
    54  		return b[:n], nil
    55  	}
    56  }
    57  func (m *SeriesRequestHints) XXX_Merge(src proto.Message) {
    58  	xxx_messageInfo_SeriesRequestHints.Merge(m, src)
    59  }
    60  func (m *SeriesRequestHints) XXX_Size() int {
    61  	return m.Size()
    62  }
    63  func (m *SeriesRequestHints) XXX_DiscardUnknown() {
    64  	xxx_messageInfo_SeriesRequestHints.DiscardUnknown(m)
    65  }
    66  
    67  var xxx_messageInfo_SeriesRequestHints proto.InternalMessageInfo
    68  
    69  type SeriesResponseHints struct {
    70  	/// queried_blocks is the list of blocks that have been queried.
    71  	QueriedBlocks []Block `protobuf:"bytes,1,rep,name=queried_blocks,json=queriedBlocks,proto3" json:"queried_blocks"`
    72  	/// query_stats contains statistics of querying store gateway.
    73  	QueryStats *QueryStats `protobuf:"bytes,2,opt,name=query_stats,json=queryStats,proto3" json:"query_stats,omitempty"`
    74  }
    75  
    76  func (m *SeriesResponseHints) Reset()         { *m = SeriesResponseHints{} }
    77  func (m *SeriesResponseHints) String() string { return proto.CompactTextString(m) }
    78  func (*SeriesResponseHints) ProtoMessage()    {}
    79  func (*SeriesResponseHints) Descriptor() ([]byte, []int) {
    80  	return fileDescriptor_b82aa23c4c11e83f, []int{1}
    81  }
    82  func (m *SeriesResponseHints) XXX_Unmarshal(b []byte) error {
    83  	return m.Unmarshal(b)
    84  }
    85  func (m *SeriesResponseHints) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    86  	if deterministic {
    87  		return xxx_messageInfo_SeriesResponseHints.Marshal(b, m, deterministic)
    88  	} else {
    89  		b = b[:cap(b)]
    90  		n, err := m.MarshalToSizedBuffer(b)
    91  		if err != nil {
    92  			return nil, err
    93  		}
    94  		return b[:n], nil
    95  	}
    96  }
    97  func (m *SeriesResponseHints) XXX_Merge(src proto.Message) {
    98  	xxx_messageInfo_SeriesResponseHints.Merge(m, src)
    99  }
   100  func (m *SeriesResponseHints) XXX_Size() int {
   101  	return m.Size()
   102  }
   103  func (m *SeriesResponseHints) XXX_DiscardUnknown() {
   104  	xxx_messageInfo_SeriesResponseHints.DiscardUnknown(m)
   105  }
   106  
   107  var xxx_messageInfo_SeriesResponseHints proto.InternalMessageInfo
   108  
   109  type Block struct {
   110  	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
   111  }
   112  
   113  func (m *Block) Reset()         { *m = Block{} }
   114  func (m *Block) String() string { return proto.CompactTextString(m) }
   115  func (*Block) ProtoMessage()    {}
   116  func (*Block) Descriptor() ([]byte, []int) {
   117  	return fileDescriptor_b82aa23c4c11e83f, []int{2}
   118  }
   119  func (m *Block) XXX_Unmarshal(b []byte) error {
   120  	return m.Unmarshal(b)
   121  }
   122  func (m *Block) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   123  	if deterministic {
   124  		return xxx_messageInfo_Block.Marshal(b, m, deterministic)
   125  	} else {
   126  		b = b[:cap(b)]
   127  		n, err := m.MarshalToSizedBuffer(b)
   128  		if err != nil {
   129  			return nil, err
   130  		}
   131  		return b[:n], nil
   132  	}
   133  }
   134  func (m *Block) XXX_Merge(src proto.Message) {
   135  	xxx_messageInfo_Block.Merge(m, src)
   136  }
   137  func (m *Block) XXX_Size() int {
   138  	return m.Size()
   139  }
   140  func (m *Block) XXX_DiscardUnknown() {
   141  	xxx_messageInfo_Block.DiscardUnknown(m)
   142  }
   143  
   144  var xxx_messageInfo_Block proto.InternalMessageInfo
   145  
   146  type LabelNamesRequestHints struct {
   147  	/// block_matchers is a list of label matchers that are evaluated against each single block's
   148  	/// labels to filter which blocks get queried. If the list is empty, no per-block filtering
   149  	/// is applied.
   150  	BlockMatchers []storepb.LabelMatcher `protobuf:"bytes,1,rep,name=block_matchers,json=blockMatchers,proto3" json:"block_matchers"`
   151  }
   152  
   153  func (m *LabelNamesRequestHints) Reset()         { *m = LabelNamesRequestHints{} }
   154  func (m *LabelNamesRequestHints) String() string { return proto.CompactTextString(m) }
   155  func (*LabelNamesRequestHints) ProtoMessage()    {}
   156  func (*LabelNamesRequestHints) Descriptor() ([]byte, []int) {
   157  	return fileDescriptor_b82aa23c4c11e83f, []int{3}
   158  }
   159  func (m *LabelNamesRequestHints) XXX_Unmarshal(b []byte) error {
   160  	return m.Unmarshal(b)
   161  }
   162  func (m *LabelNamesRequestHints) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   163  	if deterministic {
   164  		return xxx_messageInfo_LabelNamesRequestHints.Marshal(b, m, deterministic)
   165  	} else {
   166  		b = b[:cap(b)]
   167  		n, err := m.MarshalToSizedBuffer(b)
   168  		if err != nil {
   169  			return nil, err
   170  		}
   171  		return b[:n], nil
   172  	}
   173  }
   174  func (m *LabelNamesRequestHints) XXX_Merge(src proto.Message) {
   175  	xxx_messageInfo_LabelNamesRequestHints.Merge(m, src)
   176  }
   177  func (m *LabelNamesRequestHints) XXX_Size() int {
   178  	return m.Size()
   179  }
   180  func (m *LabelNamesRequestHints) XXX_DiscardUnknown() {
   181  	xxx_messageInfo_LabelNamesRequestHints.DiscardUnknown(m)
   182  }
   183  
   184  var xxx_messageInfo_LabelNamesRequestHints proto.InternalMessageInfo
   185  
   186  type LabelNamesResponseHints struct {
   187  	/// queried_blocks is the list of blocks that have been queried.
   188  	QueriedBlocks []Block `protobuf:"bytes,1,rep,name=queried_blocks,json=queriedBlocks,proto3" json:"queried_blocks"`
   189  }
   190  
   191  func (m *LabelNamesResponseHints) Reset()         { *m = LabelNamesResponseHints{} }
   192  func (m *LabelNamesResponseHints) String() string { return proto.CompactTextString(m) }
   193  func (*LabelNamesResponseHints) ProtoMessage()    {}
   194  func (*LabelNamesResponseHints) Descriptor() ([]byte, []int) {
   195  	return fileDescriptor_b82aa23c4c11e83f, []int{4}
   196  }
   197  func (m *LabelNamesResponseHints) XXX_Unmarshal(b []byte) error {
   198  	return m.Unmarshal(b)
   199  }
   200  func (m *LabelNamesResponseHints) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   201  	if deterministic {
   202  		return xxx_messageInfo_LabelNamesResponseHints.Marshal(b, m, deterministic)
   203  	} else {
   204  		b = b[:cap(b)]
   205  		n, err := m.MarshalToSizedBuffer(b)
   206  		if err != nil {
   207  			return nil, err
   208  		}
   209  		return b[:n], nil
   210  	}
   211  }
   212  func (m *LabelNamesResponseHints) XXX_Merge(src proto.Message) {
   213  	xxx_messageInfo_LabelNamesResponseHints.Merge(m, src)
   214  }
   215  func (m *LabelNamesResponseHints) XXX_Size() int {
   216  	return m.Size()
   217  }
   218  func (m *LabelNamesResponseHints) XXX_DiscardUnknown() {
   219  	xxx_messageInfo_LabelNamesResponseHints.DiscardUnknown(m)
   220  }
   221  
   222  var xxx_messageInfo_LabelNamesResponseHints proto.InternalMessageInfo
   223  
   224  type LabelValuesRequestHints struct {
   225  	/// block_matchers is a list of label matchers that are evaluated against each single block's
   226  	/// labels to filter which blocks get queried. If the list is empty, no per-block filtering
   227  	/// is applied.
   228  	BlockMatchers []storepb.LabelMatcher `protobuf:"bytes,1,rep,name=block_matchers,json=blockMatchers,proto3" json:"block_matchers"`
   229  }
   230  
   231  func (m *LabelValuesRequestHints) Reset()         { *m = LabelValuesRequestHints{} }
   232  func (m *LabelValuesRequestHints) String() string { return proto.CompactTextString(m) }
   233  func (*LabelValuesRequestHints) ProtoMessage()    {}
   234  func (*LabelValuesRequestHints) Descriptor() ([]byte, []int) {
   235  	return fileDescriptor_b82aa23c4c11e83f, []int{5}
   236  }
   237  func (m *LabelValuesRequestHints) XXX_Unmarshal(b []byte) error {
   238  	return m.Unmarshal(b)
   239  }
   240  func (m *LabelValuesRequestHints) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   241  	if deterministic {
   242  		return xxx_messageInfo_LabelValuesRequestHints.Marshal(b, m, deterministic)
   243  	} else {
   244  		b = b[:cap(b)]
   245  		n, err := m.MarshalToSizedBuffer(b)
   246  		if err != nil {
   247  			return nil, err
   248  		}
   249  		return b[:n], nil
   250  	}
   251  }
   252  func (m *LabelValuesRequestHints) XXX_Merge(src proto.Message) {
   253  	xxx_messageInfo_LabelValuesRequestHints.Merge(m, src)
   254  }
   255  func (m *LabelValuesRequestHints) XXX_Size() int {
   256  	return m.Size()
   257  }
   258  func (m *LabelValuesRequestHints) XXX_DiscardUnknown() {
   259  	xxx_messageInfo_LabelValuesRequestHints.DiscardUnknown(m)
   260  }
   261  
   262  var xxx_messageInfo_LabelValuesRequestHints proto.InternalMessageInfo
   263  
   264  type LabelValuesResponseHints struct {
   265  	/// queried_blocks is the list of blocks that have been queried.
   266  	QueriedBlocks []Block `protobuf:"bytes,1,rep,name=queried_blocks,json=queriedBlocks,proto3" json:"queried_blocks"`
   267  }
   268  
   269  func (m *LabelValuesResponseHints) Reset()         { *m = LabelValuesResponseHints{} }
   270  func (m *LabelValuesResponseHints) String() string { return proto.CompactTextString(m) }
   271  func (*LabelValuesResponseHints) ProtoMessage()    {}
   272  func (*LabelValuesResponseHints) Descriptor() ([]byte, []int) {
   273  	return fileDescriptor_b82aa23c4c11e83f, []int{6}
   274  }
   275  func (m *LabelValuesResponseHints) XXX_Unmarshal(b []byte) error {
   276  	return m.Unmarshal(b)
   277  }
   278  func (m *LabelValuesResponseHints) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   279  	if deterministic {
   280  		return xxx_messageInfo_LabelValuesResponseHints.Marshal(b, m, deterministic)
   281  	} else {
   282  		b = b[:cap(b)]
   283  		n, err := m.MarshalToSizedBuffer(b)
   284  		if err != nil {
   285  			return nil, err
   286  		}
   287  		return b[:n], nil
   288  	}
   289  }
   290  func (m *LabelValuesResponseHints) XXX_Merge(src proto.Message) {
   291  	xxx_messageInfo_LabelValuesResponseHints.Merge(m, src)
   292  }
   293  func (m *LabelValuesResponseHints) XXX_Size() int {
   294  	return m.Size()
   295  }
   296  func (m *LabelValuesResponseHints) XXX_DiscardUnknown() {
   297  	xxx_messageInfo_LabelValuesResponseHints.DiscardUnknown(m)
   298  }
   299  
   300  var xxx_messageInfo_LabelValuesResponseHints proto.InternalMessageInfo
   301  
   302  // / QueryStats fields are unstable and might change in the future.
   303  type QueryStats struct {
   304  	BlocksQueried          int64 `protobuf:"varint,1,opt,name=blocks_queried,json=blocksQueried,proto3" json:"blocks_queried,omitempty"`
   305  	MergedSeriesCount      int64 `protobuf:"varint,2,opt,name=merged_series_count,json=mergedSeriesCount,proto3" json:"merged_series_count,omitempty"`
   306  	MergedChunksCount      int64 `protobuf:"varint,3,opt,name=merged_chunks_count,json=mergedChunksCount,proto3" json:"merged_chunks_count,omitempty"`
   307  	PostingsTouched        int64 `protobuf:"varint,4,opt,name=postings_touched,json=postingsTouched,proto3" json:"postings_touched,omitempty"`
   308  	PostingsTouchedSizeSum int64 `protobuf:"varint,5,opt,name=postings_touched_size_sum,json=postingsTouchedSizeSum,proto3" json:"postings_touched_size_sum,omitempty"`
   309  	PostingsToFetch        int64 `protobuf:"varint,6,opt,name=postings_to_fetch,json=postingsToFetch,proto3" json:"postings_to_fetch,omitempty"`
   310  	PostingsFetched        int64 `protobuf:"varint,7,opt,name=postings_fetched,json=postingsFetched,proto3" json:"postings_fetched,omitempty"`
   311  	PostingsFetchedSizeSum int64 `protobuf:"varint,8,opt,name=postings_fetched_size_sum,json=postingsFetchedSizeSum,proto3" json:"postings_fetched_size_sum,omitempty"`
   312  	PostingsFetchCount     int64 `protobuf:"varint,9,opt,name=postings_fetch_count,json=postingsFetchCount,proto3" json:"postings_fetch_count,omitempty"`
   313  	SeriesTouched          int64 `protobuf:"varint,10,opt,name=series_touched,json=seriesTouched,proto3" json:"series_touched,omitempty"`
   314  	SeriesTouchedSizeSum   int64 `protobuf:"varint,11,opt,name=series_touched_size_sum,json=seriesTouchedSizeSum,proto3" json:"series_touched_size_sum,omitempty"`
   315  	SeriesFetched          int64 `protobuf:"varint,12,opt,name=series_fetched,json=seriesFetched,proto3" json:"series_fetched,omitempty"`
   316  	SeriesFetchedSizeSum   int64 `protobuf:"varint,13,opt,name=series_fetched_size_sum,json=seriesFetchedSizeSum,proto3" json:"series_fetched_size_sum,omitempty"`
   317  	SeriesFetchCount       int64 `protobuf:"varint,14,opt,name=series_fetch_count,json=seriesFetchCount,proto3" json:"series_fetch_count,omitempty"`
   318  	ChunksTouched          int64 `protobuf:"varint,15,opt,name=chunks_touched,json=chunksTouched,proto3" json:"chunks_touched,omitempty"`
   319  	ChunksTouchedSizeSum   int64 `protobuf:"varint,16,opt,name=chunks_touched_size_sum,json=chunksTouchedSizeSum,proto3" json:"chunks_touched_size_sum,omitempty"`
   320  	ChunksFetched          int64 `protobuf:"varint,17,opt,name=chunks_fetched,json=chunksFetched,proto3" json:"chunks_fetched,omitempty"`
   321  	ChunksFetchedSizeSum   int64 `protobuf:"varint,18,opt,name=chunks_fetched_size_sum,json=chunksFetchedSizeSum,proto3" json:"chunks_fetched_size_sum,omitempty"`
   322  	ChunksFetchCount       int64 `protobuf:"varint,19,opt,name=chunks_fetch_count,json=chunksFetchCount,proto3" json:"chunks_fetch_count,omitempty"`
   323  	DataDownloadedSizeSum  int64 `protobuf:"varint,20,opt,name=data_downloaded_size_sum,json=dataDownloadedSizeSum,proto3" json:"data_downloaded_size_sum,omitempty"`
   324  }
   325  
   326  func (m *QueryStats) Reset()         { *m = QueryStats{} }
   327  func (m *QueryStats) String() string { return proto.CompactTextString(m) }
   328  func (*QueryStats) ProtoMessage()    {}
   329  func (*QueryStats) Descriptor() ([]byte, []int) {
   330  	return fileDescriptor_b82aa23c4c11e83f, []int{7}
   331  }
   332  func (m *QueryStats) XXX_Unmarshal(b []byte) error {
   333  	return m.Unmarshal(b)
   334  }
   335  func (m *QueryStats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   336  	if deterministic {
   337  		return xxx_messageInfo_QueryStats.Marshal(b, m, deterministic)
   338  	} else {
   339  		b = b[:cap(b)]
   340  		n, err := m.MarshalToSizedBuffer(b)
   341  		if err != nil {
   342  			return nil, err
   343  		}
   344  		return b[:n], nil
   345  	}
   346  }
   347  func (m *QueryStats) XXX_Merge(src proto.Message) {
   348  	xxx_messageInfo_QueryStats.Merge(m, src)
   349  }
   350  func (m *QueryStats) XXX_Size() int {
   351  	return m.Size()
   352  }
   353  func (m *QueryStats) XXX_DiscardUnknown() {
   354  	xxx_messageInfo_QueryStats.DiscardUnknown(m)
   355  }
   356  
   357  var xxx_messageInfo_QueryStats proto.InternalMessageInfo
   358  
   359  func init() {
   360  	proto.RegisterType((*SeriesRequestHints)(nil), "hintspb.SeriesRequestHints")
   361  	proto.RegisterType((*SeriesResponseHints)(nil), "hintspb.SeriesResponseHints")
   362  	proto.RegisterType((*Block)(nil), "hintspb.Block")
   363  	proto.RegisterType((*LabelNamesRequestHints)(nil), "hintspb.LabelNamesRequestHints")
   364  	proto.RegisterType((*LabelNamesResponseHints)(nil), "hintspb.LabelNamesResponseHints")
   365  	proto.RegisterType((*LabelValuesRequestHints)(nil), "hintspb.LabelValuesRequestHints")
   366  	proto.RegisterType((*LabelValuesResponseHints)(nil), "hintspb.LabelValuesResponseHints")
   367  	proto.RegisterType((*QueryStats)(nil), "hintspb.QueryStats")
   368  }
   369  
   370  func init() { proto.RegisterFile("store/hintspb/hints.proto", fileDescriptor_b82aa23c4c11e83f) }
   371  
   372  var fileDescriptor_b82aa23c4c11e83f = []byte{
   373  	// 652 bytes of a gzipped FileDescriptorProto
   374  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0xcd, 0x4f, 0x13, 0x41,
   375  	0x1c, 0xed, 0x52, 0x3e, 0x7f, 0x95, 0x52, 0xa6, 0x15, 0x16, 0x0e, 0x2b, 0x69, 0x42, 0x82, 0x86,
   376  	0x14, 0x83, 0x31, 0x46, 0x3d, 0x09, 0x86, 0x78, 0x50, 0x13, 0x5a, 0x83, 0x89, 0x9a, 0x4c, 0xf6,
   377  	0x63, 0xec, 0x6e, 0x68, 0x77, 0x96, 0x9d, 0xd9, 0x18, 0xb8, 0x7b, 0x35, 0xfe, 0x59, 0xc4, 0x13,
   378  	0x47, 0x4f, 0x46, 0xe1, 0x1f, 0x31, 0x3b, 0x1f, 0xec, 0x4c, 0xb9, 0xf6, 0x02, 0xcd, 0xfb, 0xbd,
   379  	0xf7, 0xe6, 0xbd, 0xdf, 0x4c, 0xb2, 0xb0, 0xc1, 0x38, 0xcd, 0xc9, 0x5e, 0x9c, 0xa4, 0x9c, 0x65,
   380  	0x81, 0xfc, 0xdf, 0xcb, 0x72, 0xca, 0x29, 0x5a, 0x50, 0xe0, 0x66, 0x67, 0x48, 0x87, 0x54, 0x60,
   381  	0x7b, 0xe5, 0x2f, 0x39, 0xde, 0x54, 0x4a, 0xf1, 0x37, 0x0b, 0xf6, 0xf8, 0x79, 0x46, 0x94, 0xb2,
   382  	0xfb, 0xdd, 0x01, 0x34, 0x20, 0x79, 0x42, 0x58, 0x9f, 0x9c, 0x15, 0x84, 0xf1, 0x37, 0xa5, 0x13,
   383  	0x7a, 0x05, 0xcd, 0x60, 0x44, 0xc3, 0x53, 0x3c, 0xf6, 0x79, 0x18, 0x93, 0x9c, 0xb9, 0xce, 0x56,
   384  	0x7d, 0xa7, 0xb1, 0xdf, 0xe9, 0xf1, 0xd8, 0x4f, 0x29, 0xeb, 0xbd, 0xf5, 0x03, 0x32, 0x7a, 0x27,
   385  	0x87, 0x07, 0xb3, 0x97, 0x7f, 0x1e, 0xd4, 0xfa, 0xcb, 0x42, 0xa1, 0x30, 0x86, 0x76, 0x01, 0x91,
   386  	0xd4, 0x0f, 0x46, 0x04, 0x9f, 0x15, 0x24, 0x3f, 0xc7, 0x8c, 0xfb, 0x9c, 0xb9, 0x33, 0x5b, 0xce,
   387  	0xce, 0x62, 0xbf, 0x25, 0x27, 0xc7, 0xe5, 0x60, 0x50, 0xe2, 0xdd, 0x1f, 0x0e, 0xb4, 0x75, 0x0e,
   388  	0x96, 0xd1, 0x94, 0x11, 0x19, 0xe4, 0x25, 0x34, 0x4b, 0x79, 0x42, 0x22, 0x2c, 0xec, 0x75, 0x90,
   389  	0x66, 0x4f, 0x55, 0xee, 0x1d, 0x94, 0xb0, 0x8e, 0xa0, 0xb8, 0x02, 0x63, 0xe8, 0x05, 0x34, 0x26,
   390  	0xcf, 0x6e, 0xec, 0xb7, 0x6f, 0x95, 0xd5, 0xf1, 0x42, 0xee, 0xf4, 0xe1, 0xac, 0x0a, 0xb4, 0x0e,
   391  	0x73, 0xc2, 0x05, 0x35, 0x61, 0x26, 0x89, 0x5c, 0x67, 0xcb, 0xd9, 0x59, 0xea, 0xcf, 0x24, 0x51,
   392  	0xf7, 0x33, 0xac, 0x89, 0xf2, 0xef, 0xfd, 0xf1, 0xd4, 0x97, 0xd6, 0x3d, 0x81, 0x75, 0xd3, 0x7c,
   393  	0x5a, 0x9b, 0xe8, 0x7e, 0x51, 0xbe, 0x27, 0xfe, 0xa8, 0x98, 0x7e, 0xea, 0x8f, 0xe0, 0x5a, 0xee,
   394  	0x53, 0x8b, 0xfd, 0x6b, 0x01, 0xa0, 0xba, 0x25, 0xb4, 0xad, 0xa2, 0x32, 0xac, 0x68, 0xe2, 0x5a,
   395  	0xea, 0x2a, 0x0e, 0x3b, 0x96, 0x20, 0xea, 0x41, 0x7b, 0x4c, 0xf2, 0x21, 0x89, 0x30, 0x13, 0x2f,
   396  	0x0a, 0x87, 0xb4, 0x48, 0xb9, 0xb8, 0xfe, 0x7a, 0x7f, 0x55, 0x8e, 0xe4, 0x5b, 0x3b, 0x2c, 0x07,
   397  	0x06, 0x3f, 0x8c, 0x8b, 0xf4, 0x54, 0xf3, 0xeb, 0x26, 0xff, 0x50, 0x4c, 0x24, 0xff, 0x21, 0xb4,
   398  	0x32, 0xca, 0x78, 0x92, 0x0e, 0x19, 0xe6, 0xb4, 0x08, 0x63, 0x12, 0xb9, 0xb3, 0x82, 0xbc, 0xa2,
   399  	0xf1, 0x0f, 0x12, 0x46, 0xcf, 0x61, 0x63, 0x92, 0x8a, 0x59, 0x72, 0x41, 0x30, 0x2b, 0xc6, 0xee,
   400  	0x9c, 0xd0, 0xac, 0x4d, 0x68, 0x06, 0xc9, 0x05, 0x19, 0x14, 0x63, 0xf4, 0x08, 0x56, 0x0d, 0x29,
   401  	0xfe, 0x4a, 0x78, 0x18, 0xbb, 0xf3, 0x93, 0xc7, 0x1c, 0x95, 0xb0, 0x95, 0x48, 0x10, 0x49, 0xe4,
   402  	0x2e, 0xd8, 0xd4, 0x23, 0x09, 0x5b, 0x89, 0x14, 0xb5, 0x4a, 0xb4, 0x68, 0x27, 0x52, 0x1a, 0x9d,
   403  	0xe8, 0x31, 0x74, 0x6c, 0xa9, 0x5a, 0xd4, 0x92, 0x50, 0x21, 0x4b, 0x25, 0x37, 0xb5, 0x0d, 0x4d,
   404  	0x75, 0x05, 0x7a, 0x4f, 0x20, 0x2f, 0x4c, 0xa2, 0x7a, 0x4b, 0x4f, 0x61, 0xdd, 0xa6, 0x55, 0x89,
   405  	0x1a, 0x82, 0xdf, 0xb1, 0xf8, 0x3a, 0x4f, 0xe5, 0xae, 0x3b, 0xdf, 0x33, 0xdd, 0x75, 0xe3, 0xca,
   406  	0xfd, 0x4e, 0xdf, 0x65, 0xd3, 0x7d, 0xa2, 0xed, 0x2e, 0x20, 0x53, 0xa6, 0xba, 0x36, 0x85, 0xa2,
   407  	0x65, 0x28, 0x6e, 0x9b, 0xaa, 0xc7, 0xa3, 0x9b, 0xae, 0xc8, 0x2c, 0x12, 0x35, 0x9a, 0xda, 0xb4,
   408  	0x2a, 0x4b, 0x4b, 0x66, 0xb1, 0xf8, 0x46, 0x53, 0x25, 0xd3, 0x4d, 0x57, 0x4d, 0x77, 0xa3, 0xa9,
   409  	0x4d, 0xab, 0xdc, 0x91, 0xe9, 0x7e, 0xb7, 0xa9, 0x29, 0x53, 0x4d, 0xdb, 0xb2, 0xa9, 0xa1, 0x90,
   410  	0x4d, 0x9f, 0x81, 0x1b, 0xf9, 0xdc, 0xc7, 0x11, 0xfd, 0x96, 0x8e, 0xa8, 0x1f, 0x99, 0xa7, 0x74,
   411  	0x84, 0xe6, 0x7e, 0x39, 0x7f, 0x7d, 0x3b, 0x56, 0xc7, 0x1c, 0x6c, 0x5f, 0xfe, 0xf3, 0x6a, 0x97,
   412  	0xd7, 0x9e, 0x73, 0x75, 0xed, 0x39, 0x7f, 0xaf, 0x3d, 0xe7, 0xe7, 0x8d, 0x57, 0xbb, 0xba, 0xf1,
   413  	0x6a, 0xbf, 0x6f, 0xbc, 0xda, 0x27, 0xfd, 0x09, 0x0b, 0xe6, 0xc5, 0x87, 0xe9, 0xc9, 0xff, 0x00,
   414  	0x00, 0x00, 0xff, 0xff, 0x4e, 0x26, 0x0a, 0x60, 0xef, 0x06, 0x00, 0x00,
   415  }
   416  
   417  func (m *SeriesRequestHints) Marshal() (dAtA []byte, err error) {
   418  	size := m.Size()
   419  	dAtA = make([]byte, size)
   420  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   421  	if err != nil {
   422  		return nil, err
   423  	}
   424  	return dAtA[:n], nil
   425  }
   426  
   427  func (m *SeriesRequestHints) MarshalTo(dAtA []byte) (int, error) {
   428  	size := m.Size()
   429  	return m.MarshalToSizedBuffer(dAtA[:size])
   430  }
   431  
   432  func (m *SeriesRequestHints) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   433  	i := len(dAtA)
   434  	_ = i
   435  	var l int
   436  	_ = l
   437  	if m.EnableQueryStats {
   438  		i--
   439  		if m.EnableQueryStats {
   440  			dAtA[i] = 1
   441  		} else {
   442  			dAtA[i] = 0
   443  		}
   444  		i--
   445  		dAtA[i] = 0x10
   446  	}
   447  	if len(m.BlockMatchers) > 0 {
   448  		for iNdEx := len(m.BlockMatchers) - 1; iNdEx >= 0; iNdEx-- {
   449  			{
   450  				size, err := m.BlockMatchers[iNdEx].MarshalToSizedBuffer(dAtA[:i])
   451  				if err != nil {
   452  					return 0, err
   453  				}
   454  				i -= size
   455  				i = encodeVarintHints(dAtA, i, uint64(size))
   456  			}
   457  			i--
   458  			dAtA[i] = 0xa
   459  		}
   460  	}
   461  	return len(dAtA) - i, nil
   462  }
   463  
   464  func (m *SeriesResponseHints) Marshal() (dAtA []byte, err error) {
   465  	size := m.Size()
   466  	dAtA = make([]byte, size)
   467  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   468  	if err != nil {
   469  		return nil, err
   470  	}
   471  	return dAtA[:n], nil
   472  }
   473  
   474  func (m *SeriesResponseHints) MarshalTo(dAtA []byte) (int, error) {
   475  	size := m.Size()
   476  	return m.MarshalToSizedBuffer(dAtA[:size])
   477  }
   478  
   479  func (m *SeriesResponseHints) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   480  	i := len(dAtA)
   481  	_ = i
   482  	var l int
   483  	_ = l
   484  	if m.QueryStats != nil {
   485  		{
   486  			size, err := m.QueryStats.MarshalToSizedBuffer(dAtA[:i])
   487  			if err != nil {
   488  				return 0, err
   489  			}
   490  			i -= size
   491  			i = encodeVarintHints(dAtA, i, uint64(size))
   492  		}
   493  		i--
   494  		dAtA[i] = 0x12
   495  	}
   496  	if len(m.QueriedBlocks) > 0 {
   497  		for iNdEx := len(m.QueriedBlocks) - 1; iNdEx >= 0; iNdEx-- {
   498  			{
   499  				size, err := m.QueriedBlocks[iNdEx].MarshalToSizedBuffer(dAtA[:i])
   500  				if err != nil {
   501  					return 0, err
   502  				}
   503  				i -= size
   504  				i = encodeVarintHints(dAtA, i, uint64(size))
   505  			}
   506  			i--
   507  			dAtA[i] = 0xa
   508  		}
   509  	}
   510  	return len(dAtA) - i, nil
   511  }
   512  
   513  func (m *Block) Marshal() (dAtA []byte, err error) {
   514  	size := m.Size()
   515  	dAtA = make([]byte, size)
   516  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   517  	if err != nil {
   518  		return nil, err
   519  	}
   520  	return dAtA[:n], nil
   521  }
   522  
   523  func (m *Block) MarshalTo(dAtA []byte) (int, error) {
   524  	size := m.Size()
   525  	return m.MarshalToSizedBuffer(dAtA[:size])
   526  }
   527  
   528  func (m *Block) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   529  	i := len(dAtA)
   530  	_ = i
   531  	var l int
   532  	_ = l
   533  	if len(m.Id) > 0 {
   534  		i -= len(m.Id)
   535  		copy(dAtA[i:], m.Id)
   536  		i = encodeVarintHints(dAtA, i, uint64(len(m.Id)))
   537  		i--
   538  		dAtA[i] = 0xa
   539  	}
   540  	return len(dAtA) - i, nil
   541  }
   542  
   543  func (m *LabelNamesRequestHints) Marshal() (dAtA []byte, err error) {
   544  	size := m.Size()
   545  	dAtA = make([]byte, size)
   546  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   547  	if err != nil {
   548  		return nil, err
   549  	}
   550  	return dAtA[:n], nil
   551  }
   552  
   553  func (m *LabelNamesRequestHints) MarshalTo(dAtA []byte) (int, error) {
   554  	size := m.Size()
   555  	return m.MarshalToSizedBuffer(dAtA[:size])
   556  }
   557  
   558  func (m *LabelNamesRequestHints) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   559  	i := len(dAtA)
   560  	_ = i
   561  	var l int
   562  	_ = l
   563  	if len(m.BlockMatchers) > 0 {
   564  		for iNdEx := len(m.BlockMatchers) - 1; iNdEx >= 0; iNdEx-- {
   565  			{
   566  				size, err := m.BlockMatchers[iNdEx].MarshalToSizedBuffer(dAtA[:i])
   567  				if err != nil {
   568  					return 0, err
   569  				}
   570  				i -= size
   571  				i = encodeVarintHints(dAtA, i, uint64(size))
   572  			}
   573  			i--
   574  			dAtA[i] = 0xa
   575  		}
   576  	}
   577  	return len(dAtA) - i, nil
   578  }
   579  
   580  func (m *LabelNamesResponseHints) Marshal() (dAtA []byte, err error) {
   581  	size := m.Size()
   582  	dAtA = make([]byte, size)
   583  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   584  	if err != nil {
   585  		return nil, err
   586  	}
   587  	return dAtA[:n], nil
   588  }
   589  
   590  func (m *LabelNamesResponseHints) MarshalTo(dAtA []byte) (int, error) {
   591  	size := m.Size()
   592  	return m.MarshalToSizedBuffer(dAtA[:size])
   593  }
   594  
   595  func (m *LabelNamesResponseHints) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   596  	i := len(dAtA)
   597  	_ = i
   598  	var l int
   599  	_ = l
   600  	if len(m.QueriedBlocks) > 0 {
   601  		for iNdEx := len(m.QueriedBlocks) - 1; iNdEx >= 0; iNdEx-- {
   602  			{
   603  				size, err := m.QueriedBlocks[iNdEx].MarshalToSizedBuffer(dAtA[:i])
   604  				if err != nil {
   605  					return 0, err
   606  				}
   607  				i -= size
   608  				i = encodeVarintHints(dAtA, i, uint64(size))
   609  			}
   610  			i--
   611  			dAtA[i] = 0xa
   612  		}
   613  	}
   614  	return len(dAtA) - i, nil
   615  }
   616  
   617  func (m *LabelValuesRequestHints) Marshal() (dAtA []byte, err error) {
   618  	size := m.Size()
   619  	dAtA = make([]byte, size)
   620  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   621  	if err != nil {
   622  		return nil, err
   623  	}
   624  	return dAtA[:n], nil
   625  }
   626  
   627  func (m *LabelValuesRequestHints) MarshalTo(dAtA []byte) (int, error) {
   628  	size := m.Size()
   629  	return m.MarshalToSizedBuffer(dAtA[:size])
   630  }
   631  
   632  func (m *LabelValuesRequestHints) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   633  	i := len(dAtA)
   634  	_ = i
   635  	var l int
   636  	_ = l
   637  	if len(m.BlockMatchers) > 0 {
   638  		for iNdEx := len(m.BlockMatchers) - 1; iNdEx >= 0; iNdEx-- {
   639  			{
   640  				size, err := m.BlockMatchers[iNdEx].MarshalToSizedBuffer(dAtA[:i])
   641  				if err != nil {
   642  					return 0, err
   643  				}
   644  				i -= size
   645  				i = encodeVarintHints(dAtA, i, uint64(size))
   646  			}
   647  			i--
   648  			dAtA[i] = 0xa
   649  		}
   650  	}
   651  	return len(dAtA) - i, nil
   652  }
   653  
   654  func (m *LabelValuesResponseHints) Marshal() (dAtA []byte, err error) {
   655  	size := m.Size()
   656  	dAtA = make([]byte, size)
   657  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   658  	if err != nil {
   659  		return nil, err
   660  	}
   661  	return dAtA[:n], nil
   662  }
   663  
   664  func (m *LabelValuesResponseHints) MarshalTo(dAtA []byte) (int, error) {
   665  	size := m.Size()
   666  	return m.MarshalToSizedBuffer(dAtA[:size])
   667  }
   668  
   669  func (m *LabelValuesResponseHints) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   670  	i := len(dAtA)
   671  	_ = i
   672  	var l int
   673  	_ = l
   674  	if len(m.QueriedBlocks) > 0 {
   675  		for iNdEx := len(m.QueriedBlocks) - 1; iNdEx >= 0; iNdEx-- {
   676  			{
   677  				size, err := m.QueriedBlocks[iNdEx].MarshalToSizedBuffer(dAtA[:i])
   678  				if err != nil {
   679  					return 0, err
   680  				}
   681  				i -= size
   682  				i = encodeVarintHints(dAtA, i, uint64(size))
   683  			}
   684  			i--
   685  			dAtA[i] = 0xa
   686  		}
   687  	}
   688  	return len(dAtA) - i, nil
   689  }
   690  
   691  func (m *QueryStats) Marshal() (dAtA []byte, err error) {
   692  	size := m.Size()
   693  	dAtA = make([]byte, size)
   694  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   695  	if err != nil {
   696  		return nil, err
   697  	}
   698  	return dAtA[:n], nil
   699  }
   700  
   701  func (m *QueryStats) MarshalTo(dAtA []byte) (int, error) {
   702  	size := m.Size()
   703  	return m.MarshalToSizedBuffer(dAtA[:size])
   704  }
   705  
   706  func (m *QueryStats) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   707  	i := len(dAtA)
   708  	_ = i
   709  	var l int
   710  	_ = l
   711  	if m.DataDownloadedSizeSum != 0 {
   712  		i = encodeVarintHints(dAtA, i, uint64(m.DataDownloadedSizeSum))
   713  		i--
   714  		dAtA[i] = 0x1
   715  		i--
   716  		dAtA[i] = 0xa0
   717  	}
   718  	if m.ChunksFetchCount != 0 {
   719  		i = encodeVarintHints(dAtA, i, uint64(m.ChunksFetchCount))
   720  		i--
   721  		dAtA[i] = 0x1
   722  		i--
   723  		dAtA[i] = 0x98
   724  	}
   725  	if m.ChunksFetchedSizeSum != 0 {
   726  		i = encodeVarintHints(dAtA, i, uint64(m.ChunksFetchedSizeSum))
   727  		i--
   728  		dAtA[i] = 0x1
   729  		i--
   730  		dAtA[i] = 0x90
   731  	}
   732  	if m.ChunksFetched != 0 {
   733  		i = encodeVarintHints(dAtA, i, uint64(m.ChunksFetched))
   734  		i--
   735  		dAtA[i] = 0x1
   736  		i--
   737  		dAtA[i] = 0x88
   738  	}
   739  	if m.ChunksTouchedSizeSum != 0 {
   740  		i = encodeVarintHints(dAtA, i, uint64(m.ChunksTouchedSizeSum))
   741  		i--
   742  		dAtA[i] = 0x1
   743  		i--
   744  		dAtA[i] = 0x80
   745  	}
   746  	if m.ChunksTouched != 0 {
   747  		i = encodeVarintHints(dAtA, i, uint64(m.ChunksTouched))
   748  		i--
   749  		dAtA[i] = 0x78
   750  	}
   751  	if m.SeriesFetchCount != 0 {
   752  		i = encodeVarintHints(dAtA, i, uint64(m.SeriesFetchCount))
   753  		i--
   754  		dAtA[i] = 0x70
   755  	}
   756  	if m.SeriesFetchedSizeSum != 0 {
   757  		i = encodeVarintHints(dAtA, i, uint64(m.SeriesFetchedSizeSum))
   758  		i--
   759  		dAtA[i] = 0x68
   760  	}
   761  	if m.SeriesFetched != 0 {
   762  		i = encodeVarintHints(dAtA, i, uint64(m.SeriesFetched))
   763  		i--
   764  		dAtA[i] = 0x60
   765  	}
   766  	if m.SeriesTouchedSizeSum != 0 {
   767  		i = encodeVarintHints(dAtA, i, uint64(m.SeriesTouchedSizeSum))
   768  		i--
   769  		dAtA[i] = 0x58
   770  	}
   771  	if m.SeriesTouched != 0 {
   772  		i = encodeVarintHints(dAtA, i, uint64(m.SeriesTouched))
   773  		i--
   774  		dAtA[i] = 0x50
   775  	}
   776  	if m.PostingsFetchCount != 0 {
   777  		i = encodeVarintHints(dAtA, i, uint64(m.PostingsFetchCount))
   778  		i--
   779  		dAtA[i] = 0x48
   780  	}
   781  	if m.PostingsFetchedSizeSum != 0 {
   782  		i = encodeVarintHints(dAtA, i, uint64(m.PostingsFetchedSizeSum))
   783  		i--
   784  		dAtA[i] = 0x40
   785  	}
   786  	if m.PostingsFetched != 0 {
   787  		i = encodeVarintHints(dAtA, i, uint64(m.PostingsFetched))
   788  		i--
   789  		dAtA[i] = 0x38
   790  	}
   791  	if m.PostingsToFetch != 0 {
   792  		i = encodeVarintHints(dAtA, i, uint64(m.PostingsToFetch))
   793  		i--
   794  		dAtA[i] = 0x30
   795  	}
   796  	if m.PostingsTouchedSizeSum != 0 {
   797  		i = encodeVarintHints(dAtA, i, uint64(m.PostingsTouchedSizeSum))
   798  		i--
   799  		dAtA[i] = 0x28
   800  	}
   801  	if m.PostingsTouched != 0 {
   802  		i = encodeVarintHints(dAtA, i, uint64(m.PostingsTouched))
   803  		i--
   804  		dAtA[i] = 0x20
   805  	}
   806  	if m.MergedChunksCount != 0 {
   807  		i = encodeVarintHints(dAtA, i, uint64(m.MergedChunksCount))
   808  		i--
   809  		dAtA[i] = 0x18
   810  	}
   811  	if m.MergedSeriesCount != 0 {
   812  		i = encodeVarintHints(dAtA, i, uint64(m.MergedSeriesCount))
   813  		i--
   814  		dAtA[i] = 0x10
   815  	}
   816  	if m.BlocksQueried != 0 {
   817  		i = encodeVarintHints(dAtA, i, uint64(m.BlocksQueried))
   818  		i--
   819  		dAtA[i] = 0x8
   820  	}
   821  	return len(dAtA) - i, nil
   822  }
   823  
   824  func encodeVarintHints(dAtA []byte, offset int, v uint64) int {
   825  	offset -= sovHints(v)
   826  	base := offset
   827  	for v >= 1<<7 {
   828  		dAtA[offset] = uint8(v&0x7f | 0x80)
   829  		v >>= 7
   830  		offset++
   831  	}
   832  	dAtA[offset] = uint8(v)
   833  	return base
   834  }
   835  func (m *SeriesRequestHints) Size() (n int) {
   836  	if m == nil {
   837  		return 0
   838  	}
   839  	var l int
   840  	_ = l
   841  	if len(m.BlockMatchers) > 0 {
   842  		for _, e := range m.BlockMatchers {
   843  			l = e.Size()
   844  			n += 1 + l + sovHints(uint64(l))
   845  		}
   846  	}
   847  	if m.EnableQueryStats {
   848  		n += 2
   849  	}
   850  	return n
   851  }
   852  
   853  func (m *SeriesResponseHints) Size() (n int) {
   854  	if m == nil {
   855  		return 0
   856  	}
   857  	var l int
   858  	_ = l
   859  	if len(m.QueriedBlocks) > 0 {
   860  		for _, e := range m.QueriedBlocks {
   861  			l = e.Size()
   862  			n += 1 + l + sovHints(uint64(l))
   863  		}
   864  	}
   865  	if m.QueryStats != nil {
   866  		l = m.QueryStats.Size()
   867  		n += 1 + l + sovHints(uint64(l))
   868  	}
   869  	return n
   870  }
   871  
   872  func (m *Block) Size() (n int) {
   873  	if m == nil {
   874  		return 0
   875  	}
   876  	var l int
   877  	_ = l
   878  	l = len(m.Id)
   879  	if l > 0 {
   880  		n += 1 + l + sovHints(uint64(l))
   881  	}
   882  	return n
   883  }
   884  
   885  func (m *LabelNamesRequestHints) Size() (n int) {
   886  	if m == nil {
   887  		return 0
   888  	}
   889  	var l int
   890  	_ = l
   891  	if len(m.BlockMatchers) > 0 {
   892  		for _, e := range m.BlockMatchers {
   893  			l = e.Size()
   894  			n += 1 + l + sovHints(uint64(l))
   895  		}
   896  	}
   897  	return n
   898  }
   899  
   900  func (m *LabelNamesResponseHints) Size() (n int) {
   901  	if m == nil {
   902  		return 0
   903  	}
   904  	var l int
   905  	_ = l
   906  	if len(m.QueriedBlocks) > 0 {
   907  		for _, e := range m.QueriedBlocks {
   908  			l = e.Size()
   909  			n += 1 + l + sovHints(uint64(l))
   910  		}
   911  	}
   912  	return n
   913  }
   914  
   915  func (m *LabelValuesRequestHints) Size() (n int) {
   916  	if m == nil {
   917  		return 0
   918  	}
   919  	var l int
   920  	_ = l
   921  	if len(m.BlockMatchers) > 0 {
   922  		for _, e := range m.BlockMatchers {
   923  			l = e.Size()
   924  			n += 1 + l + sovHints(uint64(l))
   925  		}
   926  	}
   927  	return n
   928  }
   929  
   930  func (m *LabelValuesResponseHints) Size() (n int) {
   931  	if m == nil {
   932  		return 0
   933  	}
   934  	var l int
   935  	_ = l
   936  	if len(m.QueriedBlocks) > 0 {
   937  		for _, e := range m.QueriedBlocks {
   938  			l = e.Size()
   939  			n += 1 + l + sovHints(uint64(l))
   940  		}
   941  	}
   942  	return n
   943  }
   944  
   945  func (m *QueryStats) Size() (n int) {
   946  	if m == nil {
   947  		return 0
   948  	}
   949  	var l int
   950  	_ = l
   951  	if m.BlocksQueried != 0 {
   952  		n += 1 + sovHints(uint64(m.BlocksQueried))
   953  	}
   954  	if m.MergedSeriesCount != 0 {
   955  		n += 1 + sovHints(uint64(m.MergedSeriesCount))
   956  	}
   957  	if m.MergedChunksCount != 0 {
   958  		n += 1 + sovHints(uint64(m.MergedChunksCount))
   959  	}
   960  	if m.PostingsTouched != 0 {
   961  		n += 1 + sovHints(uint64(m.PostingsTouched))
   962  	}
   963  	if m.PostingsTouchedSizeSum != 0 {
   964  		n += 1 + sovHints(uint64(m.PostingsTouchedSizeSum))
   965  	}
   966  	if m.PostingsToFetch != 0 {
   967  		n += 1 + sovHints(uint64(m.PostingsToFetch))
   968  	}
   969  	if m.PostingsFetched != 0 {
   970  		n += 1 + sovHints(uint64(m.PostingsFetched))
   971  	}
   972  	if m.PostingsFetchedSizeSum != 0 {
   973  		n += 1 + sovHints(uint64(m.PostingsFetchedSizeSum))
   974  	}
   975  	if m.PostingsFetchCount != 0 {
   976  		n += 1 + sovHints(uint64(m.PostingsFetchCount))
   977  	}
   978  	if m.SeriesTouched != 0 {
   979  		n += 1 + sovHints(uint64(m.SeriesTouched))
   980  	}
   981  	if m.SeriesTouchedSizeSum != 0 {
   982  		n += 1 + sovHints(uint64(m.SeriesTouchedSizeSum))
   983  	}
   984  	if m.SeriesFetched != 0 {
   985  		n += 1 + sovHints(uint64(m.SeriesFetched))
   986  	}
   987  	if m.SeriesFetchedSizeSum != 0 {
   988  		n += 1 + sovHints(uint64(m.SeriesFetchedSizeSum))
   989  	}
   990  	if m.SeriesFetchCount != 0 {
   991  		n += 1 + sovHints(uint64(m.SeriesFetchCount))
   992  	}
   993  	if m.ChunksTouched != 0 {
   994  		n += 1 + sovHints(uint64(m.ChunksTouched))
   995  	}
   996  	if m.ChunksTouchedSizeSum != 0 {
   997  		n += 2 + sovHints(uint64(m.ChunksTouchedSizeSum))
   998  	}
   999  	if m.ChunksFetched != 0 {
  1000  		n += 2 + sovHints(uint64(m.ChunksFetched))
  1001  	}
  1002  	if m.ChunksFetchedSizeSum != 0 {
  1003  		n += 2 + sovHints(uint64(m.ChunksFetchedSizeSum))
  1004  	}
  1005  	if m.ChunksFetchCount != 0 {
  1006  		n += 2 + sovHints(uint64(m.ChunksFetchCount))
  1007  	}
  1008  	if m.DataDownloadedSizeSum != 0 {
  1009  		n += 2 + sovHints(uint64(m.DataDownloadedSizeSum))
  1010  	}
  1011  	return n
  1012  }
  1013  
  1014  func sovHints(x uint64) (n int) {
  1015  	return (math_bits.Len64(x|1) + 6) / 7
  1016  }
  1017  func sozHints(x uint64) (n int) {
  1018  	return sovHints(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  1019  }
  1020  func (m *SeriesRequestHints) Unmarshal(dAtA []byte) error {
  1021  	l := len(dAtA)
  1022  	iNdEx := 0
  1023  	for iNdEx < l {
  1024  		preIndex := iNdEx
  1025  		var wire uint64
  1026  		for shift := uint(0); ; shift += 7 {
  1027  			if shift >= 64 {
  1028  				return ErrIntOverflowHints
  1029  			}
  1030  			if iNdEx >= l {
  1031  				return io.ErrUnexpectedEOF
  1032  			}
  1033  			b := dAtA[iNdEx]
  1034  			iNdEx++
  1035  			wire |= uint64(b&0x7F) << shift
  1036  			if b < 0x80 {
  1037  				break
  1038  			}
  1039  		}
  1040  		fieldNum := int32(wire >> 3)
  1041  		wireType := int(wire & 0x7)
  1042  		if wireType == 4 {
  1043  			return fmt.Errorf("proto: SeriesRequestHints: wiretype end group for non-group")
  1044  		}
  1045  		if fieldNum <= 0 {
  1046  			return fmt.Errorf("proto: SeriesRequestHints: illegal tag %d (wire type %d)", fieldNum, wire)
  1047  		}
  1048  		switch fieldNum {
  1049  		case 1:
  1050  			if wireType != 2 {
  1051  				return fmt.Errorf("proto: wrong wireType = %d for field BlockMatchers", wireType)
  1052  			}
  1053  			var msglen int
  1054  			for shift := uint(0); ; shift += 7 {
  1055  				if shift >= 64 {
  1056  					return ErrIntOverflowHints
  1057  				}
  1058  				if iNdEx >= l {
  1059  					return io.ErrUnexpectedEOF
  1060  				}
  1061  				b := dAtA[iNdEx]
  1062  				iNdEx++
  1063  				msglen |= int(b&0x7F) << shift
  1064  				if b < 0x80 {
  1065  					break
  1066  				}
  1067  			}
  1068  			if msglen < 0 {
  1069  				return ErrInvalidLengthHints
  1070  			}
  1071  			postIndex := iNdEx + msglen
  1072  			if postIndex < 0 {
  1073  				return ErrInvalidLengthHints
  1074  			}
  1075  			if postIndex > l {
  1076  				return io.ErrUnexpectedEOF
  1077  			}
  1078  			m.BlockMatchers = append(m.BlockMatchers, storepb.LabelMatcher{})
  1079  			if err := m.BlockMatchers[len(m.BlockMatchers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1080  				return err
  1081  			}
  1082  			iNdEx = postIndex
  1083  		case 2:
  1084  			if wireType != 0 {
  1085  				return fmt.Errorf("proto: wrong wireType = %d for field EnableQueryStats", wireType)
  1086  			}
  1087  			var v int
  1088  			for shift := uint(0); ; shift += 7 {
  1089  				if shift >= 64 {
  1090  					return ErrIntOverflowHints
  1091  				}
  1092  				if iNdEx >= l {
  1093  					return io.ErrUnexpectedEOF
  1094  				}
  1095  				b := dAtA[iNdEx]
  1096  				iNdEx++
  1097  				v |= int(b&0x7F) << shift
  1098  				if b < 0x80 {
  1099  					break
  1100  				}
  1101  			}
  1102  			m.EnableQueryStats = bool(v != 0)
  1103  		default:
  1104  			iNdEx = preIndex
  1105  			skippy, err := skipHints(dAtA[iNdEx:])
  1106  			if err != nil {
  1107  				return err
  1108  			}
  1109  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1110  				return ErrInvalidLengthHints
  1111  			}
  1112  			if (iNdEx + skippy) > l {
  1113  				return io.ErrUnexpectedEOF
  1114  			}
  1115  			iNdEx += skippy
  1116  		}
  1117  	}
  1118  
  1119  	if iNdEx > l {
  1120  		return io.ErrUnexpectedEOF
  1121  	}
  1122  	return nil
  1123  }
  1124  func (m *SeriesResponseHints) Unmarshal(dAtA []byte) error {
  1125  	l := len(dAtA)
  1126  	iNdEx := 0
  1127  	for iNdEx < l {
  1128  		preIndex := iNdEx
  1129  		var wire uint64
  1130  		for shift := uint(0); ; shift += 7 {
  1131  			if shift >= 64 {
  1132  				return ErrIntOverflowHints
  1133  			}
  1134  			if iNdEx >= l {
  1135  				return io.ErrUnexpectedEOF
  1136  			}
  1137  			b := dAtA[iNdEx]
  1138  			iNdEx++
  1139  			wire |= uint64(b&0x7F) << shift
  1140  			if b < 0x80 {
  1141  				break
  1142  			}
  1143  		}
  1144  		fieldNum := int32(wire >> 3)
  1145  		wireType := int(wire & 0x7)
  1146  		if wireType == 4 {
  1147  			return fmt.Errorf("proto: SeriesResponseHints: wiretype end group for non-group")
  1148  		}
  1149  		if fieldNum <= 0 {
  1150  			return fmt.Errorf("proto: SeriesResponseHints: illegal tag %d (wire type %d)", fieldNum, wire)
  1151  		}
  1152  		switch fieldNum {
  1153  		case 1:
  1154  			if wireType != 2 {
  1155  				return fmt.Errorf("proto: wrong wireType = %d for field QueriedBlocks", wireType)
  1156  			}
  1157  			var msglen int
  1158  			for shift := uint(0); ; shift += 7 {
  1159  				if shift >= 64 {
  1160  					return ErrIntOverflowHints
  1161  				}
  1162  				if iNdEx >= l {
  1163  					return io.ErrUnexpectedEOF
  1164  				}
  1165  				b := dAtA[iNdEx]
  1166  				iNdEx++
  1167  				msglen |= int(b&0x7F) << shift
  1168  				if b < 0x80 {
  1169  					break
  1170  				}
  1171  			}
  1172  			if msglen < 0 {
  1173  				return ErrInvalidLengthHints
  1174  			}
  1175  			postIndex := iNdEx + msglen
  1176  			if postIndex < 0 {
  1177  				return ErrInvalidLengthHints
  1178  			}
  1179  			if postIndex > l {
  1180  				return io.ErrUnexpectedEOF
  1181  			}
  1182  			m.QueriedBlocks = append(m.QueriedBlocks, Block{})
  1183  			if err := m.QueriedBlocks[len(m.QueriedBlocks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1184  				return err
  1185  			}
  1186  			iNdEx = postIndex
  1187  		case 2:
  1188  			if wireType != 2 {
  1189  				return fmt.Errorf("proto: wrong wireType = %d for field QueryStats", wireType)
  1190  			}
  1191  			var msglen int
  1192  			for shift := uint(0); ; shift += 7 {
  1193  				if shift >= 64 {
  1194  					return ErrIntOverflowHints
  1195  				}
  1196  				if iNdEx >= l {
  1197  					return io.ErrUnexpectedEOF
  1198  				}
  1199  				b := dAtA[iNdEx]
  1200  				iNdEx++
  1201  				msglen |= int(b&0x7F) << shift
  1202  				if b < 0x80 {
  1203  					break
  1204  				}
  1205  			}
  1206  			if msglen < 0 {
  1207  				return ErrInvalidLengthHints
  1208  			}
  1209  			postIndex := iNdEx + msglen
  1210  			if postIndex < 0 {
  1211  				return ErrInvalidLengthHints
  1212  			}
  1213  			if postIndex > l {
  1214  				return io.ErrUnexpectedEOF
  1215  			}
  1216  			if m.QueryStats == nil {
  1217  				m.QueryStats = &QueryStats{}
  1218  			}
  1219  			if err := m.QueryStats.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1220  				return err
  1221  			}
  1222  			iNdEx = postIndex
  1223  		default:
  1224  			iNdEx = preIndex
  1225  			skippy, err := skipHints(dAtA[iNdEx:])
  1226  			if err != nil {
  1227  				return err
  1228  			}
  1229  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1230  				return ErrInvalidLengthHints
  1231  			}
  1232  			if (iNdEx + skippy) > l {
  1233  				return io.ErrUnexpectedEOF
  1234  			}
  1235  			iNdEx += skippy
  1236  		}
  1237  	}
  1238  
  1239  	if iNdEx > l {
  1240  		return io.ErrUnexpectedEOF
  1241  	}
  1242  	return nil
  1243  }
  1244  func (m *Block) Unmarshal(dAtA []byte) error {
  1245  	l := len(dAtA)
  1246  	iNdEx := 0
  1247  	for iNdEx < l {
  1248  		preIndex := iNdEx
  1249  		var wire uint64
  1250  		for shift := uint(0); ; shift += 7 {
  1251  			if shift >= 64 {
  1252  				return ErrIntOverflowHints
  1253  			}
  1254  			if iNdEx >= l {
  1255  				return io.ErrUnexpectedEOF
  1256  			}
  1257  			b := dAtA[iNdEx]
  1258  			iNdEx++
  1259  			wire |= uint64(b&0x7F) << shift
  1260  			if b < 0x80 {
  1261  				break
  1262  			}
  1263  		}
  1264  		fieldNum := int32(wire >> 3)
  1265  		wireType := int(wire & 0x7)
  1266  		if wireType == 4 {
  1267  			return fmt.Errorf("proto: Block: wiretype end group for non-group")
  1268  		}
  1269  		if fieldNum <= 0 {
  1270  			return fmt.Errorf("proto: Block: illegal tag %d (wire type %d)", fieldNum, wire)
  1271  		}
  1272  		switch fieldNum {
  1273  		case 1:
  1274  			if wireType != 2 {
  1275  				return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
  1276  			}
  1277  			var stringLen uint64
  1278  			for shift := uint(0); ; shift += 7 {
  1279  				if shift >= 64 {
  1280  					return ErrIntOverflowHints
  1281  				}
  1282  				if iNdEx >= l {
  1283  					return io.ErrUnexpectedEOF
  1284  				}
  1285  				b := dAtA[iNdEx]
  1286  				iNdEx++
  1287  				stringLen |= uint64(b&0x7F) << shift
  1288  				if b < 0x80 {
  1289  					break
  1290  				}
  1291  			}
  1292  			intStringLen := int(stringLen)
  1293  			if intStringLen < 0 {
  1294  				return ErrInvalidLengthHints
  1295  			}
  1296  			postIndex := iNdEx + intStringLen
  1297  			if postIndex < 0 {
  1298  				return ErrInvalidLengthHints
  1299  			}
  1300  			if postIndex > l {
  1301  				return io.ErrUnexpectedEOF
  1302  			}
  1303  			m.Id = string(dAtA[iNdEx:postIndex])
  1304  			iNdEx = postIndex
  1305  		default:
  1306  			iNdEx = preIndex
  1307  			skippy, err := skipHints(dAtA[iNdEx:])
  1308  			if err != nil {
  1309  				return err
  1310  			}
  1311  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1312  				return ErrInvalidLengthHints
  1313  			}
  1314  			if (iNdEx + skippy) > l {
  1315  				return io.ErrUnexpectedEOF
  1316  			}
  1317  			iNdEx += skippy
  1318  		}
  1319  	}
  1320  
  1321  	if iNdEx > l {
  1322  		return io.ErrUnexpectedEOF
  1323  	}
  1324  	return nil
  1325  }
  1326  func (m *LabelNamesRequestHints) Unmarshal(dAtA []byte) error {
  1327  	l := len(dAtA)
  1328  	iNdEx := 0
  1329  	for iNdEx < l {
  1330  		preIndex := iNdEx
  1331  		var wire uint64
  1332  		for shift := uint(0); ; shift += 7 {
  1333  			if shift >= 64 {
  1334  				return ErrIntOverflowHints
  1335  			}
  1336  			if iNdEx >= l {
  1337  				return io.ErrUnexpectedEOF
  1338  			}
  1339  			b := dAtA[iNdEx]
  1340  			iNdEx++
  1341  			wire |= uint64(b&0x7F) << shift
  1342  			if b < 0x80 {
  1343  				break
  1344  			}
  1345  		}
  1346  		fieldNum := int32(wire >> 3)
  1347  		wireType := int(wire & 0x7)
  1348  		if wireType == 4 {
  1349  			return fmt.Errorf("proto: LabelNamesRequestHints: wiretype end group for non-group")
  1350  		}
  1351  		if fieldNum <= 0 {
  1352  			return fmt.Errorf("proto: LabelNamesRequestHints: illegal tag %d (wire type %d)", fieldNum, wire)
  1353  		}
  1354  		switch fieldNum {
  1355  		case 1:
  1356  			if wireType != 2 {
  1357  				return fmt.Errorf("proto: wrong wireType = %d for field BlockMatchers", wireType)
  1358  			}
  1359  			var msglen int
  1360  			for shift := uint(0); ; shift += 7 {
  1361  				if shift >= 64 {
  1362  					return ErrIntOverflowHints
  1363  				}
  1364  				if iNdEx >= l {
  1365  					return io.ErrUnexpectedEOF
  1366  				}
  1367  				b := dAtA[iNdEx]
  1368  				iNdEx++
  1369  				msglen |= int(b&0x7F) << shift
  1370  				if b < 0x80 {
  1371  					break
  1372  				}
  1373  			}
  1374  			if msglen < 0 {
  1375  				return ErrInvalidLengthHints
  1376  			}
  1377  			postIndex := iNdEx + msglen
  1378  			if postIndex < 0 {
  1379  				return ErrInvalidLengthHints
  1380  			}
  1381  			if postIndex > l {
  1382  				return io.ErrUnexpectedEOF
  1383  			}
  1384  			m.BlockMatchers = append(m.BlockMatchers, storepb.LabelMatcher{})
  1385  			if err := m.BlockMatchers[len(m.BlockMatchers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1386  				return err
  1387  			}
  1388  			iNdEx = postIndex
  1389  		default:
  1390  			iNdEx = preIndex
  1391  			skippy, err := skipHints(dAtA[iNdEx:])
  1392  			if err != nil {
  1393  				return err
  1394  			}
  1395  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1396  				return ErrInvalidLengthHints
  1397  			}
  1398  			if (iNdEx + skippy) > l {
  1399  				return io.ErrUnexpectedEOF
  1400  			}
  1401  			iNdEx += skippy
  1402  		}
  1403  	}
  1404  
  1405  	if iNdEx > l {
  1406  		return io.ErrUnexpectedEOF
  1407  	}
  1408  	return nil
  1409  }
  1410  func (m *LabelNamesResponseHints) Unmarshal(dAtA []byte) error {
  1411  	l := len(dAtA)
  1412  	iNdEx := 0
  1413  	for iNdEx < l {
  1414  		preIndex := iNdEx
  1415  		var wire uint64
  1416  		for shift := uint(0); ; shift += 7 {
  1417  			if shift >= 64 {
  1418  				return ErrIntOverflowHints
  1419  			}
  1420  			if iNdEx >= l {
  1421  				return io.ErrUnexpectedEOF
  1422  			}
  1423  			b := dAtA[iNdEx]
  1424  			iNdEx++
  1425  			wire |= uint64(b&0x7F) << shift
  1426  			if b < 0x80 {
  1427  				break
  1428  			}
  1429  		}
  1430  		fieldNum := int32(wire >> 3)
  1431  		wireType := int(wire & 0x7)
  1432  		if wireType == 4 {
  1433  			return fmt.Errorf("proto: LabelNamesResponseHints: wiretype end group for non-group")
  1434  		}
  1435  		if fieldNum <= 0 {
  1436  			return fmt.Errorf("proto: LabelNamesResponseHints: illegal tag %d (wire type %d)", fieldNum, wire)
  1437  		}
  1438  		switch fieldNum {
  1439  		case 1:
  1440  			if wireType != 2 {
  1441  				return fmt.Errorf("proto: wrong wireType = %d for field QueriedBlocks", wireType)
  1442  			}
  1443  			var msglen int
  1444  			for shift := uint(0); ; shift += 7 {
  1445  				if shift >= 64 {
  1446  					return ErrIntOverflowHints
  1447  				}
  1448  				if iNdEx >= l {
  1449  					return io.ErrUnexpectedEOF
  1450  				}
  1451  				b := dAtA[iNdEx]
  1452  				iNdEx++
  1453  				msglen |= int(b&0x7F) << shift
  1454  				if b < 0x80 {
  1455  					break
  1456  				}
  1457  			}
  1458  			if msglen < 0 {
  1459  				return ErrInvalidLengthHints
  1460  			}
  1461  			postIndex := iNdEx + msglen
  1462  			if postIndex < 0 {
  1463  				return ErrInvalidLengthHints
  1464  			}
  1465  			if postIndex > l {
  1466  				return io.ErrUnexpectedEOF
  1467  			}
  1468  			m.QueriedBlocks = append(m.QueriedBlocks, Block{})
  1469  			if err := m.QueriedBlocks[len(m.QueriedBlocks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1470  				return err
  1471  			}
  1472  			iNdEx = postIndex
  1473  		default:
  1474  			iNdEx = preIndex
  1475  			skippy, err := skipHints(dAtA[iNdEx:])
  1476  			if err != nil {
  1477  				return err
  1478  			}
  1479  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1480  				return ErrInvalidLengthHints
  1481  			}
  1482  			if (iNdEx + skippy) > l {
  1483  				return io.ErrUnexpectedEOF
  1484  			}
  1485  			iNdEx += skippy
  1486  		}
  1487  	}
  1488  
  1489  	if iNdEx > l {
  1490  		return io.ErrUnexpectedEOF
  1491  	}
  1492  	return nil
  1493  }
  1494  func (m *LabelValuesRequestHints) Unmarshal(dAtA []byte) error {
  1495  	l := len(dAtA)
  1496  	iNdEx := 0
  1497  	for iNdEx < l {
  1498  		preIndex := iNdEx
  1499  		var wire uint64
  1500  		for shift := uint(0); ; shift += 7 {
  1501  			if shift >= 64 {
  1502  				return ErrIntOverflowHints
  1503  			}
  1504  			if iNdEx >= l {
  1505  				return io.ErrUnexpectedEOF
  1506  			}
  1507  			b := dAtA[iNdEx]
  1508  			iNdEx++
  1509  			wire |= uint64(b&0x7F) << shift
  1510  			if b < 0x80 {
  1511  				break
  1512  			}
  1513  		}
  1514  		fieldNum := int32(wire >> 3)
  1515  		wireType := int(wire & 0x7)
  1516  		if wireType == 4 {
  1517  			return fmt.Errorf("proto: LabelValuesRequestHints: wiretype end group for non-group")
  1518  		}
  1519  		if fieldNum <= 0 {
  1520  			return fmt.Errorf("proto: LabelValuesRequestHints: illegal tag %d (wire type %d)", fieldNum, wire)
  1521  		}
  1522  		switch fieldNum {
  1523  		case 1:
  1524  			if wireType != 2 {
  1525  				return fmt.Errorf("proto: wrong wireType = %d for field BlockMatchers", wireType)
  1526  			}
  1527  			var msglen int
  1528  			for shift := uint(0); ; shift += 7 {
  1529  				if shift >= 64 {
  1530  					return ErrIntOverflowHints
  1531  				}
  1532  				if iNdEx >= l {
  1533  					return io.ErrUnexpectedEOF
  1534  				}
  1535  				b := dAtA[iNdEx]
  1536  				iNdEx++
  1537  				msglen |= int(b&0x7F) << shift
  1538  				if b < 0x80 {
  1539  					break
  1540  				}
  1541  			}
  1542  			if msglen < 0 {
  1543  				return ErrInvalidLengthHints
  1544  			}
  1545  			postIndex := iNdEx + msglen
  1546  			if postIndex < 0 {
  1547  				return ErrInvalidLengthHints
  1548  			}
  1549  			if postIndex > l {
  1550  				return io.ErrUnexpectedEOF
  1551  			}
  1552  			m.BlockMatchers = append(m.BlockMatchers, storepb.LabelMatcher{})
  1553  			if err := m.BlockMatchers[len(m.BlockMatchers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1554  				return err
  1555  			}
  1556  			iNdEx = postIndex
  1557  		default:
  1558  			iNdEx = preIndex
  1559  			skippy, err := skipHints(dAtA[iNdEx:])
  1560  			if err != nil {
  1561  				return err
  1562  			}
  1563  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1564  				return ErrInvalidLengthHints
  1565  			}
  1566  			if (iNdEx + skippy) > l {
  1567  				return io.ErrUnexpectedEOF
  1568  			}
  1569  			iNdEx += skippy
  1570  		}
  1571  	}
  1572  
  1573  	if iNdEx > l {
  1574  		return io.ErrUnexpectedEOF
  1575  	}
  1576  	return nil
  1577  }
  1578  func (m *LabelValuesResponseHints) Unmarshal(dAtA []byte) error {
  1579  	l := len(dAtA)
  1580  	iNdEx := 0
  1581  	for iNdEx < l {
  1582  		preIndex := iNdEx
  1583  		var wire uint64
  1584  		for shift := uint(0); ; shift += 7 {
  1585  			if shift >= 64 {
  1586  				return ErrIntOverflowHints
  1587  			}
  1588  			if iNdEx >= l {
  1589  				return io.ErrUnexpectedEOF
  1590  			}
  1591  			b := dAtA[iNdEx]
  1592  			iNdEx++
  1593  			wire |= uint64(b&0x7F) << shift
  1594  			if b < 0x80 {
  1595  				break
  1596  			}
  1597  		}
  1598  		fieldNum := int32(wire >> 3)
  1599  		wireType := int(wire & 0x7)
  1600  		if wireType == 4 {
  1601  			return fmt.Errorf("proto: LabelValuesResponseHints: wiretype end group for non-group")
  1602  		}
  1603  		if fieldNum <= 0 {
  1604  			return fmt.Errorf("proto: LabelValuesResponseHints: illegal tag %d (wire type %d)", fieldNum, wire)
  1605  		}
  1606  		switch fieldNum {
  1607  		case 1:
  1608  			if wireType != 2 {
  1609  				return fmt.Errorf("proto: wrong wireType = %d for field QueriedBlocks", wireType)
  1610  			}
  1611  			var msglen int
  1612  			for shift := uint(0); ; shift += 7 {
  1613  				if shift >= 64 {
  1614  					return ErrIntOverflowHints
  1615  				}
  1616  				if iNdEx >= l {
  1617  					return io.ErrUnexpectedEOF
  1618  				}
  1619  				b := dAtA[iNdEx]
  1620  				iNdEx++
  1621  				msglen |= int(b&0x7F) << shift
  1622  				if b < 0x80 {
  1623  					break
  1624  				}
  1625  			}
  1626  			if msglen < 0 {
  1627  				return ErrInvalidLengthHints
  1628  			}
  1629  			postIndex := iNdEx + msglen
  1630  			if postIndex < 0 {
  1631  				return ErrInvalidLengthHints
  1632  			}
  1633  			if postIndex > l {
  1634  				return io.ErrUnexpectedEOF
  1635  			}
  1636  			m.QueriedBlocks = append(m.QueriedBlocks, Block{})
  1637  			if err := m.QueriedBlocks[len(m.QueriedBlocks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  1638  				return err
  1639  			}
  1640  			iNdEx = postIndex
  1641  		default:
  1642  			iNdEx = preIndex
  1643  			skippy, err := skipHints(dAtA[iNdEx:])
  1644  			if err != nil {
  1645  				return err
  1646  			}
  1647  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  1648  				return ErrInvalidLengthHints
  1649  			}
  1650  			if (iNdEx + skippy) > l {
  1651  				return io.ErrUnexpectedEOF
  1652  			}
  1653  			iNdEx += skippy
  1654  		}
  1655  	}
  1656  
  1657  	if iNdEx > l {
  1658  		return io.ErrUnexpectedEOF
  1659  	}
  1660  	return nil
  1661  }
  1662  func (m *QueryStats) Unmarshal(dAtA []byte) error {
  1663  	l := len(dAtA)
  1664  	iNdEx := 0
  1665  	for iNdEx < l {
  1666  		preIndex := iNdEx
  1667  		var wire uint64
  1668  		for shift := uint(0); ; shift += 7 {
  1669  			if shift >= 64 {
  1670  				return ErrIntOverflowHints
  1671  			}
  1672  			if iNdEx >= l {
  1673  				return io.ErrUnexpectedEOF
  1674  			}
  1675  			b := dAtA[iNdEx]
  1676  			iNdEx++
  1677  			wire |= uint64(b&0x7F) << shift
  1678  			if b < 0x80 {
  1679  				break
  1680  			}
  1681  		}
  1682  		fieldNum := int32(wire >> 3)
  1683  		wireType := int(wire & 0x7)
  1684  		if wireType == 4 {
  1685  			return fmt.Errorf("proto: QueryStats: wiretype end group for non-group")
  1686  		}
  1687  		if fieldNum <= 0 {
  1688  			return fmt.Errorf("proto: QueryStats: illegal tag %d (wire type %d)", fieldNum, wire)
  1689  		}
  1690  		switch fieldNum {
  1691  		case 1:
  1692  			if wireType != 0 {
  1693  				return fmt.Errorf("proto: wrong wireType = %d for field BlocksQueried", wireType)
  1694  			}
  1695  			m.BlocksQueried = 0
  1696  			for shift := uint(0); ; shift += 7 {
  1697  				if shift >= 64 {
  1698  					return ErrIntOverflowHints
  1699  				}
  1700  				if iNdEx >= l {
  1701  					return io.ErrUnexpectedEOF
  1702  				}
  1703  				b := dAtA[iNdEx]
  1704  				iNdEx++
  1705  				m.BlocksQueried |= int64(b&0x7F) << shift
  1706  				if b < 0x80 {
  1707  					break
  1708  				}
  1709  			}
  1710  		case 2:
  1711  			if wireType != 0 {
  1712  				return fmt.Errorf("proto: wrong wireType = %d for field MergedSeriesCount", wireType)
  1713  			}
  1714  			m.MergedSeriesCount = 0
  1715  			for shift := uint(0); ; shift += 7 {
  1716  				if shift >= 64 {
  1717  					return ErrIntOverflowHints
  1718  				}
  1719  				if iNdEx >= l {
  1720  					return io.ErrUnexpectedEOF
  1721  				}
  1722  				b := dAtA[iNdEx]
  1723  				iNdEx++
  1724  				m.MergedSeriesCount |= int64(b&0x7F) << shift
  1725  				if b < 0x80 {
  1726  					break
  1727  				}
  1728  			}
  1729  		case 3:
  1730  			if wireType != 0 {
  1731  				return fmt.Errorf("proto: wrong wireType = %d for field MergedChunksCount", wireType)
  1732  			}
  1733  			m.MergedChunksCount = 0
  1734  			for shift := uint(0); ; shift += 7 {
  1735  				if shift >= 64 {
  1736  					return ErrIntOverflowHints
  1737  				}
  1738  				if iNdEx >= l {
  1739  					return io.ErrUnexpectedEOF
  1740  				}
  1741  				b := dAtA[iNdEx]
  1742  				iNdEx++
  1743  				m.MergedChunksCount |= int64(b&0x7F) << shift
  1744  				if b < 0x80 {
  1745  					break
  1746  				}
  1747  			}
  1748  		case 4:
  1749  			if wireType != 0 {
  1750  				return fmt.Errorf("proto: wrong wireType = %d for field PostingsTouched", wireType)
  1751  			}
  1752  			m.PostingsTouched = 0
  1753  			for shift := uint(0); ; shift += 7 {
  1754  				if shift >= 64 {
  1755  					return ErrIntOverflowHints
  1756  				}
  1757  				if iNdEx >= l {
  1758  					return io.ErrUnexpectedEOF
  1759  				}
  1760  				b := dAtA[iNdEx]
  1761  				iNdEx++
  1762  				m.PostingsTouched |= int64(b&0x7F) << shift
  1763  				if b < 0x80 {
  1764  					break
  1765  				}
  1766  			}
  1767  		case 5:
  1768  			if wireType != 0 {
  1769  				return fmt.Errorf("proto: wrong wireType = %d for field PostingsTouchedSizeSum", wireType)
  1770  			}
  1771  			m.PostingsTouchedSizeSum = 0
  1772  			for shift := uint(0); ; shift += 7 {
  1773  				if shift >= 64 {
  1774  					return ErrIntOverflowHints
  1775  				}
  1776  				if iNdEx >= l {
  1777  					return io.ErrUnexpectedEOF
  1778  				}
  1779  				b := dAtA[iNdEx]
  1780  				iNdEx++
  1781  				m.PostingsTouchedSizeSum |= int64(b&0x7F) << shift
  1782  				if b < 0x80 {
  1783  					break
  1784  				}
  1785  			}
  1786  		case 6:
  1787  			if wireType != 0 {
  1788  				return fmt.Errorf("proto: wrong wireType = %d for field PostingsToFetch", wireType)
  1789  			}
  1790  			m.PostingsToFetch = 0
  1791  			for shift := uint(0); ; shift += 7 {
  1792  				if shift >= 64 {
  1793  					return ErrIntOverflowHints
  1794  				}
  1795  				if iNdEx >= l {
  1796  					return io.ErrUnexpectedEOF
  1797  				}
  1798  				b := dAtA[iNdEx]
  1799  				iNdEx++
  1800  				m.PostingsToFetch |= int64(b&0x7F) << shift
  1801  				if b < 0x80 {
  1802  					break
  1803  				}
  1804  			}
  1805  		case 7:
  1806  			if wireType != 0 {
  1807  				return fmt.Errorf("proto: wrong wireType = %d for field PostingsFetched", wireType)
  1808  			}
  1809  			m.PostingsFetched = 0
  1810  			for shift := uint(0); ; shift += 7 {
  1811  				if shift >= 64 {
  1812  					return ErrIntOverflowHints
  1813  				}
  1814  				if iNdEx >= l {
  1815  					return io.ErrUnexpectedEOF
  1816  				}
  1817  				b := dAtA[iNdEx]
  1818  				iNdEx++
  1819  				m.PostingsFetched |= int64(b&0x7F) << shift
  1820  				if b < 0x80 {
  1821  					break
  1822  				}
  1823  			}
  1824  		case 8:
  1825  			if wireType != 0 {
  1826  				return fmt.Errorf("proto: wrong wireType = %d for field PostingsFetchedSizeSum", wireType)
  1827  			}
  1828  			m.PostingsFetchedSizeSum = 0
  1829  			for shift := uint(0); ; shift += 7 {
  1830  				if shift >= 64 {
  1831  					return ErrIntOverflowHints
  1832  				}
  1833  				if iNdEx >= l {
  1834  					return io.ErrUnexpectedEOF
  1835  				}
  1836  				b := dAtA[iNdEx]
  1837  				iNdEx++
  1838  				m.PostingsFetchedSizeSum |= int64(b&0x7F) << shift
  1839  				if b < 0x80 {
  1840  					break
  1841  				}
  1842  			}
  1843  		case 9:
  1844  			if wireType != 0 {
  1845  				return fmt.Errorf("proto: wrong wireType = %d for field PostingsFetchCount", wireType)
  1846  			}
  1847  			m.PostingsFetchCount = 0
  1848  			for shift := uint(0); ; shift += 7 {
  1849  				if shift >= 64 {
  1850  					return ErrIntOverflowHints
  1851  				}
  1852  				if iNdEx >= l {
  1853  					return io.ErrUnexpectedEOF
  1854  				}
  1855  				b := dAtA[iNdEx]
  1856  				iNdEx++
  1857  				m.PostingsFetchCount |= int64(b&0x7F) << shift
  1858  				if b < 0x80 {
  1859  					break
  1860  				}
  1861  			}
  1862  		case 10:
  1863  			if wireType != 0 {
  1864  				return fmt.Errorf("proto: wrong wireType = %d for field SeriesTouched", wireType)
  1865  			}
  1866  			m.SeriesTouched = 0
  1867  			for shift := uint(0); ; shift += 7 {
  1868  				if shift >= 64 {
  1869  					return ErrIntOverflowHints
  1870  				}
  1871  				if iNdEx >= l {
  1872  					return io.ErrUnexpectedEOF
  1873  				}
  1874  				b := dAtA[iNdEx]
  1875  				iNdEx++
  1876  				m.SeriesTouched |= int64(b&0x7F) << shift
  1877  				if b < 0x80 {
  1878  					break
  1879  				}
  1880  			}
  1881  		case 11:
  1882  			if wireType != 0 {
  1883  				return fmt.Errorf("proto: wrong wireType = %d for field SeriesTouchedSizeSum", wireType)
  1884  			}
  1885  			m.SeriesTouchedSizeSum = 0
  1886  			for shift := uint(0); ; shift += 7 {
  1887  				if shift >= 64 {
  1888  					return ErrIntOverflowHints
  1889  				}
  1890  				if iNdEx >= l {
  1891  					return io.ErrUnexpectedEOF
  1892  				}
  1893  				b := dAtA[iNdEx]
  1894  				iNdEx++
  1895  				m.SeriesTouchedSizeSum |= int64(b&0x7F) << shift
  1896  				if b < 0x80 {
  1897  					break
  1898  				}
  1899  			}
  1900  		case 12:
  1901  			if wireType != 0 {
  1902  				return fmt.Errorf("proto: wrong wireType = %d for field SeriesFetched", wireType)
  1903  			}
  1904  			m.SeriesFetched = 0
  1905  			for shift := uint(0); ; shift += 7 {
  1906  				if shift >= 64 {
  1907  					return ErrIntOverflowHints
  1908  				}
  1909  				if iNdEx >= l {
  1910  					return io.ErrUnexpectedEOF
  1911  				}
  1912  				b := dAtA[iNdEx]
  1913  				iNdEx++
  1914  				m.SeriesFetched |= int64(b&0x7F) << shift
  1915  				if b < 0x80 {
  1916  					break
  1917  				}
  1918  			}
  1919  		case 13:
  1920  			if wireType != 0 {
  1921  				return fmt.Errorf("proto: wrong wireType = %d for field SeriesFetchedSizeSum", wireType)
  1922  			}
  1923  			m.SeriesFetchedSizeSum = 0
  1924  			for shift := uint(0); ; shift += 7 {
  1925  				if shift >= 64 {
  1926  					return ErrIntOverflowHints
  1927  				}
  1928  				if iNdEx >= l {
  1929  					return io.ErrUnexpectedEOF
  1930  				}
  1931  				b := dAtA[iNdEx]
  1932  				iNdEx++
  1933  				m.SeriesFetchedSizeSum |= int64(b&0x7F) << shift
  1934  				if b < 0x80 {
  1935  					break
  1936  				}
  1937  			}
  1938  		case 14:
  1939  			if wireType != 0 {
  1940  				return fmt.Errorf("proto: wrong wireType = %d for field SeriesFetchCount", wireType)
  1941  			}
  1942  			m.SeriesFetchCount = 0
  1943  			for shift := uint(0); ; shift += 7 {
  1944  				if shift >= 64 {
  1945  					return ErrIntOverflowHints
  1946  				}
  1947  				if iNdEx >= l {
  1948  					return io.ErrUnexpectedEOF
  1949  				}
  1950  				b := dAtA[iNdEx]
  1951  				iNdEx++
  1952  				m.SeriesFetchCount |= int64(b&0x7F) << shift
  1953  				if b < 0x80 {
  1954  					break
  1955  				}
  1956  			}
  1957  		case 15:
  1958  			if wireType != 0 {
  1959  				return fmt.Errorf("proto: wrong wireType = %d for field ChunksTouched", wireType)
  1960  			}
  1961  			m.ChunksTouched = 0
  1962  			for shift := uint(0); ; shift += 7 {
  1963  				if shift >= 64 {
  1964  					return ErrIntOverflowHints
  1965  				}
  1966  				if iNdEx >= l {
  1967  					return io.ErrUnexpectedEOF
  1968  				}
  1969  				b := dAtA[iNdEx]
  1970  				iNdEx++
  1971  				m.ChunksTouched |= int64(b&0x7F) << shift
  1972  				if b < 0x80 {
  1973  					break
  1974  				}
  1975  			}
  1976  		case 16:
  1977  			if wireType != 0 {
  1978  				return fmt.Errorf("proto: wrong wireType = %d for field ChunksTouchedSizeSum", wireType)
  1979  			}
  1980  			m.ChunksTouchedSizeSum = 0
  1981  			for shift := uint(0); ; shift += 7 {
  1982  				if shift >= 64 {
  1983  					return ErrIntOverflowHints
  1984  				}
  1985  				if iNdEx >= l {
  1986  					return io.ErrUnexpectedEOF
  1987  				}
  1988  				b := dAtA[iNdEx]
  1989  				iNdEx++
  1990  				m.ChunksTouchedSizeSum |= int64(b&0x7F) << shift
  1991  				if b < 0x80 {
  1992  					break
  1993  				}
  1994  			}
  1995  		case 17:
  1996  			if wireType != 0 {
  1997  				return fmt.Errorf("proto: wrong wireType = %d for field ChunksFetched", wireType)
  1998  			}
  1999  			m.ChunksFetched = 0
  2000  			for shift := uint(0); ; shift += 7 {
  2001  				if shift >= 64 {
  2002  					return ErrIntOverflowHints
  2003  				}
  2004  				if iNdEx >= l {
  2005  					return io.ErrUnexpectedEOF
  2006  				}
  2007  				b := dAtA[iNdEx]
  2008  				iNdEx++
  2009  				m.ChunksFetched |= int64(b&0x7F) << shift
  2010  				if b < 0x80 {
  2011  					break
  2012  				}
  2013  			}
  2014  		case 18:
  2015  			if wireType != 0 {
  2016  				return fmt.Errorf("proto: wrong wireType = %d for field ChunksFetchedSizeSum", wireType)
  2017  			}
  2018  			m.ChunksFetchedSizeSum = 0
  2019  			for shift := uint(0); ; shift += 7 {
  2020  				if shift >= 64 {
  2021  					return ErrIntOverflowHints
  2022  				}
  2023  				if iNdEx >= l {
  2024  					return io.ErrUnexpectedEOF
  2025  				}
  2026  				b := dAtA[iNdEx]
  2027  				iNdEx++
  2028  				m.ChunksFetchedSizeSum |= int64(b&0x7F) << shift
  2029  				if b < 0x80 {
  2030  					break
  2031  				}
  2032  			}
  2033  		case 19:
  2034  			if wireType != 0 {
  2035  				return fmt.Errorf("proto: wrong wireType = %d for field ChunksFetchCount", wireType)
  2036  			}
  2037  			m.ChunksFetchCount = 0
  2038  			for shift := uint(0); ; shift += 7 {
  2039  				if shift >= 64 {
  2040  					return ErrIntOverflowHints
  2041  				}
  2042  				if iNdEx >= l {
  2043  					return io.ErrUnexpectedEOF
  2044  				}
  2045  				b := dAtA[iNdEx]
  2046  				iNdEx++
  2047  				m.ChunksFetchCount |= int64(b&0x7F) << shift
  2048  				if b < 0x80 {
  2049  					break
  2050  				}
  2051  			}
  2052  		case 20:
  2053  			if wireType != 0 {
  2054  				return fmt.Errorf("proto: wrong wireType = %d for field DataDownloadedSizeSum", wireType)
  2055  			}
  2056  			m.DataDownloadedSizeSum = 0
  2057  			for shift := uint(0); ; shift += 7 {
  2058  				if shift >= 64 {
  2059  					return ErrIntOverflowHints
  2060  				}
  2061  				if iNdEx >= l {
  2062  					return io.ErrUnexpectedEOF
  2063  				}
  2064  				b := dAtA[iNdEx]
  2065  				iNdEx++
  2066  				m.DataDownloadedSizeSum |= int64(b&0x7F) << shift
  2067  				if b < 0x80 {
  2068  					break
  2069  				}
  2070  			}
  2071  		default:
  2072  			iNdEx = preIndex
  2073  			skippy, err := skipHints(dAtA[iNdEx:])
  2074  			if err != nil {
  2075  				return err
  2076  			}
  2077  			if (skippy < 0) || (iNdEx+skippy) < 0 {
  2078  				return ErrInvalidLengthHints
  2079  			}
  2080  			if (iNdEx + skippy) > l {
  2081  				return io.ErrUnexpectedEOF
  2082  			}
  2083  			iNdEx += skippy
  2084  		}
  2085  	}
  2086  
  2087  	if iNdEx > l {
  2088  		return io.ErrUnexpectedEOF
  2089  	}
  2090  	return nil
  2091  }
  2092  func skipHints(dAtA []byte) (n int, err error) {
  2093  	l := len(dAtA)
  2094  	iNdEx := 0
  2095  	depth := 0
  2096  	for iNdEx < l {
  2097  		var wire uint64
  2098  		for shift := uint(0); ; shift += 7 {
  2099  			if shift >= 64 {
  2100  				return 0, ErrIntOverflowHints
  2101  			}
  2102  			if iNdEx >= l {
  2103  				return 0, io.ErrUnexpectedEOF
  2104  			}
  2105  			b := dAtA[iNdEx]
  2106  			iNdEx++
  2107  			wire |= (uint64(b) & 0x7F) << shift
  2108  			if b < 0x80 {
  2109  				break
  2110  			}
  2111  		}
  2112  		wireType := int(wire & 0x7)
  2113  		switch wireType {
  2114  		case 0:
  2115  			for shift := uint(0); ; shift += 7 {
  2116  				if shift >= 64 {
  2117  					return 0, ErrIntOverflowHints
  2118  				}
  2119  				if iNdEx >= l {
  2120  					return 0, io.ErrUnexpectedEOF
  2121  				}
  2122  				iNdEx++
  2123  				if dAtA[iNdEx-1] < 0x80 {
  2124  					break
  2125  				}
  2126  			}
  2127  		case 1:
  2128  			iNdEx += 8
  2129  		case 2:
  2130  			var length int
  2131  			for shift := uint(0); ; shift += 7 {
  2132  				if shift >= 64 {
  2133  					return 0, ErrIntOverflowHints
  2134  				}
  2135  				if iNdEx >= l {
  2136  					return 0, io.ErrUnexpectedEOF
  2137  				}
  2138  				b := dAtA[iNdEx]
  2139  				iNdEx++
  2140  				length |= (int(b) & 0x7F) << shift
  2141  				if b < 0x80 {
  2142  					break
  2143  				}
  2144  			}
  2145  			if length < 0 {
  2146  				return 0, ErrInvalidLengthHints
  2147  			}
  2148  			iNdEx += length
  2149  		case 3:
  2150  			depth++
  2151  		case 4:
  2152  			if depth == 0 {
  2153  				return 0, ErrUnexpectedEndOfGroupHints
  2154  			}
  2155  			depth--
  2156  		case 5:
  2157  			iNdEx += 4
  2158  		default:
  2159  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
  2160  		}
  2161  		if iNdEx < 0 {
  2162  			return 0, ErrInvalidLengthHints
  2163  		}
  2164  		if depth == 0 {
  2165  			return iNdEx, nil
  2166  		}
  2167  	}
  2168  	return 0, io.ErrUnexpectedEOF
  2169  }
  2170  
  2171  var (
  2172  	ErrInvalidLengthHints        = fmt.Errorf("proto: negative length found during unmarshaling")
  2173  	ErrIntOverflowHints          = fmt.Errorf("proto: integer overflow")
  2174  	ErrUnexpectedEndOfGroupHints = fmt.Errorf("proto: unexpected end of group")
  2175  )