github.com/cloudwan/edgelq-sdk@v1.15.4/monitoring/resources/v3/common/common.pb.go (about)

     1  // Code generated by protoc-gen-goten-go
     2  // File: edgelq/monitoring/proto/v3/common.proto
     3  // DO NOT EDIT!!!
     4  
     5  package common
     6  
     7  import (
     8  	"fmt"
     9  	"reflect"
    10  	"sync"
    11  
    12  	"google.golang.org/protobuf/encoding/protojson"
    13  	"google.golang.org/protobuf/proto"
    14  	preflect "google.golang.org/protobuf/reflect/protoreflect"
    15  	"google.golang.org/protobuf/runtime/protoimpl"
    16  )
    17  
    18  // proto imports
    19  import (
    20  	durationpb "google.golang.org/protobuf/types/known/durationpb"
    21  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    22  )
    23  
    24  // Reference imports to suppress errors if they are not otherwise used.
    25  var (
    26  	_ = fmt.Errorf
    27  	_ = reflect.Method{}
    28  	_ = sync.Once{}
    29  
    30  	_ = protojson.MarshalOptions{}
    31  	_ = proto.MarshalOptions{}
    32  	_ = preflect.Value{}
    33  	_ = protoimpl.DescBuilder{}
    34  )
    35  
    36  // make sure we're using proto imports
    37  var (
    38  	_ = &durationpb.Duration{}
    39  	_ = &timestamppb.Timestamp{}
    40  )
    41  
    42  const (
    43  	// Verify that this generated code is sufficiently up-to-date.
    44  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    45  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    46  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    47  )
    48  
    49  // Controls which fields are returned by `ListTimeSeries`.
    50  type TimeSeriesView int32
    51  
    52  const (
    53  	// Returns the identity of the metric(s), the time series,
    54  	// and the time series data.
    55  	TimeSeriesView_FULL TimeSeriesView = 0
    56  	// Returns the identity of the metric and the time series resource,
    57  	// but not the time series data.
    58  	TimeSeriesView_HEADERS TimeSeriesView = 1
    59  )
    60  
    61  var (
    62  	TimeSeriesView_name = map[int32]string{
    63  		0: "FULL",
    64  		1: "HEADERS",
    65  	}
    66  
    67  	TimeSeriesView_value = map[string]int32{
    68  		"FULL":    0,
    69  		"HEADERS": 1,
    70  	}
    71  )
    72  
    73  func (x TimeSeriesView) Enum() *TimeSeriesView {
    74  	p := new(TimeSeriesView)
    75  	*p = x
    76  	return p
    77  }
    78  
    79  func (x TimeSeriesView) String() string {
    80  	return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x))
    81  }
    82  
    83  func (TimeSeriesView) Descriptor() preflect.EnumDescriptor {
    84  	return edgelq_monitoring_proto_v3_common_proto_enumTypes[0].Descriptor()
    85  }
    86  
    87  func (TimeSeriesView) Type() preflect.EnumType {
    88  	return &edgelq_monitoring_proto_v3_common_proto_enumTypes[0]
    89  }
    90  
    91  func (x TimeSeriesView) Number() preflect.EnumNumber {
    92  	return preflect.EnumNumber(x)
    93  }
    94  
    95  // Deprecated, Use TimeSeriesView.ProtoReflect.Descriptor instead.
    96  func (TimeSeriesView) EnumDescriptor() ([]byte, []int) {
    97  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{0}
    98  }
    99  
   100  // Value types that can be used as label values.
   101  type LabelDescriptor_ValueType int32
   102  
   103  const (
   104  	// A variable-length string. This is the default.
   105  	LabelDescriptor_STRING LabelDescriptor_ValueType = 0
   106  	// Boolean; true or false.
   107  	LabelDescriptor_BOOL LabelDescriptor_ValueType = 1
   108  	// A 64-bit signed integer.
   109  	LabelDescriptor_INT64 LabelDescriptor_ValueType = 2
   110  )
   111  
   112  var (
   113  	LabelDescriptor_ValueType_name = map[int32]string{
   114  		0: "STRING",
   115  		1: "BOOL",
   116  		2: "INT64",
   117  	}
   118  
   119  	LabelDescriptor_ValueType_value = map[string]int32{
   120  		"STRING": 0,
   121  		"BOOL":   1,
   122  		"INT64":  2,
   123  	}
   124  )
   125  
   126  func (x LabelDescriptor_ValueType) Enum() *LabelDescriptor_ValueType {
   127  	p := new(LabelDescriptor_ValueType)
   128  	*p = x
   129  	return p
   130  }
   131  
   132  func (x LabelDescriptor_ValueType) String() string {
   133  	return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x))
   134  }
   135  
   136  func (LabelDescriptor_ValueType) Descriptor() preflect.EnumDescriptor {
   137  	return edgelq_monitoring_proto_v3_common_proto_enumTypes[1].Descriptor()
   138  }
   139  
   140  func (LabelDescriptor_ValueType) Type() preflect.EnumType {
   141  	return &edgelq_monitoring_proto_v3_common_proto_enumTypes[1]
   142  }
   143  
   144  func (x LabelDescriptor_ValueType) Number() preflect.EnumNumber {
   145  	return preflect.EnumNumber(x)
   146  }
   147  
   148  // Deprecated, Use LabelDescriptor_ValueType.ProtoReflect.Descriptor instead.
   149  func (LabelDescriptor_ValueType) EnumDescriptor() ([]byte, []int) {
   150  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{0, 0}
   151  }
   152  
   153  // The Aligner describes how to bring the data points in a single
   154  // time series into temporal alignment.
   155  type Aggregation_Aligner int32
   156  
   157  const (
   158  	// No alignment. Raw data is returned. Not valid if cross-time
   159  	// series reduction is requested. The value type of the result is
   160  	// the same as the value type of the input.
   161  	Aggregation_ALIGN_NONE Aggregation_Aligner = 0
   162  	// Align and convert to delta metric type. This alignment is valid
   163  	// for cumulative metrics and delta metrics. Aligning an existing
   164  	// delta metric to a delta metric requires that the alignment
   165  	// period be increased. The value type of the result is the same
   166  	// as the value type of the input.
   167  	//
   168  	// One can think of this aligner as a rate but without time units; that
   169  	// is, the output is conceptually (second_point - first_point).
   170  	Aggregation_ALIGN_DELTA Aggregation_Aligner = 1
   171  	// Align and convert to a rate. This alignment is valid for
   172  	// cumulative metrics and delta metrics with numeric values. The output is a
   173  	// gauge metric with value type
   174  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE].
   175  	//
   176  	// One can think of this aligner as conceptually providing the slope of
   177  	// the line that passes through the value at the start and end of the
   178  	// window. In other words, this is conceptually ((y1 - y0)/(t1 - t0)),
   179  	// and the output unit is one that has a "/time" dimension.
   180  	//
   181  	// If, by rate, you are looking for percentage change, see the
   182  	// `ALIGN_PERCENT_CHANGE` aligner option.
   183  	Aggregation_ALIGN_RATE Aggregation_Aligner = 2
   184  	// Align by interpolating between adjacent points around the
   185  	// period boundary. This alignment is valid for gauge
   186  	// metrics with numeric values. The value type of the result is the same
   187  	// as the value type of the input.
   188  	Aggregation_ALIGN_INTERPOLATE Aggregation_Aligner = 3
   189  	// Align by shifting the oldest data point before the period
   190  	// boundary to the boundary. This alignment is valid for gauge
   191  	// metrics. The value type of the result is the same as the
   192  	// value type of the input.
   193  	Aggregation_ALIGN_NEXT_OLDER Aggregation_Aligner = 4
   194  	// Align time series via aggregation. The resulting data point in
   195  	// the alignment period is the minimum of all data points in the
   196  	// period. This alignment is valid for gauge and delta metrics with numeric
   197  	// values. The value type of the result is the same as the value
   198  	// type of the input.
   199  	Aggregation_ALIGN_MIN Aggregation_Aligner = 10
   200  	// Align time series via aggregation. The resulting data point in
   201  	// the alignment period is the maximum of all data points in the
   202  	// period. This alignment is valid for gauge and delta metrics with numeric
   203  	// values. The value type of the result is the same as the value
   204  	// type of the input.
   205  	Aggregation_ALIGN_MAX Aggregation_Aligner = 11
   206  	// Align time series via aggregation. The resulting data point in
   207  	// the alignment period is the average or arithmetic mean of all
   208  	// data points in the period. This alignment is valid for gauge and delta
   209  	// metrics with numeric values. The value type of the output is
   210  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE].
   211  	Aggregation_ALIGN_MEAN Aggregation_Aligner = 12
   212  	// Align time series via aggregation. The resulting data point in
   213  	// the alignment period is the count of all data points in the
   214  	// period. This alignment is valid for gauge and delta metrics with numeric
   215  	// or Boolean values. The value type of the output is
   216  	// [INT64][google.api.MetricDescriptor.ValueType.INT64].
   217  	Aggregation_ALIGN_COUNT Aggregation_Aligner = 13
   218  	// Align time series via aggregation. The resulting data point in
   219  	// the alignment period is the sum of all data points in the
   220  	// period. This alignment is valid for gauge and delta metrics with numeric
   221  	// and distribution values. The value type of the output is the
   222  	// same as the value type of the input.
   223  	Aggregation_ALIGN_SUM Aggregation_Aligner = 14
   224  	// Align time series via aggregation. The resulting data point in
   225  	// the alignment period is the standard deviation of all data
   226  	// points in the period. This alignment is valid for gauge and delta metrics
   227  	// with numeric values. The value type of the output is
   228  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE].
   229  	Aggregation_ALIGN_STDDEV Aggregation_Aligner = 15
   230  	// Align time series via aggregation. The resulting data point in
   231  	// the alignment period is the count of True-valued data points in the
   232  	// period. This alignment is valid for gauge metrics with
   233  	// Boolean values. The value type of the output is
   234  	// [INT64][google.api.MetricDescriptor.ValueType.INT64].
   235  	Aggregation_ALIGN_COUNT_TRUE Aggregation_Aligner = 16
   236  	// Align time series via aggregation. The resulting data point in
   237  	// the alignment period is the count of False-valued data points in the
   238  	// period. This alignment is valid for gauge metrics with
   239  	// Boolean values. The value type of the output is
   240  	// [INT64][google.api.MetricDescriptor.ValueType.INT64].
   241  	Aggregation_ALIGN_COUNT_FALSE Aggregation_Aligner = 24
   242  	// Align time series via aggregation. The resulting data point in
   243  	// the alignment period is the fraction of True-valued data points in the
   244  	// period. This alignment is valid for gauge metrics with Boolean values.
   245  	// The output value is in the range [0, 1] and has value type
   246  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE].
   247  	Aggregation_ALIGN_FRACTION_TRUE Aggregation_Aligner = 17
   248  	// Align time series via aggregation. The resulting data point in
   249  	// the alignment period is the 99th percentile of all data
   250  	// points in the period. This alignment is valid for gauge and delta metrics
   251  	// with distribution values. The output is a gauge metric with value type
   252  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE].
   253  	Aggregation_ALIGN_PERCENTILE_99 Aggregation_Aligner = 18
   254  	// Align time series via aggregation. The resulting data point in
   255  	// the alignment period is the 95th percentile of all data
   256  	// points in the period. This alignment is valid for gauge and delta metrics
   257  	// with distribution values. The output is a gauge metric with value type
   258  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE].
   259  	Aggregation_ALIGN_PERCENTILE_95 Aggregation_Aligner = 19
   260  	// Align time series via aggregation. The resulting data point in
   261  	// the alignment period is the 50th percentile of all data
   262  	// points in the period. This alignment is valid for gauge and delta metrics
   263  	// with distribution values. The output is a gauge metric with value type
   264  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE].
   265  	Aggregation_ALIGN_PERCENTILE_50 Aggregation_Aligner = 20
   266  	// Align time series via aggregation. The resulting data point in
   267  	// the alignment period is the 5th percentile of all data
   268  	// points in the period. This alignment is valid for gauge and delta metrics
   269  	// with distribution values. The output is a gauge metric with value type
   270  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE].
   271  	Aggregation_ALIGN_PERCENTILE_05 Aggregation_Aligner = 21
   272  	// Align and convert to a percentage change. This alignment is valid for
   273  	// gauge and delta metrics with numeric values. This alignment conceptually
   274  	// computes the equivalent of "((current - previous)/previous)*100"
   275  	// where previous value is determined based on the alignmentPeriod.
   276  	// In the event that previous is 0 the calculated value is infinity with the
   277  	// exception that if both (current - previous) and previous are 0 the
   278  	// calculated value is 0.
   279  	// A 10 minute moving mean is computed at each point of the time window
   280  	// prior to the above calculation to smooth the metric and prevent false
   281  	// positives from very short lived spikes.
   282  	// Only applicable for data that is >= 0. Any values < 0 are treated as
   283  	// no data. While delta metrics are accepted by this alignment special care
   284  	// should be taken that the values for the metric will always be positive.
   285  	// The output is a gauge metric with value type
   286  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE].
   287  	Aggregation_ALIGN_PERCENT_CHANGE Aggregation_Aligner = 23
   288  	// Outputs Distribution without bucketing with stats like: Min, Max, Count,
   289  	// Mean, SumOfSquaredDeviations valid only for LONG, DOUBLE and DISTRIBUTION
   290  	// value types
   291  	Aggregation_ALIGN_SUMMARY Aggregation_Aligner = 45
   292  	// TDigest Summary allows for calculation (and further aggregation) of
   293  	// percentiles
   294  	Aggregation_ALIGN_TDIGEST_SUMMARY Aggregation_Aligner = 46
   295  )
   296  
   297  var (
   298  	Aggregation_Aligner_name = map[int32]string{
   299  		0:  "ALIGN_NONE",
   300  		1:  "ALIGN_DELTA",
   301  		2:  "ALIGN_RATE",
   302  		3:  "ALIGN_INTERPOLATE",
   303  		4:  "ALIGN_NEXT_OLDER",
   304  		10: "ALIGN_MIN",
   305  		11: "ALIGN_MAX",
   306  		12: "ALIGN_MEAN",
   307  		13: "ALIGN_COUNT",
   308  		14: "ALIGN_SUM",
   309  		15: "ALIGN_STDDEV",
   310  		16: "ALIGN_COUNT_TRUE",
   311  		24: "ALIGN_COUNT_FALSE",
   312  		17: "ALIGN_FRACTION_TRUE",
   313  		18: "ALIGN_PERCENTILE_99",
   314  		19: "ALIGN_PERCENTILE_95",
   315  		20: "ALIGN_PERCENTILE_50",
   316  		21: "ALIGN_PERCENTILE_05",
   317  		23: "ALIGN_PERCENT_CHANGE",
   318  		45: "ALIGN_SUMMARY",
   319  		46: "ALIGN_TDIGEST_SUMMARY",
   320  	}
   321  
   322  	Aggregation_Aligner_value = map[string]int32{
   323  		"ALIGN_NONE":            0,
   324  		"ALIGN_DELTA":           1,
   325  		"ALIGN_RATE":            2,
   326  		"ALIGN_INTERPOLATE":     3,
   327  		"ALIGN_NEXT_OLDER":      4,
   328  		"ALIGN_MIN":             10,
   329  		"ALIGN_MAX":             11,
   330  		"ALIGN_MEAN":            12,
   331  		"ALIGN_COUNT":           13,
   332  		"ALIGN_SUM":             14,
   333  		"ALIGN_STDDEV":          15,
   334  		"ALIGN_COUNT_TRUE":      16,
   335  		"ALIGN_COUNT_FALSE":     24,
   336  		"ALIGN_FRACTION_TRUE":   17,
   337  		"ALIGN_PERCENTILE_99":   18,
   338  		"ALIGN_PERCENTILE_95":   19,
   339  		"ALIGN_PERCENTILE_50":   20,
   340  		"ALIGN_PERCENTILE_05":   21,
   341  		"ALIGN_PERCENT_CHANGE":  23,
   342  		"ALIGN_SUMMARY":         45,
   343  		"ALIGN_TDIGEST_SUMMARY": 46,
   344  	}
   345  )
   346  
   347  func (x Aggregation_Aligner) Enum() *Aggregation_Aligner {
   348  	p := new(Aggregation_Aligner)
   349  	*p = x
   350  	return p
   351  }
   352  
   353  func (x Aggregation_Aligner) String() string {
   354  	return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x))
   355  }
   356  
   357  func (Aggregation_Aligner) Descriptor() preflect.EnumDescriptor {
   358  	return edgelq_monitoring_proto_v3_common_proto_enumTypes[2].Descriptor()
   359  }
   360  
   361  func (Aggregation_Aligner) Type() preflect.EnumType {
   362  	return &edgelq_monitoring_proto_v3_common_proto_enumTypes[2]
   363  }
   364  
   365  func (x Aggregation_Aligner) Number() preflect.EnumNumber {
   366  	return preflect.EnumNumber(x)
   367  }
   368  
   369  // Deprecated, Use Aggregation_Aligner.ProtoReflect.Descriptor instead.
   370  func (Aggregation_Aligner) EnumDescriptor() ([]byte, []int) {
   371  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{6, 0}
   372  }
   373  
   374  // A Reducer describes how to aggregate data points from multiple
   375  // time series into a single time series.
   376  type Aggregation_Reducer int32
   377  
   378  const (
   379  	// No cross-time series reduction. The output of the aligner is
   380  	// returned.
   381  	Aggregation_REDUCE_NONE Aggregation_Reducer = 0
   382  	// Reduce by computing the mean across time series for each
   383  	// alignment period. This reducer is valid for delta and
   384  	// gauge metrics with numeric or distribution values. The value type of the
   385  	// output is [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE].
   386  	Aggregation_REDUCE_MEAN Aggregation_Reducer = 1
   387  	// Reduce by computing the minimum across time series for each
   388  	// alignment period. This reducer is valid for delta and
   389  	// gauge metrics with numeric values. The value type of the output
   390  	// is the same as the value type of the input.
   391  	Aggregation_REDUCE_MIN Aggregation_Reducer = 2
   392  	// Reduce by computing the maximum across time series for each
   393  	// alignment period. This reducer is valid for delta and
   394  	// gauge metrics with numeric values. The value type of the output
   395  	// is the same as the value type of the input.
   396  	Aggregation_REDUCE_MAX Aggregation_Reducer = 3
   397  	// Reduce by computing the sum across time series for each
   398  	// alignment period. This reducer is valid for delta and
   399  	// gauge metrics with numeric and distribution values. The value type of
   400  	// the output is the same as the value type of the input.
   401  	Aggregation_REDUCE_SUM Aggregation_Reducer = 4
   402  	// Reduce by computing the standard deviation across time series
   403  	// for each alignment period. This reducer is valid for delta
   404  	// and gauge metrics with numeric or distribution values. The value type of
   405  	// the output is [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE].
   406  	Aggregation_REDUCE_STDDEV Aggregation_Reducer = 5
   407  	// Reduce by computing the count of data points across time series
   408  	// for each alignment period. This reducer is valid for delta
   409  	// and gauge metrics of numeric, Boolean, distribution, and string value
   410  	// type. The value type of the output is
   411  	// [INT64][google.api.MetricDescriptor.ValueType.INT64].
   412  	Aggregation_REDUCE_COUNT Aggregation_Reducer = 6
   413  	// Reduce by computing the count of True-valued data points across time
   414  	// series for each alignment period. This reducer is valid for delta
   415  	// and gauge metrics of Boolean value type. The value type of
   416  	// the output is [INT64][google.api.MetricDescriptor.ValueType.INT64].
   417  	Aggregation_REDUCE_COUNT_TRUE Aggregation_Reducer = 7
   418  	// Reduce by computing the count of False-valued data points across time
   419  	// series for each alignment period. This reducer is valid for delta
   420  	// and gauge metrics of Boolean value type. The value type of
   421  	// the output is [INT64][google.api.MetricDescriptor.ValueType.INT64].
   422  	Aggregation_REDUCE_COUNT_FALSE Aggregation_Reducer = 15
   423  	// Reduce by computing the fraction of True-valued data points across time
   424  	// series for each alignment period. This reducer is valid for delta
   425  	// and gauge metrics of Boolean value type. The output value is in the
   426  	// range [0, 1] and has value type
   427  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE].
   428  	Aggregation_REDUCE_FRACTION_TRUE Aggregation_Reducer = 8
   429  	// Reduce by computing 99th percentile of data points across time series
   430  	// for each alignment period. This reducer is valid for gauge and delta
   431  	// metrics of numeric and distribution type. The value of the output is
   432  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]
   433  	Aggregation_REDUCE_PERCENTILE_99 Aggregation_Reducer = 9
   434  	// Reduce by computing 95th percentile of data points across time series
   435  	// for each alignment period. This reducer is valid for gauge and delta
   436  	// metrics of numeric and distribution type. The value of the output is
   437  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]
   438  	Aggregation_REDUCE_PERCENTILE_95 Aggregation_Reducer = 10
   439  	// Reduce by computing 50th percentile of data points across time series
   440  	// for each alignment period. This reducer is valid for gauge and delta
   441  	// metrics of numeric and distribution type. The value of the output is
   442  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]
   443  	Aggregation_REDUCE_PERCENTILE_50 Aggregation_Reducer = 11
   444  	// Reduce by computing 5th percentile of data points across time series
   445  	// for each alignment period. This reducer is valid for gauge and delta
   446  	// metrics of numeric and distribution type. The value of the output is
   447  	// [DOUBLE][google.api.MetricDescriptor.ValueType.DOUBLE]
   448  	Aggregation_REDUCE_PERCENTILE_05 Aggregation_Reducer = 12
   449  	// Reduce with Distribution with stats like: Min, Max, Count, Mean,
   450  	// SumOfSquaredDeviations, histogram. This reducer is valid for gauge and
   451  	// delta metrics of numeric and distribution type. The value of the output
   452  	// is [DISTRIBUTION][google.api.MetricDescriptor.ValueType.DISTRIBUTION]
   453  	Aggregation_REDUCE_SUMMARY Aggregation_Reducer = 13
   454  )
   455  
   456  var (
   457  	Aggregation_Reducer_name = map[int32]string{
   458  		0:  "REDUCE_NONE",
   459  		1:  "REDUCE_MEAN",
   460  		2:  "REDUCE_MIN",
   461  		3:  "REDUCE_MAX",
   462  		4:  "REDUCE_SUM",
   463  		5:  "REDUCE_STDDEV",
   464  		6:  "REDUCE_COUNT",
   465  		7:  "REDUCE_COUNT_TRUE",
   466  		15: "REDUCE_COUNT_FALSE",
   467  		8:  "REDUCE_FRACTION_TRUE",
   468  		9:  "REDUCE_PERCENTILE_99",
   469  		10: "REDUCE_PERCENTILE_95",
   470  		11: "REDUCE_PERCENTILE_50",
   471  		12: "REDUCE_PERCENTILE_05",
   472  		13: "REDUCE_SUMMARY",
   473  	}
   474  
   475  	Aggregation_Reducer_value = map[string]int32{
   476  		"REDUCE_NONE":          0,
   477  		"REDUCE_MEAN":          1,
   478  		"REDUCE_MIN":           2,
   479  		"REDUCE_MAX":           3,
   480  		"REDUCE_SUM":           4,
   481  		"REDUCE_STDDEV":        5,
   482  		"REDUCE_COUNT":         6,
   483  		"REDUCE_COUNT_TRUE":    7,
   484  		"REDUCE_COUNT_FALSE":   15,
   485  		"REDUCE_FRACTION_TRUE": 8,
   486  		"REDUCE_PERCENTILE_99": 9,
   487  		"REDUCE_PERCENTILE_95": 10,
   488  		"REDUCE_PERCENTILE_50": 11,
   489  		"REDUCE_PERCENTILE_05": 12,
   490  		"REDUCE_SUMMARY":       13,
   491  	}
   492  )
   493  
   494  func (x Aggregation_Reducer) Enum() *Aggregation_Reducer {
   495  	p := new(Aggregation_Reducer)
   496  	*p = x
   497  	return p
   498  }
   499  
   500  func (x Aggregation_Reducer) String() string {
   501  	return protoimpl.X.EnumStringOf(x.Descriptor(), preflect.EnumNumber(x))
   502  }
   503  
   504  func (Aggregation_Reducer) Descriptor() preflect.EnumDescriptor {
   505  	return edgelq_monitoring_proto_v3_common_proto_enumTypes[3].Descriptor()
   506  }
   507  
   508  func (Aggregation_Reducer) Type() preflect.EnumType {
   509  	return &edgelq_monitoring_proto_v3_common_proto_enumTypes[3]
   510  }
   511  
   512  func (x Aggregation_Reducer) Number() preflect.EnumNumber {
   513  	return preflect.EnumNumber(x)
   514  }
   515  
   516  // Deprecated, Use Aggregation_Reducer.ProtoReflect.Descriptor instead.
   517  func (Aggregation_Reducer) EnumDescriptor() ([]byte, []int) {
   518  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{6, 1}
   519  }
   520  
   521  // A description of a label.
   522  type LabelDescriptor struct {
   523  	state         protoimpl.MessageState
   524  	sizeCache     protoimpl.SizeCache
   525  	unknownFields protoimpl.UnknownFields
   526  	// The label key.
   527  	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
   528  	// The type of data that can be assigned to the label.
   529  	ValueType LabelDescriptor_ValueType `protobuf:"varint,2,opt,name=value_type,json=valueType,proto3,enum=ntt.monitoring.v3.LabelDescriptor_ValueType" json:"value_type,omitempty"`
   530  	// A human-readable description for the label.
   531  	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
   532  	// Default value for string label - this value is used in two cases:
   533  	// 1. to populate missing labels while creating TimeSeries
   534  	// 2. to populate missing remaining kvs while querying TimeSeries - usually
   535  	// applies to old data
   536  	DefaultValue string `protobuf:"bytes,12,opt,name=default_value,json=defaultValue,proto3" json:"default_value,omitempty"`
   537  	// disabled flag communicates that this label is ignored by the backend. It's
   538  	// used for backward compatibility.
   539  	Disabled bool `protobuf:"varint,13,opt,name=disabled,proto3" json:"disabled,omitempty"`
   540  }
   541  
   542  func (m *LabelDescriptor) Reset() {
   543  	*m = LabelDescriptor{}
   544  	if protoimpl.UnsafeEnabled {
   545  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[0]
   546  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   547  		ms.StoreMessageInfo(mi)
   548  	}
   549  }
   550  
   551  func (m *LabelDescriptor) String() string {
   552  	return protoimpl.X.MessageStringOf(m)
   553  }
   554  
   555  func (*LabelDescriptor) ProtoMessage() {}
   556  
   557  func (m *LabelDescriptor) ProtoReflect() preflect.Message {
   558  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[0]
   559  	if protoimpl.UnsafeEnabled && m != nil {
   560  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   561  		if ms.LoadMessageInfo() == nil {
   562  			ms.StoreMessageInfo(mi)
   563  		}
   564  		return ms
   565  	}
   566  	return mi.MessageOf(m)
   567  }
   568  
   569  func (*LabelDescriptor) GotenMessage() {}
   570  
   571  // Deprecated, Use LabelDescriptor.ProtoReflect.Descriptor instead.
   572  func (*LabelDescriptor) Descriptor() ([]byte, []int) {
   573  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{0}
   574  }
   575  
   576  func (m *LabelDescriptor) Unmarshal(b []byte) error {
   577  	return proto.Unmarshal(b, m)
   578  }
   579  
   580  func (m *LabelDescriptor) Marshal() ([]byte, error) {
   581  	return proto.Marshal(m)
   582  }
   583  
   584  func (m *LabelDescriptor) MarshalJSON() ([]byte, error) {
   585  	return protojson.MarshalOptions{}.Marshal(m)
   586  }
   587  
   588  func (m *LabelDescriptor) UnmarshalJSON(data []byte) error {
   589  	return protojson.Unmarshal(data, m)
   590  }
   591  
   592  func (m *LabelDescriptor) GetKey() string {
   593  	if m != nil {
   594  		return m.Key
   595  	}
   596  	return ""
   597  }
   598  
   599  func (m *LabelDescriptor) GetValueType() LabelDescriptor_ValueType {
   600  	if m != nil {
   601  		return m.ValueType
   602  	}
   603  	return LabelDescriptor_STRING
   604  }
   605  
   606  func (m *LabelDescriptor) GetDescription() string {
   607  	if m != nil {
   608  		return m.Description
   609  	}
   610  	return ""
   611  }
   612  
   613  func (m *LabelDescriptor) GetDefaultValue() string {
   614  	if m != nil {
   615  		return m.DefaultValue
   616  	}
   617  	return ""
   618  }
   619  
   620  func (m *LabelDescriptor) GetDisabled() bool {
   621  	if m != nil {
   622  		return m.Disabled
   623  	}
   624  	return false
   625  }
   626  
   627  func (m *LabelDescriptor) SetKey(fv string) {
   628  	if m == nil {
   629  		panic(fmt.Errorf("can't set %s on nil %s", "Key", "LabelDescriptor"))
   630  	}
   631  	m.Key = fv
   632  }
   633  
   634  func (m *LabelDescriptor) SetValueType(fv LabelDescriptor_ValueType) {
   635  	if m == nil {
   636  		panic(fmt.Errorf("can't set %s on nil %s", "ValueType", "LabelDescriptor"))
   637  	}
   638  	m.ValueType = fv
   639  }
   640  
   641  func (m *LabelDescriptor) SetDescription(fv string) {
   642  	if m == nil {
   643  		panic(fmt.Errorf("can't set %s on nil %s", "Description", "LabelDescriptor"))
   644  	}
   645  	m.Description = fv
   646  }
   647  
   648  func (m *LabelDescriptor) SetDefaultValue(fv string) {
   649  	if m == nil {
   650  		panic(fmt.Errorf("can't set %s on nil %s", "DefaultValue", "LabelDescriptor"))
   651  	}
   652  	m.DefaultValue = fv
   653  }
   654  
   655  func (m *LabelDescriptor) SetDisabled(fv bool) {
   656  	if m == nil {
   657  		panic(fmt.Errorf("can't set %s on nil %s", "Disabled", "LabelDescriptor"))
   658  	}
   659  	m.Disabled = fv
   660  }
   661  
   662  // LabelKeySet is used for defining PromotedLabelKeySets on Metric descriptors
   663  type LabelKeySet struct {
   664  	state         protoimpl.MessageState
   665  	sizeCache     protoimpl.SizeCache
   666  	unknownFields protoimpl.UnknownFields
   667  	LabelKeys     []string `protobuf:"bytes,1,rep,name=label_keys,json=labelKeys,proto3" json:"label_keys,omitempty"`
   668  	// if set, index will not be considered for queries, but will be written to.
   669  	// useful for transition periods.
   670  	WriteOnly bool `protobuf:"varint,2,opt,name=write_only,json=writeOnly,proto3" json:"write_only,omitempty"`
   671  }
   672  
   673  func (m *LabelKeySet) Reset() {
   674  	*m = LabelKeySet{}
   675  	if protoimpl.UnsafeEnabled {
   676  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[1]
   677  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   678  		ms.StoreMessageInfo(mi)
   679  	}
   680  }
   681  
   682  func (m *LabelKeySet) String() string {
   683  	return protoimpl.X.MessageStringOf(m)
   684  }
   685  
   686  func (*LabelKeySet) ProtoMessage() {}
   687  
   688  func (m *LabelKeySet) ProtoReflect() preflect.Message {
   689  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[1]
   690  	if protoimpl.UnsafeEnabled && m != nil {
   691  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   692  		if ms.LoadMessageInfo() == nil {
   693  			ms.StoreMessageInfo(mi)
   694  		}
   695  		return ms
   696  	}
   697  	return mi.MessageOf(m)
   698  }
   699  
   700  func (*LabelKeySet) GotenMessage() {}
   701  
   702  // Deprecated, Use LabelKeySet.ProtoReflect.Descriptor instead.
   703  func (*LabelKeySet) Descriptor() ([]byte, []int) {
   704  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{1}
   705  }
   706  
   707  func (m *LabelKeySet) Unmarshal(b []byte) error {
   708  	return proto.Unmarshal(b, m)
   709  }
   710  
   711  func (m *LabelKeySet) Marshal() ([]byte, error) {
   712  	return proto.Marshal(m)
   713  }
   714  
   715  func (m *LabelKeySet) MarshalJSON() ([]byte, error) {
   716  	return protojson.MarshalOptions{}.Marshal(m)
   717  }
   718  
   719  func (m *LabelKeySet) UnmarshalJSON(data []byte) error {
   720  	return protojson.Unmarshal(data, m)
   721  }
   722  
   723  func (m *LabelKeySet) GetLabelKeys() []string {
   724  	if m != nil {
   725  		return m.LabelKeys
   726  	}
   727  	return nil
   728  }
   729  
   730  func (m *LabelKeySet) GetWriteOnly() bool {
   731  	if m != nil {
   732  		return m.WriteOnly
   733  	}
   734  	return false
   735  }
   736  
   737  func (m *LabelKeySet) SetLabelKeys(fv []string) {
   738  	if m == nil {
   739  		panic(fmt.Errorf("can't set %s on nil %s", "LabelKeys", "LabelKeySet"))
   740  	}
   741  	m.LabelKeys = fv
   742  }
   743  
   744  func (m *LabelKeySet) SetWriteOnly(fv bool) {
   745  	if m == nil {
   746  		panic(fmt.Errorf("can't set %s on nil %s", "WriteOnly", "LabelKeySet"))
   747  	}
   748  	m.WriteOnly = fv
   749  }
   750  
   751  // Distribution contains summary statistics for a population of values and,
   752  // optionally, a histogram representing the distribution of those values across
   753  // a specified set of histogram buckets.
   754  //
   755  // The summary statistics are the count, mean, sum of the squared deviation from
   756  // the mean, the minimum, and the maximum of the set of population of values.
   757  //
   758  // The histogram is based on a sequence of buckets and gives a count of values
   759  // that fall into each bucket.  The boundaries of the buckets are given either
   760  // explicitly or by specifying parameters for a method of computing them
   761  // (buckets of fixed width or buckets of exponentially increasing width).
   762  //
   763  // Although it is not forbidden, it is generally a bad idea to include
   764  // non-finite values (infinities or NaNs) in the population of values, as this
   765  // will render the `mean` and `sum_of_squared_deviation` fields meaningless.
   766  type Distribution struct {
   767  	state         protoimpl.MessageState
   768  	sizeCache     protoimpl.SizeCache
   769  	unknownFields protoimpl.UnknownFields
   770  	// The number of values in the population. Must be non-negative.
   771  	Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
   772  	// The arithmetic mean of the values in the population. If `count` is zero
   773  	// then this field must be zero.
   774  	Mean float64 `protobuf:"fixed64,2,opt,name=mean,proto3" json:"mean,omitempty"`
   775  	// The sum of squared deviations from the mean of the values in the
   776  	// population.  For values x_i this is:
   777  	//
   778  	//     Sum[i=1..n]((x_i - mean)^2)
   779  	//
   780  	// Knuth, "The Art of Computer Programming", Vol. 2, page 323, 3rd edition
   781  	// describes Welford's method for accumulating this sum in one pass.
   782  	//
   783  	// If `count` is zero then this field must be zero.
   784  	SumOfSquaredDeviation float64 `protobuf:"fixed64,3,opt,name=sum_of_squared_deviation,json=sumOfSquaredDeviation,proto3" json:"sum_of_squared_deviation,omitempty"`
   785  	// If specified, contains the range of the population values. The field
   786  	// must not be present if the `count` is zero.
   787  	Range *Distribution_Range `protobuf:"bytes,4,opt,name=range,proto3" json:"range,omitempty"`
   788  	// Defines the histogram bucket boundaries.
   789  	BucketOptions *Distribution_BucketOptions `protobuf:"bytes,6,opt,name=bucket_options,json=bucketOptions,proto3" json:"bucket_options,omitempty"`
   790  	// If `bucket_options` is given, then the sum of the values in `bucket_counts`
   791  	// must equal the value in `count`.  If `bucket_options` is not given, no
   792  	// `bucket_counts` fields may be given.
   793  	//
   794  	// Bucket counts are given in order under the numbering scheme described
   795  	// above (the underflow bucket has number 0; the finite buckets, if any,
   796  	// have numbers 1 through N-2; the overflow bucket has number N-1).
   797  	//
   798  	// The size of `bucket_counts` must be no greater than N as defined in
   799  	// `bucket_options`.
   800  	//
   801  	// Any suffix of trailing zero bucket_count fields may be omitted.
   802  	BucketCounts []int64 `protobuf:"varint,7,rep,packed,name=bucket_counts,json=bucketCounts,proto3" json:"bucket_counts,omitempty"`
   803  }
   804  
   805  func (m *Distribution) Reset() {
   806  	*m = Distribution{}
   807  	if protoimpl.UnsafeEnabled {
   808  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[2]
   809  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   810  		ms.StoreMessageInfo(mi)
   811  	}
   812  }
   813  
   814  func (m *Distribution) String() string {
   815  	return protoimpl.X.MessageStringOf(m)
   816  }
   817  
   818  func (*Distribution) ProtoMessage() {}
   819  
   820  func (m *Distribution) ProtoReflect() preflect.Message {
   821  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[2]
   822  	if protoimpl.UnsafeEnabled && m != nil {
   823  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   824  		if ms.LoadMessageInfo() == nil {
   825  			ms.StoreMessageInfo(mi)
   826  		}
   827  		return ms
   828  	}
   829  	return mi.MessageOf(m)
   830  }
   831  
   832  func (*Distribution) GotenMessage() {}
   833  
   834  // Deprecated, Use Distribution.ProtoReflect.Descriptor instead.
   835  func (*Distribution) Descriptor() ([]byte, []int) {
   836  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{2}
   837  }
   838  
   839  func (m *Distribution) Unmarshal(b []byte) error {
   840  	return proto.Unmarshal(b, m)
   841  }
   842  
   843  func (m *Distribution) Marshal() ([]byte, error) {
   844  	return proto.Marshal(m)
   845  }
   846  
   847  func (m *Distribution) MarshalJSON() ([]byte, error) {
   848  	return protojson.MarshalOptions{}.Marshal(m)
   849  }
   850  
   851  func (m *Distribution) UnmarshalJSON(data []byte) error {
   852  	return protojson.Unmarshal(data, m)
   853  }
   854  
   855  func (m *Distribution) GetCount() int64 {
   856  	if m != nil {
   857  		return m.Count
   858  	}
   859  	return int64(0)
   860  }
   861  
   862  func (m *Distribution) GetMean() float64 {
   863  	if m != nil {
   864  		return m.Mean
   865  	}
   866  	return float64(0)
   867  }
   868  
   869  func (m *Distribution) GetSumOfSquaredDeviation() float64 {
   870  	if m != nil {
   871  		return m.SumOfSquaredDeviation
   872  	}
   873  	return float64(0)
   874  }
   875  
   876  func (m *Distribution) GetRange() *Distribution_Range {
   877  	if m != nil {
   878  		return m.Range
   879  	}
   880  	return nil
   881  }
   882  
   883  func (m *Distribution) GetBucketOptions() *Distribution_BucketOptions {
   884  	if m != nil {
   885  		return m.BucketOptions
   886  	}
   887  	return nil
   888  }
   889  
   890  func (m *Distribution) GetBucketCounts() []int64 {
   891  	if m != nil {
   892  		return m.BucketCounts
   893  	}
   894  	return nil
   895  }
   896  
   897  func (m *Distribution) SetCount(fv int64) {
   898  	if m == nil {
   899  		panic(fmt.Errorf("can't set %s on nil %s", "Count", "Distribution"))
   900  	}
   901  	m.Count = fv
   902  }
   903  
   904  func (m *Distribution) SetMean(fv float64) {
   905  	if m == nil {
   906  		panic(fmt.Errorf("can't set %s on nil %s", "Mean", "Distribution"))
   907  	}
   908  	m.Mean = fv
   909  }
   910  
   911  func (m *Distribution) SetSumOfSquaredDeviation(fv float64) {
   912  	if m == nil {
   913  		panic(fmt.Errorf("can't set %s on nil %s", "SumOfSquaredDeviation", "Distribution"))
   914  	}
   915  	m.SumOfSquaredDeviation = fv
   916  }
   917  
   918  func (m *Distribution) SetRange(fv *Distribution_Range) {
   919  	if m == nil {
   920  		panic(fmt.Errorf("can't set %s on nil %s", "Range", "Distribution"))
   921  	}
   922  	m.Range = fv
   923  }
   924  
   925  func (m *Distribution) SetBucketOptions(fv *Distribution_BucketOptions) {
   926  	if m == nil {
   927  		panic(fmt.Errorf("can't set %s on nil %s", "BucketOptions", "Distribution"))
   928  	}
   929  	m.BucketOptions = fv
   930  }
   931  
   932  func (m *Distribution) SetBucketCounts(fv []int64) {
   933  	if m == nil {
   934  		panic(fmt.Errorf("can't set %s on nil %s", "BucketCounts", "Distribution"))
   935  	}
   936  	m.BucketCounts = fv
   937  }
   938  
   939  // A single strongly-typed value.
   940  type TypedValue struct {
   941  	state         protoimpl.MessageState
   942  	sizeCache     protoimpl.SizeCache
   943  	unknownFields protoimpl.UnknownFields
   944  	// The typed value field.
   945  	//
   946  	// Types that are valid to be assigned to Value:
   947  	//	*TypedValue_BoolValue
   948  	//	*TypedValue_Int64Value
   949  	//	*TypedValue_DoubleValue
   950  	//	*TypedValue_StringValue
   951  	//	*TypedValue_DistributionValue
   952  	Value isTypedValue_Value `protobuf_oneof:"value"`
   953  }
   954  
   955  func (m *TypedValue) Reset() {
   956  	*m = TypedValue{}
   957  	if protoimpl.UnsafeEnabled {
   958  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[3]
   959  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   960  		ms.StoreMessageInfo(mi)
   961  	}
   962  }
   963  
   964  func (m *TypedValue) String() string {
   965  	return protoimpl.X.MessageStringOf(m)
   966  }
   967  
   968  func (*TypedValue) ProtoMessage() {}
   969  
   970  func (m *TypedValue) ProtoReflect() preflect.Message {
   971  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[3]
   972  	if protoimpl.UnsafeEnabled && m != nil {
   973  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
   974  		if ms.LoadMessageInfo() == nil {
   975  			ms.StoreMessageInfo(mi)
   976  		}
   977  		return ms
   978  	}
   979  	return mi.MessageOf(m)
   980  }
   981  
   982  func (*TypedValue) GotenMessage() {}
   983  
   984  // Deprecated, Use TypedValue.ProtoReflect.Descriptor instead.
   985  func (*TypedValue) Descriptor() ([]byte, []int) {
   986  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{3}
   987  }
   988  
   989  func (m *TypedValue) Unmarshal(b []byte) error {
   990  	return proto.Unmarshal(b, m)
   991  }
   992  
   993  func (m *TypedValue) Marshal() ([]byte, error) {
   994  	return proto.Marshal(m)
   995  }
   996  
   997  func (m *TypedValue) MarshalJSON() ([]byte, error) {
   998  	return protojson.MarshalOptions{}.Marshal(m)
   999  }
  1000  
  1001  func (m *TypedValue) UnmarshalJSON(data []byte) error {
  1002  	return protojson.Unmarshal(data, m)
  1003  }
  1004  
  1005  type isTypedValue_Value interface {
  1006  	isTypedValue_Value()
  1007  }
  1008  
  1009  type TypedValue_BoolValue struct {
  1010  	// A Boolean value: `true` or `false`.
  1011  	BoolValue bool `protobuf:"varint,1,opt,name=bool_value,json=boolValue,proto3,oneof"`
  1012  }
  1013  type TypedValue_Int64Value struct {
  1014  	// A 64-bit integer. Its range is approximately &plusmn;9.2x10<sup>18</sup>.
  1015  	Int64Value int64 `protobuf:"varint,2,opt,name=int64_value,json=int64Value,proto3,oneof"`
  1016  }
  1017  type TypedValue_DoubleValue struct {
  1018  	// A 64-bit double-precision floating-point number. Its magnitude
  1019  	// is approximately &plusmn;10<sup>&plusmn;300</sup> and it has 16
  1020  	// significant digits of precision.
  1021  	DoubleValue float64 `protobuf:"fixed64,3,opt,name=double_value,json=doubleValue,proto3,oneof"`
  1022  }
  1023  type TypedValue_StringValue struct {
  1024  	// A variable-length string value.
  1025  	StringValue string `protobuf:"bytes,4,opt,name=string_value,json=stringValue,proto3,oneof"`
  1026  }
  1027  type TypedValue_DistributionValue struct {
  1028  	// A distribution value.
  1029  	DistributionValue *Distribution `protobuf:"bytes,5,opt,name=distribution_value,json=distributionValue,proto3,oneof"`
  1030  }
  1031  
  1032  func (*TypedValue_BoolValue) isTypedValue_Value()         {}
  1033  func (*TypedValue_Int64Value) isTypedValue_Value()        {}
  1034  func (*TypedValue_DoubleValue) isTypedValue_Value()       {}
  1035  func (*TypedValue_StringValue) isTypedValue_Value()       {}
  1036  func (*TypedValue_DistributionValue) isTypedValue_Value() {}
  1037  func (m *TypedValue) GetValue() isTypedValue_Value {
  1038  	if m != nil {
  1039  		return m.Value
  1040  	}
  1041  	return nil
  1042  }
  1043  func (m *TypedValue) GetBoolValue() bool {
  1044  	if x, ok := m.GetValue().(*TypedValue_BoolValue); ok {
  1045  		return x.BoolValue
  1046  	}
  1047  	return false
  1048  }
  1049  func (m *TypedValue) GetInt64Value() int64 {
  1050  	if x, ok := m.GetValue().(*TypedValue_Int64Value); ok {
  1051  		return x.Int64Value
  1052  	}
  1053  	return int64(0)
  1054  }
  1055  func (m *TypedValue) GetDoubleValue() float64 {
  1056  	if x, ok := m.GetValue().(*TypedValue_DoubleValue); ok {
  1057  		return x.DoubleValue
  1058  	}
  1059  	return float64(0)
  1060  }
  1061  func (m *TypedValue) GetStringValue() string {
  1062  	if x, ok := m.GetValue().(*TypedValue_StringValue); ok {
  1063  		return x.StringValue
  1064  	}
  1065  	return ""
  1066  }
  1067  func (m *TypedValue) GetDistributionValue() *Distribution {
  1068  	if x, ok := m.GetValue().(*TypedValue_DistributionValue); ok {
  1069  		return x.DistributionValue
  1070  	}
  1071  	return nil
  1072  }
  1073  func (m *TypedValue) SetValue(ofv isTypedValue_Value) {
  1074  	if m == nil {
  1075  		panic(fmt.Errorf("can't set %s on nil %s", "isTypedValue_Value", "TypedValue"))
  1076  	}
  1077  	m.Value = ofv
  1078  }
  1079  func (m *TypedValue) SetBoolValue(fv bool) {
  1080  	m.SetValue(&TypedValue_BoolValue{BoolValue: fv})
  1081  }
  1082  func (m *TypedValue) SetInt64Value(fv int64) {
  1083  	m.SetValue(&TypedValue_Int64Value{Int64Value: fv})
  1084  }
  1085  func (m *TypedValue) SetDoubleValue(fv float64) {
  1086  	m.SetValue(&TypedValue_DoubleValue{DoubleValue: fv})
  1087  }
  1088  func (m *TypedValue) SetStringValue(fv string) {
  1089  	m.SetValue(&TypedValue_StringValue{StringValue: fv})
  1090  }
  1091  func (m *TypedValue) SetDistributionValue(fv *Distribution) {
  1092  	m.SetValue(&TypedValue_DistributionValue{DistributionValue: fv})
  1093  }
  1094  
  1095  // A time interval extending just after a start time through an end time.
  1096  // If the start time is the same as the end time, then the interval
  1097  // represents a single point in time.
  1098  type TimeInterval struct {
  1099  	state         protoimpl.MessageState
  1100  	sizeCache     protoimpl.SizeCache
  1101  	unknownFields protoimpl.UnknownFields
  1102  	// Required. The end of the time interval.
  1103  	EndTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
  1104  	// Optional. The beginning of the time interval.  The default value
  1105  	// for the start time is the end time. The start time must not be
  1106  	// later than the end time.
  1107  	StartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
  1108  }
  1109  
  1110  func (m *TimeInterval) Reset() {
  1111  	*m = TimeInterval{}
  1112  	if protoimpl.UnsafeEnabled {
  1113  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[4]
  1114  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1115  		ms.StoreMessageInfo(mi)
  1116  	}
  1117  }
  1118  
  1119  func (m *TimeInterval) String() string {
  1120  	return protoimpl.X.MessageStringOf(m)
  1121  }
  1122  
  1123  func (*TimeInterval) ProtoMessage() {}
  1124  
  1125  func (m *TimeInterval) ProtoReflect() preflect.Message {
  1126  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[4]
  1127  	if protoimpl.UnsafeEnabled && m != nil {
  1128  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1129  		if ms.LoadMessageInfo() == nil {
  1130  			ms.StoreMessageInfo(mi)
  1131  		}
  1132  		return ms
  1133  	}
  1134  	return mi.MessageOf(m)
  1135  }
  1136  
  1137  func (*TimeInterval) GotenMessage() {}
  1138  
  1139  // Deprecated, Use TimeInterval.ProtoReflect.Descriptor instead.
  1140  func (*TimeInterval) Descriptor() ([]byte, []int) {
  1141  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{4}
  1142  }
  1143  
  1144  func (m *TimeInterval) Unmarshal(b []byte) error {
  1145  	return proto.Unmarshal(b, m)
  1146  }
  1147  
  1148  func (m *TimeInterval) Marshal() ([]byte, error) {
  1149  	return proto.Marshal(m)
  1150  }
  1151  
  1152  func (m *TimeInterval) MarshalJSON() ([]byte, error) {
  1153  	return protojson.MarshalOptions{}.Marshal(m)
  1154  }
  1155  
  1156  func (m *TimeInterval) UnmarshalJSON(data []byte) error {
  1157  	return protojson.Unmarshal(data, m)
  1158  }
  1159  
  1160  func (m *TimeInterval) GetEndTime() *timestamppb.Timestamp {
  1161  	if m != nil {
  1162  		return m.EndTime
  1163  	}
  1164  	return nil
  1165  }
  1166  
  1167  func (m *TimeInterval) GetStartTime() *timestamppb.Timestamp {
  1168  	if m != nil {
  1169  		return m.StartTime
  1170  	}
  1171  	return nil
  1172  }
  1173  
  1174  func (m *TimeInterval) SetEndTime(fv *timestamppb.Timestamp) {
  1175  	if m == nil {
  1176  		panic(fmt.Errorf("can't set %s on nil %s", "EndTime", "TimeInterval"))
  1177  	}
  1178  	m.EndTime = fv
  1179  }
  1180  
  1181  func (m *TimeInterval) SetStartTime(fv *timestamppb.Timestamp) {
  1182  	if m == nil {
  1183  		panic(fmt.Errorf("can't set %s on nil %s", "StartTime", "TimeInterval"))
  1184  	}
  1185  	m.StartTime = fv
  1186  }
  1187  
  1188  // Time Range represents time between two points in time. Any of those can
  1189  // be missing, which means it's open-ended.
  1190  type TimeRange struct {
  1191  	state         protoimpl.MessageState
  1192  	sizeCache     protoimpl.SizeCache
  1193  	unknownFields protoimpl.UnknownFields
  1194  	// Optional. Start of time range
  1195  	StartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
  1196  	// Optional. End of time range
  1197  	EndTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
  1198  }
  1199  
  1200  func (m *TimeRange) Reset() {
  1201  	*m = TimeRange{}
  1202  	if protoimpl.UnsafeEnabled {
  1203  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[5]
  1204  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1205  		ms.StoreMessageInfo(mi)
  1206  	}
  1207  }
  1208  
  1209  func (m *TimeRange) String() string {
  1210  	return protoimpl.X.MessageStringOf(m)
  1211  }
  1212  
  1213  func (*TimeRange) ProtoMessage() {}
  1214  
  1215  func (m *TimeRange) ProtoReflect() preflect.Message {
  1216  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[5]
  1217  	if protoimpl.UnsafeEnabled && m != nil {
  1218  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1219  		if ms.LoadMessageInfo() == nil {
  1220  			ms.StoreMessageInfo(mi)
  1221  		}
  1222  		return ms
  1223  	}
  1224  	return mi.MessageOf(m)
  1225  }
  1226  
  1227  func (*TimeRange) GotenMessage() {}
  1228  
  1229  // Deprecated, Use TimeRange.ProtoReflect.Descriptor instead.
  1230  func (*TimeRange) Descriptor() ([]byte, []int) {
  1231  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{5}
  1232  }
  1233  
  1234  func (m *TimeRange) Unmarshal(b []byte) error {
  1235  	return proto.Unmarshal(b, m)
  1236  }
  1237  
  1238  func (m *TimeRange) Marshal() ([]byte, error) {
  1239  	return proto.Marshal(m)
  1240  }
  1241  
  1242  func (m *TimeRange) MarshalJSON() ([]byte, error) {
  1243  	return protojson.MarshalOptions{}.Marshal(m)
  1244  }
  1245  
  1246  func (m *TimeRange) UnmarshalJSON(data []byte) error {
  1247  	return protojson.Unmarshal(data, m)
  1248  }
  1249  
  1250  func (m *TimeRange) GetStartTime() *timestamppb.Timestamp {
  1251  	if m != nil {
  1252  		return m.StartTime
  1253  	}
  1254  	return nil
  1255  }
  1256  
  1257  func (m *TimeRange) GetEndTime() *timestamppb.Timestamp {
  1258  	if m != nil {
  1259  		return m.EndTime
  1260  	}
  1261  	return nil
  1262  }
  1263  
  1264  func (m *TimeRange) SetStartTime(fv *timestamppb.Timestamp) {
  1265  	if m == nil {
  1266  		panic(fmt.Errorf("can't set %s on nil %s", "StartTime", "TimeRange"))
  1267  	}
  1268  	m.StartTime = fv
  1269  }
  1270  
  1271  func (m *TimeRange) SetEndTime(fv *timestamppb.Timestamp) {
  1272  	if m == nil {
  1273  		panic(fmt.Errorf("can't set %s on nil %s", "EndTime", "TimeRange"))
  1274  	}
  1275  	m.EndTime = fv
  1276  }
  1277  
  1278  // Describes how to combine multiple time series to provide different views of
  1279  // the data.  Aggregation consists of an alignment step on individual time
  1280  // series (`alignment_period` and `per_series_aligner`) followed by an optional
  1281  // reduction step of the data across the aligned time series
  1282  // (`cross_series_reducer` and `group_by_fields`).  For more details, see
  1283  // [Aggregation](/monitoring/api/learn_more#aggregation).
  1284  type Aggregation struct {
  1285  	state         protoimpl.MessageState
  1286  	sizeCache     protoimpl.SizeCache
  1287  	unknownFields protoimpl.UnknownFields
  1288  	// The alignment period for per-[time series][ntt.monitoring.v3.TimeSeries]
  1289  	// alignment. If present, `alignmentPeriod` must be at least 60
  1290  	// seconds.  After per-time series alignment, each time series will
  1291  	// contain data points only on the period boundaries. If
  1292  	// `perSeriesAligner` is not specified or equals `ALIGN_NONE`, then
  1293  	// this field is ignored. If `perSeriesAligner` is specified and
  1294  	// does not equal `ALIGN_NONE`, then this field must be defined;
  1295  	// otherwise an error is returned.
  1296  	AlignmentPeriod *durationpb.Duration `protobuf:"bytes,1,opt,name=alignment_period,json=alignmentPeriod,proto3" json:"alignment_period,omitempty"`
  1297  	// The approach to be used to align individual time series. Not all
  1298  	// alignment functions may be applied to all time series, depending
  1299  	// on the metric type and value type of the original time
  1300  	// series. Alignment may change the metric type or the value type of
  1301  	// the time series.
  1302  	//
  1303  	// Time series data must be aligned in order to perform cross-time
  1304  	// series reduction. If `crossSeriesReducer` is specified, then
  1305  	// `perSeriesAligner` must be specified and not equal `ALIGN_NONE`
  1306  	// and `alignmentPeriod` must be specified; otherwise, an error is
  1307  	// returned.
  1308  	PerSeriesAligner Aggregation_Aligner `protobuf:"varint,2,opt,name=per_series_aligner,json=perSeriesAligner,proto3,enum=ntt.monitoring.v3.Aggregation_Aligner" json:"per_series_aligner,omitempty"`
  1309  	// The approach to be used to combine time series. Not all reducer
  1310  	// functions may be applied to all time series, depending on the
  1311  	// metric type and the value type of the original time
  1312  	// series. Reduction may change the metric type of value type of the
  1313  	// time series.
  1314  	//
  1315  	// Time series data must be aligned in order to perform cross-time
  1316  	// series reduction. If `crossSeriesReducer` is specified, then
  1317  	// `perSeriesAligner` must be specified and not equal `ALIGN_NONE`
  1318  	// and `alignmentPeriod` must be specified; otherwise, an error is
  1319  	// returned.
  1320  	CrossSeriesReducer Aggregation_Reducer `protobuf:"varint,4,opt,name=cross_series_reducer,json=crossSeriesReducer,proto3,enum=ntt.monitoring.v3.Aggregation_Reducer" json:"cross_series_reducer,omitempty"`
  1321  	// The set of fields to preserve when `crossSeriesReducer` is
  1322  	// specified. The `groupByFields` determine how the time series are
  1323  	// partitioned into subsets prior to applying the aggregation
  1324  	// function. Each subset contains time series that have the same
  1325  	// value for each of the grouping fields. Each individual time
  1326  	// series is a member of exactly one subset. The
  1327  	// `crossSeriesReducer` is applied to each subset of time series.
  1328  	// It is not possible to reduce across different resource types, so
  1329  	// this field implicitly contains `resource.type`.  Fields not
  1330  	// specified in `groupByFields` are aggregated away.  If
  1331  	// `groupByFields` is not specified and all the time series have
  1332  	// the same resource type, then the time series are aggregated into
  1333  	// a single output time series. If `crossSeriesReducer` is not
  1334  	// defined, this field is ignored.
  1335  	GroupByFields []string `protobuf:"bytes,5,rep,name=group_by_fields,json=groupByFields,proto3" json:"group_by_fields,omitempty"`
  1336  }
  1337  
  1338  func (m *Aggregation) Reset() {
  1339  	*m = Aggregation{}
  1340  	if protoimpl.UnsafeEnabled {
  1341  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[6]
  1342  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1343  		ms.StoreMessageInfo(mi)
  1344  	}
  1345  }
  1346  
  1347  func (m *Aggregation) String() string {
  1348  	return protoimpl.X.MessageStringOf(m)
  1349  }
  1350  
  1351  func (*Aggregation) ProtoMessage() {}
  1352  
  1353  func (m *Aggregation) ProtoReflect() preflect.Message {
  1354  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[6]
  1355  	if protoimpl.UnsafeEnabled && m != nil {
  1356  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1357  		if ms.LoadMessageInfo() == nil {
  1358  			ms.StoreMessageInfo(mi)
  1359  		}
  1360  		return ms
  1361  	}
  1362  	return mi.MessageOf(m)
  1363  }
  1364  
  1365  func (*Aggregation) GotenMessage() {}
  1366  
  1367  // Deprecated, Use Aggregation.ProtoReflect.Descriptor instead.
  1368  func (*Aggregation) Descriptor() ([]byte, []int) {
  1369  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{6}
  1370  }
  1371  
  1372  func (m *Aggregation) Unmarshal(b []byte) error {
  1373  	return proto.Unmarshal(b, m)
  1374  }
  1375  
  1376  func (m *Aggregation) Marshal() ([]byte, error) {
  1377  	return proto.Marshal(m)
  1378  }
  1379  
  1380  func (m *Aggregation) MarshalJSON() ([]byte, error) {
  1381  	return protojson.MarshalOptions{}.Marshal(m)
  1382  }
  1383  
  1384  func (m *Aggregation) UnmarshalJSON(data []byte) error {
  1385  	return protojson.Unmarshal(data, m)
  1386  }
  1387  
  1388  func (m *Aggregation) GetAlignmentPeriod() *durationpb.Duration {
  1389  	if m != nil {
  1390  		return m.AlignmentPeriod
  1391  	}
  1392  	return nil
  1393  }
  1394  
  1395  func (m *Aggregation) GetPerSeriesAligner() Aggregation_Aligner {
  1396  	if m != nil {
  1397  		return m.PerSeriesAligner
  1398  	}
  1399  	return Aggregation_ALIGN_NONE
  1400  }
  1401  
  1402  func (m *Aggregation) GetCrossSeriesReducer() Aggregation_Reducer {
  1403  	if m != nil {
  1404  		return m.CrossSeriesReducer
  1405  	}
  1406  	return Aggregation_REDUCE_NONE
  1407  }
  1408  
  1409  func (m *Aggregation) GetGroupByFields() []string {
  1410  	if m != nil {
  1411  		return m.GroupByFields
  1412  	}
  1413  	return nil
  1414  }
  1415  
  1416  func (m *Aggregation) SetAlignmentPeriod(fv *durationpb.Duration) {
  1417  	if m == nil {
  1418  		panic(fmt.Errorf("can't set %s on nil %s", "AlignmentPeriod", "Aggregation"))
  1419  	}
  1420  	m.AlignmentPeriod = fv
  1421  }
  1422  
  1423  func (m *Aggregation) SetPerSeriesAligner(fv Aggregation_Aligner) {
  1424  	if m == nil {
  1425  		panic(fmt.Errorf("can't set %s on nil %s", "PerSeriesAligner", "Aggregation"))
  1426  	}
  1427  	m.PerSeriesAligner = fv
  1428  }
  1429  
  1430  func (m *Aggregation) SetCrossSeriesReducer(fv Aggregation_Reducer) {
  1431  	if m == nil {
  1432  		panic(fmt.Errorf("can't set %s on nil %s", "CrossSeriesReducer", "Aggregation"))
  1433  	}
  1434  	m.CrossSeriesReducer = fv
  1435  }
  1436  
  1437  func (m *Aggregation) SetGroupByFields(fv []string) {
  1438  	if m == nil {
  1439  		panic(fmt.Errorf("can't set %s on nil %s", "GroupByFields", "Aggregation"))
  1440  	}
  1441  	m.GroupByFields = fv
  1442  }
  1443  
  1444  type Pagination struct {
  1445  	state           protoimpl.MessageState
  1446  	sizeCache       protoimpl.SizeCache
  1447  	unknownFields   protoimpl.UnknownFields
  1448  	View            string               `protobuf:"bytes,1,opt,name=view,proto3" json:"view,omitempty"`
  1449  	Function        string               `protobuf:"bytes,2,opt,name=function,proto3" json:"function,omitempty"`
  1450  	AlignmentPeriod *durationpb.Duration `protobuf:"bytes,3,opt,name=alignment_period,json=alignmentPeriod,proto3" json:"alignment_period,omitempty"`
  1451  	Limit           int32                `protobuf:"varint,4,opt,name=limit,proto3" json:"limit,omitempty"`
  1452  	Offset          int32                `protobuf:"varint,5,opt,name=offset,proto3" json:"offset,omitempty"`
  1453  }
  1454  
  1455  func (m *Pagination) Reset() {
  1456  	*m = Pagination{}
  1457  	if protoimpl.UnsafeEnabled {
  1458  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[7]
  1459  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1460  		ms.StoreMessageInfo(mi)
  1461  	}
  1462  }
  1463  
  1464  func (m *Pagination) String() string {
  1465  	return protoimpl.X.MessageStringOf(m)
  1466  }
  1467  
  1468  func (*Pagination) ProtoMessage() {}
  1469  
  1470  func (m *Pagination) ProtoReflect() preflect.Message {
  1471  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[7]
  1472  	if protoimpl.UnsafeEnabled && m != nil {
  1473  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1474  		if ms.LoadMessageInfo() == nil {
  1475  			ms.StoreMessageInfo(mi)
  1476  		}
  1477  		return ms
  1478  	}
  1479  	return mi.MessageOf(m)
  1480  }
  1481  
  1482  func (*Pagination) GotenMessage() {}
  1483  
  1484  // Deprecated, Use Pagination.ProtoReflect.Descriptor instead.
  1485  func (*Pagination) Descriptor() ([]byte, []int) {
  1486  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{7}
  1487  }
  1488  
  1489  func (m *Pagination) Unmarshal(b []byte) error {
  1490  	return proto.Unmarshal(b, m)
  1491  }
  1492  
  1493  func (m *Pagination) Marshal() ([]byte, error) {
  1494  	return proto.Marshal(m)
  1495  }
  1496  
  1497  func (m *Pagination) MarshalJSON() ([]byte, error) {
  1498  	return protojson.MarshalOptions{}.Marshal(m)
  1499  }
  1500  
  1501  func (m *Pagination) UnmarshalJSON(data []byte) error {
  1502  	return protojson.Unmarshal(data, m)
  1503  }
  1504  
  1505  func (m *Pagination) GetView() string {
  1506  	if m != nil {
  1507  		return m.View
  1508  	}
  1509  	return ""
  1510  }
  1511  
  1512  func (m *Pagination) GetFunction() string {
  1513  	if m != nil {
  1514  		return m.Function
  1515  	}
  1516  	return ""
  1517  }
  1518  
  1519  func (m *Pagination) GetAlignmentPeriod() *durationpb.Duration {
  1520  	if m != nil {
  1521  		return m.AlignmentPeriod
  1522  	}
  1523  	return nil
  1524  }
  1525  
  1526  func (m *Pagination) GetLimit() int32 {
  1527  	if m != nil {
  1528  		return m.Limit
  1529  	}
  1530  	return int32(0)
  1531  }
  1532  
  1533  func (m *Pagination) GetOffset() int32 {
  1534  	if m != nil {
  1535  		return m.Offset
  1536  	}
  1537  	return int32(0)
  1538  }
  1539  
  1540  func (m *Pagination) SetView(fv string) {
  1541  	if m == nil {
  1542  		panic(fmt.Errorf("can't set %s on nil %s", "View", "Pagination"))
  1543  	}
  1544  	m.View = fv
  1545  }
  1546  
  1547  func (m *Pagination) SetFunction(fv string) {
  1548  	if m == nil {
  1549  		panic(fmt.Errorf("can't set %s on nil %s", "Function", "Pagination"))
  1550  	}
  1551  	m.Function = fv
  1552  }
  1553  
  1554  func (m *Pagination) SetAlignmentPeriod(fv *durationpb.Duration) {
  1555  	if m == nil {
  1556  		panic(fmt.Errorf("can't set %s on nil %s", "AlignmentPeriod", "Pagination"))
  1557  	}
  1558  	m.AlignmentPeriod = fv
  1559  }
  1560  
  1561  func (m *Pagination) SetLimit(fv int32) {
  1562  	if m == nil {
  1563  		panic(fmt.Errorf("can't set %s on nil %s", "Limit", "Pagination"))
  1564  	}
  1565  	m.Limit = fv
  1566  }
  1567  
  1568  func (m *Pagination) SetOffset(fv int32) {
  1569  	if m == nil {
  1570  		panic(fmt.Errorf("can't set %s on nil %s", "Offset", "Pagination"))
  1571  	}
  1572  	m.Offset = fv
  1573  }
  1574  
  1575  // A specific metric, identified by specifying values for all of the
  1576  // labels of a [`MetricDescriptor`][google.api.MetricDescriptor].
  1577  type Metric struct {
  1578  	state         protoimpl.MessageState
  1579  	sizeCache     protoimpl.SizeCache
  1580  	unknownFields protoimpl.UnknownFields
  1581  	// An existing metric type, see
  1582  	// [google.api.MetricDescriptor][google.api.MetricDescriptor]. For example,
  1583  	// `custom.googleapis.com/invoice/paid/amount`.
  1584  	Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"`
  1585  	// The set of label values that uniquely identify this metric. All
  1586  	// labels listed in the `MetricDescriptor` must be assigned values.
  1587  	Labels map[string]string `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1588  	// reduced labels in aggregations
  1589  	ReducedLabels []string `protobuf:"bytes,11,rep,name=reduced_labels,json=reducedLabels,proto3" json:"reduced_labels,omitempty"`
  1590  }
  1591  
  1592  func (m *Metric) Reset() {
  1593  	*m = Metric{}
  1594  	if protoimpl.UnsafeEnabled {
  1595  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[8]
  1596  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1597  		ms.StoreMessageInfo(mi)
  1598  	}
  1599  }
  1600  
  1601  func (m *Metric) String() string {
  1602  	return protoimpl.X.MessageStringOf(m)
  1603  }
  1604  
  1605  func (*Metric) ProtoMessage() {}
  1606  
  1607  func (m *Metric) ProtoReflect() preflect.Message {
  1608  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[8]
  1609  	if protoimpl.UnsafeEnabled && m != nil {
  1610  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1611  		if ms.LoadMessageInfo() == nil {
  1612  			ms.StoreMessageInfo(mi)
  1613  		}
  1614  		return ms
  1615  	}
  1616  	return mi.MessageOf(m)
  1617  }
  1618  
  1619  func (*Metric) GotenMessage() {}
  1620  
  1621  // Deprecated, Use Metric.ProtoReflect.Descriptor instead.
  1622  func (*Metric) Descriptor() ([]byte, []int) {
  1623  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{8}
  1624  }
  1625  
  1626  func (m *Metric) Unmarshal(b []byte) error {
  1627  	return proto.Unmarshal(b, m)
  1628  }
  1629  
  1630  func (m *Metric) Marshal() ([]byte, error) {
  1631  	return proto.Marshal(m)
  1632  }
  1633  
  1634  func (m *Metric) MarshalJSON() ([]byte, error) {
  1635  	return protojson.MarshalOptions{}.Marshal(m)
  1636  }
  1637  
  1638  func (m *Metric) UnmarshalJSON(data []byte) error {
  1639  	return protojson.Unmarshal(data, m)
  1640  }
  1641  
  1642  func (m *Metric) GetType() string {
  1643  	if m != nil {
  1644  		return m.Type
  1645  	}
  1646  	return ""
  1647  }
  1648  
  1649  func (m *Metric) GetLabels() map[string]string {
  1650  	if m != nil {
  1651  		return m.Labels
  1652  	}
  1653  	return nil
  1654  }
  1655  
  1656  func (m *Metric) GetReducedLabels() []string {
  1657  	if m != nil {
  1658  		return m.ReducedLabels
  1659  	}
  1660  	return nil
  1661  }
  1662  
  1663  func (m *Metric) SetType(fv string) {
  1664  	if m == nil {
  1665  		panic(fmt.Errorf("can't set %s on nil %s", "Type", "Metric"))
  1666  	}
  1667  	m.Type = fv
  1668  }
  1669  
  1670  func (m *Metric) SetLabels(fv map[string]string) {
  1671  	if m == nil {
  1672  		panic(fmt.Errorf("can't set %s on nil %s", "Labels", "Metric"))
  1673  	}
  1674  	m.Labels = fv
  1675  }
  1676  
  1677  func (m *Metric) SetReducedLabels(fv []string) {
  1678  	if m == nil {
  1679  		panic(fmt.Errorf("can't set %s on nil %s", "ReducedLabels", "Metric"))
  1680  	}
  1681  	m.ReducedLabels = fv
  1682  }
  1683  
  1684  // An object representing a resource that can be used for monitoring, logging,
  1685  // billing, or other purposes. Examples include virtual machine instances,
  1686  // databases, and storage devices such as disks. The `type` field identifies a
  1687  // [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] object
  1688  // that describes the resource's schema. Information in the `labels` field
  1689  // identifies the actual resource and its attributes according to the schema.
  1690  // For example, a particular Compute Engine VM instance could be represented by
  1691  // the following object, because the
  1692  // [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] for
  1693  // `"gce_instance"` has labels
  1694  // `"instance_id"` and `"zone"`:
  1695  //
  1696  //     { "type": "gce_instance",
  1697  //       "labels": { "instance_id": "12345678901234",
  1698  //                   "zone": "us-central1-a" }}
  1699  type MonitoredResource struct {
  1700  	state         protoimpl.MessageState
  1701  	sizeCache     protoimpl.SizeCache
  1702  	unknownFields protoimpl.UnknownFields
  1703  	// Required. The monitored resource type. This field must match
  1704  	// the `type` field of a
  1705  	// [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor]
  1706  	// object. For example, the type of a Compute Engine VM instance is
  1707  	// `gce_instance`.
  1708  	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
  1709  	// Required. Values for all of the labels listed in the associated monitored
  1710  	// resource descriptor. For example, Compute Engine VM instances use the
  1711  	// labels `"project_id"`, `"instance_id"`, and `"zone"`.
  1712  	Labels map[string]string `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1713  	// reduced labels in aggregations
  1714  	ReducedLabels []string `protobuf:"bytes,11,rep,name=reduced_labels,json=reducedLabels,proto3" json:"reduced_labels,omitempty"`
  1715  }
  1716  
  1717  func (m *MonitoredResource) Reset() {
  1718  	*m = MonitoredResource{}
  1719  	if protoimpl.UnsafeEnabled {
  1720  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[9]
  1721  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1722  		ms.StoreMessageInfo(mi)
  1723  	}
  1724  }
  1725  
  1726  func (m *MonitoredResource) String() string {
  1727  	return protoimpl.X.MessageStringOf(m)
  1728  }
  1729  
  1730  func (*MonitoredResource) ProtoMessage() {}
  1731  
  1732  func (m *MonitoredResource) ProtoReflect() preflect.Message {
  1733  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[9]
  1734  	if protoimpl.UnsafeEnabled && m != nil {
  1735  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1736  		if ms.LoadMessageInfo() == nil {
  1737  			ms.StoreMessageInfo(mi)
  1738  		}
  1739  		return ms
  1740  	}
  1741  	return mi.MessageOf(m)
  1742  }
  1743  
  1744  func (*MonitoredResource) GotenMessage() {}
  1745  
  1746  // Deprecated, Use MonitoredResource.ProtoReflect.Descriptor instead.
  1747  func (*MonitoredResource) Descriptor() ([]byte, []int) {
  1748  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{9}
  1749  }
  1750  
  1751  func (m *MonitoredResource) Unmarshal(b []byte) error {
  1752  	return proto.Unmarshal(b, m)
  1753  }
  1754  
  1755  func (m *MonitoredResource) Marshal() ([]byte, error) {
  1756  	return proto.Marshal(m)
  1757  }
  1758  
  1759  func (m *MonitoredResource) MarshalJSON() ([]byte, error) {
  1760  	return protojson.MarshalOptions{}.Marshal(m)
  1761  }
  1762  
  1763  func (m *MonitoredResource) UnmarshalJSON(data []byte) error {
  1764  	return protojson.Unmarshal(data, m)
  1765  }
  1766  
  1767  func (m *MonitoredResource) GetType() string {
  1768  	if m != nil {
  1769  		return m.Type
  1770  	}
  1771  	return ""
  1772  }
  1773  
  1774  func (m *MonitoredResource) GetLabels() map[string]string {
  1775  	if m != nil {
  1776  		return m.Labels
  1777  	}
  1778  	return nil
  1779  }
  1780  
  1781  func (m *MonitoredResource) GetReducedLabels() []string {
  1782  	if m != nil {
  1783  		return m.ReducedLabels
  1784  	}
  1785  	return nil
  1786  }
  1787  
  1788  func (m *MonitoredResource) SetType(fv string) {
  1789  	if m == nil {
  1790  		panic(fmt.Errorf("can't set %s on nil %s", "Type", "MonitoredResource"))
  1791  	}
  1792  	m.Type = fv
  1793  }
  1794  
  1795  func (m *MonitoredResource) SetLabels(fv map[string]string) {
  1796  	if m == nil {
  1797  		panic(fmt.Errorf("can't set %s on nil %s", "Labels", "MonitoredResource"))
  1798  	}
  1799  	m.Labels = fv
  1800  }
  1801  
  1802  func (m *MonitoredResource) SetReducedLabels(fv []string) {
  1803  	if m == nil {
  1804  		panic(fmt.Errorf("can't set %s on nil %s", "ReducedLabels", "MonitoredResource"))
  1805  	}
  1806  	m.ReducedLabels = fv
  1807  }
  1808  
  1809  // Represents wrapped list of strings.
  1810  type Strings struct {
  1811  	state         protoimpl.MessageState
  1812  	sizeCache     protoimpl.SizeCache
  1813  	unknownFields protoimpl.UnknownFields
  1814  	Values        []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
  1815  }
  1816  
  1817  func (m *Strings) Reset() {
  1818  	*m = Strings{}
  1819  	if protoimpl.UnsafeEnabled {
  1820  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[10]
  1821  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1822  		ms.StoreMessageInfo(mi)
  1823  	}
  1824  }
  1825  
  1826  func (m *Strings) String() string {
  1827  	return protoimpl.X.MessageStringOf(m)
  1828  }
  1829  
  1830  func (*Strings) ProtoMessage() {}
  1831  
  1832  func (m *Strings) ProtoReflect() preflect.Message {
  1833  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[10]
  1834  	if protoimpl.UnsafeEnabled && m != nil {
  1835  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1836  		if ms.LoadMessageInfo() == nil {
  1837  			ms.StoreMessageInfo(mi)
  1838  		}
  1839  		return ms
  1840  	}
  1841  	return mi.MessageOf(m)
  1842  }
  1843  
  1844  func (*Strings) GotenMessage() {}
  1845  
  1846  // Deprecated, Use Strings.ProtoReflect.Descriptor instead.
  1847  func (*Strings) Descriptor() ([]byte, []int) {
  1848  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{10}
  1849  }
  1850  
  1851  func (m *Strings) Unmarshal(b []byte) error {
  1852  	return proto.Unmarshal(b, m)
  1853  }
  1854  
  1855  func (m *Strings) Marshal() ([]byte, error) {
  1856  	return proto.Marshal(m)
  1857  }
  1858  
  1859  func (m *Strings) MarshalJSON() ([]byte, error) {
  1860  	return protojson.MarshalOptions{}.Marshal(m)
  1861  }
  1862  
  1863  func (m *Strings) UnmarshalJSON(data []byte) error {
  1864  	return protojson.Unmarshal(data, m)
  1865  }
  1866  
  1867  func (m *Strings) GetValues() []string {
  1868  	if m != nil {
  1869  		return m.Values
  1870  	}
  1871  	return nil
  1872  }
  1873  
  1874  func (m *Strings) SetValues(fv []string) {
  1875  	if m == nil {
  1876  		panic(fmt.Errorf("can't set %s on nil %s", "Values", "Strings"))
  1877  	}
  1878  	m.Values = fv
  1879  }
  1880  
  1881  // MonitoredResourceSelector selects `resource.type` and list of labels used to
  1882  // build query, like:
  1883  //
  1884  // ```
  1885  // resource.type IN ("type0", "type1", ...) AND
  1886  // resource.labels.<key0> IN (label0_0, label0_1, ...) AND
  1887  // resource.labels.<key1> IN (label1_0, label1_1, ...) AND ...
  1888  // ```
  1889  //
  1890  // Note: Only one resource.type per query is currently allowed
  1891  type MonitoredResourceSelector struct {
  1892  	state         protoimpl.MessageState
  1893  	sizeCache     protoimpl.SizeCache
  1894  	unknownFields protoimpl.UnknownFields
  1895  	Types         []string `protobuf:"bytes,1,rep,name=types,proto3" json:"types,omitempty"`
  1896  	// label key, e.g. "project_id", "target_id", etc
  1897  	// Note the missing "resource.labels." prefix.
  1898  	Labels map[string]*Strings `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1899  }
  1900  
  1901  func (m *MonitoredResourceSelector) Reset() {
  1902  	*m = MonitoredResourceSelector{}
  1903  	if protoimpl.UnsafeEnabled {
  1904  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[11]
  1905  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1906  		ms.StoreMessageInfo(mi)
  1907  	}
  1908  }
  1909  
  1910  func (m *MonitoredResourceSelector) String() string {
  1911  	return protoimpl.X.MessageStringOf(m)
  1912  }
  1913  
  1914  func (*MonitoredResourceSelector) ProtoMessage() {}
  1915  
  1916  func (m *MonitoredResourceSelector) ProtoReflect() preflect.Message {
  1917  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[11]
  1918  	if protoimpl.UnsafeEnabled && m != nil {
  1919  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  1920  		if ms.LoadMessageInfo() == nil {
  1921  			ms.StoreMessageInfo(mi)
  1922  		}
  1923  		return ms
  1924  	}
  1925  	return mi.MessageOf(m)
  1926  }
  1927  
  1928  func (*MonitoredResourceSelector) GotenMessage() {}
  1929  
  1930  // Deprecated, Use MonitoredResourceSelector.ProtoReflect.Descriptor instead.
  1931  func (*MonitoredResourceSelector) Descriptor() ([]byte, []int) {
  1932  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{11}
  1933  }
  1934  
  1935  func (m *MonitoredResourceSelector) Unmarshal(b []byte) error {
  1936  	return proto.Unmarshal(b, m)
  1937  }
  1938  
  1939  func (m *MonitoredResourceSelector) Marshal() ([]byte, error) {
  1940  	return proto.Marshal(m)
  1941  }
  1942  
  1943  func (m *MonitoredResourceSelector) MarshalJSON() ([]byte, error) {
  1944  	return protojson.MarshalOptions{}.Marshal(m)
  1945  }
  1946  
  1947  func (m *MonitoredResourceSelector) UnmarshalJSON(data []byte) error {
  1948  	return protojson.Unmarshal(data, m)
  1949  }
  1950  
  1951  func (m *MonitoredResourceSelector) GetTypes() []string {
  1952  	if m != nil {
  1953  		return m.Types
  1954  	}
  1955  	return nil
  1956  }
  1957  
  1958  func (m *MonitoredResourceSelector) GetLabels() map[string]*Strings {
  1959  	if m != nil {
  1960  		return m.Labels
  1961  	}
  1962  	return nil
  1963  }
  1964  
  1965  func (m *MonitoredResourceSelector) SetTypes(fv []string) {
  1966  	if m == nil {
  1967  		panic(fmt.Errorf("can't set %s on nil %s", "Types", "MonitoredResourceSelector"))
  1968  	}
  1969  	m.Types = fv
  1970  }
  1971  
  1972  func (m *MonitoredResourceSelector) SetLabels(fv map[string]*Strings) {
  1973  	if m == nil {
  1974  		panic(fmt.Errorf("can't set %s on nil %s", "Labels", "MonitoredResourceSelector"))
  1975  	}
  1976  	m.Labels = fv
  1977  }
  1978  
  1979  // Metric selects `metric.type` and list of labels used to
  1980  // build query, like:
  1981  //
  1982  // ```
  1983  // metric.type IN ("type0", "type1", ...) AND
  1984  // metric.labels.<key0> IN (label0_0, label0_1, ...) AND
  1985  // metric.labels.<key1> IN (label1_0, label1_1, ...) AND ...
  1986  // ```
  1987  type MetricSelector struct {
  1988  	state         protoimpl.MessageState
  1989  	sizeCache     protoimpl.SizeCache
  1990  	unknownFields protoimpl.UnknownFields
  1991  	Types         []string `protobuf:"bytes,1,rep,name=types,proto3" json:"types,omitempty"`
  1992  	// label key, e.g. "project_id", "target_id", etc
  1993  	// Note the missing "metric.labels." prefix.
  1994  	Labels map[string]*Strings `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1995  }
  1996  
  1997  func (m *MetricSelector) Reset() {
  1998  	*m = MetricSelector{}
  1999  	if protoimpl.UnsafeEnabled {
  2000  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[12]
  2001  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2002  		ms.StoreMessageInfo(mi)
  2003  	}
  2004  }
  2005  
  2006  func (m *MetricSelector) String() string {
  2007  	return protoimpl.X.MessageStringOf(m)
  2008  }
  2009  
  2010  func (*MetricSelector) ProtoMessage() {}
  2011  
  2012  func (m *MetricSelector) ProtoReflect() preflect.Message {
  2013  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[12]
  2014  	if protoimpl.UnsafeEnabled && m != nil {
  2015  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2016  		if ms.LoadMessageInfo() == nil {
  2017  			ms.StoreMessageInfo(mi)
  2018  		}
  2019  		return ms
  2020  	}
  2021  	return mi.MessageOf(m)
  2022  }
  2023  
  2024  func (*MetricSelector) GotenMessage() {}
  2025  
  2026  // Deprecated, Use MetricSelector.ProtoReflect.Descriptor instead.
  2027  func (*MetricSelector) Descriptor() ([]byte, []int) {
  2028  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{12}
  2029  }
  2030  
  2031  func (m *MetricSelector) Unmarshal(b []byte) error {
  2032  	return proto.Unmarshal(b, m)
  2033  }
  2034  
  2035  func (m *MetricSelector) Marshal() ([]byte, error) {
  2036  	return proto.Marshal(m)
  2037  }
  2038  
  2039  func (m *MetricSelector) MarshalJSON() ([]byte, error) {
  2040  	return protojson.MarshalOptions{}.Marshal(m)
  2041  }
  2042  
  2043  func (m *MetricSelector) UnmarshalJSON(data []byte) error {
  2044  	return protojson.Unmarshal(data, m)
  2045  }
  2046  
  2047  func (m *MetricSelector) GetTypes() []string {
  2048  	if m != nil {
  2049  		return m.Types
  2050  	}
  2051  	return nil
  2052  }
  2053  
  2054  func (m *MetricSelector) GetLabels() map[string]*Strings {
  2055  	if m != nil {
  2056  		return m.Labels
  2057  	}
  2058  	return nil
  2059  }
  2060  
  2061  func (m *MetricSelector) SetTypes(fv []string) {
  2062  	if m == nil {
  2063  		panic(fmt.Errorf("can't set %s on nil %s", "Types", "MetricSelector"))
  2064  	}
  2065  	m.Types = fv
  2066  }
  2067  
  2068  func (m *MetricSelector) SetLabels(fv map[string]*Strings) {
  2069  	if m == nil {
  2070  		panic(fmt.Errorf("can't set %s on nil %s", "Labels", "MetricSelector"))
  2071  	}
  2072  	m.Labels = fv
  2073  }
  2074  
  2075  type TimeSeriesSelector struct {
  2076  	state         protoimpl.MessageState
  2077  	sizeCache     protoimpl.SizeCache
  2078  	unknownFields protoimpl.UnknownFields
  2079  	// Metric Selector used to specify filtered Metric types and labels
  2080  	Metric *MetricSelector `protobuf:"bytes,1,opt,name=metric,proto3" json:"metric,omitempty"`
  2081  	// Resource Selector used to specify filtered Monitored Resource
  2082  	// types and labels
  2083  	Resource *MonitoredResourceSelector `protobuf:"bytes,2,opt,name=resource,proto3" json:"resource,omitempty"`
  2084  }
  2085  
  2086  func (m *TimeSeriesSelector) Reset() {
  2087  	*m = TimeSeriesSelector{}
  2088  	if protoimpl.UnsafeEnabled {
  2089  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[13]
  2090  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2091  		ms.StoreMessageInfo(mi)
  2092  	}
  2093  }
  2094  
  2095  func (m *TimeSeriesSelector) String() string {
  2096  	return protoimpl.X.MessageStringOf(m)
  2097  }
  2098  
  2099  func (*TimeSeriesSelector) ProtoMessage() {}
  2100  
  2101  func (m *TimeSeriesSelector) ProtoReflect() preflect.Message {
  2102  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[13]
  2103  	if protoimpl.UnsafeEnabled && m != nil {
  2104  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2105  		if ms.LoadMessageInfo() == nil {
  2106  			ms.StoreMessageInfo(mi)
  2107  		}
  2108  		return ms
  2109  	}
  2110  	return mi.MessageOf(m)
  2111  }
  2112  
  2113  func (*TimeSeriesSelector) GotenMessage() {}
  2114  
  2115  // Deprecated, Use TimeSeriesSelector.ProtoReflect.Descriptor instead.
  2116  func (*TimeSeriesSelector) Descriptor() ([]byte, []int) {
  2117  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{13}
  2118  }
  2119  
  2120  func (m *TimeSeriesSelector) Unmarshal(b []byte) error {
  2121  	return proto.Unmarshal(b, m)
  2122  }
  2123  
  2124  func (m *TimeSeriesSelector) Marshal() ([]byte, error) {
  2125  	return proto.Marshal(m)
  2126  }
  2127  
  2128  func (m *TimeSeriesSelector) MarshalJSON() ([]byte, error) {
  2129  	return protojson.MarshalOptions{}.Marshal(m)
  2130  }
  2131  
  2132  func (m *TimeSeriesSelector) UnmarshalJSON(data []byte) error {
  2133  	return protojson.Unmarshal(data, m)
  2134  }
  2135  
  2136  func (m *TimeSeriesSelector) GetMetric() *MetricSelector {
  2137  	if m != nil {
  2138  		return m.Metric
  2139  	}
  2140  	return nil
  2141  }
  2142  
  2143  func (m *TimeSeriesSelector) GetResource() *MonitoredResourceSelector {
  2144  	if m != nil {
  2145  		return m.Resource
  2146  	}
  2147  	return nil
  2148  }
  2149  
  2150  func (m *TimeSeriesSelector) SetMetric(fv *MetricSelector) {
  2151  	if m == nil {
  2152  		panic(fmt.Errorf("can't set %s on nil %s", "Metric", "TimeSeriesSelector"))
  2153  	}
  2154  	m.Metric = fv
  2155  }
  2156  
  2157  func (m *TimeSeriesSelector) SetResource(fv *MonitoredResourceSelector) {
  2158  	if m == nil {
  2159  		panic(fmt.Errorf("can't set %s on nil %s", "Resource", "TimeSeriesSelector"))
  2160  	}
  2161  	m.Resource = fv
  2162  }
  2163  
  2164  // The range of the population values.
  2165  type Distribution_Range struct {
  2166  	state         protoimpl.MessageState
  2167  	sizeCache     protoimpl.SizeCache
  2168  	unknownFields protoimpl.UnknownFields
  2169  	// The minimum of the population values.
  2170  	Min float64 `protobuf:"fixed64,1,opt,name=min,proto3" json:"min,omitempty"`
  2171  	// The maximum of the population values.
  2172  	Max float64 `protobuf:"fixed64,2,opt,name=max,proto3" json:"max,omitempty"`
  2173  }
  2174  
  2175  func (m *Distribution_Range) Reset() {
  2176  	*m = Distribution_Range{}
  2177  	if protoimpl.UnsafeEnabled {
  2178  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[14]
  2179  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2180  		ms.StoreMessageInfo(mi)
  2181  	}
  2182  }
  2183  
  2184  func (m *Distribution_Range) String() string {
  2185  	return protoimpl.X.MessageStringOf(m)
  2186  }
  2187  
  2188  func (*Distribution_Range) ProtoMessage() {}
  2189  
  2190  func (m *Distribution_Range) ProtoReflect() preflect.Message {
  2191  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[14]
  2192  	if protoimpl.UnsafeEnabled && m != nil {
  2193  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2194  		if ms.LoadMessageInfo() == nil {
  2195  			ms.StoreMessageInfo(mi)
  2196  		}
  2197  		return ms
  2198  	}
  2199  	return mi.MessageOf(m)
  2200  }
  2201  
  2202  func (*Distribution_Range) GotenMessage() {}
  2203  
  2204  // Deprecated, Use Distribution_Range.ProtoReflect.Descriptor instead.
  2205  func (*Distribution_Range) Descriptor() ([]byte, []int) {
  2206  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{2, 0}
  2207  }
  2208  
  2209  func (m *Distribution_Range) Unmarshal(b []byte) error {
  2210  	return proto.Unmarshal(b, m)
  2211  }
  2212  
  2213  func (m *Distribution_Range) Marshal() ([]byte, error) {
  2214  	return proto.Marshal(m)
  2215  }
  2216  
  2217  func (m *Distribution_Range) MarshalJSON() ([]byte, error) {
  2218  	return protojson.MarshalOptions{}.Marshal(m)
  2219  }
  2220  
  2221  func (m *Distribution_Range) UnmarshalJSON(data []byte) error {
  2222  	return protojson.Unmarshal(data, m)
  2223  }
  2224  
  2225  func (m *Distribution_Range) GetMin() float64 {
  2226  	if m != nil {
  2227  		return m.Min
  2228  	}
  2229  	return float64(0)
  2230  }
  2231  
  2232  func (m *Distribution_Range) GetMax() float64 {
  2233  	if m != nil {
  2234  		return m.Max
  2235  	}
  2236  	return float64(0)
  2237  }
  2238  
  2239  func (m *Distribution_Range) SetMin(fv float64) {
  2240  	if m == nil {
  2241  		panic(fmt.Errorf("can't set %s on nil %s", "Min", "Distribution_Range"))
  2242  	}
  2243  	m.Min = fv
  2244  }
  2245  
  2246  func (m *Distribution_Range) SetMax(fv float64) {
  2247  	if m == nil {
  2248  		panic(fmt.Errorf("can't set %s on nil %s", "Max", "Distribution_Range"))
  2249  	}
  2250  	m.Max = fv
  2251  }
  2252  
  2253  // A Distribution may optionally contain a histogram of the values in the
  2254  // population.  The histogram is given in `bucket_counts` as counts of values
  2255  // that fall into one of a sequence of non-overlapping buckets.  The sequence
  2256  // of buckets is described by `bucket_options`.
  2257  //
  2258  // A bucket specifies an inclusive lower bound and exclusive upper bound for
  2259  // the values that are counted for that bucket.  The upper bound of a bucket
  2260  // is strictly greater than the lower bound.
  2261  //
  2262  // The sequence of N buckets for a Distribution consists of an underflow
  2263  // bucket (number 0), zero or more finite buckets (number 1 through N - 2) and
  2264  // an overflow bucket (number N - 1).  The buckets are contiguous:  the lower
  2265  // bound of bucket i (i > 0) is the same as the upper bound of bucket i - 1.
  2266  // The buckets span the whole range of finite values: lower bound of the
  2267  // underflow bucket is -infinity and the upper bound of the overflow bucket is
  2268  // +infinity.  The finite buckets are so-called because both bounds are
  2269  // finite.
  2270  //
  2271  // `BucketOptions` describes bucket boundaries in one of three ways.  Two
  2272  // describe the boundaries by giving parameters for a formula to generate
  2273  // boundaries and one gives the bucket boundaries explicitly.
  2274  //
  2275  // If `bucket_boundaries` is not given, then no `bucket_counts` may be given.
  2276  type Distribution_BucketOptions struct {
  2277  	state         protoimpl.MessageState
  2278  	sizeCache     protoimpl.SizeCache
  2279  	unknownFields protoimpl.UnknownFields
  2280  	// Exactly one of these three fields must be set.
  2281  	//
  2282  	// Types that are valid to be assigned to Options:
  2283  	//	*Distribution_BucketOptions_LinearBuckets
  2284  	//	*Distribution_BucketOptions_ExponentialBuckets
  2285  	//	*Distribution_BucketOptions_ExplicitBuckets
  2286  	//	*Distribution_BucketOptions_DynamicBuckets
  2287  	Options isDistribution_BucketOptions_Options `protobuf_oneof:"options"`
  2288  }
  2289  
  2290  func (m *Distribution_BucketOptions) Reset() {
  2291  	*m = Distribution_BucketOptions{}
  2292  	if protoimpl.UnsafeEnabled {
  2293  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[15]
  2294  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2295  		ms.StoreMessageInfo(mi)
  2296  	}
  2297  }
  2298  
  2299  func (m *Distribution_BucketOptions) String() string {
  2300  	return protoimpl.X.MessageStringOf(m)
  2301  }
  2302  
  2303  func (*Distribution_BucketOptions) ProtoMessage() {}
  2304  
  2305  func (m *Distribution_BucketOptions) ProtoReflect() preflect.Message {
  2306  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[15]
  2307  	if protoimpl.UnsafeEnabled && m != nil {
  2308  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2309  		if ms.LoadMessageInfo() == nil {
  2310  			ms.StoreMessageInfo(mi)
  2311  		}
  2312  		return ms
  2313  	}
  2314  	return mi.MessageOf(m)
  2315  }
  2316  
  2317  func (*Distribution_BucketOptions) GotenMessage() {}
  2318  
  2319  // Deprecated, Use Distribution_BucketOptions.ProtoReflect.Descriptor instead.
  2320  func (*Distribution_BucketOptions) Descriptor() ([]byte, []int) {
  2321  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{2, 1}
  2322  }
  2323  
  2324  func (m *Distribution_BucketOptions) Unmarshal(b []byte) error {
  2325  	return proto.Unmarshal(b, m)
  2326  }
  2327  
  2328  func (m *Distribution_BucketOptions) Marshal() ([]byte, error) {
  2329  	return proto.Marshal(m)
  2330  }
  2331  
  2332  func (m *Distribution_BucketOptions) MarshalJSON() ([]byte, error) {
  2333  	return protojson.MarshalOptions{}.Marshal(m)
  2334  }
  2335  
  2336  func (m *Distribution_BucketOptions) UnmarshalJSON(data []byte) error {
  2337  	return protojson.Unmarshal(data, m)
  2338  }
  2339  
  2340  type isDistribution_BucketOptions_Options interface {
  2341  	isDistribution_BucketOptions_Options()
  2342  }
  2343  
  2344  type Distribution_BucketOptions_LinearBuckets struct {
  2345  	// The linear bucket.
  2346  	LinearBuckets *Distribution_BucketOptions_Linear `protobuf:"bytes,1,opt,name=linear_buckets,json=linearBuckets,proto3,oneof"`
  2347  }
  2348  type Distribution_BucketOptions_ExponentialBuckets struct {
  2349  	// The exponential buckets.
  2350  	ExponentialBuckets *Distribution_BucketOptions_Exponential `protobuf:"bytes,2,opt,name=exponential_buckets,json=exponentialBuckets,proto3,oneof"`
  2351  }
  2352  type Distribution_BucketOptions_ExplicitBuckets struct {
  2353  	// The explicit buckets.
  2354  	ExplicitBuckets *Distribution_BucketOptions_Explicit `protobuf:"bytes,3,opt,name=explicit_buckets,json=explicitBuckets,proto3,oneof"`
  2355  }
  2356  type Distribution_BucketOptions_DynamicBuckets struct {
  2357  	// TDigest dynamic bucketing
  2358  	DynamicBuckets *Distribution_BucketOptions_Dynamic `protobuf:"bytes,9,opt,name=dynamic_buckets,json=dynamicBuckets,proto3,oneof"`
  2359  }
  2360  
  2361  func (*Distribution_BucketOptions_LinearBuckets) isDistribution_BucketOptions_Options()      {}
  2362  func (*Distribution_BucketOptions_ExponentialBuckets) isDistribution_BucketOptions_Options() {}
  2363  func (*Distribution_BucketOptions_ExplicitBuckets) isDistribution_BucketOptions_Options()    {}
  2364  func (*Distribution_BucketOptions_DynamicBuckets) isDistribution_BucketOptions_Options()     {}
  2365  func (m *Distribution_BucketOptions) GetOptions() isDistribution_BucketOptions_Options {
  2366  	if m != nil {
  2367  		return m.Options
  2368  	}
  2369  	return nil
  2370  }
  2371  func (m *Distribution_BucketOptions) GetLinearBuckets() *Distribution_BucketOptions_Linear {
  2372  	if x, ok := m.GetOptions().(*Distribution_BucketOptions_LinearBuckets); ok {
  2373  		return x.LinearBuckets
  2374  	}
  2375  	return nil
  2376  }
  2377  func (m *Distribution_BucketOptions) GetExponentialBuckets() *Distribution_BucketOptions_Exponential {
  2378  	if x, ok := m.GetOptions().(*Distribution_BucketOptions_ExponentialBuckets); ok {
  2379  		return x.ExponentialBuckets
  2380  	}
  2381  	return nil
  2382  }
  2383  func (m *Distribution_BucketOptions) GetExplicitBuckets() *Distribution_BucketOptions_Explicit {
  2384  	if x, ok := m.GetOptions().(*Distribution_BucketOptions_ExplicitBuckets); ok {
  2385  		return x.ExplicitBuckets
  2386  	}
  2387  	return nil
  2388  }
  2389  func (m *Distribution_BucketOptions) GetDynamicBuckets() *Distribution_BucketOptions_Dynamic {
  2390  	if x, ok := m.GetOptions().(*Distribution_BucketOptions_DynamicBuckets); ok {
  2391  		return x.DynamicBuckets
  2392  	}
  2393  	return nil
  2394  }
  2395  func (m *Distribution_BucketOptions) SetOptions(ofv isDistribution_BucketOptions_Options) {
  2396  	if m == nil {
  2397  		panic(fmt.Errorf("can't set %s on nil %s", "isDistribution_BucketOptions_Options", "Distribution_BucketOptions"))
  2398  	}
  2399  	m.Options = ofv
  2400  }
  2401  func (m *Distribution_BucketOptions) SetLinearBuckets(fv *Distribution_BucketOptions_Linear) {
  2402  	m.SetOptions(&Distribution_BucketOptions_LinearBuckets{LinearBuckets: fv})
  2403  }
  2404  func (m *Distribution_BucketOptions) SetExponentialBuckets(fv *Distribution_BucketOptions_Exponential) {
  2405  	m.SetOptions(&Distribution_BucketOptions_ExponentialBuckets{ExponentialBuckets: fv})
  2406  }
  2407  func (m *Distribution_BucketOptions) SetExplicitBuckets(fv *Distribution_BucketOptions_Explicit) {
  2408  	m.SetOptions(&Distribution_BucketOptions_ExplicitBuckets{ExplicitBuckets: fv})
  2409  }
  2410  func (m *Distribution_BucketOptions) SetDynamicBuckets(fv *Distribution_BucketOptions_Dynamic) {
  2411  	m.SetOptions(&Distribution_BucketOptions_DynamicBuckets{DynamicBuckets: fv})
  2412  }
  2413  
  2414  // Specify a sequence of buckets that all have the same width (except
  2415  // overflow and underflow).  Each bucket represents a constant absolute
  2416  // uncertainty on the specific value in the bucket.
  2417  //
  2418  // Defines `num_finite_buckets + 2` (= N) buckets with these boundaries for
  2419  // bucket `i`:
  2420  //
  2421  //    Upper bound (0 <= i < N-1):     offset + (width * i).
  2422  //    Lower bound (1 <= i < N):       offset + (width * (i - 1)).
  2423  type Distribution_BucketOptions_Linear struct {
  2424  	state         protoimpl.MessageState
  2425  	sizeCache     protoimpl.SizeCache
  2426  	unknownFields protoimpl.UnknownFields
  2427  	// Must be greater than 0.
  2428  	NumFiniteBuckets int32 `protobuf:"varint,1,opt,name=num_finite_buckets,json=numFiniteBuckets,proto3" json:"num_finite_buckets,omitempty"`
  2429  	// Must be greater than 0.
  2430  	Width float64 `protobuf:"fixed64,2,opt,name=width,proto3" json:"width,omitempty"`
  2431  	// Lower bound of the first bucket.
  2432  	Offset float64 `protobuf:"fixed64,3,opt,name=offset,proto3" json:"offset,omitempty"`
  2433  }
  2434  
  2435  func (m *Distribution_BucketOptions_Linear) Reset() {
  2436  	*m = Distribution_BucketOptions_Linear{}
  2437  	if protoimpl.UnsafeEnabled {
  2438  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[16]
  2439  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2440  		ms.StoreMessageInfo(mi)
  2441  	}
  2442  }
  2443  
  2444  func (m *Distribution_BucketOptions_Linear) String() string {
  2445  	return protoimpl.X.MessageStringOf(m)
  2446  }
  2447  
  2448  func (*Distribution_BucketOptions_Linear) ProtoMessage() {}
  2449  
  2450  func (m *Distribution_BucketOptions_Linear) ProtoReflect() preflect.Message {
  2451  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[16]
  2452  	if protoimpl.UnsafeEnabled && m != nil {
  2453  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2454  		if ms.LoadMessageInfo() == nil {
  2455  			ms.StoreMessageInfo(mi)
  2456  		}
  2457  		return ms
  2458  	}
  2459  	return mi.MessageOf(m)
  2460  }
  2461  
  2462  func (*Distribution_BucketOptions_Linear) GotenMessage() {}
  2463  
  2464  // Deprecated, Use Distribution_BucketOptions_Linear.ProtoReflect.Descriptor instead.
  2465  func (*Distribution_BucketOptions_Linear) Descriptor() ([]byte, []int) {
  2466  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{2, 1, 0}
  2467  }
  2468  
  2469  func (m *Distribution_BucketOptions_Linear) Unmarshal(b []byte) error {
  2470  	return proto.Unmarshal(b, m)
  2471  }
  2472  
  2473  func (m *Distribution_BucketOptions_Linear) Marshal() ([]byte, error) {
  2474  	return proto.Marshal(m)
  2475  }
  2476  
  2477  func (m *Distribution_BucketOptions_Linear) MarshalJSON() ([]byte, error) {
  2478  	return protojson.MarshalOptions{}.Marshal(m)
  2479  }
  2480  
  2481  func (m *Distribution_BucketOptions_Linear) UnmarshalJSON(data []byte) error {
  2482  	return protojson.Unmarshal(data, m)
  2483  }
  2484  
  2485  func (m *Distribution_BucketOptions_Linear) GetNumFiniteBuckets() int32 {
  2486  	if m != nil {
  2487  		return m.NumFiniteBuckets
  2488  	}
  2489  	return int32(0)
  2490  }
  2491  
  2492  func (m *Distribution_BucketOptions_Linear) GetWidth() float64 {
  2493  	if m != nil {
  2494  		return m.Width
  2495  	}
  2496  	return float64(0)
  2497  }
  2498  
  2499  func (m *Distribution_BucketOptions_Linear) GetOffset() float64 {
  2500  	if m != nil {
  2501  		return m.Offset
  2502  	}
  2503  	return float64(0)
  2504  }
  2505  
  2506  func (m *Distribution_BucketOptions_Linear) SetNumFiniteBuckets(fv int32) {
  2507  	if m == nil {
  2508  		panic(fmt.Errorf("can't set %s on nil %s", "NumFiniteBuckets", "Distribution_BucketOptions_Linear"))
  2509  	}
  2510  	m.NumFiniteBuckets = fv
  2511  }
  2512  
  2513  func (m *Distribution_BucketOptions_Linear) SetWidth(fv float64) {
  2514  	if m == nil {
  2515  		panic(fmt.Errorf("can't set %s on nil %s", "Width", "Distribution_BucketOptions_Linear"))
  2516  	}
  2517  	m.Width = fv
  2518  }
  2519  
  2520  func (m *Distribution_BucketOptions_Linear) SetOffset(fv float64) {
  2521  	if m == nil {
  2522  		panic(fmt.Errorf("can't set %s on nil %s", "Offset", "Distribution_BucketOptions_Linear"))
  2523  	}
  2524  	m.Offset = fv
  2525  }
  2526  
  2527  // Specify a sequence of buckets that have a width that is proportional to
  2528  // the value of the lower bound.  Each bucket represents a constant relative
  2529  // uncertainty on a specific value in the bucket.
  2530  //
  2531  // Defines `num_finite_buckets + 2` (= N) buckets with these boundaries for
  2532  // bucket i:
  2533  //
  2534  //    Upper bound (0 <= i < N-1):     scale * (growth_factor ^ i).
  2535  //    Lower bound (1 <= i < N):       scale * (growth_factor ^ (i - 1)).
  2536  type Distribution_BucketOptions_Exponential struct {
  2537  	state         protoimpl.MessageState
  2538  	sizeCache     protoimpl.SizeCache
  2539  	unknownFields protoimpl.UnknownFields
  2540  	// Must be greater than 0.
  2541  	NumFiniteBuckets int32 `protobuf:"varint,1,opt,name=num_finite_buckets,json=numFiniteBuckets,proto3" json:"num_finite_buckets,omitempty"`
  2542  	// Must be greater than 1.
  2543  	GrowthFactor float64 `protobuf:"fixed64,2,opt,name=growth_factor,json=growthFactor,proto3" json:"growth_factor,omitempty"`
  2544  	// Must be greater than 0.
  2545  	Scale float64 `protobuf:"fixed64,3,opt,name=scale,proto3" json:"scale,omitempty"`
  2546  }
  2547  
  2548  func (m *Distribution_BucketOptions_Exponential) Reset() {
  2549  	*m = Distribution_BucketOptions_Exponential{}
  2550  	if protoimpl.UnsafeEnabled {
  2551  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[17]
  2552  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2553  		ms.StoreMessageInfo(mi)
  2554  	}
  2555  }
  2556  
  2557  func (m *Distribution_BucketOptions_Exponential) String() string {
  2558  	return protoimpl.X.MessageStringOf(m)
  2559  }
  2560  
  2561  func (*Distribution_BucketOptions_Exponential) ProtoMessage() {}
  2562  
  2563  func (m *Distribution_BucketOptions_Exponential) ProtoReflect() preflect.Message {
  2564  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[17]
  2565  	if protoimpl.UnsafeEnabled && m != nil {
  2566  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2567  		if ms.LoadMessageInfo() == nil {
  2568  			ms.StoreMessageInfo(mi)
  2569  		}
  2570  		return ms
  2571  	}
  2572  	return mi.MessageOf(m)
  2573  }
  2574  
  2575  func (*Distribution_BucketOptions_Exponential) GotenMessage() {}
  2576  
  2577  // Deprecated, Use Distribution_BucketOptions_Exponential.ProtoReflect.Descriptor instead.
  2578  func (*Distribution_BucketOptions_Exponential) Descriptor() ([]byte, []int) {
  2579  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{2, 1, 1}
  2580  }
  2581  
  2582  func (m *Distribution_BucketOptions_Exponential) Unmarshal(b []byte) error {
  2583  	return proto.Unmarshal(b, m)
  2584  }
  2585  
  2586  func (m *Distribution_BucketOptions_Exponential) Marshal() ([]byte, error) {
  2587  	return proto.Marshal(m)
  2588  }
  2589  
  2590  func (m *Distribution_BucketOptions_Exponential) MarshalJSON() ([]byte, error) {
  2591  	return protojson.MarshalOptions{}.Marshal(m)
  2592  }
  2593  
  2594  func (m *Distribution_BucketOptions_Exponential) UnmarshalJSON(data []byte) error {
  2595  	return protojson.Unmarshal(data, m)
  2596  }
  2597  
  2598  func (m *Distribution_BucketOptions_Exponential) GetNumFiniteBuckets() int32 {
  2599  	if m != nil {
  2600  		return m.NumFiniteBuckets
  2601  	}
  2602  	return int32(0)
  2603  }
  2604  
  2605  func (m *Distribution_BucketOptions_Exponential) GetGrowthFactor() float64 {
  2606  	if m != nil {
  2607  		return m.GrowthFactor
  2608  	}
  2609  	return float64(0)
  2610  }
  2611  
  2612  func (m *Distribution_BucketOptions_Exponential) GetScale() float64 {
  2613  	if m != nil {
  2614  		return m.Scale
  2615  	}
  2616  	return float64(0)
  2617  }
  2618  
  2619  func (m *Distribution_BucketOptions_Exponential) SetNumFiniteBuckets(fv int32) {
  2620  	if m == nil {
  2621  		panic(fmt.Errorf("can't set %s on nil %s", "NumFiniteBuckets", "Distribution_BucketOptions_Exponential"))
  2622  	}
  2623  	m.NumFiniteBuckets = fv
  2624  }
  2625  
  2626  func (m *Distribution_BucketOptions_Exponential) SetGrowthFactor(fv float64) {
  2627  	if m == nil {
  2628  		panic(fmt.Errorf("can't set %s on nil %s", "GrowthFactor", "Distribution_BucketOptions_Exponential"))
  2629  	}
  2630  	m.GrowthFactor = fv
  2631  }
  2632  
  2633  func (m *Distribution_BucketOptions_Exponential) SetScale(fv float64) {
  2634  	if m == nil {
  2635  		panic(fmt.Errorf("can't set %s on nil %s", "Scale", "Distribution_BucketOptions_Exponential"))
  2636  	}
  2637  	m.Scale = fv
  2638  }
  2639  
  2640  // A set of buckets with arbitrary widths.
  2641  //
  2642  // Defines `size(bounds) + 1` (= N) buckets with these boundaries for
  2643  // bucket i:
  2644  //
  2645  //    Upper bound (0 <= i < N-1):     bounds[i]
  2646  //    Lower bound (1 <= i < N);       bounds[i - 1]
  2647  //
  2648  // There must be at least one element in `bounds`.  If `bounds` has only one
  2649  // element, there are no finite buckets, and that single element is the
  2650  // common boundary of the overflow and underflow buckets.
  2651  type Distribution_BucketOptions_Explicit struct {
  2652  	state         protoimpl.MessageState
  2653  	sizeCache     protoimpl.SizeCache
  2654  	unknownFields protoimpl.UnknownFields
  2655  	// The values must be monotonically increasing.
  2656  	Bounds []float64 `protobuf:"fixed64,1,rep,packed,name=bounds,proto3" json:"bounds,omitempty"`
  2657  }
  2658  
  2659  func (m *Distribution_BucketOptions_Explicit) Reset() {
  2660  	*m = Distribution_BucketOptions_Explicit{}
  2661  	if protoimpl.UnsafeEnabled {
  2662  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[18]
  2663  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2664  		ms.StoreMessageInfo(mi)
  2665  	}
  2666  }
  2667  
  2668  func (m *Distribution_BucketOptions_Explicit) String() string {
  2669  	return protoimpl.X.MessageStringOf(m)
  2670  }
  2671  
  2672  func (*Distribution_BucketOptions_Explicit) ProtoMessage() {}
  2673  
  2674  func (m *Distribution_BucketOptions_Explicit) ProtoReflect() preflect.Message {
  2675  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[18]
  2676  	if protoimpl.UnsafeEnabled && m != nil {
  2677  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2678  		if ms.LoadMessageInfo() == nil {
  2679  			ms.StoreMessageInfo(mi)
  2680  		}
  2681  		return ms
  2682  	}
  2683  	return mi.MessageOf(m)
  2684  }
  2685  
  2686  func (*Distribution_BucketOptions_Explicit) GotenMessage() {}
  2687  
  2688  // Deprecated, Use Distribution_BucketOptions_Explicit.ProtoReflect.Descriptor instead.
  2689  func (*Distribution_BucketOptions_Explicit) Descriptor() ([]byte, []int) {
  2690  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{2, 1, 2}
  2691  }
  2692  
  2693  func (m *Distribution_BucketOptions_Explicit) Unmarshal(b []byte) error {
  2694  	return proto.Unmarshal(b, m)
  2695  }
  2696  
  2697  func (m *Distribution_BucketOptions_Explicit) Marshal() ([]byte, error) {
  2698  	return proto.Marshal(m)
  2699  }
  2700  
  2701  func (m *Distribution_BucketOptions_Explicit) MarshalJSON() ([]byte, error) {
  2702  	return protojson.MarshalOptions{}.Marshal(m)
  2703  }
  2704  
  2705  func (m *Distribution_BucketOptions_Explicit) UnmarshalJSON(data []byte) error {
  2706  	return protojson.Unmarshal(data, m)
  2707  }
  2708  
  2709  func (m *Distribution_BucketOptions_Explicit) GetBounds() []float64 {
  2710  	if m != nil {
  2711  		return m.Bounds
  2712  	}
  2713  	return nil
  2714  }
  2715  
  2716  func (m *Distribution_BucketOptions_Explicit) SetBounds(fv []float64) {
  2717  	if m == nil {
  2718  		panic(fmt.Errorf("can't set %s on nil %s", "Bounds", "Distribution_BucketOptions_Explicit"))
  2719  	}
  2720  	m.Bounds = fv
  2721  }
  2722  
  2723  // Dynamic buckets centroid based. TDigest implementation.
  2724  type Distribution_BucketOptions_Dynamic struct {
  2725  	state         protoimpl.MessageState
  2726  	sizeCache     protoimpl.SizeCache
  2727  	unknownFields protoimpl.UnknownFields
  2728  	// TDigest compression rate
  2729  	Compression float64 `protobuf:"fixed64,1,opt,name=compression,proto3" json:"compression,omitempty"`
  2730  	// Centroid means. Must be the same length as bucket counts.
  2731  	// Each mean, count represents a weighed centroid.
  2732  	Means []float64 `protobuf:"fixed64,2,rep,packed,name=means,proto3" json:"means,omitempty"`
  2733  }
  2734  
  2735  func (m *Distribution_BucketOptions_Dynamic) Reset() {
  2736  	*m = Distribution_BucketOptions_Dynamic{}
  2737  	if protoimpl.UnsafeEnabled {
  2738  		mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[19]
  2739  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2740  		ms.StoreMessageInfo(mi)
  2741  	}
  2742  }
  2743  
  2744  func (m *Distribution_BucketOptions_Dynamic) String() string {
  2745  	return protoimpl.X.MessageStringOf(m)
  2746  }
  2747  
  2748  func (*Distribution_BucketOptions_Dynamic) ProtoMessage() {}
  2749  
  2750  func (m *Distribution_BucketOptions_Dynamic) ProtoReflect() preflect.Message {
  2751  	mi := &edgelq_monitoring_proto_v3_common_proto_msgTypes[19]
  2752  	if protoimpl.UnsafeEnabled && m != nil {
  2753  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(m))
  2754  		if ms.LoadMessageInfo() == nil {
  2755  			ms.StoreMessageInfo(mi)
  2756  		}
  2757  		return ms
  2758  	}
  2759  	return mi.MessageOf(m)
  2760  }
  2761  
  2762  func (*Distribution_BucketOptions_Dynamic) GotenMessage() {}
  2763  
  2764  // Deprecated, Use Distribution_BucketOptions_Dynamic.ProtoReflect.Descriptor instead.
  2765  func (*Distribution_BucketOptions_Dynamic) Descriptor() ([]byte, []int) {
  2766  	return edgelq_monitoring_proto_v3_common_proto_rawDescGZIP(), []int{2, 1, 3}
  2767  }
  2768  
  2769  func (m *Distribution_BucketOptions_Dynamic) Unmarshal(b []byte) error {
  2770  	return proto.Unmarshal(b, m)
  2771  }
  2772  
  2773  func (m *Distribution_BucketOptions_Dynamic) Marshal() ([]byte, error) {
  2774  	return proto.Marshal(m)
  2775  }
  2776  
  2777  func (m *Distribution_BucketOptions_Dynamic) MarshalJSON() ([]byte, error) {
  2778  	return protojson.MarshalOptions{}.Marshal(m)
  2779  }
  2780  
  2781  func (m *Distribution_BucketOptions_Dynamic) UnmarshalJSON(data []byte) error {
  2782  	return protojson.Unmarshal(data, m)
  2783  }
  2784  
  2785  func (m *Distribution_BucketOptions_Dynamic) GetCompression() float64 {
  2786  	if m != nil {
  2787  		return m.Compression
  2788  	}
  2789  	return float64(0)
  2790  }
  2791  
  2792  func (m *Distribution_BucketOptions_Dynamic) GetMeans() []float64 {
  2793  	if m != nil {
  2794  		return m.Means
  2795  	}
  2796  	return nil
  2797  }
  2798  
  2799  func (m *Distribution_BucketOptions_Dynamic) SetCompression(fv float64) {
  2800  	if m == nil {
  2801  		panic(fmt.Errorf("can't set %s on nil %s", "Compression", "Distribution_BucketOptions_Dynamic"))
  2802  	}
  2803  	m.Compression = fv
  2804  }
  2805  
  2806  func (m *Distribution_BucketOptions_Dynamic) SetMeans(fv []float64) {
  2807  	if m == nil {
  2808  		panic(fmt.Errorf("can't set %s on nil %s", "Means", "Distribution_BucketOptions_Dynamic"))
  2809  	}
  2810  	m.Means = fv
  2811  }
  2812  
  2813  var edgelq_monitoring_proto_v3_common_proto preflect.FileDescriptor
  2814  
  2815  var edgelq_monitoring_proto_v3_common_proto_rawDesc = []byte{
  2816  	0x0a, 0x27, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
  2817  	0x69, 0x6e, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x33, 0x2f, 0x63, 0x6f, 0x6d,
  2818  	0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x6e, 0x74, 0x74, 0x2e, 0x6d,
  2819  	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x1a, 0x1d, 0x67, 0x6f,
  2820  	0x74, 0x65, 0x6e, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
  2821  	0x67, 0x6f, 0x74, 0x65, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x74,
  2822  	0x65, 0x6e, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x76,
  2823  	0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67,
  2824  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64,
  2825  	0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67,
  2826  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74,
  2827  	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb4,
  2828  	0x02, 0x0a, 0x0f, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
  2829  	0x6f, 0x72, 0x12, 0x39, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
  2830  	0x27, 0xca, 0xc6, 0x27, 0x23, 0x2a, 0x21, 0x52, 0x1f, 0x42, 0x1d, 0x5e, 0x5b, 0x5f, 0x41, 0x2d,
  2831  	0x5a, 0x61, 0x2d, 0x7a, 0x5d, 0x5b, 0x5f, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39,
  2832  	0x5d, 0x7b, 0x30, 0x2c, 0x33, 0x31, 0x7d, 0x24, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x55, 0x0a,
  2833  	0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
  2834  	0x0e, 0x32, 0x2c, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69,
  2835  	0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65, 0x73, 0x63, 0x72,
  2836  	0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42,
  2837  	0x08, 0xca, 0xc6, 0x27, 0x04, 0x3a, 0x02, 0x0a, 0x00, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x75, 0x65,
  2838  	0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
  2839  	0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
  2840  	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c,
  2841  	0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64,
  2842  	0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x64,
  2843  	0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64,
  2844  	0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x2c, 0x0a, 0x09, 0x56, 0x61, 0x6c, 0x75, 0x65,
  2845  	0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x00,
  2846  	0x12, 0x08, 0x0a, 0x04, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e,
  2847  	0x54, 0x36, 0x34, 0x10, 0x02, 0x22, 0x4b, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x4b, 0x65,
  2848  	0x79, 0x53, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x6b, 0x65,
  2849  	0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x4b,
  2850  	0x65, 0x79, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6f, 0x6e, 0x6c,
  2851  	0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x77, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x6e,
  2852  	0x6c, 0x79, 0x22, 0xcc, 0x08, 0x0a, 0x0c, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74,
  2853  	0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
  2854  	0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x61,
  2855  	0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x04, 0x6d, 0x65, 0x61, 0x6e, 0x12, 0x37, 0x0a,
  2856  	0x18, 0x73, 0x75, 0x6d, 0x5f, 0x6f, 0x66, 0x5f, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x5f,
  2857  	0x64, 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52,
  2858  	0x15, 0x73, 0x75, 0x6d, 0x4f, 0x66, 0x53, 0x71, 0x75, 0x61, 0x72, 0x65, 0x64, 0x44, 0x65, 0x76,
  2859  	0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18,
  2860  	0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69,
  2861  	0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69,
  2862  	0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x05, 0x72, 0x61,
  2863  	0x6e, 0x67, 0x65, 0x12, 0x54, 0x0a, 0x0e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6f, 0x70,
  2864  	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6e, 0x74,
  2865  	0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e,
  2866  	0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x42, 0x75, 0x63,
  2867  	0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0d, 0x62, 0x75, 0x63, 0x6b,
  2868  	0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x75, 0x63,
  2869  	0x6b, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x03,
  2870  	0x52, 0x0c, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x1a, 0x2b,
  2871  	0x0a, 0x05, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x18, 0x01,
  2872  	0x20, 0x01, 0x28, 0x01, 0x52, 0x03, 0x6d, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x61, 0x78,
  2873  	0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x03, 0x6d, 0x61, 0x78, 0x1a, 0xf3, 0x05, 0x0a, 0x0d,
  2874  	0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5d, 0x0a,
  2875  	0x0e, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18,
  2876  	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69,
  2877  	0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69,
  2878  	0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74,
  2879  	0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x48, 0x00, 0x52, 0x0d, 0x6c,
  2880  	0x69, 0x6e, 0x65, 0x61, 0x72, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x6c, 0x0a, 0x13,
  2881  	0x65, 0x78, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x62, 0x75, 0x63, 0x6b,
  2882  	0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x6e, 0x74, 0x74, 0x2e,
  2883  	0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x44, 0x69,
  2884  	0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65,
  2885  	0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x6e, 0x65, 0x6e,
  2886  	0x74, 0x69, 0x61, 0x6c, 0x48, 0x00, 0x52, 0x12, 0x65, 0x78, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74,
  2887  	0x69, 0x61, 0x6c, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x63, 0x0a, 0x10, 0x65, 0x78,
  2888  	0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x03,
  2889  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74,
  2890  	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62,
  2891  	0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x70, 0x74, 0x69,
  2892  	0x6f, 0x6e, 0x73, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x48, 0x00, 0x52, 0x0f,
  2893  	0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12,
  2894  	0x60, 0x0a, 0x0f, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65,
  2895  	0x74, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d,
  2896  	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x44, 0x69, 0x73,
  2897  	0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74,
  2898  	0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x48,
  2899  	0x00, 0x52, 0x0e, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74,
  2900  	0x73, 0x1a, 0x64, 0x0a, 0x06, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x12, 0x2c, 0x0a, 0x12, 0x6e,
  2901  	0x75, 0x6d, 0x5f, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x65, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
  2902  	0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x46, 0x69, 0x6e, 0x69,
  2903  	0x74, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64,
  2904  	0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12,
  2905  	0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52,
  2906  	0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x1a, 0x76, 0x0a, 0x0b, 0x45, 0x78, 0x70, 0x6f, 0x6e,
  2907  	0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x2c, 0x0a, 0x12, 0x6e, 0x75, 0x6d, 0x5f, 0x66, 0x69,
  2908  	0x6e, 0x69, 0x74, 0x65, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01,
  2909  	0x28, 0x05, 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x46, 0x69, 0x6e, 0x69, 0x74, 0x65, 0x42, 0x75, 0x63,
  2910  	0x6b, 0x65, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x67, 0x72, 0x6f, 0x77, 0x74, 0x68, 0x5f, 0x66,
  2911  	0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0c, 0x67, 0x72, 0x6f,
  2912  	0x77, 0x74, 0x68, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x61,
  2913  	0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x1a,
  2914  	0x22, 0x0a, 0x08, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x62,
  2915  	0x6f, 0x75, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x01, 0x52, 0x06, 0x62, 0x6f, 0x75,
  2916  	0x6e, 0x64, 0x73, 0x1a, 0x41, 0x0a, 0x07, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x12, 0x20,
  2917  	0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20,
  2918  	0x01, 0x28, 0x01, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
  2919  	0x12, 0x14, 0x0a, 0x05, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x01, 0x52,
  2920  	0x05, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
  2921  	0x73, 0x22, 0xf5, 0x01, 0x0a, 0x0a, 0x54, 0x79, 0x70, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65,
  2922  	0x12, 0x1f, 0x0a, 0x0a, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01,
  2923  	0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75,
  2924  	0x65, 0x12, 0x21, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65,
  2925  	0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x56,
  2926  	0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x76,
  2927  	0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x6f,
  2928  	0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x73, 0x74, 0x72,
  2929  	0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48,
  2930  	0x00, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x50,
  2931  	0x0a, 0x12, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76,
  2932  	0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6e, 0x74, 0x74,
  2933  	0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x44,
  2934  	0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x11, 0x64,
  2935  	0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65,
  2936  	0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x8a, 0x01, 0x0a, 0x0c, 0x54, 0x69,
  2937  	0x6d, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x3f, 0x0a, 0x08, 0x65, 0x6e,
  2938  	0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
  2939  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
  2940  	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x62, 0x02,
  2941  	0x08, 0x01, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x73,
  2942  	0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
  2943  	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  2944  	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61,
  2945  	0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x7d, 0x0a, 0x09, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x61,
  2946  	0x6e, 0x67, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d,
  2947  	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2948  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
  2949  	0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35,
  2950  	0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
  2951  	0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  2952  	0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x65, 0x6e,
  2953  	0x64, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xfb, 0x08, 0x0a, 0x0b, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67,
  2954  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x8f, 0x01, 0x0a, 0x10, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d,
  2955  	0x65, 0x6e, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
  2956  	0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  2957  	0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x49, 0xca, 0xc6, 0x27,
  2958  	0x45, 0x5a, 0x43, 0x3a, 0x00, 0x3a, 0x02, 0x08, 0x3c, 0x3a, 0x03, 0x08, 0xb4, 0x01, 0x3a, 0x03,
  2959  	0x08, 0xac, 0x02, 0x3a, 0x03, 0x08, 0x84, 0x07, 0x3a, 0x03, 0x08, 0x88, 0x0e, 0x3a, 0x03, 0x08,
  2960  	0x90, 0x1c, 0x3a, 0x03, 0x08, 0xb0, 0x54, 0x3a, 0x04, 0x08, 0xe0, 0xa8, 0x01, 0x3a, 0x04, 0x08,
  2961  	0xc0, 0xd1, 0x02, 0x3a, 0x04, 0x08, 0x80, 0xa3, 0x05, 0x3a, 0x04, 0x08, 0x80, 0xf5, 0x24, 0x3a,
  2962  	0x05, 0x08, 0x80, 0xd4, 0x93, 0x01, 0x52, 0x0f, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e,
  2963  	0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x54, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x5f, 0x73,
  2964  	0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20,
  2965  	0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f,
  2966  	0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74,
  2967  	0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x52, 0x10, 0x70, 0x65, 0x72,
  2968  	0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x12, 0x58, 0x0a,
  2969  	0x14, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x72, 0x65,
  2970  	0x64, 0x75, 0x63, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x6e, 0x74,
  2971  	0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e,
  2972  	0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x64, 0x75,
  2973  	0x63, 0x65, 0x72, 0x52, 0x12, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73,
  2974  	0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x67, 0x72, 0x6f, 0x75, 0x70,
  2975  	0x5f, 0x62, 0x79, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09,
  2976  	0x52, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x79, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x22,
  2977  	0xb9, 0x03, 0x0a, 0x07, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x0a, 0x41,
  2978  	0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x41,
  2979  	0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x44, 0x45, 0x4c, 0x54, 0x41, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a,
  2980  	0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x52, 0x41, 0x54, 0x45, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11,
  2981  	0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x50, 0x4f, 0x4c, 0x41, 0x54,
  2982  	0x45, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x4e, 0x45, 0x58,
  2983  	0x54, 0x5f, 0x4f, 0x4c, 0x44, 0x45, 0x52, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x4c, 0x49,
  2984  	0x47, 0x4e, 0x5f, 0x4d, 0x49, 0x4e, 0x10, 0x0a, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x4c, 0x49, 0x47,
  2985  	0x4e, 0x5f, 0x4d, 0x41, 0x58, 0x10, 0x0b, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x4c, 0x49, 0x47, 0x4e,
  2986  	0x5f, 0x4d, 0x45, 0x41, 0x4e, 0x10, 0x0c, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x4c, 0x49, 0x47, 0x4e,
  2987  	0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x0d, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x4c, 0x49, 0x47,
  2988  	0x4e, 0x5f, 0x53, 0x55, 0x4d, 0x10, 0x0e, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x4c, 0x49, 0x47, 0x4e,
  2989  	0x5f, 0x53, 0x54, 0x44, 0x44, 0x45, 0x56, 0x10, 0x0f, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x4c, 0x49,
  2990  	0x47, 0x4e, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x54, 0x52, 0x55, 0x45, 0x10, 0x10, 0x12,
  2991  	0x15, 0x0a, 0x11, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x46,
  2992  	0x41, 0x4c, 0x53, 0x45, 0x10, 0x18, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f,
  2993  	0x46, 0x52, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x52, 0x55, 0x45, 0x10, 0x11, 0x12,
  2994  	0x17, 0x0a, 0x13, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54,
  2995  	0x49, 0x4c, 0x45, 0x5f, 0x39, 0x39, 0x10, 0x12, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x4c, 0x49, 0x47,
  2996  	0x4e, 0x5f, 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x49, 0x4c, 0x45, 0x5f, 0x39, 0x35, 0x10,
  2997  	0x13, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x50, 0x45, 0x52, 0x43, 0x45,
  2998  	0x4e, 0x54, 0x49, 0x4c, 0x45, 0x5f, 0x35, 0x30, 0x10, 0x14, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x4c,
  2999  	0x49, 0x47, 0x4e, 0x5f, 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x49, 0x4c, 0x45, 0x5f, 0x30,
  3000  	0x35, 0x10, 0x15, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x50, 0x45, 0x52,
  3001  	0x43, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x17, 0x12, 0x11, 0x0a,
  3002  	0x0d, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x53, 0x55, 0x4d, 0x4d, 0x41, 0x52, 0x59, 0x10, 0x2d,
  3003  	0x12, 0x19, 0x0a, 0x15, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x5f, 0x54, 0x44, 0x49, 0x47, 0x45, 0x53,
  3004  	0x54, 0x5f, 0x53, 0x55, 0x4d, 0x4d, 0x41, 0x52, 0x59, 0x10, 0x2e, 0x22, 0xc5, 0x02, 0x0a, 0x07,
  3005  	0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x72, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x45, 0x44, 0x55, 0x43,
  3006  	0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x45, 0x44, 0x55,
  3007  	0x43, 0x45, 0x5f, 0x4d, 0x45, 0x41, 0x4e, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x44,
  3008  	0x55, 0x43, 0x45, 0x5f, 0x4d, 0x49, 0x4e, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x44,
  3009  	0x55, 0x43, 0x45, 0x5f, 0x4d, 0x41, 0x58, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x44,
  3010  	0x55, 0x43, 0x45, 0x5f, 0x53, 0x55, 0x4d, 0x10, 0x04, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x45, 0x44,
  3011  	0x55, 0x43, 0x45, 0x5f, 0x53, 0x54, 0x44, 0x44, 0x45, 0x56, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c,
  3012  	0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x06, 0x12, 0x15,
  3013  	0x0a, 0x11, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x54,
  3014  	0x52, 0x55, 0x45, 0x10, 0x07, 0x12, 0x16, 0x0a, 0x12, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f,
  3015  	0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x10, 0x0f, 0x12, 0x18, 0x0a,
  3016  	0x14, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x46, 0x52, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e,
  3017  	0x5f, 0x54, 0x52, 0x55, 0x45, 0x10, 0x08, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x44, 0x55, 0x43,
  3018  	0x45, 0x5f, 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x49, 0x4c, 0x45, 0x5f, 0x39, 0x39, 0x10,
  3019  	0x09, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x50, 0x45, 0x52, 0x43,
  3020  	0x45, 0x4e, 0x54, 0x49, 0x4c, 0x45, 0x5f, 0x39, 0x35, 0x10, 0x0a, 0x12, 0x18, 0x0a, 0x14, 0x52,
  3021  	0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x49, 0x4c, 0x45,
  3022  	0x5f, 0x35, 0x30, 0x10, 0x0b, 0x12, 0x18, 0x0a, 0x14, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f,
  3023  	0x50, 0x45, 0x52, 0x43, 0x45, 0x4e, 0x54, 0x49, 0x4c, 0x45, 0x5f, 0x30, 0x35, 0x10, 0x0c, 0x12,
  3024  	0x12, 0x0a, 0x0e, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x5f, 0x53, 0x55, 0x4d, 0x4d, 0x41, 0x52,
  3025  	0x59, 0x10, 0x0d, 0x22, 0xa8, 0x02, 0x0a, 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69,
  3026  	0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
  3027  	0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x2a, 0x02, 0x68, 0x01, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77,
  3028  	0x12, 0x24, 0x0a, 0x08, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01,
  3029  	0x28, 0x09, 0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x2a, 0x02, 0x68, 0x01, 0x52, 0x08, 0x66, 0x75,
  3030  	0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x8f, 0x01, 0x0a, 0x10, 0x61, 0x6c, 0x69, 0x67, 0x6e,
  3031  	0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
  3032  	0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  3033  	0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x49, 0xca, 0xc6,
  3034  	0x27, 0x45, 0x5a, 0x43, 0x3a, 0x00, 0x3a, 0x02, 0x08, 0x3c, 0x3a, 0x03, 0x08, 0xb4, 0x01, 0x3a,
  3035  	0x03, 0x08, 0xac, 0x02, 0x3a, 0x03, 0x08, 0x84, 0x07, 0x3a, 0x03, 0x08, 0x88, 0x0e, 0x3a, 0x03,
  3036  	0x08, 0x90, 0x1c, 0x3a, 0x03, 0x08, 0xb0, 0x54, 0x3a, 0x04, 0x08, 0xe0, 0xa8, 0x01, 0x3a, 0x04,
  3037  	0x08, 0xc0, 0xd1, 0x02, 0x3a, 0x04, 0x08, 0x80, 0xa3, 0x05, 0x3a, 0x04, 0x08, 0x80, 0xf5, 0x24,
  3038  	0x3a, 0x05, 0x08, 0x80, 0xd4, 0x93, 0x01, 0x52, 0x0f, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65,
  3039  	0x6e, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x22, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69,
  3040  	0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x0c, 0xca, 0xc6, 0x27, 0x08, 0x12, 0x06, 0x1a,
  3041  	0x02, 0x08, 0x64, 0x2a, 0x00, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x20, 0x0a, 0x06,
  3042  	0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x08, 0xca, 0xc6,
  3043  	0x27, 0x04, 0x12, 0x02, 0x2a, 0x00, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0xfc,
  3044  	0x01, 0x0a, 0x06, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x40, 0x0a, 0x04, 0x74, 0x79, 0x70,
  3045  	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xca, 0xc6, 0x27, 0x28, 0x2a, 0x26, 0x52,
  3046  	0x24, 0x42, 0x22, 0x5e, 0x5b, 0x41, 0x2d, 0x5a, 0x61, 0x2d, 0x7a, 0x30, 0x2d, 0x39, 0x5f, 0x5c,
  3047  	0x2d, 0x2e, 0x2c, 0x2b, 0x21, 0x2a, 0x28, 0x29, 0x25, 0x5c, 0x5c, 0x2f, 0x5d, 0x7b, 0x31, 0x2c,
  3048  	0x32, 0x35, 0x36, 0x7d, 0x24, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x4e, 0x0a, 0x06, 0x6c,
  3049  	0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6e, 0x74,
  3050  	0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e,
  3051  	0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74,
  3052  	0x72, 0x79, 0x42, 0x0f, 0xca, 0xc6, 0x27, 0x0b, 0x4a, 0x09, 0x22, 0x07, 0x2a, 0x05, 0x22, 0x03,
  3053  	0x08, 0x80, 0x08, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x72,
  3054  	0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0b, 0x20,
  3055  	0x03, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x4c, 0x61, 0x62, 0x65,
  3056  	0x6c, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72,
  3057  	0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
  3058  	0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
  3059  	0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd3, 0x01,
  3060  	0x0a, 0x11, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75,
  3061  	0x72, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
  3062  	0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x48, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c,
  3063  	0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f,
  3064  	0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x6f, 0x6e, 0x69,
  3065  	0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x4c, 0x61,
  3066  	0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c,
  3067  	0x73, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x5f, 0x6c, 0x61, 0x62,
  3068  	0x65, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x64, 0x75, 0x63,
  3069  	0x65, 0x64, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65,
  3070  	0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
  3071  	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
  3072  	0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
  3073  	0x02, 0x38, 0x01, 0x22, 0x21, 0x0a, 0x07, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x16,
  3074  	0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06,
  3075  	0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0xea, 0x01, 0x0a, 0x19, 0x4d, 0x6f, 0x6e, 0x69, 0x74,
  3076  	0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x6c, 0x65,
  3077  	0x63, 0x74, 0x6f, 0x72, 0x12, 0x24, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20,
  3078  	0x03, 0x28, 0x09, 0x42, 0x0e, 0xca, 0xc6, 0x27, 0x0a, 0x42, 0x08, 0x0a, 0x02, 0x08, 0x01, 0x12,
  3079  	0x02, 0x08, 0x01, 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x50, 0x0a, 0x06, 0x6c, 0x61,
  3080  	0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x6e, 0x74, 0x74,
  3081  	0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x4d,
  3082  	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
  3083  	0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45,
  3084  	0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x55, 0x0a, 0x0b,
  3085  	0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
  3086  	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x30, 0x0a,
  3087  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6e,
  3088  	0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33,
  3089  	0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
  3090  	0x02, 0x38, 0x01, 0x22, 0xd0, 0x01, 0x0a, 0x0e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x65,
  3091  	0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18,
  3092  	0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 0x0a, 0xca, 0xc6, 0x27, 0x06, 0x42, 0x04, 0x0a, 0x02, 0x08,
  3093  	0x01, 0x52, 0x05, 0x74, 0x79, 0x70, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65,
  3094  	0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d,
  3095  	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x65, 0x74,
  3096  	0x72, 0x69, 0x63, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x2e, 0x4c, 0x61, 0x62, 0x65,
  3097  	0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a,
  3098  	0x55, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
  3099  	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
  3100  	0x12, 0x30, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
  3101  	0x1a, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67,
  3102  	0x2e, 0x76, 0x33, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c,
  3103  	0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xad, 0x01, 0x0a, 0x12, 0x54, 0x69, 0x6d, 0x65, 0x53,
  3104  	0x65, 0x72, 0x69, 0x65, 0x73, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x43, 0x0a,
  3105  	0x06, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e,
  3106  	0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76,
  3107  	0x33, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72,
  3108  	0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x62, 0x02, 0x08, 0x01, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x72,
  3109  	0x69, 0x63, 0x12, 0x52, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02,
  3110  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d, 0x6f, 0x6e, 0x69, 0x74,
  3111  	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x33, 0x2e, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
  3112  	0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74,
  3113  	0x6f, 0x72, 0x42, 0x08, 0xca, 0xc6, 0x27, 0x04, 0x62, 0x02, 0x08, 0x01, 0x52, 0x08, 0x72, 0x65,
  3114  	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2a, 0x27, 0x0a, 0x0e, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65,
  3115  	0x72, 0x69, 0x65, 0x73, 0x56, 0x69, 0x65, 0x77, 0x12, 0x08, 0x0a, 0x04, 0x46, 0x55, 0x4c, 0x4c,
  3116  	0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x48, 0x45, 0x41, 0x44, 0x45, 0x52, 0x53, 0x10, 0x01, 0x42,
  3117  	0x6f, 0xe8, 0xde, 0x21, 0x01, 0x0a, 0x18, 0x63, 0x6f, 0x6d, 0x2e, 0x6e, 0x74, 0x74, 0x2e, 0x6d,
  3118  	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x62, 0x2e, 0x76, 0x33, 0x42,
  3119  	0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x00, 0x5a, 0x40,
  3120  	0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  3121  	0x77, 0x61, 0x6e, 0x2f, 0x65, 0x64, 0x67, 0x65, 0x6c, 0x71, 0x2f, 0x6d, 0x6f, 0x6e, 0x69, 0x74,
  3122  	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2f,
  3123  	0x76, 0x33, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x3b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
  3124  	0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  3125  }
  3126  
  3127  var (
  3128  	edgelq_monitoring_proto_v3_common_proto_rawDescOnce sync.Once
  3129  	edgelq_monitoring_proto_v3_common_proto_rawDescData = edgelq_monitoring_proto_v3_common_proto_rawDesc
  3130  )
  3131  
  3132  func edgelq_monitoring_proto_v3_common_proto_rawDescGZIP() []byte {
  3133  	edgelq_monitoring_proto_v3_common_proto_rawDescOnce.Do(func() {
  3134  		edgelq_monitoring_proto_v3_common_proto_rawDescData = protoimpl.X.CompressGZIP(edgelq_monitoring_proto_v3_common_proto_rawDescData)
  3135  	})
  3136  	return edgelq_monitoring_proto_v3_common_proto_rawDescData
  3137  }
  3138  
  3139  var edgelq_monitoring_proto_v3_common_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
  3140  var edgelq_monitoring_proto_v3_common_proto_msgTypes = make([]protoimpl.MessageInfo, 24)
  3141  var edgelq_monitoring_proto_v3_common_proto_goTypes = []interface{}{
  3142  	(TimeSeriesView)(0),                            // 0: ntt.monitoring.v3.TimeSeriesView
  3143  	(LabelDescriptor_ValueType)(0),                 // 1: ntt.monitoring.v3.LabelDescriptor_ValueType
  3144  	(Aggregation_Aligner)(0),                       // 2: ntt.monitoring.v3.Aggregation_Aligner
  3145  	(Aggregation_Reducer)(0),                       // 3: ntt.monitoring.v3.Aggregation_Reducer
  3146  	(*LabelDescriptor)(nil),                        // 4: ntt.monitoring.v3.LabelDescriptor
  3147  	(*LabelKeySet)(nil),                            // 5: ntt.monitoring.v3.LabelKeySet
  3148  	(*Distribution)(nil),                           // 6: ntt.monitoring.v3.Distribution
  3149  	(*TypedValue)(nil),                             // 7: ntt.monitoring.v3.TypedValue
  3150  	(*TimeInterval)(nil),                           // 8: ntt.monitoring.v3.TimeInterval
  3151  	(*TimeRange)(nil),                              // 9: ntt.monitoring.v3.TimeRange
  3152  	(*Aggregation)(nil),                            // 10: ntt.monitoring.v3.Aggregation
  3153  	(*Pagination)(nil),                             // 11: ntt.monitoring.v3.Pagination
  3154  	(*Metric)(nil),                                 // 12: ntt.monitoring.v3.Metric
  3155  	(*MonitoredResource)(nil),                      // 13: ntt.monitoring.v3.MonitoredResource
  3156  	(*Strings)(nil),                                // 14: ntt.monitoring.v3.Strings
  3157  	(*MonitoredResourceSelector)(nil),              // 15: ntt.monitoring.v3.MonitoredResourceSelector
  3158  	(*MetricSelector)(nil),                         // 16: ntt.monitoring.v3.MetricSelector
  3159  	(*TimeSeriesSelector)(nil),                     // 17: ntt.monitoring.v3.TimeSeriesSelector
  3160  	(*Distribution_Range)(nil),                     // 18: ntt.monitoring.v3.Distribution.Range
  3161  	(*Distribution_BucketOptions)(nil),             // 19: ntt.monitoring.v3.Distribution.BucketOptions
  3162  	(*Distribution_BucketOptions_Linear)(nil),      // 20: ntt.monitoring.v3.Distribution.BucketOptions.Linear
  3163  	(*Distribution_BucketOptions_Exponential)(nil), // 21: ntt.monitoring.v3.Distribution.BucketOptions.Exponential
  3164  	(*Distribution_BucketOptions_Explicit)(nil),    // 22: ntt.monitoring.v3.Distribution.BucketOptions.Explicit
  3165  	(*Distribution_BucketOptions_Dynamic)(nil),     // 23: ntt.monitoring.v3.Distribution.BucketOptions.Dynamic
  3166  	nil,                           // 24: ntt.monitoring.v3.Metric.LabelsEntry
  3167  	nil,                           // 25: ntt.monitoring.v3.MonitoredResource.LabelsEntry
  3168  	nil,                           // 26: ntt.monitoring.v3.MonitoredResourceSelector.LabelsEntry
  3169  	nil,                           // 27: ntt.monitoring.v3.MetricSelector.LabelsEntry
  3170  	(*timestamppb.Timestamp)(nil), // 28: google.protobuf.Timestamp
  3171  	(*durationpb.Duration)(nil),   // 29: google.protobuf.Duration
  3172  }
  3173  var edgelq_monitoring_proto_v3_common_proto_depIdxs = []int32{
  3174  	1,  // 0: ntt.monitoring.v3.LabelDescriptor.value_type:type_name -> ntt.monitoring.v3.LabelDescriptor_ValueType
  3175  	18, // 1: ntt.monitoring.v3.Distribution.range:type_name -> ntt.monitoring.v3.Distribution.Range
  3176  	19, // 2: ntt.monitoring.v3.Distribution.bucket_options:type_name -> ntt.monitoring.v3.Distribution.BucketOptions
  3177  	6,  // 3: ntt.monitoring.v3.TypedValue.distribution_value:type_name -> ntt.monitoring.v3.Distribution
  3178  	28, // 4: ntt.monitoring.v3.TimeInterval.end_time:type_name -> google.protobuf.Timestamp
  3179  	28, // 5: ntt.monitoring.v3.TimeInterval.start_time:type_name -> google.protobuf.Timestamp
  3180  	28, // 6: ntt.monitoring.v3.TimeRange.start_time:type_name -> google.protobuf.Timestamp
  3181  	28, // 7: ntt.monitoring.v3.TimeRange.end_time:type_name -> google.protobuf.Timestamp
  3182  	29, // 8: ntt.monitoring.v3.Aggregation.alignment_period:type_name -> google.protobuf.Duration
  3183  	2,  // 9: ntt.monitoring.v3.Aggregation.per_series_aligner:type_name -> ntt.monitoring.v3.Aggregation_Aligner
  3184  	3,  // 10: ntt.monitoring.v3.Aggregation.cross_series_reducer:type_name -> ntt.monitoring.v3.Aggregation_Reducer
  3185  	29, // 11: ntt.monitoring.v3.Pagination.alignment_period:type_name -> google.protobuf.Duration
  3186  	24, // 12: ntt.monitoring.v3.Metric.labels:type_name -> ntt.monitoring.v3.Metric.LabelsEntry
  3187  	25, // 13: ntt.monitoring.v3.MonitoredResource.labels:type_name -> ntt.monitoring.v3.MonitoredResource.LabelsEntry
  3188  	26, // 14: ntt.monitoring.v3.MonitoredResourceSelector.labels:type_name -> ntt.monitoring.v3.MonitoredResourceSelector.LabelsEntry
  3189  	27, // 15: ntt.monitoring.v3.MetricSelector.labels:type_name -> ntt.monitoring.v3.MetricSelector.LabelsEntry
  3190  	16, // 16: ntt.monitoring.v3.TimeSeriesSelector.metric:type_name -> ntt.monitoring.v3.MetricSelector
  3191  	15, // 17: ntt.monitoring.v3.TimeSeriesSelector.resource:type_name -> ntt.monitoring.v3.MonitoredResourceSelector
  3192  	20, // 18: ntt.monitoring.v3.Distribution.BucketOptions.linear_buckets:type_name -> ntt.monitoring.v3.Distribution.BucketOptions.Linear
  3193  	21, // 19: ntt.monitoring.v3.Distribution.BucketOptions.exponential_buckets:type_name -> ntt.monitoring.v3.Distribution.BucketOptions.Exponential
  3194  	22, // 20: ntt.monitoring.v3.Distribution.BucketOptions.explicit_buckets:type_name -> ntt.monitoring.v3.Distribution.BucketOptions.Explicit
  3195  	23, // 21: ntt.monitoring.v3.Distribution.BucketOptions.dynamic_buckets:type_name -> ntt.monitoring.v3.Distribution.BucketOptions.Dynamic
  3196  	14, // 22: ntt.monitoring.v3.MonitoredResourceSelector.LabelsEntry.value:type_name -> ntt.monitoring.v3.Strings
  3197  	14, // 23: ntt.monitoring.v3.MetricSelector.LabelsEntry.value:type_name -> ntt.monitoring.v3.Strings
  3198  	24, // [24:24] is the sub-list for method output_type
  3199  	24, // [24:24] is the sub-list for method input_type
  3200  	24, // [24:24] is the sub-list for extension type_name
  3201  	24, // [24:24] is the sub-list for extension extendee
  3202  	0,  // [0:24] is the sub-list for field type_name
  3203  }
  3204  
  3205  func init() { edgelq_monitoring_proto_v3_common_proto_init() }
  3206  func edgelq_monitoring_proto_v3_common_proto_init() {
  3207  	if edgelq_monitoring_proto_v3_common_proto != nil {
  3208  		return
  3209  	}
  3210  	if !protoimpl.UnsafeEnabled {
  3211  
  3212  		edgelq_monitoring_proto_v3_common_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  3213  			switch v := v.(*LabelDescriptor); i {
  3214  			case 0:
  3215  				return &v.state
  3216  			case 1:
  3217  				return &v.sizeCache
  3218  			case 2:
  3219  				return &v.unknownFields
  3220  			default:
  3221  				return nil
  3222  			}
  3223  		}
  3224  		edgelq_monitoring_proto_v3_common_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  3225  			switch v := v.(*LabelKeySet); i {
  3226  			case 0:
  3227  				return &v.state
  3228  			case 1:
  3229  				return &v.sizeCache
  3230  			case 2:
  3231  				return &v.unknownFields
  3232  			default:
  3233  				return nil
  3234  			}
  3235  		}
  3236  		edgelq_monitoring_proto_v3_common_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  3237  			switch v := v.(*Distribution); i {
  3238  			case 0:
  3239  				return &v.state
  3240  			case 1:
  3241  				return &v.sizeCache
  3242  			case 2:
  3243  				return &v.unknownFields
  3244  			default:
  3245  				return nil
  3246  			}
  3247  		}
  3248  		edgelq_monitoring_proto_v3_common_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  3249  			switch v := v.(*TypedValue); i {
  3250  			case 0:
  3251  				return &v.state
  3252  			case 1:
  3253  				return &v.sizeCache
  3254  			case 2:
  3255  				return &v.unknownFields
  3256  			default:
  3257  				return nil
  3258  			}
  3259  		}
  3260  		edgelq_monitoring_proto_v3_common_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  3261  			switch v := v.(*TimeInterval); i {
  3262  			case 0:
  3263  				return &v.state
  3264  			case 1:
  3265  				return &v.sizeCache
  3266  			case 2:
  3267  				return &v.unknownFields
  3268  			default:
  3269  				return nil
  3270  			}
  3271  		}
  3272  		edgelq_monitoring_proto_v3_common_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  3273  			switch v := v.(*TimeRange); i {
  3274  			case 0:
  3275  				return &v.state
  3276  			case 1:
  3277  				return &v.sizeCache
  3278  			case 2:
  3279  				return &v.unknownFields
  3280  			default:
  3281  				return nil
  3282  			}
  3283  		}
  3284  		edgelq_monitoring_proto_v3_common_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  3285  			switch v := v.(*Aggregation); i {
  3286  			case 0:
  3287  				return &v.state
  3288  			case 1:
  3289  				return &v.sizeCache
  3290  			case 2:
  3291  				return &v.unknownFields
  3292  			default:
  3293  				return nil
  3294  			}
  3295  		}
  3296  		edgelq_monitoring_proto_v3_common_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  3297  			switch v := v.(*Pagination); i {
  3298  			case 0:
  3299  				return &v.state
  3300  			case 1:
  3301  				return &v.sizeCache
  3302  			case 2:
  3303  				return &v.unknownFields
  3304  			default:
  3305  				return nil
  3306  			}
  3307  		}
  3308  		edgelq_monitoring_proto_v3_common_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  3309  			switch v := v.(*Metric); i {
  3310  			case 0:
  3311  				return &v.state
  3312  			case 1:
  3313  				return &v.sizeCache
  3314  			case 2:
  3315  				return &v.unknownFields
  3316  			default:
  3317  				return nil
  3318  			}
  3319  		}
  3320  		edgelq_monitoring_proto_v3_common_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  3321  			switch v := v.(*MonitoredResource); i {
  3322  			case 0:
  3323  				return &v.state
  3324  			case 1:
  3325  				return &v.sizeCache
  3326  			case 2:
  3327  				return &v.unknownFields
  3328  			default:
  3329  				return nil
  3330  			}
  3331  		}
  3332  		edgelq_monitoring_proto_v3_common_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  3333  			switch v := v.(*Strings); i {
  3334  			case 0:
  3335  				return &v.state
  3336  			case 1:
  3337  				return &v.sizeCache
  3338  			case 2:
  3339  				return &v.unknownFields
  3340  			default:
  3341  				return nil
  3342  			}
  3343  		}
  3344  		edgelq_monitoring_proto_v3_common_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  3345  			switch v := v.(*MonitoredResourceSelector); i {
  3346  			case 0:
  3347  				return &v.state
  3348  			case 1:
  3349  				return &v.sizeCache
  3350  			case 2:
  3351  				return &v.unknownFields
  3352  			default:
  3353  				return nil
  3354  			}
  3355  		}
  3356  		edgelq_monitoring_proto_v3_common_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
  3357  			switch v := v.(*MetricSelector); i {
  3358  			case 0:
  3359  				return &v.state
  3360  			case 1:
  3361  				return &v.sizeCache
  3362  			case 2:
  3363  				return &v.unknownFields
  3364  			default:
  3365  				return nil
  3366  			}
  3367  		}
  3368  		edgelq_monitoring_proto_v3_common_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
  3369  			switch v := v.(*TimeSeriesSelector); i {
  3370  			case 0:
  3371  				return &v.state
  3372  			case 1:
  3373  				return &v.sizeCache
  3374  			case 2:
  3375  				return &v.unknownFields
  3376  			default:
  3377  				return nil
  3378  			}
  3379  		}
  3380  		edgelq_monitoring_proto_v3_common_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
  3381  			switch v := v.(*Distribution_Range); i {
  3382  			case 0:
  3383  				return &v.state
  3384  			case 1:
  3385  				return &v.sizeCache
  3386  			case 2:
  3387  				return &v.unknownFields
  3388  			default:
  3389  				return nil
  3390  			}
  3391  		}
  3392  		edgelq_monitoring_proto_v3_common_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
  3393  			switch v := v.(*Distribution_BucketOptions); i {
  3394  			case 0:
  3395  				return &v.state
  3396  			case 1:
  3397  				return &v.sizeCache
  3398  			case 2:
  3399  				return &v.unknownFields
  3400  			default:
  3401  				return nil
  3402  			}
  3403  		}
  3404  		edgelq_monitoring_proto_v3_common_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
  3405  			switch v := v.(*Distribution_BucketOptions_Linear); i {
  3406  			case 0:
  3407  				return &v.state
  3408  			case 1:
  3409  				return &v.sizeCache
  3410  			case 2:
  3411  				return &v.unknownFields
  3412  			default:
  3413  				return nil
  3414  			}
  3415  		}
  3416  		edgelq_monitoring_proto_v3_common_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
  3417  			switch v := v.(*Distribution_BucketOptions_Exponential); i {
  3418  			case 0:
  3419  				return &v.state
  3420  			case 1:
  3421  				return &v.sizeCache
  3422  			case 2:
  3423  				return &v.unknownFields
  3424  			default:
  3425  				return nil
  3426  			}
  3427  		}
  3428  		edgelq_monitoring_proto_v3_common_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
  3429  			switch v := v.(*Distribution_BucketOptions_Explicit); i {
  3430  			case 0:
  3431  				return &v.state
  3432  			case 1:
  3433  				return &v.sizeCache
  3434  			case 2:
  3435  				return &v.unknownFields
  3436  			default:
  3437  				return nil
  3438  			}
  3439  		}
  3440  		edgelq_monitoring_proto_v3_common_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
  3441  			switch v := v.(*Distribution_BucketOptions_Dynamic); i {
  3442  			case 0:
  3443  				return &v.state
  3444  			case 1:
  3445  				return &v.sizeCache
  3446  			case 2:
  3447  				return &v.unknownFields
  3448  			default:
  3449  				return nil
  3450  			}
  3451  		}
  3452  	}
  3453  
  3454  	edgelq_monitoring_proto_v3_common_proto_msgTypes[3].OneofWrappers = []interface{}{
  3455  		(*TypedValue_BoolValue)(nil),
  3456  		(*TypedValue_Int64Value)(nil),
  3457  		(*TypedValue_DoubleValue)(nil),
  3458  		(*TypedValue_StringValue)(nil),
  3459  		(*TypedValue_DistributionValue)(nil),
  3460  	}
  3461  	edgelq_monitoring_proto_v3_common_proto_msgTypes[15].OneofWrappers = []interface{}{
  3462  		(*Distribution_BucketOptions_LinearBuckets)(nil),
  3463  		(*Distribution_BucketOptions_ExponentialBuckets)(nil),
  3464  		(*Distribution_BucketOptions_ExplicitBuckets)(nil),
  3465  		(*Distribution_BucketOptions_DynamicBuckets)(nil),
  3466  	}
  3467  	type x struct{}
  3468  	out := protoimpl.TypeBuilder{
  3469  		File: protoimpl.DescBuilder{
  3470  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  3471  			RawDescriptor: edgelq_monitoring_proto_v3_common_proto_rawDesc,
  3472  			NumEnums:      4,
  3473  			NumMessages:   24,
  3474  			NumExtensions: 0,
  3475  			NumServices:   0,
  3476  		},
  3477  		GoTypes:           edgelq_monitoring_proto_v3_common_proto_goTypes,
  3478  		DependencyIndexes: edgelq_monitoring_proto_v3_common_proto_depIdxs,
  3479  		EnumInfos:         edgelq_monitoring_proto_v3_common_proto_enumTypes,
  3480  		MessageInfos:      edgelq_monitoring_proto_v3_common_proto_msgTypes,
  3481  	}.Build()
  3482  	edgelq_monitoring_proto_v3_common_proto = out.File
  3483  	edgelq_monitoring_proto_v3_common_proto_rawDesc = nil
  3484  	edgelq_monitoring_proto_v3_common_proto_goTypes = nil
  3485  	edgelq_monitoring_proto_v3_common_proto_depIdxs = nil
  3486  }