blob: 466b2342854d09dbfee1e1f7ed72e74362050494 [file] [log] [blame]
Sergiusz Bazanskie5a956a2019-11-17 22:38:40 +01001// Code generated by protoc-gen-go. DO NOT EDIT.
2// source: opencensus/proto/metrics/v1/metrics.proto
3
4package v1
5
6import (
7 fmt "fmt"
8 v1 "github.com/census-instrumentation/opencensus-proto/gen-go/resource/v1"
9 proto "github.com/golang/protobuf/proto"
10 timestamp "github.com/golang/protobuf/ptypes/timestamp"
11 wrappers "github.com/golang/protobuf/ptypes/wrappers"
12 math "math"
13)
14
15// Reference imports to suppress errors if they are not otherwise used.
16var _ = proto.Marshal
17var _ = fmt.Errorf
18var _ = math.Inf
19
20// This is a compile-time assertion to ensure that this generated file
21// is compatible with the proto package it is being compiled against.
22// A compilation error at this line likely means your copy of the
23// proto package needs to be updated.
24const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
25
26// The kind of metric. It describes how the data is reported.
27//
28// A gauge is an instantaneous measurement of a value.
29//
30// A cumulative measurement is a value accumulated over a time interval. In
31// a time series, cumulative measurements should have the same start time,
32// increasing values and increasing end times, until an event resets the
33// cumulative value to zero and sets a new start time for the following
34// points.
35type MetricDescriptor_Type int32
36
37const (
38 // Do not use this default value.
39 MetricDescriptor_UNSPECIFIED MetricDescriptor_Type = 0
40 // Integer gauge. The value can go both up and down.
41 MetricDescriptor_GAUGE_INT64 MetricDescriptor_Type = 1
42 // Floating point gauge. The value can go both up and down.
43 MetricDescriptor_GAUGE_DOUBLE MetricDescriptor_Type = 2
44 // Distribution gauge measurement. The count and sum can go both up and
45 // down. Recorded values are always >= 0.
46 // Used in scenarios like a snapshot of time the current items in a queue
47 // have spent there.
48 MetricDescriptor_GAUGE_DISTRIBUTION MetricDescriptor_Type = 3
49 // Integer cumulative measurement. The value cannot decrease, if resets
50 // then the start_time should also be reset.
51 MetricDescriptor_CUMULATIVE_INT64 MetricDescriptor_Type = 4
52 // Floating point cumulative measurement. The value cannot decrease, if
53 // resets then the start_time should also be reset. Recorded values are
54 // always >= 0.
55 MetricDescriptor_CUMULATIVE_DOUBLE MetricDescriptor_Type = 5
56 // Distribution cumulative measurement. The count and sum cannot decrease,
57 // if resets then the start_time should also be reset.
58 MetricDescriptor_CUMULATIVE_DISTRIBUTION MetricDescriptor_Type = 6
59 // Some frameworks implemented Histograms as a summary of observations
60 // (usually things like request durations and response sizes). While it
61 // also provides a total count of observations and a sum of all observed
62 // values, it calculates configurable percentiles over a sliding time
63 // window. This is not recommended, since it cannot be aggregated.
64 MetricDescriptor_SUMMARY MetricDescriptor_Type = 7
65)
66
67var MetricDescriptor_Type_name = map[int32]string{
68 0: "UNSPECIFIED",
69 1: "GAUGE_INT64",
70 2: "GAUGE_DOUBLE",
71 3: "GAUGE_DISTRIBUTION",
72 4: "CUMULATIVE_INT64",
73 5: "CUMULATIVE_DOUBLE",
74 6: "CUMULATIVE_DISTRIBUTION",
75 7: "SUMMARY",
76}
77
78var MetricDescriptor_Type_value = map[string]int32{
79 "UNSPECIFIED": 0,
80 "GAUGE_INT64": 1,
81 "GAUGE_DOUBLE": 2,
82 "GAUGE_DISTRIBUTION": 3,
83 "CUMULATIVE_INT64": 4,
84 "CUMULATIVE_DOUBLE": 5,
85 "CUMULATIVE_DISTRIBUTION": 6,
86 "SUMMARY": 7,
87}
88
89func (x MetricDescriptor_Type) String() string {
90 return proto.EnumName(MetricDescriptor_Type_name, int32(x))
91}
92
93func (MetricDescriptor_Type) EnumDescriptor() ([]byte, []int) {
94 return fileDescriptor_0ee3deb72053811a, []int{1, 0}
95}
96
97// Defines a Metric which has one or more timeseries.
98type Metric struct {
99 // The descriptor of the Metric.
100 // TODO(issue #152): consider only sending the name of descriptor for
101 // optimization.
102 MetricDescriptor *MetricDescriptor `protobuf:"bytes,1,opt,name=metric_descriptor,json=metricDescriptor,proto3" json:"metric_descriptor,omitempty"`
103 // One or more timeseries for a single metric, where each timeseries has
104 // one or more points.
105 Timeseries []*TimeSeries `protobuf:"bytes,2,rep,name=timeseries,proto3" json:"timeseries,omitempty"`
106 // The resource for the metric. If unset, it may be set to a default value
107 // provided for a sequence of messages in an RPC stream.
108 Resource *v1.Resource `protobuf:"bytes,3,opt,name=resource,proto3" json:"resource,omitempty"`
109 XXX_NoUnkeyedLiteral struct{} `json:"-"`
110 XXX_unrecognized []byte `json:"-"`
111 XXX_sizecache int32 `json:"-"`
112}
113
114func (m *Metric) Reset() { *m = Metric{} }
115func (m *Metric) String() string { return proto.CompactTextString(m) }
116func (*Metric) ProtoMessage() {}
117func (*Metric) Descriptor() ([]byte, []int) {
118 return fileDescriptor_0ee3deb72053811a, []int{0}
119}
120
121func (m *Metric) XXX_Unmarshal(b []byte) error {
122 return xxx_messageInfo_Metric.Unmarshal(m, b)
123}
124func (m *Metric) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
125 return xxx_messageInfo_Metric.Marshal(b, m, deterministic)
126}
127func (m *Metric) XXX_Merge(src proto.Message) {
128 xxx_messageInfo_Metric.Merge(m, src)
129}
130func (m *Metric) XXX_Size() int {
131 return xxx_messageInfo_Metric.Size(m)
132}
133func (m *Metric) XXX_DiscardUnknown() {
134 xxx_messageInfo_Metric.DiscardUnknown(m)
135}
136
137var xxx_messageInfo_Metric proto.InternalMessageInfo
138
139func (m *Metric) GetMetricDescriptor() *MetricDescriptor {
140 if m != nil {
141 return m.MetricDescriptor
142 }
143 return nil
144}
145
146func (m *Metric) GetTimeseries() []*TimeSeries {
147 if m != nil {
148 return m.Timeseries
149 }
150 return nil
151}
152
153func (m *Metric) GetResource() *v1.Resource {
154 if m != nil {
155 return m.Resource
156 }
157 return nil
158}
159
160// Defines a metric type and its schema.
161type MetricDescriptor struct {
162 // The metric type, including its DNS name prefix. It must be unique.
163 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
164 // A detailed description of the metric, which can be used in documentation.
165 Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
166 // The unit in which the metric value is reported. Follows the format
167 // described by http://unitsofmeasure.org/ucum.html.
168 Unit string `protobuf:"bytes,3,opt,name=unit,proto3" json:"unit,omitempty"`
169 Type MetricDescriptor_Type `protobuf:"varint,4,opt,name=type,proto3,enum=opencensus.proto.metrics.v1.MetricDescriptor_Type" json:"type,omitempty"`
170 // The label keys associated with the metric descriptor.
171 LabelKeys []*LabelKey `protobuf:"bytes,5,rep,name=label_keys,json=labelKeys,proto3" json:"label_keys,omitempty"`
172 XXX_NoUnkeyedLiteral struct{} `json:"-"`
173 XXX_unrecognized []byte `json:"-"`
174 XXX_sizecache int32 `json:"-"`
175}
176
177func (m *MetricDescriptor) Reset() { *m = MetricDescriptor{} }
178func (m *MetricDescriptor) String() string { return proto.CompactTextString(m) }
179func (*MetricDescriptor) ProtoMessage() {}
180func (*MetricDescriptor) Descriptor() ([]byte, []int) {
181 return fileDescriptor_0ee3deb72053811a, []int{1}
182}
183
184func (m *MetricDescriptor) XXX_Unmarshal(b []byte) error {
185 return xxx_messageInfo_MetricDescriptor.Unmarshal(m, b)
186}
187func (m *MetricDescriptor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
188 return xxx_messageInfo_MetricDescriptor.Marshal(b, m, deterministic)
189}
190func (m *MetricDescriptor) XXX_Merge(src proto.Message) {
191 xxx_messageInfo_MetricDescriptor.Merge(m, src)
192}
193func (m *MetricDescriptor) XXX_Size() int {
194 return xxx_messageInfo_MetricDescriptor.Size(m)
195}
196func (m *MetricDescriptor) XXX_DiscardUnknown() {
197 xxx_messageInfo_MetricDescriptor.DiscardUnknown(m)
198}
199
200var xxx_messageInfo_MetricDescriptor proto.InternalMessageInfo
201
202func (m *MetricDescriptor) GetName() string {
203 if m != nil {
204 return m.Name
205 }
206 return ""
207}
208
209func (m *MetricDescriptor) GetDescription() string {
210 if m != nil {
211 return m.Description
212 }
213 return ""
214}
215
216func (m *MetricDescriptor) GetUnit() string {
217 if m != nil {
218 return m.Unit
219 }
220 return ""
221}
222
223func (m *MetricDescriptor) GetType() MetricDescriptor_Type {
224 if m != nil {
225 return m.Type
226 }
227 return MetricDescriptor_UNSPECIFIED
228}
229
230func (m *MetricDescriptor) GetLabelKeys() []*LabelKey {
231 if m != nil {
232 return m.LabelKeys
233 }
234 return nil
235}
236
237// Defines a label key associated with a metric descriptor.
238type LabelKey struct {
239 // The key for the label.
240 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
241 // A human-readable description of what this label key represents.
242 Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
243 XXX_NoUnkeyedLiteral struct{} `json:"-"`
244 XXX_unrecognized []byte `json:"-"`
245 XXX_sizecache int32 `json:"-"`
246}
247
248func (m *LabelKey) Reset() { *m = LabelKey{} }
249func (m *LabelKey) String() string { return proto.CompactTextString(m) }
250func (*LabelKey) ProtoMessage() {}
251func (*LabelKey) Descriptor() ([]byte, []int) {
252 return fileDescriptor_0ee3deb72053811a, []int{2}
253}
254
255func (m *LabelKey) XXX_Unmarshal(b []byte) error {
256 return xxx_messageInfo_LabelKey.Unmarshal(m, b)
257}
258func (m *LabelKey) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
259 return xxx_messageInfo_LabelKey.Marshal(b, m, deterministic)
260}
261func (m *LabelKey) XXX_Merge(src proto.Message) {
262 xxx_messageInfo_LabelKey.Merge(m, src)
263}
264func (m *LabelKey) XXX_Size() int {
265 return xxx_messageInfo_LabelKey.Size(m)
266}
267func (m *LabelKey) XXX_DiscardUnknown() {
268 xxx_messageInfo_LabelKey.DiscardUnknown(m)
269}
270
271var xxx_messageInfo_LabelKey proto.InternalMessageInfo
272
273func (m *LabelKey) GetKey() string {
274 if m != nil {
275 return m.Key
276 }
277 return ""
278}
279
280func (m *LabelKey) GetDescription() string {
281 if m != nil {
282 return m.Description
283 }
284 return ""
285}
286
287// A collection of data points that describes the time-varying values
288// of a metric.
289type TimeSeries struct {
290 // Must be present for cumulative metrics. The time when the cumulative value
291 // was reset to zero. Exclusive. The cumulative value is over the time interval
292 // (start_timestamp, timestamp]. If not specified, the backend can use the
293 // previous recorded value.
294 StartTimestamp *timestamp.Timestamp `protobuf:"bytes,1,opt,name=start_timestamp,json=startTimestamp,proto3" json:"start_timestamp,omitempty"`
295 // The set of label values that uniquely identify this timeseries. Applies to
296 // all points. The order of label values must match that of label keys in the
297 // metric descriptor.
298 LabelValues []*LabelValue `protobuf:"bytes,2,rep,name=label_values,json=labelValues,proto3" json:"label_values,omitempty"`
299 // The data points of this timeseries. Point.value type MUST match the
300 // MetricDescriptor.type.
301 Points []*Point `protobuf:"bytes,3,rep,name=points,proto3" json:"points,omitempty"`
302 XXX_NoUnkeyedLiteral struct{} `json:"-"`
303 XXX_unrecognized []byte `json:"-"`
304 XXX_sizecache int32 `json:"-"`
305}
306
307func (m *TimeSeries) Reset() { *m = TimeSeries{} }
308func (m *TimeSeries) String() string { return proto.CompactTextString(m) }
309func (*TimeSeries) ProtoMessage() {}
310func (*TimeSeries) Descriptor() ([]byte, []int) {
311 return fileDescriptor_0ee3deb72053811a, []int{3}
312}
313
314func (m *TimeSeries) XXX_Unmarshal(b []byte) error {
315 return xxx_messageInfo_TimeSeries.Unmarshal(m, b)
316}
317func (m *TimeSeries) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
318 return xxx_messageInfo_TimeSeries.Marshal(b, m, deterministic)
319}
320func (m *TimeSeries) XXX_Merge(src proto.Message) {
321 xxx_messageInfo_TimeSeries.Merge(m, src)
322}
323func (m *TimeSeries) XXX_Size() int {
324 return xxx_messageInfo_TimeSeries.Size(m)
325}
326func (m *TimeSeries) XXX_DiscardUnknown() {
327 xxx_messageInfo_TimeSeries.DiscardUnknown(m)
328}
329
330var xxx_messageInfo_TimeSeries proto.InternalMessageInfo
331
332func (m *TimeSeries) GetStartTimestamp() *timestamp.Timestamp {
333 if m != nil {
334 return m.StartTimestamp
335 }
336 return nil
337}
338
339func (m *TimeSeries) GetLabelValues() []*LabelValue {
340 if m != nil {
341 return m.LabelValues
342 }
343 return nil
344}
345
346func (m *TimeSeries) GetPoints() []*Point {
347 if m != nil {
348 return m.Points
349 }
350 return nil
351}
352
353type LabelValue struct {
354 // The value for the label.
355 Value string `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
356 // If false the value field is ignored and considered not set.
357 // This is used to differentiate a missing label from an empty string.
358 HasValue bool `protobuf:"varint,2,opt,name=has_value,json=hasValue,proto3" json:"has_value,omitempty"`
359 XXX_NoUnkeyedLiteral struct{} `json:"-"`
360 XXX_unrecognized []byte `json:"-"`
361 XXX_sizecache int32 `json:"-"`
362}
363
364func (m *LabelValue) Reset() { *m = LabelValue{} }
365func (m *LabelValue) String() string { return proto.CompactTextString(m) }
366func (*LabelValue) ProtoMessage() {}
367func (*LabelValue) Descriptor() ([]byte, []int) {
368 return fileDescriptor_0ee3deb72053811a, []int{4}
369}
370
371func (m *LabelValue) XXX_Unmarshal(b []byte) error {
372 return xxx_messageInfo_LabelValue.Unmarshal(m, b)
373}
374func (m *LabelValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
375 return xxx_messageInfo_LabelValue.Marshal(b, m, deterministic)
376}
377func (m *LabelValue) XXX_Merge(src proto.Message) {
378 xxx_messageInfo_LabelValue.Merge(m, src)
379}
380func (m *LabelValue) XXX_Size() int {
381 return xxx_messageInfo_LabelValue.Size(m)
382}
383func (m *LabelValue) XXX_DiscardUnknown() {
384 xxx_messageInfo_LabelValue.DiscardUnknown(m)
385}
386
387var xxx_messageInfo_LabelValue proto.InternalMessageInfo
388
389func (m *LabelValue) GetValue() string {
390 if m != nil {
391 return m.Value
392 }
393 return ""
394}
395
396func (m *LabelValue) GetHasValue() bool {
397 if m != nil {
398 return m.HasValue
399 }
400 return false
401}
402
403// A timestamped measurement.
404type Point struct {
405 // The moment when this point was recorded. Inclusive.
406 // If not specified, the timestamp will be decided by the backend.
407 Timestamp *timestamp.Timestamp `protobuf:"bytes,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
408 // The actual point value.
409 //
410 // Types that are valid to be assigned to Value:
411 // *Point_Int64Value
412 // *Point_DoubleValue
413 // *Point_DistributionValue
414 // *Point_SummaryValue
415 Value isPoint_Value `protobuf_oneof:"value"`
416 XXX_NoUnkeyedLiteral struct{} `json:"-"`
417 XXX_unrecognized []byte `json:"-"`
418 XXX_sizecache int32 `json:"-"`
419}
420
421func (m *Point) Reset() { *m = Point{} }
422func (m *Point) String() string { return proto.CompactTextString(m) }
423func (*Point) ProtoMessage() {}
424func (*Point) Descriptor() ([]byte, []int) {
425 return fileDescriptor_0ee3deb72053811a, []int{5}
426}
427
428func (m *Point) XXX_Unmarshal(b []byte) error {
429 return xxx_messageInfo_Point.Unmarshal(m, b)
430}
431func (m *Point) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
432 return xxx_messageInfo_Point.Marshal(b, m, deterministic)
433}
434func (m *Point) XXX_Merge(src proto.Message) {
435 xxx_messageInfo_Point.Merge(m, src)
436}
437func (m *Point) XXX_Size() int {
438 return xxx_messageInfo_Point.Size(m)
439}
440func (m *Point) XXX_DiscardUnknown() {
441 xxx_messageInfo_Point.DiscardUnknown(m)
442}
443
444var xxx_messageInfo_Point proto.InternalMessageInfo
445
446func (m *Point) GetTimestamp() *timestamp.Timestamp {
447 if m != nil {
448 return m.Timestamp
449 }
450 return nil
451}
452
453type isPoint_Value interface {
454 isPoint_Value()
455}
456
457type Point_Int64Value struct {
458 Int64Value int64 `protobuf:"varint,2,opt,name=int64_value,json=int64Value,proto3,oneof"`
459}
460
461type Point_DoubleValue struct {
462 DoubleValue float64 `protobuf:"fixed64,3,opt,name=double_value,json=doubleValue,proto3,oneof"`
463}
464
465type Point_DistributionValue struct {
466 DistributionValue *DistributionValue `protobuf:"bytes,4,opt,name=distribution_value,json=distributionValue,proto3,oneof"`
467}
468
469type Point_SummaryValue struct {
470 SummaryValue *SummaryValue `protobuf:"bytes,5,opt,name=summary_value,json=summaryValue,proto3,oneof"`
471}
472
473func (*Point_Int64Value) isPoint_Value() {}
474
475func (*Point_DoubleValue) isPoint_Value() {}
476
477func (*Point_DistributionValue) isPoint_Value() {}
478
479func (*Point_SummaryValue) isPoint_Value() {}
480
481func (m *Point) GetValue() isPoint_Value {
482 if m != nil {
483 return m.Value
484 }
485 return nil
486}
487
488func (m *Point) GetInt64Value() int64 {
489 if x, ok := m.GetValue().(*Point_Int64Value); ok {
490 return x.Int64Value
491 }
492 return 0
493}
494
495func (m *Point) GetDoubleValue() float64 {
496 if x, ok := m.GetValue().(*Point_DoubleValue); ok {
497 return x.DoubleValue
498 }
499 return 0
500}
501
502func (m *Point) GetDistributionValue() *DistributionValue {
503 if x, ok := m.GetValue().(*Point_DistributionValue); ok {
504 return x.DistributionValue
505 }
506 return nil
507}
508
509func (m *Point) GetSummaryValue() *SummaryValue {
510 if x, ok := m.GetValue().(*Point_SummaryValue); ok {
511 return x.SummaryValue
512 }
513 return nil
514}
515
516// XXX_OneofWrappers is for the internal use of the proto package.
517func (*Point) XXX_OneofWrappers() []interface{} {
518 return []interface{}{
519 (*Point_Int64Value)(nil),
520 (*Point_DoubleValue)(nil),
521 (*Point_DistributionValue)(nil),
522 (*Point_SummaryValue)(nil),
523 }
524}
525
526// Distribution contains summary statistics for a population of values. It
527// optionally contains a histogram representing the distribution of those
528// values across a set of buckets.
529type DistributionValue struct {
530 // The number of values in the population. Must be non-negative. This value
531 // must equal the sum of the values in bucket_counts if a histogram is
532 // provided.
533 Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
534 // The sum of the values in the population. If count is zero then this field
535 // must be zero.
536 Sum float64 `protobuf:"fixed64,2,opt,name=sum,proto3" json:"sum,omitempty"`
537 // The sum of squared deviations from the mean of the values in the
538 // population. For values x_i this is:
539 //
540 // Sum[i=1..n]((x_i - mean)^2)
541 //
542 // Knuth, "The Art of Computer Programming", Vol. 2, page 323, 3rd edition
543 // describes Welford's method for accumulating this sum in one pass.
544 //
545 // If count is zero then this field must be zero.
546 SumOfSquaredDeviation float64 `protobuf:"fixed64,3,opt,name=sum_of_squared_deviation,json=sumOfSquaredDeviation,proto3" json:"sum_of_squared_deviation,omitempty"`
547 // Don't change bucket boundaries within a TimeSeries if your backend doesn't
548 // support this.
549 // TODO(issue #152): consider not required to send bucket options for
550 // optimization.
551 BucketOptions *DistributionValue_BucketOptions `protobuf:"bytes,4,opt,name=bucket_options,json=bucketOptions,proto3" json:"bucket_options,omitempty"`
552 // If the distribution does not have a histogram, then omit this field.
553 // If there is a histogram, then the sum of the values in the Bucket counts
554 // must equal the value in the count field of the distribution.
555 Buckets []*DistributionValue_Bucket `protobuf:"bytes,5,rep,name=buckets,proto3" json:"buckets,omitempty"`
556 XXX_NoUnkeyedLiteral struct{} `json:"-"`
557 XXX_unrecognized []byte `json:"-"`
558 XXX_sizecache int32 `json:"-"`
559}
560
561func (m *DistributionValue) Reset() { *m = DistributionValue{} }
562func (m *DistributionValue) String() string { return proto.CompactTextString(m) }
563func (*DistributionValue) ProtoMessage() {}
564func (*DistributionValue) Descriptor() ([]byte, []int) {
565 return fileDescriptor_0ee3deb72053811a, []int{6}
566}
567
568func (m *DistributionValue) XXX_Unmarshal(b []byte) error {
569 return xxx_messageInfo_DistributionValue.Unmarshal(m, b)
570}
571func (m *DistributionValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
572 return xxx_messageInfo_DistributionValue.Marshal(b, m, deterministic)
573}
574func (m *DistributionValue) XXX_Merge(src proto.Message) {
575 xxx_messageInfo_DistributionValue.Merge(m, src)
576}
577func (m *DistributionValue) XXX_Size() int {
578 return xxx_messageInfo_DistributionValue.Size(m)
579}
580func (m *DistributionValue) XXX_DiscardUnknown() {
581 xxx_messageInfo_DistributionValue.DiscardUnknown(m)
582}
583
584var xxx_messageInfo_DistributionValue proto.InternalMessageInfo
585
586func (m *DistributionValue) GetCount() int64 {
587 if m != nil {
588 return m.Count
589 }
590 return 0
591}
592
593func (m *DistributionValue) GetSum() float64 {
594 if m != nil {
595 return m.Sum
596 }
597 return 0
598}
599
600func (m *DistributionValue) GetSumOfSquaredDeviation() float64 {
601 if m != nil {
602 return m.SumOfSquaredDeviation
603 }
604 return 0
605}
606
607func (m *DistributionValue) GetBucketOptions() *DistributionValue_BucketOptions {
608 if m != nil {
609 return m.BucketOptions
610 }
611 return nil
612}
613
614func (m *DistributionValue) GetBuckets() []*DistributionValue_Bucket {
615 if m != nil {
616 return m.Buckets
617 }
618 return nil
619}
620
621// A Distribution may optionally contain a histogram of the values in the
622// population. The bucket boundaries for that histogram are described by
623// BucketOptions.
624//
625// If bucket_options has no type, then there is no histogram associated with
626// the Distribution.
627type DistributionValue_BucketOptions struct {
628 // Types that are valid to be assigned to Type:
629 // *DistributionValue_BucketOptions_Explicit_
630 Type isDistributionValue_BucketOptions_Type `protobuf_oneof:"type"`
631 XXX_NoUnkeyedLiteral struct{} `json:"-"`
632 XXX_unrecognized []byte `json:"-"`
633 XXX_sizecache int32 `json:"-"`
634}
635
636func (m *DistributionValue_BucketOptions) Reset() { *m = DistributionValue_BucketOptions{} }
637func (m *DistributionValue_BucketOptions) String() string { return proto.CompactTextString(m) }
638func (*DistributionValue_BucketOptions) ProtoMessage() {}
639func (*DistributionValue_BucketOptions) Descriptor() ([]byte, []int) {
640 return fileDescriptor_0ee3deb72053811a, []int{6, 0}
641}
642
643func (m *DistributionValue_BucketOptions) XXX_Unmarshal(b []byte) error {
644 return xxx_messageInfo_DistributionValue_BucketOptions.Unmarshal(m, b)
645}
646func (m *DistributionValue_BucketOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
647 return xxx_messageInfo_DistributionValue_BucketOptions.Marshal(b, m, deterministic)
648}
649func (m *DistributionValue_BucketOptions) XXX_Merge(src proto.Message) {
650 xxx_messageInfo_DistributionValue_BucketOptions.Merge(m, src)
651}
652func (m *DistributionValue_BucketOptions) XXX_Size() int {
653 return xxx_messageInfo_DistributionValue_BucketOptions.Size(m)
654}
655func (m *DistributionValue_BucketOptions) XXX_DiscardUnknown() {
656 xxx_messageInfo_DistributionValue_BucketOptions.DiscardUnknown(m)
657}
658
659var xxx_messageInfo_DistributionValue_BucketOptions proto.InternalMessageInfo
660
661type isDistributionValue_BucketOptions_Type interface {
662 isDistributionValue_BucketOptions_Type()
663}
664
665type DistributionValue_BucketOptions_Explicit_ struct {
666 Explicit *DistributionValue_BucketOptions_Explicit `protobuf:"bytes,1,opt,name=explicit,proto3,oneof"`
667}
668
669func (*DistributionValue_BucketOptions_Explicit_) isDistributionValue_BucketOptions_Type() {}
670
671func (m *DistributionValue_BucketOptions) GetType() isDistributionValue_BucketOptions_Type {
672 if m != nil {
673 return m.Type
674 }
675 return nil
676}
677
678func (m *DistributionValue_BucketOptions) GetExplicit() *DistributionValue_BucketOptions_Explicit {
679 if x, ok := m.GetType().(*DistributionValue_BucketOptions_Explicit_); ok {
680 return x.Explicit
681 }
682 return nil
683}
684
685// XXX_OneofWrappers is for the internal use of the proto package.
686func (*DistributionValue_BucketOptions) XXX_OneofWrappers() []interface{} {
687 return []interface{}{
688 (*DistributionValue_BucketOptions_Explicit_)(nil),
689 }
690}
691
692// Specifies a set of buckets with arbitrary upper-bounds.
693// This defines size(bounds) + 1 (= N) buckets. The boundaries for bucket
694// index i are:
695//
696// [0, bucket_bounds[i]) for i == 0
697// [bucket_bounds[i-1], bucket_bounds[i]) for 0 < i < N-1
698// [bucket_bounds[i], +infinity) for i == N-1
699type DistributionValue_BucketOptions_Explicit struct {
700 // The values must be strictly increasing and > 0.
701 Bounds []float64 `protobuf:"fixed64,1,rep,packed,name=bounds,proto3" json:"bounds,omitempty"`
702 XXX_NoUnkeyedLiteral struct{} `json:"-"`
703 XXX_unrecognized []byte `json:"-"`
704 XXX_sizecache int32 `json:"-"`
705}
706
707func (m *DistributionValue_BucketOptions_Explicit) Reset() {
708 *m = DistributionValue_BucketOptions_Explicit{}
709}
710func (m *DistributionValue_BucketOptions_Explicit) String() string { return proto.CompactTextString(m) }
711func (*DistributionValue_BucketOptions_Explicit) ProtoMessage() {}
712func (*DistributionValue_BucketOptions_Explicit) Descriptor() ([]byte, []int) {
713 return fileDescriptor_0ee3deb72053811a, []int{6, 0, 0}
714}
715
716func (m *DistributionValue_BucketOptions_Explicit) XXX_Unmarshal(b []byte) error {
717 return xxx_messageInfo_DistributionValue_BucketOptions_Explicit.Unmarshal(m, b)
718}
719func (m *DistributionValue_BucketOptions_Explicit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
720 return xxx_messageInfo_DistributionValue_BucketOptions_Explicit.Marshal(b, m, deterministic)
721}
722func (m *DistributionValue_BucketOptions_Explicit) XXX_Merge(src proto.Message) {
723 xxx_messageInfo_DistributionValue_BucketOptions_Explicit.Merge(m, src)
724}
725func (m *DistributionValue_BucketOptions_Explicit) XXX_Size() int {
726 return xxx_messageInfo_DistributionValue_BucketOptions_Explicit.Size(m)
727}
728func (m *DistributionValue_BucketOptions_Explicit) XXX_DiscardUnknown() {
729 xxx_messageInfo_DistributionValue_BucketOptions_Explicit.DiscardUnknown(m)
730}
731
732var xxx_messageInfo_DistributionValue_BucketOptions_Explicit proto.InternalMessageInfo
733
734func (m *DistributionValue_BucketOptions_Explicit) GetBounds() []float64 {
735 if m != nil {
736 return m.Bounds
737 }
738 return nil
739}
740
741type DistributionValue_Bucket struct {
742 // The number of values in each bucket of the histogram, as described in
743 // bucket_bounds.
744 Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
745 // If the distribution does not have a histogram, then omit this field.
746 Exemplar *DistributionValue_Exemplar `protobuf:"bytes,2,opt,name=exemplar,proto3" json:"exemplar,omitempty"`
747 XXX_NoUnkeyedLiteral struct{} `json:"-"`
748 XXX_unrecognized []byte `json:"-"`
749 XXX_sizecache int32 `json:"-"`
750}
751
752func (m *DistributionValue_Bucket) Reset() { *m = DistributionValue_Bucket{} }
753func (m *DistributionValue_Bucket) String() string { return proto.CompactTextString(m) }
754func (*DistributionValue_Bucket) ProtoMessage() {}
755func (*DistributionValue_Bucket) Descriptor() ([]byte, []int) {
756 return fileDescriptor_0ee3deb72053811a, []int{6, 1}
757}
758
759func (m *DistributionValue_Bucket) XXX_Unmarshal(b []byte) error {
760 return xxx_messageInfo_DistributionValue_Bucket.Unmarshal(m, b)
761}
762func (m *DistributionValue_Bucket) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
763 return xxx_messageInfo_DistributionValue_Bucket.Marshal(b, m, deterministic)
764}
765func (m *DistributionValue_Bucket) XXX_Merge(src proto.Message) {
766 xxx_messageInfo_DistributionValue_Bucket.Merge(m, src)
767}
768func (m *DistributionValue_Bucket) XXX_Size() int {
769 return xxx_messageInfo_DistributionValue_Bucket.Size(m)
770}
771func (m *DistributionValue_Bucket) XXX_DiscardUnknown() {
772 xxx_messageInfo_DistributionValue_Bucket.DiscardUnknown(m)
773}
774
775var xxx_messageInfo_DistributionValue_Bucket proto.InternalMessageInfo
776
777func (m *DistributionValue_Bucket) GetCount() int64 {
778 if m != nil {
779 return m.Count
780 }
781 return 0
782}
783
784func (m *DistributionValue_Bucket) GetExemplar() *DistributionValue_Exemplar {
785 if m != nil {
786 return m.Exemplar
787 }
788 return nil
789}
790
791// Exemplars are example points that may be used to annotate aggregated
792// Distribution values. They are metadata that gives information about a
793// particular value added to a Distribution bucket.
794type DistributionValue_Exemplar struct {
795 // Value of the exemplar point. It determines which bucket the exemplar
796 // belongs to.
797 Value float64 `protobuf:"fixed64,1,opt,name=value,proto3" json:"value,omitempty"`
798 // The observation (sampling) time of the above value.
799 Timestamp *timestamp.Timestamp `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
800 // Contextual information about the example value.
801 Attachments map[string]string `protobuf:"bytes,3,rep,name=attachments,proto3" json:"attachments,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
802 XXX_NoUnkeyedLiteral struct{} `json:"-"`
803 XXX_unrecognized []byte `json:"-"`
804 XXX_sizecache int32 `json:"-"`
805}
806
807func (m *DistributionValue_Exemplar) Reset() { *m = DistributionValue_Exemplar{} }
808func (m *DistributionValue_Exemplar) String() string { return proto.CompactTextString(m) }
809func (*DistributionValue_Exemplar) ProtoMessage() {}
810func (*DistributionValue_Exemplar) Descriptor() ([]byte, []int) {
811 return fileDescriptor_0ee3deb72053811a, []int{6, 2}
812}
813
814func (m *DistributionValue_Exemplar) XXX_Unmarshal(b []byte) error {
815 return xxx_messageInfo_DistributionValue_Exemplar.Unmarshal(m, b)
816}
817func (m *DistributionValue_Exemplar) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
818 return xxx_messageInfo_DistributionValue_Exemplar.Marshal(b, m, deterministic)
819}
820func (m *DistributionValue_Exemplar) XXX_Merge(src proto.Message) {
821 xxx_messageInfo_DistributionValue_Exemplar.Merge(m, src)
822}
823func (m *DistributionValue_Exemplar) XXX_Size() int {
824 return xxx_messageInfo_DistributionValue_Exemplar.Size(m)
825}
826func (m *DistributionValue_Exemplar) XXX_DiscardUnknown() {
827 xxx_messageInfo_DistributionValue_Exemplar.DiscardUnknown(m)
828}
829
830var xxx_messageInfo_DistributionValue_Exemplar proto.InternalMessageInfo
831
832func (m *DistributionValue_Exemplar) GetValue() float64 {
833 if m != nil {
834 return m.Value
835 }
836 return 0
837}
838
839func (m *DistributionValue_Exemplar) GetTimestamp() *timestamp.Timestamp {
840 if m != nil {
841 return m.Timestamp
842 }
843 return nil
844}
845
846func (m *DistributionValue_Exemplar) GetAttachments() map[string]string {
847 if m != nil {
848 return m.Attachments
849 }
850 return nil
851}
852
853// The start_timestamp only applies to the count and sum in the SummaryValue.
854type SummaryValue struct {
855 // The total number of recorded values since start_time. Optional since
856 // some systems don't expose this.
857 Count *wrappers.Int64Value `protobuf:"bytes,1,opt,name=count,proto3" json:"count,omitempty"`
858 // The total sum of recorded values since start_time. Optional since some
859 // systems don't expose this. If count is zero then this field must be zero.
860 // This field must be unset if the sum is not available.
861 Sum *wrappers.DoubleValue `protobuf:"bytes,2,opt,name=sum,proto3" json:"sum,omitempty"`
862 // Values calculated over an arbitrary time window.
863 Snapshot *SummaryValue_Snapshot `protobuf:"bytes,3,opt,name=snapshot,proto3" json:"snapshot,omitempty"`
864 XXX_NoUnkeyedLiteral struct{} `json:"-"`
865 XXX_unrecognized []byte `json:"-"`
866 XXX_sizecache int32 `json:"-"`
867}
868
869func (m *SummaryValue) Reset() { *m = SummaryValue{} }
870func (m *SummaryValue) String() string { return proto.CompactTextString(m) }
871func (*SummaryValue) ProtoMessage() {}
872func (*SummaryValue) Descriptor() ([]byte, []int) {
873 return fileDescriptor_0ee3deb72053811a, []int{7}
874}
875
876func (m *SummaryValue) XXX_Unmarshal(b []byte) error {
877 return xxx_messageInfo_SummaryValue.Unmarshal(m, b)
878}
879func (m *SummaryValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
880 return xxx_messageInfo_SummaryValue.Marshal(b, m, deterministic)
881}
882func (m *SummaryValue) XXX_Merge(src proto.Message) {
883 xxx_messageInfo_SummaryValue.Merge(m, src)
884}
885func (m *SummaryValue) XXX_Size() int {
886 return xxx_messageInfo_SummaryValue.Size(m)
887}
888func (m *SummaryValue) XXX_DiscardUnknown() {
889 xxx_messageInfo_SummaryValue.DiscardUnknown(m)
890}
891
892var xxx_messageInfo_SummaryValue proto.InternalMessageInfo
893
894func (m *SummaryValue) GetCount() *wrappers.Int64Value {
895 if m != nil {
896 return m.Count
897 }
898 return nil
899}
900
901func (m *SummaryValue) GetSum() *wrappers.DoubleValue {
902 if m != nil {
903 return m.Sum
904 }
905 return nil
906}
907
908func (m *SummaryValue) GetSnapshot() *SummaryValue_Snapshot {
909 if m != nil {
910 return m.Snapshot
911 }
912 return nil
913}
914
915// The values in this message can be reset at arbitrary unknown times, with
916// the requirement that all of them are reset at the same time.
917type SummaryValue_Snapshot struct {
918 // The number of values in the snapshot. Optional since some systems don't
919 // expose this.
920 Count *wrappers.Int64Value `protobuf:"bytes,1,opt,name=count,proto3" json:"count,omitempty"`
921 // The sum of values in the snapshot. Optional since some systems don't
922 // expose this. If count is zero then this field must be zero or not set
923 // (if not supported).
924 Sum *wrappers.DoubleValue `protobuf:"bytes,2,opt,name=sum,proto3" json:"sum,omitempty"`
925 // A list of values at different percentiles of the distribution calculated
926 // from the current snapshot. The percentiles must be strictly increasing.
927 PercentileValues []*SummaryValue_Snapshot_ValueAtPercentile `protobuf:"bytes,3,rep,name=percentile_values,json=percentileValues,proto3" json:"percentile_values,omitempty"`
928 XXX_NoUnkeyedLiteral struct{} `json:"-"`
929 XXX_unrecognized []byte `json:"-"`
930 XXX_sizecache int32 `json:"-"`
931}
932
933func (m *SummaryValue_Snapshot) Reset() { *m = SummaryValue_Snapshot{} }
934func (m *SummaryValue_Snapshot) String() string { return proto.CompactTextString(m) }
935func (*SummaryValue_Snapshot) ProtoMessage() {}
936func (*SummaryValue_Snapshot) Descriptor() ([]byte, []int) {
937 return fileDescriptor_0ee3deb72053811a, []int{7, 0}
938}
939
940func (m *SummaryValue_Snapshot) XXX_Unmarshal(b []byte) error {
941 return xxx_messageInfo_SummaryValue_Snapshot.Unmarshal(m, b)
942}
943func (m *SummaryValue_Snapshot) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
944 return xxx_messageInfo_SummaryValue_Snapshot.Marshal(b, m, deterministic)
945}
946func (m *SummaryValue_Snapshot) XXX_Merge(src proto.Message) {
947 xxx_messageInfo_SummaryValue_Snapshot.Merge(m, src)
948}
949func (m *SummaryValue_Snapshot) XXX_Size() int {
950 return xxx_messageInfo_SummaryValue_Snapshot.Size(m)
951}
952func (m *SummaryValue_Snapshot) XXX_DiscardUnknown() {
953 xxx_messageInfo_SummaryValue_Snapshot.DiscardUnknown(m)
954}
955
956var xxx_messageInfo_SummaryValue_Snapshot proto.InternalMessageInfo
957
958func (m *SummaryValue_Snapshot) GetCount() *wrappers.Int64Value {
959 if m != nil {
960 return m.Count
961 }
962 return nil
963}
964
965func (m *SummaryValue_Snapshot) GetSum() *wrappers.DoubleValue {
966 if m != nil {
967 return m.Sum
968 }
969 return nil
970}
971
972func (m *SummaryValue_Snapshot) GetPercentileValues() []*SummaryValue_Snapshot_ValueAtPercentile {
973 if m != nil {
974 return m.PercentileValues
975 }
976 return nil
977}
978
979// Represents the value at a given percentile of a distribution.
980type SummaryValue_Snapshot_ValueAtPercentile struct {
981 // The percentile of a distribution. Must be in the interval
982 // (0.0, 100.0].
983 Percentile float64 `protobuf:"fixed64,1,opt,name=percentile,proto3" json:"percentile,omitempty"`
984 // The value at the given percentile of a distribution.
985 Value float64 `protobuf:"fixed64,2,opt,name=value,proto3" json:"value,omitempty"`
986 XXX_NoUnkeyedLiteral struct{} `json:"-"`
987 XXX_unrecognized []byte `json:"-"`
988 XXX_sizecache int32 `json:"-"`
989}
990
991func (m *SummaryValue_Snapshot_ValueAtPercentile) Reset() {
992 *m = SummaryValue_Snapshot_ValueAtPercentile{}
993}
994func (m *SummaryValue_Snapshot_ValueAtPercentile) String() string { return proto.CompactTextString(m) }
995func (*SummaryValue_Snapshot_ValueAtPercentile) ProtoMessage() {}
996func (*SummaryValue_Snapshot_ValueAtPercentile) Descriptor() ([]byte, []int) {
997 return fileDescriptor_0ee3deb72053811a, []int{7, 0, 0}
998}
999
1000func (m *SummaryValue_Snapshot_ValueAtPercentile) XXX_Unmarshal(b []byte) error {
1001 return xxx_messageInfo_SummaryValue_Snapshot_ValueAtPercentile.Unmarshal(m, b)
1002}
1003func (m *SummaryValue_Snapshot_ValueAtPercentile) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1004 return xxx_messageInfo_SummaryValue_Snapshot_ValueAtPercentile.Marshal(b, m, deterministic)
1005}
1006func (m *SummaryValue_Snapshot_ValueAtPercentile) XXX_Merge(src proto.Message) {
1007 xxx_messageInfo_SummaryValue_Snapshot_ValueAtPercentile.Merge(m, src)
1008}
1009func (m *SummaryValue_Snapshot_ValueAtPercentile) XXX_Size() int {
1010 return xxx_messageInfo_SummaryValue_Snapshot_ValueAtPercentile.Size(m)
1011}
1012func (m *SummaryValue_Snapshot_ValueAtPercentile) XXX_DiscardUnknown() {
1013 xxx_messageInfo_SummaryValue_Snapshot_ValueAtPercentile.DiscardUnknown(m)
1014}
1015
1016var xxx_messageInfo_SummaryValue_Snapshot_ValueAtPercentile proto.InternalMessageInfo
1017
1018func (m *SummaryValue_Snapshot_ValueAtPercentile) GetPercentile() float64 {
1019 if m != nil {
1020 return m.Percentile
1021 }
1022 return 0
1023}
1024
1025func (m *SummaryValue_Snapshot_ValueAtPercentile) GetValue() float64 {
1026 if m != nil {
1027 return m.Value
1028 }
1029 return 0
1030}
1031
1032func init() {
1033 proto.RegisterEnum("opencensus.proto.metrics.v1.MetricDescriptor_Type", MetricDescriptor_Type_name, MetricDescriptor_Type_value)
1034 proto.RegisterType((*Metric)(nil), "opencensus.proto.metrics.v1.Metric")
1035 proto.RegisterType((*MetricDescriptor)(nil), "opencensus.proto.metrics.v1.MetricDescriptor")
1036 proto.RegisterType((*LabelKey)(nil), "opencensus.proto.metrics.v1.LabelKey")
1037 proto.RegisterType((*TimeSeries)(nil), "opencensus.proto.metrics.v1.TimeSeries")
1038 proto.RegisterType((*LabelValue)(nil), "opencensus.proto.metrics.v1.LabelValue")
1039 proto.RegisterType((*Point)(nil), "opencensus.proto.metrics.v1.Point")
1040 proto.RegisterType((*DistributionValue)(nil), "opencensus.proto.metrics.v1.DistributionValue")
1041 proto.RegisterType((*DistributionValue_BucketOptions)(nil), "opencensus.proto.metrics.v1.DistributionValue.BucketOptions")
1042 proto.RegisterType((*DistributionValue_BucketOptions_Explicit)(nil), "opencensus.proto.metrics.v1.DistributionValue.BucketOptions.Explicit")
1043 proto.RegisterType((*DistributionValue_Bucket)(nil), "opencensus.proto.metrics.v1.DistributionValue.Bucket")
1044 proto.RegisterType((*DistributionValue_Exemplar)(nil), "opencensus.proto.metrics.v1.DistributionValue.Exemplar")
1045 proto.RegisterMapType((map[string]string)(nil), "opencensus.proto.metrics.v1.DistributionValue.Exemplar.AttachmentsEntry")
1046 proto.RegisterType((*SummaryValue)(nil), "opencensus.proto.metrics.v1.SummaryValue")
1047 proto.RegisterType((*SummaryValue_Snapshot)(nil), "opencensus.proto.metrics.v1.SummaryValue.Snapshot")
1048 proto.RegisterType((*SummaryValue_Snapshot_ValueAtPercentile)(nil), "opencensus.proto.metrics.v1.SummaryValue.Snapshot.ValueAtPercentile")
1049}
1050
1051func init() {
1052 proto.RegisterFile("opencensus/proto/metrics/v1/metrics.proto", fileDescriptor_0ee3deb72053811a)
1053}
1054
1055var fileDescriptor_0ee3deb72053811a = []byte{
1056 // 1118 bytes of a gzipped FileDescriptorProto
1057 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0xdd, 0x6e, 0x1b, 0xc5,
1058 0x17, 0xcf, 0xda, 0x8e, 0xe3, 0x9c, 0x75, 0xd2, 0xf5, 0xa8, 0xed, 0xdf, 0x72, 0xfe, 0x0a, 0x61,
1059 0x11, 0x90, 0x0a, 0x65, 0xad, 0x98, 0xd2, 0x56, 0x15, 0x2a, 0x8a, 0x63, 0x37, 0x31, 0x24, 0xb1,
1060 0x35, 0xb6, 0x23, 0xd1, 0x1b, 0x6b, 0xbd, 0x9e, 0x24, 0x4b, 0xbc, 0x1f, 0xdd, 0x99, 0x0d, 0xf8,
1061 0x05, 0x78, 0x02, 0xc4, 0x35, 0xb7, 0x88, 0xe7, 0xe0, 0x8a, 0x27, 0xe0, 0x15, 0xb8, 0x41, 0xbc,
1062 0x01, 0xda, 0x99, 0xd9, 0x8f, 0xc4, 0x60, 0xea, 0x22, 0x71, 0x77, 0xe6, 0xcc, 0x39, 0xbf, 0xfd,
1063 0x9d, 0xcf, 0x1d, 0x78, 0xe4, 0xf9, 0xc4, 0xb5, 0x88, 0x4b, 0x43, 0x5a, 0xf7, 0x03, 0x8f, 0x79,
1064 0x75, 0x87, 0xb0, 0xc0, 0xb6, 0x68, 0xfd, 0x66, 0x3f, 0x16, 0x0d, 0x7e, 0x81, 0xb6, 0x52, 0x53,
1065 0xa1, 0x31, 0xe2, 0xfb, 0x9b, 0xfd, 0xda, 0x3b, 0x97, 0x9e, 0x77, 0x39, 0x25, 0x02, 0x63, 0x1c,
1066 0x5e, 0xd4, 0x99, 0xed, 0x10, 0xca, 0x4c, 0xc7, 0x17, 0xb6, 0xb5, 0xed, 0xbb, 0x06, 0x5f, 0x07,
1067 0xa6, 0xef, 0x93, 0x40, 0x62, 0xd5, 0x3e, 0x9a, 0x23, 0x12, 0x10, 0xea, 0x85, 0x81, 0x45, 0x22,
1068 0x26, 0xb1, 0x2c, 0x8c, 0xf5, 0x3f, 0x14, 0x28, 0x9e, 0xf2, 0x8f, 0xa3, 0x57, 0x50, 0x11, 0x34,
1069 0x46, 0x13, 0x42, 0xad, 0xc0, 0xf6, 0x99, 0x17, 0x54, 0x95, 0x1d, 0x65, 0x57, 0x6d, 0xec, 0x19,
1070 0x0b, 0x18, 0x1b, 0xc2, 0xbf, 0x95, 0x38, 0x61, 0xcd, 0xb9, 0xa3, 0x41, 0x47, 0x00, 0x3c, 0x0c,
1071 0x12, 0xd8, 0x84, 0x56, 0x73, 0x3b, 0xf9, 0x5d, 0xb5, 0xf1, 0xe1, 0x42, 0xd0, 0x81, 0xed, 0x90,
1072 0x3e, 0x37, 0xc7, 0x19, 0x57, 0xd4, 0x84, 0x52, 0x1c, 0x41, 0x35, 0xcf, 0xb9, 0x7d, 0x30, 0x0f,
1073 0x93, 0xc4, 0x78, 0xb3, 0x6f, 0x60, 0x29, 0xe3, 0xc4, 0x4f, 0xff, 0x3e, 0x0f, 0xda, 0x5d, 0xce,
1074 0x08, 0x41, 0xc1, 0x35, 0x1d, 0xc2, 0x03, 0x5e, 0xc7, 0x5c, 0x46, 0x3b, 0xa0, 0xc6, 0xa9, 0xb0,
1075 0x3d, 0xb7, 0x9a, 0xe3, 0x57, 0x59, 0x55, 0xe4, 0x15, 0xba, 0x36, 0xe3, 0x54, 0xd6, 0x31, 0x97,
1076 0xd1, 0x4b, 0x28, 0xb0, 0x99, 0x4f, 0xaa, 0x85, 0x1d, 0x65, 0x77, 0xb3, 0xd1, 0x58, 0x2a, 0x75,
1077 0xc6, 0x60, 0xe6, 0x13, 0xcc, 0xfd, 0x51, 0x0b, 0x60, 0x6a, 0x8e, 0xc9, 0x74, 0x74, 0x4d, 0x66,
1078 0xb4, 0xba, 0xca, 0x73, 0xf6, 0xfe, 0x42, 0xb4, 0x93, 0xc8, 0xfc, 0x0b, 0x32, 0xc3, 0xeb, 0x53,
1079 0x29, 0x51, 0xfd, 0x47, 0x05, 0x0a, 0x11, 0x28, 0xba, 0x07, 0xea, 0xf0, 0xac, 0xdf, 0x6b, 0x1f,
1080 0x76, 0x5e, 0x76, 0xda, 0x2d, 0x6d, 0x25, 0x52, 0x1c, 0x1d, 0x0c, 0x8f, 0xda, 0xa3, 0xce, 0xd9,
1081 0xe0, 0xc9, 0x63, 0x4d, 0x41, 0x1a, 0x94, 0x85, 0xa2, 0xd5, 0x1d, 0x36, 0x4f, 0xda, 0x5a, 0x0e,
1082 0x3d, 0x04, 0x24, 0x35, 0x9d, 0xfe, 0x00, 0x77, 0x9a, 0xc3, 0x41, 0xa7, 0x7b, 0xa6, 0xe5, 0xd1,
1083 0x7d, 0xd0, 0x0e, 0x87, 0xa7, 0xc3, 0x93, 0x83, 0x41, 0xe7, 0x3c, 0xf6, 0x2f, 0xa0, 0x07, 0x50,
1084 0xc9, 0x68, 0x25, 0xc8, 0x2a, 0xda, 0x82, 0xff, 0x65, 0xd5, 0x59, 0xa4, 0x22, 0x52, 0x61, 0xad,
1085 0x3f, 0x3c, 0x3d, 0x3d, 0xc0, 0x5f, 0x6a, 0x6b, 0xfa, 0x0b, 0x28, 0xc5, 0x21, 0x20, 0x0d, 0xf2,
1086 0xd7, 0x64, 0x26, 0xcb, 0x11, 0x89, 0xff, 0x5c, 0x0d, 0xfd, 0x57, 0x05, 0x20, 0xed, 0x1b, 0x74,
1087 0x08, 0xf7, 0x28, 0x33, 0x03, 0x36, 0x4a, 0x26, 0x48, 0xb6, 0x73, 0xcd, 0x10, 0x23, 0x64, 0xc4,
1088 0x23, 0xc4, 0xbb, 0x8d, 0x5b, 0xe0, 0x4d, 0xee, 0x92, 0x9c, 0xd1, 0xe7, 0x50, 0x16, 0x55, 0xb8,
1089 0x31, 0xa7, 0xe1, 0x1b, 0xf6, 0x2e, 0x0f, 0xe2, 0x3c, 0xb2, 0xc7, 0xea, 0x34, 0x91, 0x29, 0x7a,
1090 0x0e, 0x45, 0xdf, 0xb3, 0x5d, 0x46, 0xab, 0x79, 0x8e, 0xa2, 0x2f, 0x44, 0xe9, 0x45, 0xa6, 0x58,
1091 0x7a, 0xe8, 0x9f, 0x01, 0xa4, 0xb0, 0xe8, 0x3e, 0xac, 0x72, 0x3e, 0x32, 0x3f, 0xe2, 0x80, 0xb6,
1092 0x60, 0xfd, 0xca, 0xa4, 0x82, 0x29, 0xcf, 0x4f, 0x09, 0x97, 0xae, 0x4c, 0xca, 0x5d, 0xf4, 0x9f,
1093 0x73, 0xb0, 0xca, 0x21, 0xd1, 0x33, 0x58, 0x5f, 0x26, 0x23, 0xa9, 0x31, 0x7a, 0x17, 0x54, 0xdb,
1094 0x65, 0x4f, 0x1e, 0x67, 0x3e, 0x91, 0x3f, 0x5e, 0xc1, 0xc0, 0x95, 0x82, 0xd9, 0x7b, 0x50, 0x9e,
1095 0x78, 0xe1, 0x78, 0x4a, 0xa4, 0x4d, 0x34, 0x19, 0xca, 0xf1, 0x0a, 0x56, 0x85, 0x56, 0x18, 0x8d,
1096 0x00, 0x4d, 0x6c, 0xca, 0x02, 0x7b, 0x1c, 0x46, 0x85, 0x93, 0xa6, 0x05, 0x4e, 0xc5, 0x58, 0x98,
1097 0x94, 0x56, 0xc6, 0x8d, 0x63, 0x1d, 0xaf, 0xe0, 0xca, 0xe4, 0xae, 0x12, 0xf5, 0x60, 0x83, 0x86,
1098 0x8e, 0x63, 0x06, 0x33, 0x89, 0xbd, 0xca, 0xb1, 0x1f, 0x2d, 0xc4, 0xee, 0x0b, 0x8f, 0x18, 0xb6,
1099 0x4c, 0x33, 0xe7, 0xe6, 0x9a, 0xcc, 0xb8, 0xfe, 0x4b, 0x11, 0x2a, 0x73, 0x2c, 0xa2, 0x82, 0x58,
1100 0x5e, 0xe8, 0x32, 0x9e, 0xcf, 0x3c, 0x16, 0x87, 0xa8, 0x89, 0x69, 0xe8, 0xf0, 0x3c, 0x29, 0x38,
1101 0x12, 0xd1, 0x53, 0xa8, 0xd2, 0xd0, 0x19, 0x79, 0x17, 0x23, 0xfa, 0x3a, 0x34, 0x03, 0x32, 0x19,
1102 0x4d, 0xc8, 0x8d, 0x6d, 0xf2, 0x8e, 0xe6, 0xa9, 0xc2, 0x0f, 0x68, 0xe8, 0x74, 0x2f, 0xfa, 0xe2,
1103 0xb6, 0x15, 0x5f, 0x22, 0x0b, 0x36, 0xc7, 0xa1, 0x75, 0x4d, 0xd8, 0xc8, 0xe3, 0xcd, 0x4e, 0x65,
1104 0xba, 0x3e, 0x5d, 0x2e, 0x5d, 0x46, 0x93, 0x83, 0x74, 0x05, 0x06, 0xde, 0x18, 0x67, 0x8f, 0xa8,
1105 0x0b, 0x6b, 0x42, 0x11, 0xef, 0x9b, 0x4f, 0xde, 0x0a, 0x1d, 0xc7, 0x28, 0xb5, 0x1f, 0x14, 0xd8,
1106 0xb8, 0xf5, 0x45, 0x64, 0x41, 0x89, 0x7c, 0xe3, 0x4f, 0x6d, 0xcb, 0x66, 0xb2, 0xf7, 0xda, 0xff,
1107 0x26, 0x02, 0xa3, 0x2d, 0xc1, 0x8e, 0x57, 0x70, 0x02, 0x5c, 0xd3, 0xa1, 0x14, 0xeb, 0xd1, 0x43,
1108 0x28, 0x8e, 0xbd, 0xd0, 0x9d, 0xd0, 0xaa, 0xb2, 0x93, 0xdf, 0x55, 0xb0, 0x3c, 0x35, 0x8b, 0x62,
1109 0x4d, 0xd7, 0x28, 0x14, 0x05, 0xe2, 0xdf, 0xd4, 0xb0, 0x1f, 0x11, 0x26, 0x8e, 0x3f, 0x35, 0x03,
1110 0x5e, 0x48, 0xb5, 0xf1, 0x74, 0x49, 0xc2, 0x6d, 0xe9, 0x8e, 0x13, 0xa0, 0xda, 0xb7, 0xb9, 0x88,
1111 0xa1, 0x38, 0xdc, 0x1e, 0x66, 0x25, 0x1e, 0xe6, 0x5b, 0x53, 0x9a, 0x5b, 0x66, 0x4a, 0xbf, 0x02,
1112 0xd5, 0x64, 0xcc, 0xb4, 0xae, 0x1c, 0x92, 0xee, 0x9a, 0xe3, 0xb7, 0x24, 0x6d, 0x1c, 0xa4, 0x50,
1113 0x6d, 0x97, 0x05, 0x33, 0x9c, 0x05, 0xaf, 0xbd, 0x00, 0xed, 0xae, 0xc1, 0x5f, 0xac, 0xee, 0x24,
1114 0xc2, 0x5c, 0x66, 0x5d, 0x3d, 0xcf, 0x3d, 0x53, 0xf4, 0xdf, 0xf3, 0x50, 0xce, 0xce, 0x1d, 0xda,
1115 0xcf, 0x16, 0x41, 0x6d, 0x6c, 0xcd, 0x85, 0xdc, 0x49, 0x76, 0x4d, 0x5c, 0x21, 0x23, 0x9d, 0x32,
1116 0xb5, 0xf1, 0xff, 0x39, 0x87, 0x56, 0xba, 0x78, 0xc4, 0x0c, 0x9e, 0x41, 0x89, 0xba, 0xa6, 0x4f,
1117 0xaf, 0x3c, 0x26, 0xdf, 0x10, 0x8d, 0x37, 0xde, 0x0b, 0x46, 0x5f, 0x7a, 0xe2, 0x04, 0xa3, 0xf6,
1118 0x53, 0x0e, 0x4a, 0xb1, 0xfa, 0xbf, 0xe0, 0xff, 0x1a, 0x2a, 0x3e, 0x09, 0x2c, 0xe2, 0x32, 0x3b,
1119 0x5e, 0xb3, 0x71, 0x95, 0x5b, 0xcb, 0x07, 0x62, 0xf0, 0xe3, 0x01, 0xeb, 0x25, 0x90, 0x58, 0x4b,
1120 0xe1, 0xc5, 0x9f, 0xab, 0xd6, 0x81, 0xca, 0x9c, 0x19, 0xda, 0x06, 0x48, 0x0d, 0x65, 0xf3, 0x66,
1121 0x34, 0xb7, 0xab, 0x1e, 0xf7, 0x75, 0xf3, 0x3b, 0x05, 0xb6, 0x6d, 0x6f, 0x11, 0xcf, 0x66, 0x59,
1122 0x3c, 0x8b, 0x68, 0x2f, 0xba, 0xe8, 0x29, 0xaf, 0x5a, 0x97, 0x36, 0xbb, 0x0a, 0xc7, 0x86, 0xe5,
1123 0x39, 0x75, 0xe1, 0xb3, 0x67, 0xbb, 0x94, 0x05, 0x61, 0xd4, 0x74, 0x7c, 0x3d, 0xd6, 0x53, 0xb8,
1124 0x3d, 0xf1, 0xe6, 0xbd, 0x24, 0xee, 0xde, 0x65, 0xf6, 0x0d, 0xfe, 0x5b, 0x6e, 0xab, 0xeb, 0x13,
1125 0xf7, 0x50, 0x7c, 0x93, 0x43, 0xcb, 0xe7, 0x17, 0x35, 0xce, 0xf7, 0xc7, 0x45, 0xee, 0xf6, 0xf1,
1126 0x9f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xf8, 0xd0, 0xb4, 0x8d, 0xc7, 0x0b, 0x00, 0x00,
1127}