• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2020 The ChromiumOS Authors
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// Code generated by protoc-gen-go. DO NOT EDIT.
6// versions:
7// 	protoc-gen-go v1.27.1
8// 	protoc        v3.17.1
9// source: chromiumos/config/api/topology.proto
10
11package api
12
13import (
14	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
15	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
16	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
17	reflect "reflect"
18	sync "sync"
19)
20
21const (
22	// Verify that this generated code is sufficiently up-to-date.
23	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
24	// Verify that runtime/protoimpl is sufficiently up-to-date.
25	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
26)
27
28type Topology_Type int32
29
30const (
31	Topology_TYPE_UNKNOWN                         Topology_Type = 0
32	Topology_SCREEN                               Topology_Type = 1
33	Topology_FORM_FACTOR                          Topology_Type = 2
34	Topology_AUDIO                                Topology_Type = 3
35	Topology_STYLUS                               Topology_Type = 4
36	Topology_KEYBOARD                             Topology_Type = 5
37	Topology_THERMAL                              Topology_Type = 6
38	Topology_CAMERA                               Topology_Type = 7
39	Topology_ACCELEROMETER_GYROSCOPE_MAGNETOMETER Topology_Type = 8
40	Topology_FINGERPRINT                          Topology_Type = 9
41	Topology_PROXIMITY_SENSOR                     Topology_Type = 10
42	Topology_DAUGHTER_BOARD                       Topology_Type = 11
43	Topology_NON_VOLATILE_STORAGE                 Topology_Type = 12
44	Topology_RAM                                  Topology_Type = 13 // deprecated
45	Topology_WIFI                                 Topology_Type = 14
46	Topology_CELLULAR_BOARD                       Topology_Type = 15
47	Topology_SD_READER                            Topology_Type = 16
48	Topology_MOTHERBOARD_USB                      Topology_Type = 17
49	Topology_BLUETOOTH                            Topology_Type = 18
50	Topology_BARRELJACK                           Topology_Type = 19
51	Topology_POWER_BUTTON                         Topology_Type = 20
52	Topology_VOLUME_BUTTON                        Topology_Type = 21
53	Topology_EC                                   Topology_Type = 22
54	Topology_TOUCH                                Topology_Type = 23
55	Topology_TPM                                  Topology_Type = 24
56	Topology_MICROPHONE_MUTE_SWITCH               Topology_Type = 25
57	Topology_BATTERY                              Topology_Type = 26
58	Topology_HDMI                                 Topology_Type = 27
59	Topology_SOC                                  Topology_Type = 28
60	Topology_HPS                                  Topology_Type = 29
61	Topology_DP_CONVERTER                         Topology_Type = 30
62	Topology_POE                                  Topology_Type = 31
63	Topology_POWER_SUPPLY                         Topology_Type = 32
64	Topology_RECOVERY_INPUT                       Topology_Type = 33
65	Topology_PRIVACY_SCREEN                       Topology_Type = 34
66	Topology_DGPU                                 Topology_Type = 35
67	Topology_UWB                                  Topology_Type = 36
68	Topology_DETACHABLE_BASE                      Topology_Type = 37
69	Topology_FAN                                  Topology_Type = 38
70)
71
72// Enum value maps for Topology_Type.
73var (
74	Topology_Type_name = map[int32]string{
75		0:  "TYPE_UNKNOWN",
76		1:  "SCREEN",
77		2:  "FORM_FACTOR",
78		3:  "AUDIO",
79		4:  "STYLUS",
80		5:  "KEYBOARD",
81		6:  "THERMAL",
82		7:  "CAMERA",
83		8:  "ACCELEROMETER_GYROSCOPE_MAGNETOMETER",
84		9:  "FINGERPRINT",
85		10: "PROXIMITY_SENSOR",
86		11: "DAUGHTER_BOARD",
87		12: "NON_VOLATILE_STORAGE",
88		13: "RAM",
89		14: "WIFI",
90		15: "CELLULAR_BOARD",
91		16: "SD_READER",
92		17: "MOTHERBOARD_USB",
93		18: "BLUETOOTH",
94		19: "BARRELJACK",
95		20: "POWER_BUTTON",
96		21: "VOLUME_BUTTON",
97		22: "EC",
98		23: "TOUCH",
99		24: "TPM",
100		25: "MICROPHONE_MUTE_SWITCH",
101		26: "BATTERY",
102		27: "HDMI",
103		28: "SOC",
104		29: "HPS",
105		30: "DP_CONVERTER",
106		31: "POE",
107		32: "POWER_SUPPLY",
108		33: "RECOVERY_INPUT",
109		34: "PRIVACY_SCREEN",
110		35: "DGPU",
111		36: "UWB",
112		37: "DETACHABLE_BASE",
113		38: "FAN",
114	}
115	Topology_Type_value = map[string]int32{
116		"TYPE_UNKNOWN":                         0,
117		"SCREEN":                               1,
118		"FORM_FACTOR":                          2,
119		"AUDIO":                                3,
120		"STYLUS":                               4,
121		"KEYBOARD":                             5,
122		"THERMAL":                              6,
123		"CAMERA":                               7,
124		"ACCELEROMETER_GYROSCOPE_MAGNETOMETER": 8,
125		"FINGERPRINT":                          9,
126		"PROXIMITY_SENSOR":                     10,
127		"DAUGHTER_BOARD":                       11,
128		"NON_VOLATILE_STORAGE":                 12,
129		"RAM":                                  13,
130		"WIFI":                                 14,
131		"CELLULAR_BOARD":                       15,
132		"SD_READER":                            16,
133		"MOTHERBOARD_USB":                      17,
134		"BLUETOOTH":                            18,
135		"BARRELJACK":                           19,
136		"POWER_BUTTON":                         20,
137		"VOLUME_BUTTON":                        21,
138		"EC":                                   22,
139		"TOUCH":                                23,
140		"TPM":                                  24,
141		"MICROPHONE_MUTE_SWITCH":               25,
142		"BATTERY":                              26,
143		"HDMI":                                 27,
144		"SOC":                                  28,
145		"HPS":                                  29,
146		"DP_CONVERTER":                         30,
147		"POE":                                  31,
148		"POWER_SUPPLY":                         32,
149		"RECOVERY_INPUT":                       33,
150		"PRIVACY_SCREEN":                       34,
151		"DGPU":                                 35,
152		"UWB":                                  36,
153		"DETACHABLE_BASE":                      37,
154		"FAN":                                  38,
155	}
156)
157
158func (x Topology_Type) Enum() *Topology_Type {
159	p := new(Topology_Type)
160	*p = x
161	return p
162}
163
164func (x Topology_Type) String() string {
165	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
166}
167
168func (Topology_Type) Descriptor() protoreflect.EnumDescriptor {
169	return file_chromiumos_config_api_topology_proto_enumTypes[0].Descriptor()
170}
171
172func (Topology_Type) Type() protoreflect.EnumType {
173	return &file_chromiumos_config_api_topology_proto_enumTypes[0]
174}
175
176func (x Topology_Type) Number() protoreflect.EnumNumber {
177	return protoreflect.EnumNumber(x)
178}
179
180// Deprecated: Use Topology_Type.Descriptor instead.
181func (Topology_Type) EnumDescriptor() ([]byte, []int) {
182	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{0, 0}
183}
184
185type Duration_Type int32
186
187const (
188	Duration_TYPE_UNKNOWN Duration_Type = 0
189	Duration_MILLISECONDS Duration_Type = 1
190	Duration_SECONDS      Duration_Type = 2
191	Duration_MINUTES      Duration_Type = 3
192	Duration_HOURS        Duration_Type = 4
193	Duration_DAYS         Duration_Type = 5
194)
195
196// Enum value maps for Duration_Type.
197var (
198	Duration_Type_name = map[int32]string{
199		0: "TYPE_UNKNOWN",
200		1: "MILLISECONDS",
201		2: "SECONDS",
202		3: "MINUTES",
203		4: "HOURS",
204		5: "DAYS",
205	}
206	Duration_Type_value = map[string]int32{
207		"TYPE_UNKNOWN": 0,
208		"MILLISECONDS": 1,
209		"SECONDS":      2,
210		"MINUTES":      3,
211		"HOURS":        4,
212		"DAYS":         5,
213	}
214)
215
216func (x Duration_Type) Enum() *Duration_Type {
217	p := new(Duration_Type)
218	*p = x
219	return p
220}
221
222func (x Duration_Type) String() string {
223	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
224}
225
226func (Duration_Type) Descriptor() protoreflect.EnumDescriptor {
227	return file_chromiumos_config_api_topology_proto_enumTypes[1].Descriptor()
228}
229
230func (Duration_Type) Type() protoreflect.EnumType {
231	return &file_chromiumos_config_api_topology_proto_enumTypes[1]
232}
233
234func (x Duration_Type) Number() protoreflect.EnumNumber {
235	return protoreflect.EnumNumber(x)
236}
237
238// Deprecated: Use Duration_Type.Descriptor instead.
239func (Duration_Type) EnumDescriptor() ([]byte, []int) {
240	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{1, 0}
241}
242
243type HardwareFeatures_Present int32
244
245const (
246	HardwareFeatures_PRESENT_UNKNOWN HardwareFeatures_Present = 0
247	HardwareFeatures_PRESENT         HardwareFeatures_Present = 1
248	HardwareFeatures_NOT_PRESENT     HardwareFeatures_Present = 2
249)
250
251// Enum value maps for HardwareFeatures_Present.
252var (
253	HardwareFeatures_Present_name = map[int32]string{
254		0: "PRESENT_UNKNOWN",
255		1: "PRESENT",
256		2: "NOT_PRESENT",
257	}
258	HardwareFeatures_Present_value = map[string]int32{
259		"PRESENT_UNKNOWN": 0,
260		"PRESENT":         1,
261		"NOT_PRESENT":     2,
262	}
263)
264
265func (x HardwareFeatures_Present) Enum() *HardwareFeatures_Present {
266	p := new(HardwareFeatures_Present)
267	*p = x
268	return p
269}
270
271func (x HardwareFeatures_Present) String() string {
272	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
273}
274
275func (HardwareFeatures_Present) Descriptor() protoreflect.EnumDescriptor {
276	return file_chromiumos_config_api_topology_proto_enumTypes[2].Descriptor()
277}
278
279func (HardwareFeatures_Present) Type() protoreflect.EnumType {
280	return &file_chromiumos_config_api_topology_proto_enumTypes[2]
281}
282
283func (x HardwareFeatures_Present) Number() protoreflect.EnumNumber {
284	return protoreflect.EnumNumber(x)
285}
286
287// Deprecated: Use HardwareFeatures_Present.Descriptor instead.
288func (HardwareFeatures_Present) EnumDescriptor() ([]byte, []int) {
289	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 0}
290}
291
292// Copied from PowerSupplyProperties.PowerSource.Port in
293// src/platform2/system_api/dbus/power_manager/power_supply_properties.proto.
294type HardwareFeatures_PortPosition int32
295
296const (
297	HardwareFeatures_UNKNOWN HardwareFeatures_PortPosition = 0
298	// Various positions on the device. The first word describes the side of
299	// the device where the port is located while the second clarifies the
300	// position. For example, LEFT_BACK means the farthest-back port on the
301	// left side, while BACK_LEFT means the leftmost port on the back of the
302	// device.
303	HardwareFeatures_LEFT        HardwareFeatures_PortPosition = 1
304	HardwareFeatures_RIGHT       HardwareFeatures_PortPosition = 2
305	HardwareFeatures_BACK        HardwareFeatures_PortPosition = 3
306	HardwareFeatures_FRONT       HardwareFeatures_PortPosition = 4
307	HardwareFeatures_LEFT_FRONT  HardwareFeatures_PortPosition = 5
308	HardwareFeatures_LEFT_BACK   HardwareFeatures_PortPosition = 6
309	HardwareFeatures_RIGHT_FRONT HardwareFeatures_PortPosition = 7
310	HardwareFeatures_RIGHT_BACK  HardwareFeatures_PortPosition = 8
311	HardwareFeatures_BACK_LEFT   HardwareFeatures_PortPosition = 9
312	HardwareFeatures_BACK_RIGHT  HardwareFeatures_PortPosition = 10
313)
314
315// Enum value maps for HardwareFeatures_PortPosition.
316var (
317	HardwareFeatures_PortPosition_name = map[int32]string{
318		0:  "UNKNOWN",
319		1:  "LEFT",
320		2:  "RIGHT",
321		3:  "BACK",
322		4:  "FRONT",
323		5:  "LEFT_FRONT",
324		6:  "LEFT_BACK",
325		7:  "RIGHT_FRONT",
326		8:  "RIGHT_BACK",
327		9:  "BACK_LEFT",
328		10: "BACK_RIGHT",
329	}
330	HardwareFeatures_PortPosition_value = map[string]int32{
331		"UNKNOWN":     0,
332		"LEFT":        1,
333		"RIGHT":       2,
334		"BACK":        3,
335		"FRONT":       4,
336		"LEFT_FRONT":  5,
337		"LEFT_BACK":   6,
338		"RIGHT_FRONT": 7,
339		"RIGHT_BACK":  8,
340		"BACK_LEFT":   9,
341		"BACK_RIGHT":  10,
342	}
343)
344
345func (x HardwareFeatures_PortPosition) Enum() *HardwareFeatures_PortPosition {
346	p := new(HardwareFeatures_PortPosition)
347	*p = x
348	return p
349}
350
351func (x HardwareFeatures_PortPosition) String() string {
352	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
353}
354
355func (HardwareFeatures_PortPosition) Descriptor() protoreflect.EnumDescriptor {
356	return file_chromiumos_config_api_topology_proto_enumTypes[3].Descriptor()
357}
358
359func (HardwareFeatures_PortPosition) Type() protoreflect.EnumType {
360	return &file_chromiumos_config_api_topology_proto_enumTypes[3]
361}
362
363func (x HardwareFeatures_PortPosition) Number() protoreflect.EnumNumber {
364	return protoreflect.EnumNumber(x)
365}
366
367// Deprecated: Use HardwareFeatures_PortPosition.Descriptor instead.
368func (HardwareFeatures_PortPosition) EnumDescriptor() ([]byte, []int) {
369	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 1}
370}
371
372type HardwareFeatures_Cellular_CellularType int32
373
374const (
375	HardwareFeatures_Cellular_CELLULAR_UNKNOWN HardwareFeatures_Cellular_CellularType = 0
376	HardwareFeatures_Cellular_CELLULAR_LTE     HardwareFeatures_Cellular_CellularType = 1
377	HardwareFeatures_Cellular_CELLULAR_5G      HardwareFeatures_Cellular_CellularType = 2
378)
379
380// Enum value maps for HardwareFeatures_Cellular_CellularType.
381var (
382	HardwareFeatures_Cellular_CellularType_name = map[int32]string{
383		0: "CELLULAR_UNKNOWN",
384		1: "CELLULAR_LTE",
385		2: "CELLULAR_5G",
386	}
387	HardwareFeatures_Cellular_CellularType_value = map[string]int32{
388		"CELLULAR_UNKNOWN": 0,
389		"CELLULAR_LTE":     1,
390		"CELLULAR_5G":      2,
391	}
392)
393
394func (x HardwareFeatures_Cellular_CellularType) Enum() *HardwareFeatures_Cellular_CellularType {
395	p := new(HardwareFeatures_Cellular_CellularType)
396	*p = x
397	return p
398}
399
400func (x HardwareFeatures_Cellular_CellularType) String() string {
401	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
402}
403
404func (HardwareFeatures_Cellular_CellularType) Descriptor() protoreflect.EnumDescriptor {
405	return file_chromiumos_config_api_topology_proto_enumTypes[4].Descriptor()
406}
407
408func (HardwareFeatures_Cellular_CellularType) Type() protoreflect.EnumType {
409	return &file_chromiumos_config_api_topology_proto_enumTypes[4]
410}
411
412func (x HardwareFeatures_Cellular_CellularType) Number() protoreflect.EnumNumber {
413	return protoreflect.EnumNumber(x)
414}
415
416// Deprecated: Use HardwareFeatures_Cellular_CellularType.Descriptor instead.
417func (HardwareFeatures_Cellular_CellularType) EnumDescriptor() ([]byte, []int) {
418	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 3, 0}
419}
420
421type HardwareFeatures_Cellular_ModemType int32
422
423const (
424	HardwareFeatures_Cellular_MODEM_UNKNOWN HardwareFeatures_Cellular_ModemType = 0
425	HardwareFeatures_Cellular_MODEM_L850    HardwareFeatures_Cellular_ModemType = 1
426	HardwareFeatures_Cellular_MODEM_NL668   HardwareFeatures_Cellular_ModemType = 2
427	HardwareFeatures_Cellular_MODEM_FM101   HardwareFeatures_Cellular_ModemType = 3
428	HardwareFeatures_Cellular_MODEM_FM350   HardwareFeatures_Cellular_ModemType = 4
429	HardwareFeatures_Cellular_MODEM_SC7180  HardwareFeatures_Cellular_ModemType = 5
430	HardwareFeatures_Cellular_MODEM_SC7280  HardwareFeatures_Cellular_ModemType = 6
431	HardwareFeatures_Cellular_MODEM_EM060   HardwareFeatures_Cellular_ModemType = 7
432	HardwareFeatures_Cellular_MODEM_RW101   HardwareFeatures_Cellular_ModemType = 8
433	HardwareFeatures_Cellular_MODEM_RW135   HardwareFeatures_Cellular_ModemType = 9
434	HardwareFeatures_Cellular_MODEM_LCUK54  HardwareFeatures_Cellular_ModemType = 10
435)
436
437// Enum value maps for HardwareFeatures_Cellular_ModemType.
438var (
439	HardwareFeatures_Cellular_ModemType_name = map[int32]string{
440		0:  "MODEM_UNKNOWN",
441		1:  "MODEM_L850",
442		2:  "MODEM_NL668",
443		3:  "MODEM_FM101",
444		4:  "MODEM_FM350",
445		5:  "MODEM_SC7180",
446		6:  "MODEM_SC7280",
447		7:  "MODEM_EM060",
448		8:  "MODEM_RW101",
449		9:  "MODEM_RW135",
450		10: "MODEM_LCUK54",
451	}
452	HardwareFeatures_Cellular_ModemType_value = map[string]int32{
453		"MODEM_UNKNOWN": 0,
454		"MODEM_L850":    1,
455		"MODEM_NL668":   2,
456		"MODEM_FM101":   3,
457		"MODEM_FM350":   4,
458		"MODEM_SC7180":  5,
459		"MODEM_SC7280":  6,
460		"MODEM_EM060":   7,
461		"MODEM_RW101":   8,
462		"MODEM_RW135":   9,
463		"MODEM_LCUK54":  10,
464	}
465)
466
467func (x HardwareFeatures_Cellular_ModemType) Enum() *HardwareFeatures_Cellular_ModemType {
468	p := new(HardwareFeatures_Cellular_ModemType)
469	*p = x
470	return p
471}
472
473func (x HardwareFeatures_Cellular_ModemType) String() string {
474	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
475}
476
477func (HardwareFeatures_Cellular_ModemType) Descriptor() protoreflect.EnumDescriptor {
478	return file_chromiumos_config_api_topology_proto_enumTypes[5].Descriptor()
479}
480
481func (HardwareFeatures_Cellular_ModemType) Type() protoreflect.EnumType {
482	return &file_chromiumos_config_api_topology_proto_enumTypes[5]
483}
484
485func (x HardwareFeatures_Cellular_ModemType) Number() protoreflect.EnumNumber {
486	return protoreflect.EnumNumber(x)
487}
488
489// Deprecated: Use HardwareFeatures_Cellular_ModemType.Descriptor instead.
490func (HardwareFeatures_Cellular_ModemType) EnumDescriptor() ([]byte, []int) {
491	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 3, 1}
492}
493
494type HardwareFeatures_Audio_AudioCodec int32
495
496const (
497	HardwareFeatures_Audio_AUDIO_CODEC_UNKNOWN HardwareFeatures_Audio_AudioCodec = 0 // Also used for non-public audio codecs
498	HardwareFeatures_Audio_RT5682              HardwareFeatures_Audio_AudioCodec = 1
499	HardwareFeatures_Audio_ALC5682I            HardwareFeatures_Audio_AudioCodec = 2
500	HardwareFeatures_Audio_ALC5682             HardwareFeatures_Audio_AudioCodec = 3
501	HardwareFeatures_Audio_DA7219              HardwareFeatures_Audio_AudioCodec = 8
502	// New audio codecs
503	HardwareFeatures_Audio_NAU88L25B  HardwareFeatures_Audio_AudioCodec = 10
504	HardwareFeatures_Audio_CS42L42    HardwareFeatures_Audio_AudioCodec = 11
505	HardwareFeatures_Audio_ALC5682IVS HardwareFeatures_Audio_AudioCodec = 12
506	HardwareFeatures_Audio_WCD9385    HardwareFeatures_Audio_AudioCodec = 13
507	HardwareFeatures_Audio_ES8326     HardwareFeatures_Audio_AudioCodec = 14
508	HardwareFeatures_Audio_ALC272     HardwareFeatures_Audio_AudioCodec = 15
509	// 16 is free to be used
510	HardwareFeatures_Audio_AUDIO_CODEC_ALC5650 HardwareFeatures_Audio_AudioCodec = 17
511	HardwareFeatures_Audio_AUDIO_CODEC_ALC256  HardwareFeatures_Audio_AudioCodec = 18
512	HardwareFeatures_Audio_AUDIO_CODEC_ALC3247 HardwareFeatures_Audio_AudioCodec = 19
513	HardwareFeatures_Audio_AUDIO_CODEC_ALC3287 HardwareFeatures_Audio_AudioCodec = 20
514	// 21 is free to be used
515	HardwareFeatures_Audio_AUDIO_CODEC_ALC722  HardwareFeatures_Audio_AudioCodec = 22
516	HardwareFeatures_Audio_AUDIO_CODEC_ALC721  HardwareFeatures_Audio_AudioCodec = 23
517	HardwareFeatures_Audio_AUDIO_CODEC_ALC3204 HardwareFeatures_Audio_AudioCodec = 24
518)
519
520// Enum value maps for HardwareFeatures_Audio_AudioCodec.
521var (
522	HardwareFeatures_Audio_AudioCodec_name = map[int32]string{
523		0:  "AUDIO_CODEC_UNKNOWN",
524		1:  "RT5682",
525		2:  "ALC5682I",
526		3:  "ALC5682",
527		8:  "DA7219",
528		10: "NAU88L25B",
529		11: "CS42L42",
530		12: "ALC5682IVS",
531		13: "WCD9385",
532		14: "ES8326",
533		15: "ALC272",
534		17: "AUDIO_CODEC_ALC5650",
535		18: "AUDIO_CODEC_ALC256",
536		19: "AUDIO_CODEC_ALC3247",
537		20: "AUDIO_CODEC_ALC3287",
538		22: "AUDIO_CODEC_ALC722",
539		23: "AUDIO_CODEC_ALC721",
540		24: "AUDIO_CODEC_ALC3204",
541	}
542	HardwareFeatures_Audio_AudioCodec_value = map[string]int32{
543		"AUDIO_CODEC_UNKNOWN": 0,
544		"RT5682":              1,
545		"ALC5682I":            2,
546		"ALC5682":             3,
547		"DA7219":              8,
548		"NAU88L25B":           10,
549		"CS42L42":             11,
550		"ALC5682IVS":          12,
551		"WCD9385":             13,
552		"ES8326":              14,
553		"ALC272":              15,
554		"AUDIO_CODEC_ALC5650": 17,
555		"AUDIO_CODEC_ALC256":  18,
556		"AUDIO_CODEC_ALC3247": 19,
557		"AUDIO_CODEC_ALC3287": 20,
558		"AUDIO_CODEC_ALC722":  22,
559		"AUDIO_CODEC_ALC721":  23,
560		"AUDIO_CODEC_ALC3204": 24,
561	}
562)
563
564func (x HardwareFeatures_Audio_AudioCodec) Enum() *HardwareFeatures_Audio_AudioCodec {
565	p := new(HardwareFeatures_Audio_AudioCodec)
566	*p = x
567	return p
568}
569
570func (x HardwareFeatures_Audio_AudioCodec) String() string {
571	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
572}
573
574func (HardwareFeatures_Audio_AudioCodec) Descriptor() protoreflect.EnumDescriptor {
575	return file_chromiumos_config_api_topology_proto_enumTypes[6].Descriptor()
576}
577
578func (HardwareFeatures_Audio_AudioCodec) Type() protoreflect.EnumType {
579	return &file_chromiumos_config_api_topology_proto_enumTypes[6]
580}
581
582func (x HardwareFeatures_Audio_AudioCodec) Number() protoreflect.EnumNumber {
583	return protoreflect.EnumNumber(x)
584}
585
586// Deprecated: Use HardwareFeatures_Audio_AudioCodec.Descriptor instead.
587func (HardwareFeatures_Audio_AudioCodec) EnumDescriptor() ([]byte, []int) {
588	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 6, 0}
589}
590
591type HardwareFeatures_Audio_Amplifier int32
592
593const (
594	HardwareFeatures_Audio_AMPLIFIER_UNKNOWN HardwareFeatures_Audio_Amplifier = 0 // Also used for non-public amplifier
595	HardwareFeatures_Audio_MAX98357          HardwareFeatures_Audio_Amplifier = 4
596	HardwareFeatures_Audio_MAX98373          HardwareFeatures_Audio_Amplifier = 5
597	HardwareFeatures_Audio_MAX98360          HardwareFeatures_Audio_Amplifier = 6
598	HardwareFeatures_Audio_RT1015            HardwareFeatures_Audio_Amplifier = 7
599	HardwareFeatures_Audio_ALC1011           HardwareFeatures_Audio_Amplifier = 9
600	// New amplifiers
601	HardwareFeatures_Audio_RT1015P           HardwareFeatures_Audio_Amplifier = 10
602	HardwareFeatures_Audio_ALC1019           HardwareFeatures_Audio_Amplifier = 11
603	HardwareFeatures_Audio_MAX98390          HardwareFeatures_Audio_Amplifier = 12
604	HardwareFeatures_Audio_MAX98396          HardwareFeatures_Audio_Amplifier = 13
605	HardwareFeatures_Audio_CS35L41           HardwareFeatures_Audio_Amplifier = 14
606	HardwareFeatures_Audio_MAX98363          HardwareFeatures_Audio_Amplifier = 15
607	HardwareFeatures_Audio_NAU8318           HardwareFeatures_Audio_Amplifier = 16
608	HardwareFeatures_Audio_AMPLIFIER_ALC5650 HardwareFeatures_Audio_Amplifier = 17
609	HardwareFeatures_Audio_AMPLIFIER_ALC256  HardwareFeatures_Audio_Amplifier = 18
610	HardwareFeatures_Audio_AMPLIFIER_ALC3247 HardwareFeatures_Audio_Amplifier = 19
611	HardwareFeatures_Audio_AMPLIFIER_ALC3287 HardwareFeatures_Audio_Amplifier = 20
612	HardwareFeatures_Audio_TAS2563           HardwareFeatures_Audio_Amplifier = 21
613	HardwareFeatures_Audio_AMPLIFIER_ALC722  HardwareFeatures_Audio_Amplifier = 22
614	HardwareFeatures_Audio_AMPLIFIER_ALC721  HardwareFeatures_Audio_Amplifier = 23
615	HardwareFeatures_Audio_AMPLIFIER_ALC3204 HardwareFeatures_Audio_Amplifier = 24
616)
617
618// Enum value maps for HardwareFeatures_Audio_Amplifier.
619var (
620	HardwareFeatures_Audio_Amplifier_name = map[int32]string{
621		0:  "AMPLIFIER_UNKNOWN",
622		4:  "MAX98357",
623		5:  "MAX98373",
624		6:  "MAX98360",
625		7:  "RT1015",
626		9:  "ALC1011",
627		10: "RT1015P",
628		11: "ALC1019",
629		12: "MAX98390",
630		13: "MAX98396",
631		14: "CS35L41",
632		15: "MAX98363",
633		16: "NAU8318",
634		17: "AMPLIFIER_ALC5650",
635		18: "AMPLIFIER_ALC256",
636		19: "AMPLIFIER_ALC3247",
637		20: "AMPLIFIER_ALC3287",
638		21: "TAS2563",
639		22: "AMPLIFIER_ALC722",
640		23: "AMPLIFIER_ALC721",
641		24: "AMPLIFIER_ALC3204",
642	}
643	HardwareFeatures_Audio_Amplifier_value = map[string]int32{
644		"AMPLIFIER_UNKNOWN": 0,
645		"MAX98357":          4,
646		"MAX98373":          5,
647		"MAX98360":          6,
648		"RT1015":            7,
649		"ALC1011":           9,
650		"RT1015P":           10,
651		"ALC1019":           11,
652		"MAX98390":          12,
653		"MAX98396":          13,
654		"CS35L41":           14,
655		"MAX98363":          15,
656		"NAU8318":           16,
657		"AMPLIFIER_ALC5650": 17,
658		"AMPLIFIER_ALC256":  18,
659		"AMPLIFIER_ALC3247": 19,
660		"AMPLIFIER_ALC3287": 20,
661		"TAS2563":           21,
662		"AMPLIFIER_ALC722":  22,
663		"AMPLIFIER_ALC721":  23,
664		"AMPLIFIER_ALC3204": 24,
665	}
666)
667
668func (x HardwareFeatures_Audio_Amplifier) Enum() *HardwareFeatures_Audio_Amplifier {
669	p := new(HardwareFeatures_Audio_Amplifier)
670	*p = x
671	return p
672}
673
674func (x HardwareFeatures_Audio_Amplifier) String() string {
675	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
676}
677
678func (HardwareFeatures_Audio_Amplifier) Descriptor() protoreflect.EnumDescriptor {
679	return file_chromiumos_config_api_topology_proto_enumTypes[7].Descriptor()
680}
681
682func (HardwareFeatures_Audio_Amplifier) Type() protoreflect.EnumType {
683	return &file_chromiumos_config_api_topology_proto_enumTypes[7]
684}
685
686func (x HardwareFeatures_Audio_Amplifier) Number() protoreflect.EnumNumber {
687	return protoreflect.EnumNumber(x)
688}
689
690// Deprecated: Use HardwareFeatures_Audio_Amplifier.Descriptor instead.
691func (HardwareFeatures_Audio_Amplifier) EnumDescriptor() ([]byte, []int) {
692	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 6, 1}
693}
694
695type HardwareFeatures_Audio_AudioConfigStructure int32
696
697const (
698	HardwareFeatures_Audio_AUDIO_CONFIG_STRUCTURE_NONE HardwareFeatures_Audio_AudioConfigStructure = 0
699	HardwareFeatures_Audio_DESIGN                      HardwareFeatures_Audio_AudioConfigStructure = 1
700	HardwareFeatures_Audio_COMMON                      HardwareFeatures_Audio_AudioConfigStructure = 2
701)
702
703// Enum value maps for HardwareFeatures_Audio_AudioConfigStructure.
704var (
705	HardwareFeatures_Audio_AudioConfigStructure_name = map[int32]string{
706		0: "AUDIO_CONFIG_STRUCTURE_NONE",
707		1: "DESIGN",
708		2: "COMMON",
709	}
710	HardwareFeatures_Audio_AudioConfigStructure_value = map[string]int32{
711		"AUDIO_CONFIG_STRUCTURE_NONE": 0,
712		"DESIGN":                      1,
713		"COMMON":                      2,
714	}
715)
716
717func (x HardwareFeatures_Audio_AudioConfigStructure) Enum() *HardwareFeatures_Audio_AudioConfigStructure {
718	p := new(HardwareFeatures_Audio_AudioConfigStructure)
719	*p = x
720	return p
721}
722
723func (x HardwareFeatures_Audio_AudioConfigStructure) String() string {
724	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
725}
726
727func (HardwareFeatures_Audio_AudioConfigStructure) Descriptor() protoreflect.EnumDescriptor {
728	return file_chromiumos_config_api_topology_proto_enumTypes[8].Descriptor()
729}
730
731func (HardwareFeatures_Audio_AudioConfigStructure) Type() protoreflect.EnumType {
732	return &file_chromiumos_config_api_topology_proto_enumTypes[8]
733}
734
735func (x HardwareFeatures_Audio_AudioConfigStructure) Number() protoreflect.EnumNumber {
736	return protoreflect.EnumNumber(x)
737}
738
739// Deprecated: Use HardwareFeatures_Audio_AudioConfigStructure.Descriptor instead.
740func (HardwareFeatures_Audio_AudioConfigStructure) EnumDescriptor() ([]byte, []int) {
741	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 6, 2}
742}
743
744type HardwareFeatures_Camera_Interface int32
745
746const (
747	HardwareFeatures_Camera_INTERFACE_UNKNOWN HardwareFeatures_Camera_Interface = 0
748	HardwareFeatures_Camera_INTERFACE_USB     HardwareFeatures_Camera_Interface = 1
749	HardwareFeatures_Camera_INTERFACE_MIPI    HardwareFeatures_Camera_Interface = 2
750)
751
752// Enum value maps for HardwareFeatures_Camera_Interface.
753var (
754	HardwareFeatures_Camera_Interface_name = map[int32]string{
755		0: "INTERFACE_UNKNOWN",
756		1: "INTERFACE_USB",
757		2: "INTERFACE_MIPI",
758	}
759	HardwareFeatures_Camera_Interface_value = map[string]int32{
760		"INTERFACE_UNKNOWN": 0,
761		"INTERFACE_USB":     1,
762		"INTERFACE_MIPI":    2,
763	}
764)
765
766func (x HardwareFeatures_Camera_Interface) Enum() *HardwareFeatures_Camera_Interface {
767	p := new(HardwareFeatures_Camera_Interface)
768	*p = x
769	return p
770}
771
772func (x HardwareFeatures_Camera_Interface) String() string {
773	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
774}
775
776func (HardwareFeatures_Camera_Interface) Descriptor() protoreflect.EnumDescriptor {
777	return file_chromiumos_config_api_topology_proto_enumTypes[9].Descriptor()
778}
779
780func (HardwareFeatures_Camera_Interface) Type() protoreflect.EnumType {
781	return &file_chromiumos_config_api_topology_proto_enumTypes[9]
782}
783
784func (x HardwareFeatures_Camera_Interface) Number() protoreflect.EnumNumber {
785	return protoreflect.EnumNumber(x)
786}
787
788// Deprecated: Use HardwareFeatures_Camera_Interface.Descriptor instead.
789func (HardwareFeatures_Camera_Interface) EnumDescriptor() ([]byte, []int) {
790	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 7, 0}
791}
792
793type HardwareFeatures_Camera_Facing int32
794
795const (
796	HardwareFeatures_Camera_FACING_UNKNOWN HardwareFeatures_Camera_Facing = 0
797	HardwareFeatures_Camera_FACING_FRONT   HardwareFeatures_Camera_Facing = 1
798	HardwareFeatures_Camera_FACING_BACK    HardwareFeatures_Camera_Facing = 2
799)
800
801// Enum value maps for HardwareFeatures_Camera_Facing.
802var (
803	HardwareFeatures_Camera_Facing_name = map[int32]string{
804		0: "FACING_UNKNOWN",
805		1: "FACING_FRONT",
806		2: "FACING_BACK",
807	}
808	HardwareFeatures_Camera_Facing_value = map[string]int32{
809		"FACING_UNKNOWN": 0,
810		"FACING_FRONT":   1,
811		"FACING_BACK":    2,
812	}
813)
814
815func (x HardwareFeatures_Camera_Facing) Enum() *HardwareFeatures_Camera_Facing {
816	p := new(HardwareFeatures_Camera_Facing)
817	*p = x
818	return p
819}
820
821func (x HardwareFeatures_Camera_Facing) String() string {
822	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
823}
824
825func (HardwareFeatures_Camera_Facing) Descriptor() protoreflect.EnumDescriptor {
826	return file_chromiumos_config_api_topology_proto_enumTypes[10].Descriptor()
827}
828
829func (HardwareFeatures_Camera_Facing) Type() protoreflect.EnumType {
830	return &file_chromiumos_config_api_topology_proto_enumTypes[10]
831}
832
833func (x HardwareFeatures_Camera_Facing) Number() protoreflect.EnumNumber {
834	return protoreflect.EnumNumber(x)
835}
836
837// Deprecated: Use HardwareFeatures_Camera_Facing.Descriptor instead.
838func (HardwareFeatures_Camera_Facing) EnumDescriptor() ([]byte, []int) {
839	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 7, 1}
840}
841
842type HardwareFeatures_Camera_Orientation int32
843
844const (
845	HardwareFeatures_Camera_ORIENTATION_UNKNOWN HardwareFeatures_Camera_Orientation = 0
846	HardwareFeatures_Camera_ORIENTATION_0       HardwareFeatures_Camera_Orientation = 1
847	HardwareFeatures_Camera_ORIENTATION_90      HardwareFeatures_Camera_Orientation = 2
848	HardwareFeatures_Camera_ORIENTATION_180     HardwareFeatures_Camera_Orientation = 3
849	HardwareFeatures_Camera_ORIENTATION_270     HardwareFeatures_Camera_Orientation = 4
850)
851
852// Enum value maps for HardwareFeatures_Camera_Orientation.
853var (
854	HardwareFeatures_Camera_Orientation_name = map[int32]string{
855		0: "ORIENTATION_UNKNOWN",
856		1: "ORIENTATION_0",
857		2: "ORIENTATION_90",
858		3: "ORIENTATION_180",
859		4: "ORIENTATION_270",
860	}
861	HardwareFeatures_Camera_Orientation_value = map[string]int32{
862		"ORIENTATION_UNKNOWN": 0,
863		"ORIENTATION_0":       1,
864		"ORIENTATION_90":      2,
865		"ORIENTATION_180":     3,
866		"ORIENTATION_270":     4,
867	}
868)
869
870func (x HardwareFeatures_Camera_Orientation) Enum() *HardwareFeatures_Camera_Orientation {
871	p := new(HardwareFeatures_Camera_Orientation)
872	*p = x
873	return p
874}
875
876func (x HardwareFeatures_Camera_Orientation) String() string {
877	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
878}
879
880func (HardwareFeatures_Camera_Orientation) Descriptor() protoreflect.EnumDescriptor {
881	return file_chromiumos_config_api_topology_proto_enumTypes[11].Descriptor()
882}
883
884func (HardwareFeatures_Camera_Orientation) Type() protoreflect.EnumType {
885	return &file_chromiumos_config_api_topology_proto_enumTypes[11]
886}
887
888func (x HardwareFeatures_Camera_Orientation) Number() protoreflect.EnumNumber {
889	return protoreflect.EnumNumber(x)
890}
891
892// Deprecated: Use HardwareFeatures_Camera_Orientation.Descriptor instead.
893func (HardwareFeatures_Camera_Orientation) EnumDescriptor() ([]byte, []int) {
894	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 7, 2}
895}
896
897type HardwareFeatures_Camera_Flags int32
898
899const (
900	HardwareFeatures_Camera_FLAGS_NONE              HardwareFeatures_Camera_Flags = 0
901	HardwareFeatures_Camera_FLAGS_SUPPORT_1080P     HardwareFeatures_Camera_Flags = 1
902	HardwareFeatures_Camera_FLAGS_SUPPORT_AUTOFOCUS HardwareFeatures_Camera_Flags = 2
903)
904
905// Enum value maps for HardwareFeatures_Camera_Flags.
906var (
907	HardwareFeatures_Camera_Flags_name = map[int32]string{
908		0: "FLAGS_NONE",
909		1: "FLAGS_SUPPORT_1080P",
910		2: "FLAGS_SUPPORT_AUTOFOCUS",
911	}
912	HardwareFeatures_Camera_Flags_value = map[string]int32{
913		"FLAGS_NONE":              0,
914		"FLAGS_SUPPORT_1080P":     1,
915		"FLAGS_SUPPORT_AUTOFOCUS": 2,
916	}
917)
918
919func (x HardwareFeatures_Camera_Flags) Enum() *HardwareFeatures_Camera_Flags {
920	p := new(HardwareFeatures_Camera_Flags)
921	*p = x
922	return p
923}
924
925func (x HardwareFeatures_Camera_Flags) String() string {
926	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
927}
928
929func (HardwareFeatures_Camera_Flags) Descriptor() protoreflect.EnumDescriptor {
930	return file_chromiumos_config_api_topology_proto_enumTypes[12].Descriptor()
931}
932
933func (HardwareFeatures_Camera_Flags) Type() protoreflect.EnumType {
934	return &file_chromiumos_config_api_topology_proto_enumTypes[12]
935}
936
937func (x HardwareFeatures_Camera_Flags) Number() protoreflect.EnumNumber {
938	return protoreflect.EnumNumber(x)
939}
940
941// Deprecated: Use HardwareFeatures_Camera_Flags.Descriptor instead.
942func (HardwareFeatures_Camera_Flags) EnumDescriptor() ([]byte, []int) {
943	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 7, 3}
944}
945
946// The libdrm connector type that must match for the properties to
947// apply to this display.  Right now, only eDP is supported, and
948// is the most common.  Other connector types can be added as
949// required.  See drm_mode.h in libdrm for valid options.
950type HardwareFeatures_Screen_ConnectorType int32
951
952const (
953	// Assume a reasonable default (right now eDP).
954	HardwareFeatures_Screen_CONNECTOR_TYPE_UNSPECIFIED HardwareFeatures_Screen_ConnectorType = 0
955	// eDP connector type.
956	HardwareFeatures_Screen_CONNECTOR_TYPE_EDP HardwareFeatures_Screen_ConnectorType = 1
957)
958
959// Enum value maps for HardwareFeatures_Screen_ConnectorType.
960var (
961	HardwareFeatures_Screen_ConnectorType_name = map[int32]string{
962		0: "CONNECTOR_TYPE_UNSPECIFIED",
963		1: "CONNECTOR_TYPE_EDP",
964	}
965	HardwareFeatures_Screen_ConnectorType_value = map[string]int32{
966		"CONNECTOR_TYPE_UNSPECIFIED": 0,
967		"CONNECTOR_TYPE_EDP":         1,
968	}
969)
970
971func (x HardwareFeatures_Screen_ConnectorType) Enum() *HardwareFeatures_Screen_ConnectorType {
972	p := new(HardwareFeatures_Screen_ConnectorType)
973	*p = x
974	return p
975}
976
977func (x HardwareFeatures_Screen_ConnectorType) String() string {
978	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
979}
980
981func (HardwareFeatures_Screen_ConnectorType) Descriptor() protoreflect.EnumDescriptor {
982	return file_chromiumos_config_api_topology_proto_enumTypes[13].Descriptor()
983}
984
985func (HardwareFeatures_Screen_ConnectorType) Type() protoreflect.EnumType {
986	return &file_chromiumos_config_api_topology_proto_enumTypes[13]
987}
988
989func (x HardwareFeatures_Screen_ConnectorType) Number() protoreflect.EnumNumber {
990	return protoreflect.EnumNumber(x)
991}
992
993// Deprecated: Use HardwareFeatures_Screen_ConnectorType.Descriptor instead.
994func (HardwareFeatures_Screen_ConnectorType) EnumDescriptor() ([]byte, []int) {
995	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 12, 0}
996}
997
998type HardwareFeatures_FormFactor_FormFactorType int32
999
1000const (
1001	HardwareFeatures_FormFactor_FORM_FACTOR_UNKNOWN HardwareFeatures_FormFactor_FormFactorType = 0
1002	HardwareFeatures_FormFactor_CLAMSHELL           HardwareFeatures_FormFactor_FormFactorType = 1
1003	HardwareFeatures_FormFactor_CONVERTIBLE         HardwareFeatures_FormFactor_FormFactorType = 2
1004	HardwareFeatures_FormFactor_DETACHABLE          HardwareFeatures_FormFactor_FormFactorType = 3
1005	HardwareFeatures_FormFactor_CHROMEBASE          HardwareFeatures_FormFactor_FormFactorType = 4
1006	HardwareFeatures_FormFactor_CHROMEBOX           HardwareFeatures_FormFactor_FormFactorType = 5
1007	HardwareFeatures_FormFactor_CHROMEBIT           HardwareFeatures_FormFactor_FormFactorType = 6
1008	HardwareFeatures_FormFactor_CHROMESLATE         HardwareFeatures_FormFactor_FormFactorType = 7
1009)
1010
1011// Enum value maps for HardwareFeatures_FormFactor_FormFactorType.
1012var (
1013	HardwareFeatures_FormFactor_FormFactorType_name = map[int32]string{
1014		0: "FORM_FACTOR_UNKNOWN",
1015		1: "CLAMSHELL",
1016		2: "CONVERTIBLE",
1017		3: "DETACHABLE",
1018		4: "CHROMEBASE",
1019		5: "CHROMEBOX",
1020		6: "CHROMEBIT",
1021		7: "CHROMESLATE",
1022	}
1023	HardwareFeatures_FormFactor_FormFactorType_value = map[string]int32{
1024		"FORM_FACTOR_UNKNOWN": 0,
1025		"CLAMSHELL":           1,
1026		"CONVERTIBLE":         2,
1027		"DETACHABLE":          3,
1028		"CHROMEBASE":          4,
1029		"CHROMEBOX":           5,
1030		"CHROMEBIT":           6,
1031		"CHROMESLATE":         7,
1032	}
1033)
1034
1035func (x HardwareFeatures_FormFactor_FormFactorType) Enum() *HardwareFeatures_FormFactor_FormFactorType {
1036	p := new(HardwareFeatures_FormFactor_FormFactorType)
1037	*p = x
1038	return p
1039}
1040
1041func (x HardwareFeatures_FormFactor_FormFactorType) String() string {
1042	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1043}
1044
1045func (HardwareFeatures_FormFactor_FormFactorType) Descriptor() protoreflect.EnumDescriptor {
1046	return file_chromiumos_config_api_topology_proto_enumTypes[14].Descriptor()
1047}
1048
1049func (HardwareFeatures_FormFactor_FormFactorType) Type() protoreflect.EnumType {
1050	return &file_chromiumos_config_api_topology_proto_enumTypes[14]
1051}
1052
1053func (x HardwareFeatures_FormFactor_FormFactorType) Number() protoreflect.EnumNumber {
1054	return protoreflect.EnumNumber(x)
1055}
1056
1057// Deprecated: Use HardwareFeatures_FormFactor_FormFactorType.Descriptor instead.
1058func (HardwareFeatures_FormFactor_FormFactorType) EnumDescriptor() ([]byte, []int) {
1059	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 13, 0}
1060}
1061
1062type HardwareFeatures_FormFactor_RecoveryInputType int32
1063
1064const (
1065	HardwareFeatures_FormFactor_RECOVERY_INPUT_UNKNOWN HardwareFeatures_FormFactor_RecoveryInputType = 0
1066	HardwareFeatures_FormFactor_KEYBOARD               HardwareFeatures_FormFactor_RecoveryInputType = 1
1067	HardwareFeatures_FormFactor_POWER_BUTTON           HardwareFeatures_FormFactor_RecoveryInputType = 2
1068	HardwareFeatures_FormFactor_RECOVERY_BUTTON        HardwareFeatures_FormFactor_RecoveryInputType = 3
1069)
1070
1071// Enum value maps for HardwareFeatures_FormFactor_RecoveryInputType.
1072var (
1073	HardwareFeatures_FormFactor_RecoveryInputType_name = map[int32]string{
1074		0: "RECOVERY_INPUT_UNKNOWN",
1075		1: "KEYBOARD",
1076		2: "POWER_BUTTON",
1077		3: "RECOVERY_BUTTON",
1078	}
1079	HardwareFeatures_FormFactor_RecoveryInputType_value = map[string]int32{
1080		"RECOVERY_INPUT_UNKNOWN": 0,
1081		"KEYBOARD":               1,
1082		"POWER_BUTTON":           2,
1083		"RECOVERY_BUTTON":        3,
1084	}
1085)
1086
1087func (x HardwareFeatures_FormFactor_RecoveryInputType) Enum() *HardwareFeatures_FormFactor_RecoveryInputType {
1088	p := new(HardwareFeatures_FormFactor_RecoveryInputType)
1089	*p = x
1090	return p
1091}
1092
1093func (x HardwareFeatures_FormFactor_RecoveryInputType) String() string {
1094	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1095}
1096
1097func (HardwareFeatures_FormFactor_RecoveryInputType) Descriptor() protoreflect.EnumDescriptor {
1098	return file_chromiumos_config_api_topology_proto_enumTypes[15].Descriptor()
1099}
1100
1101func (HardwareFeatures_FormFactor_RecoveryInputType) Type() protoreflect.EnumType {
1102	return &file_chromiumos_config_api_topology_proto_enumTypes[15]
1103}
1104
1105func (x HardwareFeatures_FormFactor_RecoveryInputType) Number() protoreflect.EnumNumber {
1106	return protoreflect.EnumNumber(x)
1107}
1108
1109// Deprecated: Use HardwareFeatures_FormFactor_RecoveryInputType.Descriptor instead.
1110func (HardwareFeatures_FormFactor_RecoveryInputType) EnumDescriptor() ([]byte, []int) {
1111	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 13, 1}
1112}
1113
1114type HardwareFeatures_Stylus_StylusType int32
1115
1116const (
1117	HardwareFeatures_Stylus_STYLUS_UNKNOWN HardwareFeatures_Stylus_StylusType = 0
1118	HardwareFeatures_Stylus_NONE           HardwareFeatures_Stylus_StylusType = 1
1119	HardwareFeatures_Stylus_INTERNAL       HardwareFeatures_Stylus_StylusType = 2 // Garaged stylus
1120	HardwareFeatures_Stylus_EXTERNAL       HardwareFeatures_Stylus_StylusType = 3 // Non-garaged stylus
1121)
1122
1123// Enum value maps for HardwareFeatures_Stylus_StylusType.
1124var (
1125	HardwareFeatures_Stylus_StylusType_name = map[int32]string{
1126		0: "STYLUS_UNKNOWN",
1127		1: "NONE",
1128		2: "INTERNAL",
1129		3: "EXTERNAL",
1130	}
1131	HardwareFeatures_Stylus_StylusType_value = map[string]int32{
1132		"STYLUS_UNKNOWN": 0,
1133		"NONE":           1,
1134		"INTERNAL":       2,
1135		"EXTERNAL":       3,
1136	}
1137)
1138
1139func (x HardwareFeatures_Stylus_StylusType) Enum() *HardwareFeatures_Stylus_StylusType {
1140	p := new(HardwareFeatures_Stylus_StylusType)
1141	*p = x
1142	return p
1143}
1144
1145func (x HardwareFeatures_Stylus_StylusType) String() string {
1146	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1147}
1148
1149func (HardwareFeatures_Stylus_StylusType) Descriptor() protoreflect.EnumDescriptor {
1150	return file_chromiumos_config_api_topology_proto_enumTypes[16].Descriptor()
1151}
1152
1153func (HardwareFeatures_Stylus_StylusType) Type() protoreflect.EnumType {
1154	return &file_chromiumos_config_api_topology_proto_enumTypes[16]
1155}
1156
1157func (x HardwareFeatures_Stylus_StylusType) Number() protoreflect.EnumNumber {
1158	return protoreflect.EnumNumber(x)
1159}
1160
1161// Deprecated: Use HardwareFeatures_Stylus_StylusType.Descriptor instead.
1162func (HardwareFeatures_Stylus_StylusType) EnumDescriptor() ([]byte, []int) {
1163	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 14, 0}
1164}
1165
1166type HardwareFeatures_Keyboard_KeyboardType int32
1167
1168const (
1169	HardwareFeatures_Keyboard_KEYBOARD_TYPE_UNKNOWN HardwareFeatures_Keyboard_KeyboardType = 0
1170	HardwareFeatures_Keyboard_INTERNAL              HardwareFeatures_Keyboard_KeyboardType = 1 // E.g. Clamshell/Convertible
1171	HardwareFeatures_Keyboard_NONE                  HardwareFeatures_Keyboard_KeyboardType = 2 // E.g. Chromebox
1172	HardwareFeatures_Keyboard_DETACHABLE            HardwareFeatures_Keyboard_KeyboardType = 3 // E.g. Tablet with detachable keyboard
1173)
1174
1175// Enum value maps for HardwareFeatures_Keyboard_KeyboardType.
1176var (
1177	HardwareFeatures_Keyboard_KeyboardType_name = map[int32]string{
1178		0: "KEYBOARD_TYPE_UNKNOWN",
1179		1: "INTERNAL",
1180		2: "NONE",
1181		3: "DETACHABLE",
1182	}
1183	HardwareFeatures_Keyboard_KeyboardType_value = map[string]int32{
1184		"KEYBOARD_TYPE_UNKNOWN": 0,
1185		"INTERNAL":              1,
1186		"NONE":                  2,
1187		"DETACHABLE":            3,
1188	}
1189)
1190
1191func (x HardwareFeatures_Keyboard_KeyboardType) Enum() *HardwareFeatures_Keyboard_KeyboardType {
1192	p := new(HardwareFeatures_Keyboard_KeyboardType)
1193	*p = x
1194	return p
1195}
1196
1197func (x HardwareFeatures_Keyboard_KeyboardType) String() string {
1198	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1199}
1200
1201func (HardwareFeatures_Keyboard_KeyboardType) Descriptor() protoreflect.EnumDescriptor {
1202	return file_chromiumos_config_api_topology_proto_enumTypes[17].Descriptor()
1203}
1204
1205func (HardwareFeatures_Keyboard_KeyboardType) Type() protoreflect.EnumType {
1206	return &file_chromiumos_config_api_topology_proto_enumTypes[17]
1207}
1208
1209func (x HardwareFeatures_Keyboard_KeyboardType) Number() protoreflect.EnumNumber {
1210	return protoreflect.EnumNumber(x)
1211}
1212
1213// Deprecated: Use HardwareFeatures_Keyboard_KeyboardType.Descriptor instead.
1214func (HardwareFeatures_Keyboard_KeyboardType) EnumDescriptor() ([]byte, []int) {
1215	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 15, 0}
1216}
1217
1218type HardwareFeatures_Keyboard_KeyboardMcuType int32
1219
1220const (
1221	HardwareFeatures_Keyboard_KEYBOARD_MCU_NOT_PRESENT HardwareFeatures_Keyboard_KeyboardMcuType = 0
1222	HardwareFeatures_Keyboard_KEYBOARD_MCU_PRISM       HardwareFeatures_Keyboard_KeyboardMcuType = 1
1223)
1224
1225// Enum value maps for HardwareFeatures_Keyboard_KeyboardMcuType.
1226var (
1227	HardwareFeatures_Keyboard_KeyboardMcuType_name = map[int32]string{
1228		0: "KEYBOARD_MCU_NOT_PRESENT",
1229		1: "KEYBOARD_MCU_PRISM",
1230	}
1231	HardwareFeatures_Keyboard_KeyboardMcuType_value = map[string]int32{
1232		"KEYBOARD_MCU_NOT_PRESENT": 0,
1233		"KEYBOARD_MCU_PRISM":       1,
1234	}
1235)
1236
1237func (x HardwareFeatures_Keyboard_KeyboardMcuType) Enum() *HardwareFeatures_Keyboard_KeyboardMcuType {
1238	p := new(HardwareFeatures_Keyboard_KeyboardMcuType)
1239	*p = x
1240	return p
1241}
1242
1243func (x HardwareFeatures_Keyboard_KeyboardMcuType) String() string {
1244	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1245}
1246
1247func (HardwareFeatures_Keyboard_KeyboardMcuType) Descriptor() protoreflect.EnumDescriptor {
1248	return file_chromiumos_config_api_topology_proto_enumTypes[18].Descriptor()
1249}
1250
1251func (HardwareFeatures_Keyboard_KeyboardMcuType) Type() protoreflect.EnumType {
1252	return &file_chromiumos_config_api_topology_proto_enumTypes[18]
1253}
1254
1255func (x HardwareFeatures_Keyboard_KeyboardMcuType) Number() protoreflect.EnumNumber {
1256	return protoreflect.EnumNumber(x)
1257}
1258
1259// Deprecated: Use HardwareFeatures_Keyboard_KeyboardMcuType.Descriptor instead.
1260func (HardwareFeatures_Keyboard_KeyboardMcuType) EnumDescriptor() ([]byte, []int) {
1261	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 15, 1}
1262}
1263
1264type HardwareFeatures_Keyboard_KeyboardBottomLeftLayout int32
1265
1266const (
1267	HardwareFeatures_Keyboard_KEYBOARD_BOTTOM_LEFT_LAYOUT_UNKNOWN HardwareFeatures_Keyboard_KeyboardBottomLeftLayout = 0
1268	HardwareFeatures_Keyboard_KEYBOARD_BOTTOM_LEFT_3_KEYS         HardwareFeatures_Keyboard_KeyboardBottomLeftLayout = 1
1269	HardwareFeatures_Keyboard_KEYBOARD_BOTTOM_LEFT_4_KEYS         HardwareFeatures_Keyboard_KeyboardBottomLeftLayout = 2
1270)
1271
1272// Enum value maps for HardwareFeatures_Keyboard_KeyboardBottomLeftLayout.
1273var (
1274	HardwareFeatures_Keyboard_KeyboardBottomLeftLayout_name = map[int32]string{
1275		0: "KEYBOARD_BOTTOM_LEFT_LAYOUT_UNKNOWN",
1276		1: "KEYBOARD_BOTTOM_LEFT_3_KEYS",
1277		2: "KEYBOARD_BOTTOM_LEFT_4_KEYS",
1278	}
1279	HardwareFeatures_Keyboard_KeyboardBottomLeftLayout_value = map[string]int32{
1280		"KEYBOARD_BOTTOM_LEFT_LAYOUT_UNKNOWN": 0,
1281		"KEYBOARD_BOTTOM_LEFT_3_KEYS":         1,
1282		"KEYBOARD_BOTTOM_LEFT_4_KEYS":         2,
1283	}
1284)
1285
1286func (x HardwareFeatures_Keyboard_KeyboardBottomLeftLayout) Enum() *HardwareFeatures_Keyboard_KeyboardBottomLeftLayout {
1287	p := new(HardwareFeatures_Keyboard_KeyboardBottomLeftLayout)
1288	*p = x
1289	return p
1290}
1291
1292func (x HardwareFeatures_Keyboard_KeyboardBottomLeftLayout) String() string {
1293	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1294}
1295
1296func (HardwareFeatures_Keyboard_KeyboardBottomLeftLayout) Descriptor() protoreflect.EnumDescriptor {
1297	return file_chromiumos_config_api_topology_proto_enumTypes[19].Descriptor()
1298}
1299
1300func (HardwareFeatures_Keyboard_KeyboardBottomLeftLayout) Type() protoreflect.EnumType {
1301	return &file_chromiumos_config_api_topology_proto_enumTypes[19]
1302}
1303
1304func (x HardwareFeatures_Keyboard_KeyboardBottomLeftLayout) Number() protoreflect.EnumNumber {
1305	return protoreflect.EnumNumber(x)
1306}
1307
1308// Deprecated: Use HardwareFeatures_Keyboard_KeyboardBottomLeftLayout.Descriptor instead.
1309func (HardwareFeatures_Keyboard_KeyboardBottomLeftLayout) EnumDescriptor() ([]byte, []int) {
1310	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 15, 2}
1311}
1312
1313type HardwareFeatures_Keyboard_KeyboardBottomRightLayout int32
1314
1315const (
1316	HardwareFeatures_Keyboard_KEYBOARD_BOTTOM_RIGHT_LAYOUT_UNKNOWN HardwareFeatures_Keyboard_KeyboardBottomRightLayout = 0
1317	HardwareFeatures_Keyboard_KEYBOARD_BOTTOM_RIGHT_2_KEYS         HardwareFeatures_Keyboard_KeyboardBottomRightLayout = 1
1318	HardwareFeatures_Keyboard_KEYBOARD_BOTTOM_RIGHT_3_KEYS         HardwareFeatures_Keyboard_KeyboardBottomRightLayout = 2
1319	HardwareFeatures_Keyboard_KEYBOARD_BOTTOM_RIGHT_4_KEYS         HardwareFeatures_Keyboard_KeyboardBottomRightLayout = 3
1320)
1321
1322// Enum value maps for HardwareFeatures_Keyboard_KeyboardBottomRightLayout.
1323var (
1324	HardwareFeatures_Keyboard_KeyboardBottomRightLayout_name = map[int32]string{
1325		0: "KEYBOARD_BOTTOM_RIGHT_LAYOUT_UNKNOWN",
1326		1: "KEYBOARD_BOTTOM_RIGHT_2_KEYS",
1327		2: "KEYBOARD_BOTTOM_RIGHT_3_KEYS",
1328		3: "KEYBOARD_BOTTOM_RIGHT_4_KEYS",
1329	}
1330	HardwareFeatures_Keyboard_KeyboardBottomRightLayout_value = map[string]int32{
1331		"KEYBOARD_BOTTOM_RIGHT_LAYOUT_UNKNOWN": 0,
1332		"KEYBOARD_BOTTOM_RIGHT_2_KEYS":         1,
1333		"KEYBOARD_BOTTOM_RIGHT_3_KEYS":         2,
1334		"KEYBOARD_BOTTOM_RIGHT_4_KEYS":         3,
1335	}
1336)
1337
1338func (x HardwareFeatures_Keyboard_KeyboardBottomRightLayout) Enum() *HardwareFeatures_Keyboard_KeyboardBottomRightLayout {
1339	p := new(HardwareFeatures_Keyboard_KeyboardBottomRightLayout)
1340	*p = x
1341	return p
1342}
1343
1344func (x HardwareFeatures_Keyboard_KeyboardBottomRightLayout) String() string {
1345	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1346}
1347
1348func (HardwareFeatures_Keyboard_KeyboardBottomRightLayout) Descriptor() protoreflect.EnumDescriptor {
1349	return file_chromiumos_config_api_topology_proto_enumTypes[20].Descriptor()
1350}
1351
1352func (HardwareFeatures_Keyboard_KeyboardBottomRightLayout) Type() protoreflect.EnumType {
1353	return &file_chromiumos_config_api_topology_proto_enumTypes[20]
1354}
1355
1356func (x HardwareFeatures_Keyboard_KeyboardBottomRightLayout) Number() protoreflect.EnumNumber {
1357	return protoreflect.EnumNumber(x)
1358}
1359
1360// Deprecated: Use HardwareFeatures_Keyboard_KeyboardBottomRightLayout.Descriptor instead.
1361func (HardwareFeatures_Keyboard_KeyboardBottomRightLayout) EnumDescriptor() ([]byte, []int) {
1362	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 15, 3}
1363}
1364
1365type HardwareFeatures_Keyboard_NumericPadLayout int32
1366
1367const (
1368	HardwareFeatures_Keyboard_NUMERIC_PAD_LAYOUT_UNKNOWN HardwareFeatures_Keyboard_NumericPadLayout = 0
1369	HardwareFeatures_Keyboard_NUMERIC_PAD_3_COLUMN       HardwareFeatures_Keyboard_NumericPadLayout = 1
1370	HardwareFeatures_Keyboard_NUMERIC_PAD_4_COLUMN       HardwareFeatures_Keyboard_NumericPadLayout = 2
1371)
1372
1373// Enum value maps for HardwareFeatures_Keyboard_NumericPadLayout.
1374var (
1375	HardwareFeatures_Keyboard_NumericPadLayout_name = map[int32]string{
1376		0: "NUMERIC_PAD_LAYOUT_UNKNOWN",
1377		1: "NUMERIC_PAD_3_COLUMN",
1378		2: "NUMERIC_PAD_4_COLUMN",
1379	}
1380	HardwareFeatures_Keyboard_NumericPadLayout_value = map[string]int32{
1381		"NUMERIC_PAD_LAYOUT_UNKNOWN": 0,
1382		"NUMERIC_PAD_3_COLUMN":       1,
1383		"NUMERIC_PAD_4_COLUMN":       2,
1384	}
1385)
1386
1387func (x HardwareFeatures_Keyboard_NumericPadLayout) Enum() *HardwareFeatures_Keyboard_NumericPadLayout {
1388	p := new(HardwareFeatures_Keyboard_NumericPadLayout)
1389	*p = x
1390	return p
1391}
1392
1393func (x HardwareFeatures_Keyboard_NumericPadLayout) String() string {
1394	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1395}
1396
1397func (HardwareFeatures_Keyboard_NumericPadLayout) Descriptor() protoreflect.EnumDescriptor {
1398	return file_chromiumos_config_api_topology_proto_enumTypes[21].Descriptor()
1399}
1400
1401func (HardwareFeatures_Keyboard_NumericPadLayout) Type() protoreflect.EnumType {
1402	return &file_chromiumos_config_api_topology_proto_enumTypes[21]
1403}
1404
1405func (x HardwareFeatures_Keyboard_NumericPadLayout) Number() protoreflect.EnumNumber {
1406	return protoreflect.EnumNumber(x)
1407}
1408
1409// Deprecated: Use HardwareFeatures_Keyboard_NumericPadLayout.Descriptor instead.
1410func (HardwareFeatures_Keyboard_NumericPadLayout) EnumDescriptor() ([]byte, []int) {
1411	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 15, 4}
1412}
1413
1414type HardwareFeatures_Fingerprint_Location int32
1415
1416const (
1417	HardwareFeatures_Fingerprint_LOCATION_UNKNOWN HardwareFeatures_Fingerprint_Location = 0
1418	// Top of the screen (e.g. Pixel Slate) at the left
1419	HardwareFeatures_Fingerprint_POWER_BUTTON_TOP_LEFT HardwareFeatures_Fingerprint_Location = 1
1420	// Bottom of keyboard at the left
1421	HardwareFeatures_Fingerprint_KEYBOARD_BOTTOM_LEFT HardwareFeatures_Fingerprint_Location = 2
1422	// Bottom of keyboard at the right
1423	HardwareFeatures_Fingerprint_KEYBOARD_BOTTOM_RIGHT HardwareFeatures_Fingerprint_Location = 3
1424	// Top of keyboard at the right (e.g. Galaxy Chromebook)
1425	HardwareFeatures_Fingerprint_KEYBOARD_TOP_RIGHT HardwareFeatures_Fingerprint_Location = 4
1426	// At the right side
1427	HardwareFeatures_Fingerprint_RIGHT_SIDE HardwareFeatures_Fingerprint_Location = 6
1428	// At the left side
1429	HardwareFeatures_Fingerprint_LEFT_SIDE HardwareFeatures_Fingerprint_Location = 7
1430	// Left of power button at top right corner (of the keyboard)
1431	HardwareFeatures_Fingerprint_LEFT_OF_POWER_BUTTON_TOP_RIGHT HardwareFeatures_Fingerprint_Location = 9
1432)
1433
1434// Enum value maps for HardwareFeatures_Fingerprint_Location.
1435var (
1436	HardwareFeatures_Fingerprint_Location_name = map[int32]string{
1437		0: "LOCATION_UNKNOWN",
1438		1: "POWER_BUTTON_TOP_LEFT",
1439		2: "KEYBOARD_BOTTOM_LEFT",
1440		3: "KEYBOARD_BOTTOM_RIGHT",
1441		4: "KEYBOARD_TOP_RIGHT",
1442		6: "RIGHT_SIDE",
1443		7: "LEFT_SIDE",
1444		9: "LEFT_OF_POWER_BUTTON_TOP_RIGHT",
1445	}
1446	HardwareFeatures_Fingerprint_Location_value = map[string]int32{
1447		"LOCATION_UNKNOWN":               0,
1448		"POWER_BUTTON_TOP_LEFT":          1,
1449		"KEYBOARD_BOTTOM_LEFT":           2,
1450		"KEYBOARD_BOTTOM_RIGHT":          3,
1451		"KEYBOARD_TOP_RIGHT":             4,
1452		"RIGHT_SIDE":                     6,
1453		"LEFT_SIDE":                      7,
1454		"LEFT_OF_POWER_BUTTON_TOP_RIGHT": 9,
1455	}
1456)
1457
1458func (x HardwareFeatures_Fingerprint_Location) Enum() *HardwareFeatures_Fingerprint_Location {
1459	p := new(HardwareFeatures_Fingerprint_Location)
1460	*p = x
1461	return p
1462}
1463
1464func (x HardwareFeatures_Fingerprint_Location) String() string {
1465	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1466}
1467
1468func (HardwareFeatures_Fingerprint_Location) Descriptor() protoreflect.EnumDescriptor {
1469	return file_chromiumos_config_api_topology_proto_enumTypes[22].Descriptor()
1470}
1471
1472func (HardwareFeatures_Fingerprint_Location) Type() protoreflect.EnumType {
1473	return &file_chromiumos_config_api_topology_proto_enumTypes[22]
1474}
1475
1476func (x HardwareFeatures_Fingerprint_Location) Number() protoreflect.EnumNumber {
1477	return protoreflect.EnumNumber(x)
1478}
1479
1480// Deprecated: Use HardwareFeatures_Fingerprint_Location.Descriptor instead.
1481func (HardwareFeatures_Fingerprint_Location) EnumDescriptor() ([]byte, []int) {
1482	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 17, 0}
1483}
1484
1485type HardwareFeatures_Wifi_WifiChip int32
1486
1487const (
1488	HardwareFeatures_Wifi_WIFI_CHIP_UNKNOWN HardwareFeatures_Wifi_WifiChip = 0
1489	HardwareFeatures_Wifi_WIRELESS_86ED801D HardwareFeatures_Wifi_WifiChip = 1
1490	HardwareFeatures_Wifi_WIRELESS_REALTEK  HardwareFeatures_Wifi_WifiChip = 2
1491)
1492
1493// Enum value maps for HardwareFeatures_Wifi_WifiChip.
1494var (
1495	HardwareFeatures_Wifi_WifiChip_name = map[int32]string{
1496		0: "WIFI_CHIP_UNKNOWN",
1497		1: "WIRELESS_86ED801D",
1498		2: "WIRELESS_REALTEK",
1499	}
1500	HardwareFeatures_Wifi_WifiChip_value = map[string]int32{
1501		"WIFI_CHIP_UNKNOWN": 0,
1502		"WIRELESS_86ED801D": 1,
1503		"WIRELESS_REALTEK":  2,
1504	}
1505)
1506
1507func (x HardwareFeatures_Wifi_WifiChip) Enum() *HardwareFeatures_Wifi_WifiChip {
1508	p := new(HardwareFeatures_Wifi_WifiChip)
1509	*p = x
1510	return p
1511}
1512
1513func (x HardwareFeatures_Wifi_WifiChip) String() string {
1514	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1515}
1516
1517func (HardwareFeatures_Wifi_WifiChip) Descriptor() protoreflect.EnumDescriptor {
1518	return file_chromiumos_config_api_topology_proto_enumTypes[23].Descriptor()
1519}
1520
1521func (HardwareFeatures_Wifi_WifiChip) Type() protoreflect.EnumType {
1522	return &file_chromiumos_config_api_topology_proto_enumTypes[23]
1523}
1524
1525func (x HardwareFeatures_Wifi_WifiChip) Number() protoreflect.EnumNumber {
1526	return protoreflect.EnumNumber(x)
1527}
1528
1529// Deprecated: Use HardwareFeatures_Wifi_WifiChip.Descriptor instead.
1530func (HardwareFeatures_Wifi_WifiChip) EnumDescriptor() ([]byte, []int) {
1531	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 21, 0}
1532}
1533
1534// A general part of the device that contains the button,
1535// e.g. "on the screen", "on the keyboard".
1536type HardwareFeatures_Button_Region int32
1537
1538const (
1539	HardwareFeatures_Button_REGION_UNKNOWN HardwareFeatures_Button_Region = 0
1540	HardwareFeatures_Button_SCREEN         HardwareFeatures_Button_Region = 1
1541	HardwareFeatures_Button_KEYBOARD       HardwareFeatures_Button_Region = 2
1542)
1543
1544// Enum value maps for HardwareFeatures_Button_Region.
1545var (
1546	HardwareFeatures_Button_Region_name = map[int32]string{
1547		0: "REGION_UNKNOWN",
1548		1: "SCREEN",
1549		2: "KEYBOARD",
1550	}
1551	HardwareFeatures_Button_Region_value = map[string]int32{
1552		"REGION_UNKNOWN": 0,
1553		"SCREEN":         1,
1554		"KEYBOARD":       2,
1555	}
1556)
1557
1558func (x HardwareFeatures_Button_Region) Enum() *HardwareFeatures_Button_Region {
1559	p := new(HardwareFeatures_Button_Region)
1560	*p = x
1561	return p
1562}
1563
1564func (x HardwareFeatures_Button_Region) String() string {
1565	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1566}
1567
1568func (HardwareFeatures_Button_Region) Descriptor() protoreflect.EnumDescriptor {
1569	return file_chromiumos_config_api_topology_proto_enumTypes[24].Descriptor()
1570}
1571
1572func (HardwareFeatures_Button_Region) Type() protoreflect.EnumType {
1573	return &file_chromiumos_config_api_topology_proto_enumTypes[24]
1574}
1575
1576func (x HardwareFeatures_Button_Region) Number() protoreflect.EnumNumber {
1577	return protoreflect.EnumNumber(x)
1578}
1579
1580// Deprecated: Use HardwareFeatures_Button_Region.Descriptor instead.
1581func (HardwareFeatures_Button_Region) EnumDescriptor() ([]byte, []int) {
1582	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 22, 0}
1583}
1584
1585// The edge of the Region that contains the button.
1586type HardwareFeatures_Button_Edge int32
1587
1588const (
1589	HardwareFeatures_Button_EDGE_UNKNOWN HardwareFeatures_Button_Edge = 0
1590	HardwareFeatures_Button_LEFT         HardwareFeatures_Button_Edge = 1
1591	HardwareFeatures_Button_RIGHT        HardwareFeatures_Button_Edge = 2
1592	HardwareFeatures_Button_TOP          HardwareFeatures_Button_Edge = 3
1593	HardwareFeatures_Button_BOTTOM       HardwareFeatures_Button_Edge = 4
1594)
1595
1596// Enum value maps for HardwareFeatures_Button_Edge.
1597var (
1598	HardwareFeatures_Button_Edge_name = map[int32]string{
1599		0: "EDGE_UNKNOWN",
1600		1: "LEFT",
1601		2: "RIGHT",
1602		3: "TOP",
1603		4: "BOTTOM",
1604	}
1605	HardwareFeatures_Button_Edge_value = map[string]int32{
1606		"EDGE_UNKNOWN": 0,
1607		"LEFT":         1,
1608		"RIGHT":        2,
1609		"TOP":          3,
1610		"BOTTOM":       4,
1611	}
1612)
1613
1614func (x HardwareFeatures_Button_Edge) Enum() *HardwareFeatures_Button_Edge {
1615	p := new(HardwareFeatures_Button_Edge)
1616	*p = x
1617	return p
1618}
1619
1620func (x HardwareFeatures_Button_Edge) String() string {
1621	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1622}
1623
1624func (HardwareFeatures_Button_Edge) Descriptor() protoreflect.EnumDescriptor {
1625	return file_chromiumos_config_api_topology_proto_enumTypes[25].Descriptor()
1626}
1627
1628func (HardwareFeatures_Button_Edge) Type() protoreflect.EnumType {
1629	return &file_chromiumos_config_api_topology_proto_enumTypes[25]
1630}
1631
1632func (x HardwareFeatures_Button_Edge) Number() protoreflect.EnumNumber {
1633	return protoreflect.EnumNumber(x)
1634}
1635
1636// Deprecated: Use HardwareFeatures_Button_Edge.Descriptor instead.
1637func (HardwareFeatures_Button_Edge) EnumDescriptor() ([]byte, []int) {
1638	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 22, 1}
1639}
1640
1641// The type of EC on the device.
1642// Next Tag: 3
1643type HardwareFeatures_EmbeddedController_EmbeddedControllerType int32
1644
1645const (
1646	HardwareFeatures_EmbeddedController_EC_TYPE_UNKNOWN HardwareFeatures_EmbeddedController_EmbeddedControllerType = 0
1647	HardwareFeatures_EmbeddedController_EC_CHROME       HardwareFeatures_EmbeddedController_EmbeddedControllerType = 1
1648	HardwareFeatures_EmbeddedController_EC_WILCO        HardwareFeatures_EmbeddedController_EmbeddedControllerType = 2
1649)
1650
1651// Enum value maps for HardwareFeatures_EmbeddedController_EmbeddedControllerType.
1652var (
1653	HardwareFeatures_EmbeddedController_EmbeddedControllerType_name = map[int32]string{
1654		0: "EC_TYPE_UNKNOWN",
1655		1: "EC_CHROME",
1656		2: "EC_WILCO",
1657	}
1658	HardwareFeatures_EmbeddedController_EmbeddedControllerType_value = map[string]int32{
1659		"EC_TYPE_UNKNOWN": 0,
1660		"EC_CHROME":       1,
1661		"EC_WILCO":        2,
1662	}
1663)
1664
1665func (x HardwareFeatures_EmbeddedController_EmbeddedControllerType) Enum() *HardwareFeatures_EmbeddedController_EmbeddedControllerType {
1666	p := new(HardwareFeatures_EmbeddedController_EmbeddedControllerType)
1667	*p = x
1668	return p
1669}
1670
1671func (x HardwareFeatures_EmbeddedController_EmbeddedControllerType) String() string {
1672	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1673}
1674
1675func (HardwareFeatures_EmbeddedController_EmbeddedControllerType) Descriptor() protoreflect.EnumDescriptor {
1676	return file_chromiumos_config_api_topology_proto_enumTypes[26].Descriptor()
1677}
1678
1679func (HardwareFeatures_EmbeddedController_EmbeddedControllerType) Type() protoreflect.EnumType {
1680	return &file_chromiumos_config_api_topology_proto_enumTypes[26]
1681}
1682
1683func (x HardwareFeatures_EmbeddedController_EmbeddedControllerType) Number() protoreflect.EnumNumber {
1684	return protoreflect.EnumNumber(x)
1685}
1686
1687// Deprecated: Use HardwareFeatures_EmbeddedController_EmbeddedControllerType.Descriptor instead.
1688func (HardwareFeatures_EmbeddedController_EmbeddedControllerType) EnumDescriptor() ([]byte, []int) {
1689	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 23, 0}
1690}
1691
1692type HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType int32
1693
1694const (
1695	HardwareFeatures_TrustedPlatformModule_TPM_TYPE_UNKNOWN HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType = 0
1696	HardwareFeatures_TrustedPlatformModule_THIRD_PARTY      HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType = 1
1697	// GSCs (Google Security Chips) provide additional functionality beyond
1698	// serving as the Trusted Platform Module.
1699	HardwareFeatures_TrustedPlatformModule_GSC_H1B HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType = 2
1700	HardwareFeatures_TrustedPlatformModule_GSC_H1D HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType = 3
1701)
1702
1703// Enum value maps for HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType.
1704var (
1705	HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType_name = map[int32]string{
1706		0: "TPM_TYPE_UNKNOWN",
1707		1: "THIRD_PARTY",
1708		2: "GSC_H1B",
1709		3: "GSC_H1D",
1710	}
1711	HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType_value = map[string]int32{
1712		"TPM_TYPE_UNKNOWN": 0,
1713		"THIRD_PARTY":      1,
1714		"GSC_H1B":          2,
1715		"GSC_H1D":          3,
1716	}
1717)
1718
1719func (x HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType) Enum() *HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType {
1720	p := new(HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType)
1721	*p = x
1722	return p
1723}
1724
1725func (x HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType) String() string {
1726	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1727}
1728
1729func (HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType) Descriptor() protoreflect.EnumDescriptor {
1730	return file_chromiumos_config_api_topology_proto_enumTypes[27].Descriptor()
1731}
1732
1733func (HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType) Type() protoreflect.EnumType {
1734	return &file_chromiumos_config_api_topology_proto_enumTypes[27]
1735}
1736
1737func (x HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType) Number() protoreflect.EnumNumber {
1738	return protoreflect.EnumNumber(x)
1739}
1740
1741// Deprecated: Use HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType.Descriptor instead.
1742func (HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType) EnumDescriptor() ([]byte, []int) {
1743	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 24, 0}
1744}
1745
1746// The runtime-determined TPM version. This field is needed because a flex
1747// device couldn't determine its TPM version using USE flags, so it needs
1748// to rely on this hardware feature which is detected during runtime.
1749type HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion int32
1750
1751const (
1752	HardwareFeatures_TrustedPlatformModule_TPM_VERSION_DISABLED HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion = 0
1753	// TPM 1.2
1754	HardwareFeatures_TrustedPlatformModule_TPM_VERSION_V1_2 HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion = 1
1755	// TPM 2.0
1756	HardwareFeatures_TrustedPlatformModule_TPM_VERSION_V2 HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion = 2
1757)
1758
1759// Enum value maps for HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion.
1760var (
1761	HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion_name = map[int32]string{
1762		0: "TPM_VERSION_DISABLED",
1763		1: "TPM_VERSION_V1_2",
1764		2: "TPM_VERSION_V2",
1765	}
1766	HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion_value = map[string]int32{
1767		"TPM_VERSION_DISABLED": 0,
1768		"TPM_VERSION_V1_2":     1,
1769		"TPM_VERSION_V2":       2,
1770	}
1771)
1772
1773func (x HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion) Enum() *HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion {
1774	p := new(HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion)
1775	*p = x
1776	return p
1777}
1778
1779func (x HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion) String() string {
1780	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1781}
1782
1783func (HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion) Descriptor() protoreflect.EnumDescriptor {
1784	return file_chromiumos_config_api_topology_proto_enumTypes[28].Descriptor()
1785}
1786
1787func (HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion) Type() protoreflect.EnumType {
1788	return &file_chromiumos_config_api_topology_proto_enumTypes[28]
1789}
1790
1791func (x HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion) Number() protoreflect.EnumNumber {
1792	return protoreflect.EnumNumber(x)
1793}
1794
1795// Deprecated: Use HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion.Descriptor instead.
1796func (HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion) EnumDescriptor() ([]byte, []int) {
1797	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 24, 1}
1798}
1799
1800type HardwareFeatures_TrustedPlatformModule_GscFirmwareName int32
1801
1802const (
1803	HardwareFeatures_TrustedPlatformModule_GSC_NONE HardwareFeatures_TrustedPlatformModule_GscFirmwareName = 0
1804	HardwareFeatures_TrustedPlatformModule_GSC_CR50 HardwareFeatures_TrustedPlatformModule_GscFirmwareName = 1
1805	HardwareFeatures_TrustedPlatformModule_GSC_TI50 HardwareFeatures_TrustedPlatformModule_GscFirmwareName = 2
1806)
1807
1808// Enum value maps for HardwareFeatures_TrustedPlatformModule_GscFirmwareName.
1809var (
1810	HardwareFeatures_TrustedPlatformModule_GscFirmwareName_name = map[int32]string{
1811		0: "GSC_NONE",
1812		1: "GSC_CR50",
1813		2: "GSC_TI50",
1814	}
1815	HardwareFeatures_TrustedPlatformModule_GscFirmwareName_value = map[string]int32{
1816		"GSC_NONE": 0,
1817		"GSC_CR50": 1,
1818		"GSC_TI50": 2,
1819	}
1820)
1821
1822func (x HardwareFeatures_TrustedPlatformModule_GscFirmwareName) Enum() *HardwareFeatures_TrustedPlatformModule_GscFirmwareName {
1823	p := new(HardwareFeatures_TrustedPlatformModule_GscFirmwareName)
1824	*p = x
1825	return p
1826}
1827
1828func (x HardwareFeatures_TrustedPlatformModule_GscFirmwareName) String() string {
1829	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1830}
1831
1832func (HardwareFeatures_TrustedPlatformModule_GscFirmwareName) Descriptor() protoreflect.EnumDescriptor {
1833	return file_chromiumos_config_api_topology_proto_enumTypes[29].Descriptor()
1834}
1835
1836func (HardwareFeatures_TrustedPlatformModule_GscFirmwareName) Type() protoreflect.EnumType {
1837	return &file_chromiumos_config_api_topology_proto_enumTypes[29]
1838}
1839
1840func (x HardwareFeatures_TrustedPlatformModule_GscFirmwareName) Number() protoreflect.EnumNumber {
1841	return protoreflect.EnumNumber(x)
1842}
1843
1844// Deprecated: Use HardwareFeatures_TrustedPlatformModule_GscFirmwareName.Descriptor instead.
1845func (HardwareFeatures_TrustedPlatformModule_GscFirmwareName) EnumDescriptor() ([]byte, []int) {
1846	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 24, 2}
1847}
1848
1849type HardwareFeatures_Display_Type int32
1850
1851const (
1852	HardwareFeatures_Display_TYPE_UNKNOWN           HardwareFeatures_Display_Type = 0
1853	HardwareFeatures_Display_TYPE_INTERNAL          HardwareFeatures_Display_Type = 1
1854	HardwareFeatures_Display_TYPE_EXTERNAL          HardwareFeatures_Display_Type = 2
1855	HardwareFeatures_Display_TYPE_INTERNAL_EXTERNAL HardwareFeatures_Display_Type = 3
1856)
1857
1858// Enum value maps for HardwareFeatures_Display_Type.
1859var (
1860	HardwareFeatures_Display_Type_name = map[int32]string{
1861		0: "TYPE_UNKNOWN",
1862		1: "TYPE_INTERNAL",
1863		2: "TYPE_EXTERNAL",
1864		3: "TYPE_INTERNAL_EXTERNAL",
1865	}
1866	HardwareFeatures_Display_Type_value = map[string]int32{
1867		"TYPE_UNKNOWN":           0,
1868		"TYPE_INTERNAL":          1,
1869		"TYPE_EXTERNAL":          2,
1870		"TYPE_INTERNAL_EXTERNAL": 3,
1871	}
1872)
1873
1874func (x HardwareFeatures_Display_Type) Enum() *HardwareFeatures_Display_Type {
1875	p := new(HardwareFeatures_Display_Type)
1876	*p = x
1877	return p
1878}
1879
1880func (x HardwareFeatures_Display_Type) String() string {
1881	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1882}
1883
1884func (HardwareFeatures_Display_Type) Descriptor() protoreflect.EnumDescriptor {
1885	return file_chromiumos_config_api_topology_proto_enumTypes[30].Descriptor()
1886}
1887
1888func (HardwareFeatures_Display_Type) Type() protoreflect.EnumType {
1889	return &file_chromiumos_config_api_topology_proto_enumTypes[30]
1890}
1891
1892func (x HardwareFeatures_Display_Type) Number() protoreflect.EnumNumber {
1893	return protoreflect.EnumNumber(x)
1894}
1895
1896// Deprecated: Use HardwareFeatures_Display_Type.Descriptor instead.
1897func (HardwareFeatures_Display_Type) EnumDescriptor() ([]byte, []int) {
1898	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 26, 0}
1899}
1900
1901type HardwareFeatures_Touchpad_TouchpadType int32
1902
1903const (
1904	HardwareFeatures_Touchpad_TYPE_UNKNOWN HardwareFeatures_Touchpad_TouchpadType = 0
1905	HardwareFeatures_Touchpad_INTERNAL     HardwareFeatures_Touchpad_TouchpadType = 1 // E.g. Clamshell/Convertible
1906	HardwareFeatures_Touchpad_NONE         HardwareFeatures_Touchpad_TouchpadType = 2 // E.g. Chromebox
1907	HardwareFeatures_Touchpad_DETACHABLE   HardwareFeatures_Touchpad_TouchpadType = 3 // E.g. Tablet with detachable keyboard/touchpad
1908)
1909
1910// Enum value maps for HardwareFeatures_Touchpad_TouchpadType.
1911var (
1912	HardwareFeatures_Touchpad_TouchpadType_name = map[int32]string{
1913		0: "TYPE_UNKNOWN",
1914		1: "INTERNAL",
1915		2: "NONE",
1916		3: "DETACHABLE",
1917	}
1918	HardwareFeatures_Touchpad_TouchpadType_value = map[string]int32{
1919		"TYPE_UNKNOWN": 0,
1920		"INTERNAL":     1,
1921		"NONE":         2,
1922		"DETACHABLE":   3,
1923	}
1924)
1925
1926func (x HardwareFeatures_Touchpad_TouchpadType) Enum() *HardwareFeatures_Touchpad_TouchpadType {
1927	p := new(HardwareFeatures_Touchpad_TouchpadType)
1928	*p = x
1929	return p
1930}
1931
1932func (x HardwareFeatures_Touchpad_TouchpadType) String() string {
1933	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1934}
1935
1936func (HardwareFeatures_Touchpad_TouchpadType) Descriptor() protoreflect.EnumDescriptor {
1937	return file_chromiumos_config_api_topology_proto_enumTypes[31].Descriptor()
1938}
1939
1940func (HardwareFeatures_Touchpad_TouchpadType) Type() protoreflect.EnumType {
1941	return &file_chromiumos_config_api_topology_proto_enumTypes[31]
1942}
1943
1944func (x HardwareFeatures_Touchpad_TouchpadType) Number() protoreflect.EnumNumber {
1945	return protoreflect.EnumNumber(x)
1946}
1947
1948// Deprecated: Use HardwareFeatures_Touchpad_TouchpadType.Descriptor instead.
1949func (HardwareFeatures_Touchpad_TouchpadType) EnumDescriptor() ([]byte, []int) {
1950	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 27, 0}
1951}
1952
1953// The type of dGPU on the device.
1954// Next Tag: 3
1955type HardwareFeatures_Dgpu_DgpuType int32
1956
1957const (
1958	HardwareFeatures_Dgpu_DGPU_UNKNOWN HardwareFeatures_Dgpu_DgpuType = 0
1959	HardwareFeatures_Dgpu_DGPU_NV3050  HardwareFeatures_Dgpu_DgpuType = 1
1960	HardwareFeatures_Dgpu_DGPU_NV4050  HardwareFeatures_Dgpu_DgpuType = 2
1961)
1962
1963// Enum value maps for HardwareFeatures_Dgpu_DgpuType.
1964var (
1965	HardwareFeatures_Dgpu_DgpuType_name = map[int32]string{
1966		0: "DGPU_UNKNOWN",
1967		1: "DGPU_NV3050",
1968		2: "DGPU_NV4050",
1969	}
1970	HardwareFeatures_Dgpu_DgpuType_value = map[string]int32{
1971		"DGPU_UNKNOWN": 0,
1972		"DGPU_NV3050":  1,
1973		"DGPU_NV4050":  2,
1974	}
1975)
1976
1977func (x HardwareFeatures_Dgpu_DgpuType) Enum() *HardwareFeatures_Dgpu_DgpuType {
1978	p := new(HardwareFeatures_Dgpu_DgpuType)
1979	*p = x
1980	return p
1981}
1982
1983func (x HardwareFeatures_Dgpu_DgpuType) String() string {
1984	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
1985}
1986
1987func (HardwareFeatures_Dgpu_DgpuType) Descriptor() protoreflect.EnumDescriptor {
1988	return file_chromiumos_config_api_topology_proto_enumTypes[32].Descriptor()
1989}
1990
1991func (HardwareFeatures_Dgpu_DgpuType) Type() protoreflect.EnumType {
1992	return &file_chromiumos_config_api_topology_proto_enumTypes[32]
1993}
1994
1995func (x HardwareFeatures_Dgpu_DgpuType) Number() protoreflect.EnumNumber {
1996	return protoreflect.EnumNumber(x)
1997}
1998
1999// Deprecated: Use HardwareFeatures_Dgpu_DgpuType.Descriptor instead.
2000func (HardwareFeatures_Dgpu_DgpuType) EnumDescriptor() ([]byte, []int) {
2001	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 40, 0}
2002}
2003
2004// Represents a specific hardware topology option for a hardware feature, e.g.
2005// camera, microphone, gyroscope, daughter board connection. For example. one
2006// camera topology would be represented by a unique instance of this Topology
2007// message.
2008//
2009// All Topology instances are scoped to a particular Design.
2010type Topology struct {
2011	state         protoimpl.MessageState
2012	sizeCache     protoimpl.SizeCache
2013	unknownFields protoimpl.UnknownFields
2014
2015	// Short, but meaningful string that represents the topology. Blank id is
2016	// not valid. Id values are validated by Design repo. Ids are
2017	// meaningful within a Design. Ids are scoped and unique within a
2018	// particular hardware features for a Design. For example, it is valid to have
2019	// a "NONE" id for both the camera and microphone hardware feature within the
2020	// same Design.
2021	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
2022	// The type of hardware feature this topology describes. This is used to
2023	// ensure that the correct Topology values are used correctly within the
2024	// HardwareTopology message
2025	Type Topology_Type `protobuf:"varint,2,opt,name=type,proto3,enum=chromiumos.config.api.Topology_Type" json:"type,omitempty"`
2026	// Map of human readable descriptions in various languages. Maps language
2027	// code, e.g. "EN" or "ZH", to description of topology. These descriptions can
2028	// be displayed to factory operators to select the correct options that
2029	// applies to the board they are assembling.
2030	Description map[string]string `protobuf:"bytes,3,rep,name=description,proto3" json:"description,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
2031	// Specify the subset of hardware features that this hardware topology
2032	// provides
2033	HardwareFeature *HardwareFeatures `protobuf:"bytes,4,opt,name=hardware_feature,json=hardwareFeature,proto3" json:"hardware_feature,omitempty"`
2034}
2035
2036func (x *Topology) Reset() {
2037	*x = Topology{}
2038	if protoimpl.UnsafeEnabled {
2039		mi := &file_chromiumos_config_api_topology_proto_msgTypes[0]
2040		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2041		ms.StoreMessageInfo(mi)
2042	}
2043}
2044
2045func (x *Topology) String() string {
2046	return protoimpl.X.MessageStringOf(x)
2047}
2048
2049func (*Topology) ProtoMessage() {}
2050
2051func (x *Topology) ProtoReflect() protoreflect.Message {
2052	mi := &file_chromiumos_config_api_topology_proto_msgTypes[0]
2053	if protoimpl.UnsafeEnabled && x != nil {
2054		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2055		if ms.LoadMessageInfo() == nil {
2056			ms.StoreMessageInfo(mi)
2057		}
2058		return ms
2059	}
2060	return mi.MessageOf(x)
2061}
2062
2063// Deprecated: Use Topology.ProtoReflect.Descriptor instead.
2064func (*Topology) Descriptor() ([]byte, []int) {
2065	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{0}
2066}
2067
2068func (x *Topology) GetId() string {
2069	if x != nil {
2070		return x.Id
2071	}
2072	return ""
2073}
2074
2075func (x *Topology) GetType() Topology_Type {
2076	if x != nil {
2077		return x.Type
2078	}
2079	return Topology_TYPE_UNKNOWN
2080}
2081
2082func (x *Topology) GetDescription() map[string]string {
2083	if x != nil {
2084		return x.Description
2085	}
2086	return nil
2087}
2088
2089func (x *Topology) GetHardwareFeature() *HardwareFeatures {
2090	if x != nil {
2091		return x.HardwareFeature
2092	}
2093	return nil
2094}
2095
2096// Defines a time duration that's targeted for easier reading/understanding
2097// of program requirements (versus normalizing everything to millis).
2098type Duration struct {
2099	state         protoimpl.MessageState
2100	sizeCache     protoimpl.SizeCache
2101	unknownFields protoimpl.UnknownFields
2102
2103	Type  Duration_Type `protobuf:"varint,1,opt,name=type,proto3,enum=chromiumos.config.api.Duration_Type" json:"type,omitempty"`
2104	Value int32         `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"`
2105}
2106
2107func (x *Duration) Reset() {
2108	*x = Duration{}
2109	if protoimpl.UnsafeEnabled {
2110		mi := &file_chromiumos_config_api_topology_proto_msgTypes[1]
2111		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2112		ms.StoreMessageInfo(mi)
2113	}
2114}
2115
2116func (x *Duration) String() string {
2117	return protoimpl.X.MessageStringOf(x)
2118}
2119
2120func (*Duration) ProtoMessage() {}
2121
2122func (x *Duration) ProtoReflect() protoreflect.Message {
2123	mi := &file_chromiumos_config_api_topology_proto_msgTypes[1]
2124	if protoimpl.UnsafeEnabled && x != nil {
2125		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2126		if ms.LoadMessageInfo() == nil {
2127			ms.StoreMessageInfo(mi)
2128		}
2129		return ms
2130	}
2131	return mi.MessageOf(x)
2132}
2133
2134// Deprecated: Use Duration.ProtoReflect.Descriptor instead.
2135func (*Duration) Descriptor() ([]byte, []int) {
2136	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{1}
2137}
2138
2139func (x *Duration) GetType() Duration_Type {
2140	if x != nil {
2141		return x.Type
2142	}
2143	return Duration_TYPE_UNKNOWN
2144}
2145
2146func (x *Duration) GetValue() int32 {
2147	if x != nil {
2148		return x.Value
2149	}
2150	return 0
2151}
2152
2153// Each Topology message specifies what that topology means in a 1st class
2154// queryable way. Each Topology will only the subset of hardware features that
2155// are applicable to that value.
2156// The DesignConfig layer will combine all of the Topology messages
2157// HardwareFeature messages into a wholistic view of the hardware design
2158// configuration.
2159//
2160// Note to API designers: each field needs to be able to differentiate
2161// an unspecified value and from the 0-value; this can be down with
2162// messages or enums. Each field also defines how multiple values should be
2163// combined.
2164// NEXT TAG: 55
2165type HardwareFeatures struct {
2166	state         protoimpl.MessageState
2167	sizeCache     protoimpl.SizeCache
2168	unknownFields protoimpl.UnknownFields
2169
2170	// USB-C properties
2171	UsbC *HardwareFeatures_UsbC `protobuf:"bytes,1,opt,name=usb_c,json=usbC,proto3" json:"usb_c,omitempty"`
2172	// USB-A properties
2173	UsbA *HardwareFeatures_UsbA `protobuf:"bytes,2,opt,name=usb_a,json=usbA,proto3" json:"usb_a,omitempty"`
2174	// Cellular properties
2175	Cellular *HardwareFeatures_Cellular `protobuf:"bytes,3,opt,name=cellular,proto3" json:"cellular,omitempty"`
2176	// HDMI properties
2177	Hdmi *HardwareFeatures_Hdmi `protobuf:"bytes,4,opt,name=hdmi,proto3" json:"hdmi,omitempty"`
2178	// Firmware configuration field programmed in CBI. The value from each
2179	// topology value will be summed to create the final DesignConfig level
2180	// firmware configuration value.
2181	FwConfig *HardwareFeatures_FirmwareConfiguration `protobuf:"bytes,5,opt,name=fw_config,json=fwConfig,proto3" json:"fw_config,omitempty"`
2182	// Audio properties of system
2183	Audio *HardwareFeatures_Audio `protobuf:"bytes,6,opt,name=audio,proto3" json:"audio,omitempty"`
2184	// Camera properties of system.
2185	Camera *HardwareFeatures_Camera `protobuf:"bytes,7,opt,name=camera,proto3" json:"camera,omitempty"`
2186	// Accelerometer properties of system.
2187	Accelerometer *HardwareFeatures_Accelerometer `protobuf:"bytes,8,opt,name=accelerometer,proto3" json:"accelerometer,omitempty"`
2188	// Gyroscope properties of system.
2189	Gyroscope *HardwareFeatures_Gyroscope `protobuf:"bytes,9,opt,name=gyroscope,proto3" json:"gyroscope,omitempty"`
2190	// Magnetometer properties of system.
2191	Magnetometer *HardwareFeatures_Magnetometer `protobuf:"bytes,10,opt,name=magnetometer,proto3" json:"magnetometer,omitempty"`
2192	// LightSensor properties of system.
2193	LightSensor *HardwareFeatures_LightSensor `protobuf:"bytes,11,opt,name=light_sensor,json=lightSensor,proto3" json:"light_sensor,omitempty"`
2194	// Screen properties of system
2195	Screen *HardwareFeatures_Screen `protobuf:"bytes,12,opt,name=screen,proto3" json:"screen,omitempty"`
2196	// Function form factor of system
2197	FormFactor *HardwareFeatures_FormFactor `protobuf:"bytes,13,opt,name=form_factor,json=formFactor,proto3" json:"form_factor,omitempty"`
2198	// Stylus properites of system.
2199	Stylus *HardwareFeatures_Stylus `protobuf:"bytes,14,opt,name=stylus,proto3" json:"stylus,omitempty"`
2200	// Keyboard properties of system
2201	Keyboard *HardwareFeatures_Keyboard `protobuf:"bytes,15,opt,name=keyboard,proto3" json:"keyboard,omitempty"`
2202	// Memory properties of system
2203	Memory *HardwareFeatures_Memory `protobuf:"bytes,16,opt,name=memory,proto3" json:"memory,omitempty"`
2204	// Fingerprint properties of system
2205	Fingerprint *HardwareFeatures_Fingerprint `protobuf:"bytes,17,opt,name=fingerprint,proto3" json:"fingerprint,omitempty"`
2206	// Non-volatile storage properties of system
2207	Storage *HardwareFeatures_Storage `protobuf:"bytes,18,opt,name=storage,proto3" json:"storage,omitempty"`
2208	// Bluetooth properties
2209	Bluetooth *HardwareFeatures_Bluetooth `protobuf:"bytes,19,opt,name=bluetooth,proto3" json:"bluetooth,omitempty"`
2210	// BarrelJack properties
2211	Barreljack            *HardwareFeatures_BarrelJack            `protobuf:"bytes,20,opt,name=barreljack,proto3" json:"barreljack,omitempty"`
2212	Wifi                  *HardwareFeatures_Wifi                  `protobuf:"bytes,23,opt,name=wifi,proto3" json:"wifi,omitempty"`
2213	PowerButton           *HardwareFeatures_Button                `protobuf:"bytes,21,opt,name=power_button,json=powerButton,proto3" json:"power_button,omitempty"`
2214	VolumeButton          *HardwareFeatures_Button                `protobuf:"bytes,22,opt,name=volume_button,json=volumeButton,proto3" json:"volume_button,omitempty"`
2215	EmbeddedController    *HardwareFeatures_EmbeddedController    `protobuf:"bytes,24,opt,name=embedded_controller,json=embeddedController,proto3" json:"embedded_controller,omitempty"`
2216	TrustedPlatformModule *HardwareFeatures_TrustedPlatformModule `protobuf:"bytes,25,opt,name=trusted_platform_module,json=trustedPlatformModule,proto3" json:"trusted_platform_module,omitempty"`
2217	Hotwording            *HardwareFeatures_Hotwording            `protobuf:"bytes,26,opt,name=hotwording,proto3" json:"hotwording,omitempty"`
2218	Display               *HardwareFeatures_Display               `protobuf:"bytes,27,opt,name=display,proto3" json:"display,omitempty"`
2219	Touchpad              *HardwareFeatures_Touchpad              `protobuf:"bytes,28,opt,name=touchpad,proto3" json:"touchpad,omitempty"`
2220	MicrophoneMuteSwitch  *HardwareFeatures_MicrophoneMuteSwitch  `protobuf:"bytes,29,opt,name=microphone_mute_switch,json=microphoneMuteSwitch,proto3" json:"microphone_mute_switch,omitempty"`
2221	Battery               *HardwareFeatures_Battery               `protobuf:"bytes,30,opt,name=battery,proto3" json:"battery,omitempty"`
2222	PrivacyScreen         *HardwareFeatures_PrivacyScreen         `protobuf:"bytes,31,opt,name=privacy_screen,json=privacyScreen,proto3" json:"privacy_screen,omitempty"`
2223	Soc                   *HardwareFeatures_Soc                   `protobuf:"bytes,32,opt,name=soc,proto3" json:"soc,omitempty"`
2224	DpConverter           *HardwareFeatures_DisplayPortConverter  `protobuf:"bytes,33,opt,name=dp_converter,json=dpConverter,proto3" json:"dp_converter,omitempty"`
2225	// HPS properties of system
2226	Hps *HardwareFeatures_Hps `protobuf:"bytes,34,opt,name=hps,proto3" json:"hps,omitempty"`
2227	Poe *HardwareFeatures_PoE `protobuf:"bytes,35,opt,name=poe,proto3" json:"poe,omitempty"`
2228	// Power supply properties
2229	PowerSupply *HardwareFeatures_PowerSupply `protobuf:"bytes,36,opt,name=power_supply,json=powerSupply,proto3" json:"power_supply,omitempty"`
2230	Proximity   *HardwareFeatures_Proximity   `protobuf:"bytes,37,opt,name=proximity,proto3" json:"proximity,omitempty"`
2231	// Touch screen properties
2232	Touch              *HardwareFeatures_Touch              `protobuf:"bytes,38,opt,name=touch,proto3" json:"touch,omitempty"`
2233	Thermal            *HardwareFeatures_Thermal            `protobuf:"bytes,39,opt,name=thermal,proto3" json:"thermal,omitempty"`
2234	RuntimeProbeConfig *HardwareFeatures_RuntimeProbeConfig `protobuf:"bytes,40,opt,name=runtime_probe_config,json=runtimeProbeConfig,proto3" json:"runtime_probe_config,omitempty"`
2235	DgpuConfig         *HardwareFeatures_Dgpu               `protobuf:"bytes,41,opt,name=dgpu_config,json=dgpuConfig,proto3" json:"dgpu_config,omitempty"`
2236	// UWB properties of system
2237	UwbConfig           *HardwareFeatures_Uwb           `protobuf:"bytes,42,opt,name=uwb_config,json=uwbConfig,proto3" json:"uwb_config,omitempty"`
2238	HardwareProbeConfig *HardwareFeatures_HardwareProbe `protobuf:"bytes,43,opt,name=hardware_probe_config,json=hardwareProbeConfig,proto3" json:"hardware_probe_config,omitempty"`
2239	// Detachable base properties
2240	DetachableBase *HardwareFeatures_DetachableBase `protobuf:"bytes,44,opt,name=detachable_base,json=detachableBase,proto3" json:"detachable_base,omitempty"`
2241	// Supported suspend modes
2242	Suspend *HardwareFeatures_Suspend `protobuf:"bytes,45,opt,name=suspend,proto3" json:"suspend,omitempty"`
2243	// VRR (variable refresh rate) properties
2244	Vrr *HardwareFeatures_Vrr `protobuf:"bytes,46,opt,name=vrr,proto3" json:"vrr,omitempty"`
2245	// SD reader properties
2246	SdReader *HardwareFeatures_SdReader `protobuf:"bytes,47,opt,name=sd_reader,json=sdReader,proto3" json:"sd_reader,omitempty"`
2247	// FeatureLevel stores the feature level of a DUT
2248	FeatureLevel uint32 `protobuf:"varint,48,opt,name=feature_level,json=featureLevel,proto3" json:"feature_level,omitempty"`
2249	// OEM info
2250	OemInfo *HardwareFeatures_OEMInfo `protobuf:"bytes,49,opt,name=oem_info,json=oemInfo,proto3" json:"oem_info,omitempty"`
2251	// Fan
2252	Fan *HardwareFeatures_Fan `protobuf:"bytes,50,opt,name=fan,proto3" json:"fan,omitempty"`
2253	// Details about the Interrupt controller
2254	InterruptControllerInfo *HardwareFeatures_InterruptControllerInfo `protobuf:"bytes,51,opt,name=interrupt_controller_info,json=interruptControllerInfo,proto3" json:"interrupt_controller_info,omitempty"`
2255	// Properties of tiled display, which consists of multiple panels each driven
2256	// by separate connectors.
2257	TiledDisplay *HardwareFeatures_TiledDisplay `protobuf:"bytes,52,opt,name=tiled_display,json=tiledDisplay,proto3" json:"tiled_display,omitempty"`
2258	// Details about cpu info.
2259	CpuInfo *HardwareFeatures_CpuInfo `protobuf:"bytes,53,opt,name=cpu_info,json=cpuInfo,proto3" json:"cpu_info,omitempty"`
2260	// Details about pendrive.
2261	Pendrive *HardwareFeatures_Pendrive `protobuf:"bytes,54,opt,name=pendrive,proto3" json:"pendrive,omitempty"`
2262}
2263
2264func (x *HardwareFeatures) Reset() {
2265	*x = HardwareFeatures{}
2266	if protoimpl.UnsafeEnabled {
2267		mi := &file_chromiumos_config_api_topology_proto_msgTypes[2]
2268		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2269		ms.StoreMessageInfo(mi)
2270	}
2271}
2272
2273func (x *HardwareFeatures) String() string {
2274	return protoimpl.X.MessageStringOf(x)
2275}
2276
2277func (*HardwareFeatures) ProtoMessage() {}
2278
2279func (x *HardwareFeatures) ProtoReflect() protoreflect.Message {
2280	mi := &file_chromiumos_config_api_topology_proto_msgTypes[2]
2281	if protoimpl.UnsafeEnabled && x != nil {
2282		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2283		if ms.LoadMessageInfo() == nil {
2284			ms.StoreMessageInfo(mi)
2285		}
2286		return ms
2287	}
2288	return mi.MessageOf(x)
2289}
2290
2291// Deprecated: Use HardwareFeatures.ProtoReflect.Descriptor instead.
2292func (*HardwareFeatures) Descriptor() ([]byte, []int) {
2293	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2}
2294}
2295
2296func (x *HardwareFeatures) GetUsbC() *HardwareFeatures_UsbC {
2297	if x != nil {
2298		return x.UsbC
2299	}
2300	return nil
2301}
2302
2303func (x *HardwareFeatures) GetUsbA() *HardwareFeatures_UsbA {
2304	if x != nil {
2305		return x.UsbA
2306	}
2307	return nil
2308}
2309
2310func (x *HardwareFeatures) GetCellular() *HardwareFeatures_Cellular {
2311	if x != nil {
2312		return x.Cellular
2313	}
2314	return nil
2315}
2316
2317func (x *HardwareFeatures) GetHdmi() *HardwareFeatures_Hdmi {
2318	if x != nil {
2319		return x.Hdmi
2320	}
2321	return nil
2322}
2323
2324func (x *HardwareFeatures) GetFwConfig() *HardwareFeatures_FirmwareConfiguration {
2325	if x != nil {
2326		return x.FwConfig
2327	}
2328	return nil
2329}
2330
2331func (x *HardwareFeatures) GetAudio() *HardwareFeatures_Audio {
2332	if x != nil {
2333		return x.Audio
2334	}
2335	return nil
2336}
2337
2338func (x *HardwareFeatures) GetCamera() *HardwareFeatures_Camera {
2339	if x != nil {
2340		return x.Camera
2341	}
2342	return nil
2343}
2344
2345func (x *HardwareFeatures) GetAccelerometer() *HardwareFeatures_Accelerometer {
2346	if x != nil {
2347		return x.Accelerometer
2348	}
2349	return nil
2350}
2351
2352func (x *HardwareFeatures) GetGyroscope() *HardwareFeatures_Gyroscope {
2353	if x != nil {
2354		return x.Gyroscope
2355	}
2356	return nil
2357}
2358
2359func (x *HardwareFeatures) GetMagnetometer() *HardwareFeatures_Magnetometer {
2360	if x != nil {
2361		return x.Magnetometer
2362	}
2363	return nil
2364}
2365
2366func (x *HardwareFeatures) GetLightSensor() *HardwareFeatures_LightSensor {
2367	if x != nil {
2368		return x.LightSensor
2369	}
2370	return nil
2371}
2372
2373func (x *HardwareFeatures) GetScreen() *HardwareFeatures_Screen {
2374	if x != nil {
2375		return x.Screen
2376	}
2377	return nil
2378}
2379
2380func (x *HardwareFeatures) GetFormFactor() *HardwareFeatures_FormFactor {
2381	if x != nil {
2382		return x.FormFactor
2383	}
2384	return nil
2385}
2386
2387func (x *HardwareFeatures) GetStylus() *HardwareFeatures_Stylus {
2388	if x != nil {
2389		return x.Stylus
2390	}
2391	return nil
2392}
2393
2394func (x *HardwareFeatures) GetKeyboard() *HardwareFeatures_Keyboard {
2395	if x != nil {
2396		return x.Keyboard
2397	}
2398	return nil
2399}
2400
2401func (x *HardwareFeatures) GetMemory() *HardwareFeatures_Memory {
2402	if x != nil {
2403		return x.Memory
2404	}
2405	return nil
2406}
2407
2408func (x *HardwareFeatures) GetFingerprint() *HardwareFeatures_Fingerprint {
2409	if x != nil {
2410		return x.Fingerprint
2411	}
2412	return nil
2413}
2414
2415func (x *HardwareFeatures) GetStorage() *HardwareFeatures_Storage {
2416	if x != nil {
2417		return x.Storage
2418	}
2419	return nil
2420}
2421
2422func (x *HardwareFeatures) GetBluetooth() *HardwareFeatures_Bluetooth {
2423	if x != nil {
2424		return x.Bluetooth
2425	}
2426	return nil
2427}
2428
2429func (x *HardwareFeatures) GetBarreljack() *HardwareFeatures_BarrelJack {
2430	if x != nil {
2431		return x.Barreljack
2432	}
2433	return nil
2434}
2435
2436func (x *HardwareFeatures) GetWifi() *HardwareFeatures_Wifi {
2437	if x != nil {
2438		return x.Wifi
2439	}
2440	return nil
2441}
2442
2443func (x *HardwareFeatures) GetPowerButton() *HardwareFeatures_Button {
2444	if x != nil {
2445		return x.PowerButton
2446	}
2447	return nil
2448}
2449
2450func (x *HardwareFeatures) GetVolumeButton() *HardwareFeatures_Button {
2451	if x != nil {
2452		return x.VolumeButton
2453	}
2454	return nil
2455}
2456
2457func (x *HardwareFeatures) GetEmbeddedController() *HardwareFeatures_EmbeddedController {
2458	if x != nil {
2459		return x.EmbeddedController
2460	}
2461	return nil
2462}
2463
2464func (x *HardwareFeatures) GetTrustedPlatformModule() *HardwareFeatures_TrustedPlatformModule {
2465	if x != nil {
2466		return x.TrustedPlatformModule
2467	}
2468	return nil
2469}
2470
2471func (x *HardwareFeatures) GetHotwording() *HardwareFeatures_Hotwording {
2472	if x != nil {
2473		return x.Hotwording
2474	}
2475	return nil
2476}
2477
2478func (x *HardwareFeatures) GetDisplay() *HardwareFeatures_Display {
2479	if x != nil {
2480		return x.Display
2481	}
2482	return nil
2483}
2484
2485func (x *HardwareFeatures) GetTouchpad() *HardwareFeatures_Touchpad {
2486	if x != nil {
2487		return x.Touchpad
2488	}
2489	return nil
2490}
2491
2492func (x *HardwareFeatures) GetMicrophoneMuteSwitch() *HardwareFeatures_MicrophoneMuteSwitch {
2493	if x != nil {
2494		return x.MicrophoneMuteSwitch
2495	}
2496	return nil
2497}
2498
2499func (x *HardwareFeatures) GetBattery() *HardwareFeatures_Battery {
2500	if x != nil {
2501		return x.Battery
2502	}
2503	return nil
2504}
2505
2506func (x *HardwareFeatures) GetPrivacyScreen() *HardwareFeatures_PrivacyScreen {
2507	if x != nil {
2508		return x.PrivacyScreen
2509	}
2510	return nil
2511}
2512
2513func (x *HardwareFeatures) GetSoc() *HardwareFeatures_Soc {
2514	if x != nil {
2515		return x.Soc
2516	}
2517	return nil
2518}
2519
2520func (x *HardwareFeatures) GetDpConverter() *HardwareFeatures_DisplayPortConverter {
2521	if x != nil {
2522		return x.DpConverter
2523	}
2524	return nil
2525}
2526
2527func (x *HardwareFeatures) GetHps() *HardwareFeatures_Hps {
2528	if x != nil {
2529		return x.Hps
2530	}
2531	return nil
2532}
2533
2534func (x *HardwareFeatures) GetPoe() *HardwareFeatures_PoE {
2535	if x != nil {
2536		return x.Poe
2537	}
2538	return nil
2539}
2540
2541func (x *HardwareFeatures) GetPowerSupply() *HardwareFeatures_PowerSupply {
2542	if x != nil {
2543		return x.PowerSupply
2544	}
2545	return nil
2546}
2547
2548func (x *HardwareFeatures) GetProximity() *HardwareFeatures_Proximity {
2549	if x != nil {
2550		return x.Proximity
2551	}
2552	return nil
2553}
2554
2555func (x *HardwareFeatures) GetTouch() *HardwareFeatures_Touch {
2556	if x != nil {
2557		return x.Touch
2558	}
2559	return nil
2560}
2561
2562func (x *HardwareFeatures) GetThermal() *HardwareFeatures_Thermal {
2563	if x != nil {
2564		return x.Thermal
2565	}
2566	return nil
2567}
2568
2569func (x *HardwareFeatures) GetRuntimeProbeConfig() *HardwareFeatures_RuntimeProbeConfig {
2570	if x != nil {
2571		return x.RuntimeProbeConfig
2572	}
2573	return nil
2574}
2575
2576func (x *HardwareFeatures) GetDgpuConfig() *HardwareFeatures_Dgpu {
2577	if x != nil {
2578		return x.DgpuConfig
2579	}
2580	return nil
2581}
2582
2583func (x *HardwareFeatures) GetUwbConfig() *HardwareFeatures_Uwb {
2584	if x != nil {
2585		return x.UwbConfig
2586	}
2587	return nil
2588}
2589
2590func (x *HardwareFeatures) GetHardwareProbeConfig() *HardwareFeatures_HardwareProbe {
2591	if x != nil {
2592		return x.HardwareProbeConfig
2593	}
2594	return nil
2595}
2596
2597func (x *HardwareFeatures) GetDetachableBase() *HardwareFeatures_DetachableBase {
2598	if x != nil {
2599		return x.DetachableBase
2600	}
2601	return nil
2602}
2603
2604func (x *HardwareFeatures) GetSuspend() *HardwareFeatures_Suspend {
2605	if x != nil {
2606		return x.Suspend
2607	}
2608	return nil
2609}
2610
2611func (x *HardwareFeatures) GetVrr() *HardwareFeatures_Vrr {
2612	if x != nil {
2613		return x.Vrr
2614	}
2615	return nil
2616}
2617
2618func (x *HardwareFeatures) GetSdReader() *HardwareFeatures_SdReader {
2619	if x != nil {
2620		return x.SdReader
2621	}
2622	return nil
2623}
2624
2625func (x *HardwareFeatures) GetFeatureLevel() uint32 {
2626	if x != nil {
2627		return x.FeatureLevel
2628	}
2629	return 0
2630}
2631
2632func (x *HardwareFeatures) GetOemInfo() *HardwareFeatures_OEMInfo {
2633	if x != nil {
2634		return x.OemInfo
2635	}
2636	return nil
2637}
2638
2639func (x *HardwareFeatures) GetFan() *HardwareFeatures_Fan {
2640	if x != nil {
2641		return x.Fan
2642	}
2643	return nil
2644}
2645
2646func (x *HardwareFeatures) GetInterruptControllerInfo() *HardwareFeatures_InterruptControllerInfo {
2647	if x != nil {
2648		return x.InterruptControllerInfo
2649	}
2650	return nil
2651}
2652
2653func (x *HardwareFeatures) GetTiledDisplay() *HardwareFeatures_TiledDisplay {
2654	if x != nil {
2655		return x.TiledDisplay
2656	}
2657	return nil
2658}
2659
2660func (x *HardwareFeatures) GetCpuInfo() *HardwareFeatures_CpuInfo {
2661	if x != nil {
2662		return x.CpuInfo
2663	}
2664	return nil
2665}
2666
2667func (x *HardwareFeatures) GetPendrive() *HardwareFeatures_Pendrive {
2668	if x != nil {
2669		return x.Pendrive
2670	}
2671	return nil
2672}
2673
2674type HardwareFeatures_Count struct {
2675	state         protoimpl.MessageState
2676	sizeCache     protoimpl.SizeCache
2677	unknownFields protoimpl.UnknownFields
2678
2679	Value uint32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"`
2680}
2681
2682func (x *HardwareFeatures_Count) Reset() {
2683	*x = HardwareFeatures_Count{}
2684	if protoimpl.UnsafeEnabled {
2685		mi := &file_chromiumos_config_api_topology_proto_msgTypes[4]
2686		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2687		ms.StoreMessageInfo(mi)
2688	}
2689}
2690
2691func (x *HardwareFeatures_Count) String() string {
2692	return protoimpl.X.MessageStringOf(x)
2693}
2694
2695func (*HardwareFeatures_Count) ProtoMessage() {}
2696
2697func (x *HardwareFeatures_Count) ProtoReflect() protoreflect.Message {
2698	mi := &file_chromiumos_config_api_topology_proto_msgTypes[4]
2699	if protoimpl.UnsafeEnabled && x != nil {
2700		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2701		if ms.LoadMessageInfo() == nil {
2702			ms.StoreMessageInfo(mi)
2703		}
2704		return ms
2705	}
2706	return mi.MessageOf(x)
2707}
2708
2709// Deprecated: Use HardwareFeatures_Count.ProtoReflect.Descriptor instead.
2710func (*HardwareFeatures_Count) Descriptor() ([]byte, []int) {
2711	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 0}
2712}
2713
2714func (x *HardwareFeatures_Count) GetValue() uint32 {
2715	if x != nil {
2716		return x.Value
2717	}
2718	return 0
2719}
2720
2721type HardwareFeatures_UsbC struct {
2722	state         protoimpl.MessageState
2723	sizeCache     protoimpl.SizeCache
2724	unknownFields protoimpl.UnknownFields
2725
2726	// The number of USB-C ports
2727	Count *HardwareFeatures_Count `protobuf:"bytes,1,opt,name=count,proto3" json:"count,omitempty"`
2728	// Details about each USB-C port.
2729	Ports []*HardwareFeatures_UsbC_Port `protobuf:"bytes,2,rep,name=ports,proto3" json:"ports,omitempty"`
2730	// Whether port(s) are USB4
2731	Usb4 bool `protobuf:"varint,3,opt,name=usb4,proto3" json:"usb4,omitempty"`
2732	// Optional field to manually override the external display timeout
2733	DeferExternalDisplayTimeout uint32 `protobuf:"varint,4,opt,name=defer_external_display_timeout,json=deferExternalDisplayTimeout,proto3" json:"defer_external_display_timeout,omitempty"`
2734}
2735
2736func (x *HardwareFeatures_UsbC) Reset() {
2737	*x = HardwareFeatures_UsbC{}
2738	if protoimpl.UnsafeEnabled {
2739		mi := &file_chromiumos_config_api_topology_proto_msgTypes[5]
2740		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2741		ms.StoreMessageInfo(mi)
2742	}
2743}
2744
2745func (x *HardwareFeatures_UsbC) String() string {
2746	return protoimpl.X.MessageStringOf(x)
2747}
2748
2749func (*HardwareFeatures_UsbC) ProtoMessage() {}
2750
2751func (x *HardwareFeatures_UsbC) ProtoReflect() protoreflect.Message {
2752	mi := &file_chromiumos_config_api_topology_proto_msgTypes[5]
2753	if protoimpl.UnsafeEnabled && x != nil {
2754		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2755		if ms.LoadMessageInfo() == nil {
2756			ms.StoreMessageInfo(mi)
2757		}
2758		return ms
2759	}
2760	return mi.MessageOf(x)
2761}
2762
2763// Deprecated: Use HardwareFeatures_UsbC.ProtoReflect.Descriptor instead.
2764func (*HardwareFeatures_UsbC) Descriptor() ([]byte, []int) {
2765	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 1}
2766}
2767
2768func (x *HardwareFeatures_UsbC) GetCount() *HardwareFeatures_Count {
2769	if x != nil {
2770		return x.Count
2771	}
2772	return nil
2773}
2774
2775func (x *HardwareFeatures_UsbC) GetPorts() []*HardwareFeatures_UsbC_Port {
2776	if x != nil {
2777		return x.Ports
2778	}
2779	return nil
2780}
2781
2782func (x *HardwareFeatures_UsbC) GetUsb4() bool {
2783	if x != nil {
2784		return x.Usb4
2785	}
2786	return false
2787}
2788
2789func (x *HardwareFeatures_UsbC) GetDeferExternalDisplayTimeout() uint32 {
2790	if x != nil {
2791		return x.DeferExternalDisplayTimeout
2792	}
2793	return 0
2794}
2795
2796type HardwareFeatures_UsbA struct {
2797	state         protoimpl.MessageState
2798	sizeCache     protoimpl.SizeCache
2799	unknownFields protoimpl.UnknownFields
2800
2801	// The number of USB-A ports
2802	Count *HardwareFeatures_Count `protobuf:"bytes,1,opt,name=count,proto3" json:"count,omitempty"`
2803}
2804
2805func (x *HardwareFeatures_UsbA) Reset() {
2806	*x = HardwareFeatures_UsbA{}
2807	if protoimpl.UnsafeEnabled {
2808		mi := &file_chromiumos_config_api_topology_proto_msgTypes[6]
2809		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2810		ms.StoreMessageInfo(mi)
2811	}
2812}
2813
2814func (x *HardwareFeatures_UsbA) String() string {
2815	return protoimpl.X.MessageStringOf(x)
2816}
2817
2818func (*HardwareFeatures_UsbA) ProtoMessage() {}
2819
2820func (x *HardwareFeatures_UsbA) ProtoReflect() protoreflect.Message {
2821	mi := &file_chromiumos_config_api_topology_proto_msgTypes[6]
2822	if protoimpl.UnsafeEnabled && x != nil {
2823		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2824		if ms.LoadMessageInfo() == nil {
2825			ms.StoreMessageInfo(mi)
2826		}
2827		return ms
2828	}
2829	return mi.MessageOf(x)
2830}
2831
2832// Deprecated: Use HardwareFeatures_UsbA.ProtoReflect.Descriptor instead.
2833func (*HardwareFeatures_UsbA) Descriptor() ([]byte, []int) {
2834	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 2}
2835}
2836
2837func (x *HardwareFeatures_UsbA) GetCount() *HardwareFeatures_Count {
2838	if x != nil {
2839		return x.Count
2840	}
2841	return nil
2842}
2843
2844type HardwareFeatures_Cellular struct {
2845	state         protoimpl.MessageState
2846	sizeCache     protoimpl.SizeCache
2847	unknownFields protoimpl.UnknownFields
2848
2849	// If Cellular is present on system
2850	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
2851	// Optional string identifying the model of the modem to select the proper
2852	// helper and firmwares on platforms with several supported modems.
2853	Model string `protobuf:"bytes,2,opt,name=model,proto3" json:"model,omitempty"`
2854	// Cellular type
2855	Type HardwareFeatures_Cellular_CellularType `protobuf:"varint,3,opt,name=type,proto3,enum=chromiumos.config.api.HardwareFeatures_Cellular_CellularType" json:"type,omitempty"`
2856	// bool to enable the cellular feature Attach APN.
2857	//
2858	// Deprecated: Do not use.
2859	AttachApnRequired bool `protobuf:"varint,4,opt,name=attach_apn_required,json=attachApnRequired,proto3" json:"attach_apn_required,omitempty"`
2860	// Optional config for dynamic power reduction control.
2861	DynamicPowerReductionConfig *HardwareFeatures_Cellular_DynamicPowerReductionConfig `protobuf:"bytes,5,opt,name=dynamic_power_reduction_config,json=dynamicPowerReductionConfig,proto3" json:"dynamic_power_reduction_config,omitempty"`
2862	// Wedge detection timeout in ms.
2863	WedgeTimeoutInMs uint32                              `protobuf:"varint,6,opt,name=wedge_timeout_in_ms,json=wedgeTimeoutInMs,proto3" json:"wedge_timeout_in_ms,omitempty"`
2864	ModemType        HardwareFeatures_Cellular_ModemType `protobuf:"varint,7,opt,name=modem_type,json=modemType,proto3,enum=chromiumos.config.api.HardwareFeatures_Cellular_ModemType" json:"modem_type,omitempty"`
2865}
2866
2867func (x *HardwareFeatures_Cellular) Reset() {
2868	*x = HardwareFeatures_Cellular{}
2869	if protoimpl.UnsafeEnabled {
2870		mi := &file_chromiumos_config_api_topology_proto_msgTypes[7]
2871		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2872		ms.StoreMessageInfo(mi)
2873	}
2874}
2875
2876func (x *HardwareFeatures_Cellular) String() string {
2877	return protoimpl.X.MessageStringOf(x)
2878}
2879
2880func (*HardwareFeatures_Cellular) ProtoMessage() {}
2881
2882func (x *HardwareFeatures_Cellular) ProtoReflect() protoreflect.Message {
2883	mi := &file_chromiumos_config_api_topology_proto_msgTypes[7]
2884	if protoimpl.UnsafeEnabled && x != nil {
2885		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2886		if ms.LoadMessageInfo() == nil {
2887			ms.StoreMessageInfo(mi)
2888		}
2889		return ms
2890	}
2891	return mi.MessageOf(x)
2892}
2893
2894// Deprecated: Use HardwareFeatures_Cellular.ProtoReflect.Descriptor instead.
2895func (*HardwareFeatures_Cellular) Descriptor() ([]byte, []int) {
2896	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 3}
2897}
2898
2899func (x *HardwareFeatures_Cellular) GetPresent() HardwareFeatures_Present {
2900	if x != nil {
2901		return x.Present
2902	}
2903	return HardwareFeatures_PRESENT_UNKNOWN
2904}
2905
2906func (x *HardwareFeatures_Cellular) GetModel() string {
2907	if x != nil {
2908		return x.Model
2909	}
2910	return ""
2911}
2912
2913func (x *HardwareFeatures_Cellular) GetType() HardwareFeatures_Cellular_CellularType {
2914	if x != nil {
2915		return x.Type
2916	}
2917	return HardwareFeatures_Cellular_CELLULAR_UNKNOWN
2918}
2919
2920// Deprecated: Do not use.
2921func (x *HardwareFeatures_Cellular) GetAttachApnRequired() bool {
2922	if x != nil {
2923		return x.AttachApnRequired
2924	}
2925	return false
2926}
2927
2928func (x *HardwareFeatures_Cellular) GetDynamicPowerReductionConfig() *HardwareFeatures_Cellular_DynamicPowerReductionConfig {
2929	if x != nil {
2930		return x.DynamicPowerReductionConfig
2931	}
2932	return nil
2933}
2934
2935func (x *HardwareFeatures_Cellular) GetWedgeTimeoutInMs() uint32 {
2936	if x != nil {
2937		return x.WedgeTimeoutInMs
2938	}
2939	return 0
2940}
2941
2942func (x *HardwareFeatures_Cellular) GetModemType() HardwareFeatures_Cellular_ModemType {
2943	if x != nil {
2944		return x.ModemType
2945	}
2946	return HardwareFeatures_Cellular_MODEM_UNKNOWN
2947}
2948
2949type HardwareFeatures_Hdmi struct {
2950	state         protoimpl.MessageState
2951	sizeCache     protoimpl.SizeCache
2952	unknownFields protoimpl.UnknownFields
2953
2954	// If native HDMI support is present on system.
2955	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
2956	// Configuration for HDMI-CEC.
2957	Cec *HardwareFeatures_Hdmi_Cec `protobuf:"bytes,2,opt,name=cec,proto3" json:"cec,omitempty"`
2958}
2959
2960func (x *HardwareFeatures_Hdmi) Reset() {
2961	*x = HardwareFeatures_Hdmi{}
2962	if protoimpl.UnsafeEnabled {
2963		mi := &file_chromiumos_config_api_topology_proto_msgTypes[8]
2964		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2965		ms.StoreMessageInfo(mi)
2966	}
2967}
2968
2969func (x *HardwareFeatures_Hdmi) String() string {
2970	return protoimpl.X.MessageStringOf(x)
2971}
2972
2973func (*HardwareFeatures_Hdmi) ProtoMessage() {}
2974
2975func (x *HardwareFeatures_Hdmi) ProtoReflect() protoreflect.Message {
2976	mi := &file_chromiumos_config_api_topology_proto_msgTypes[8]
2977	if protoimpl.UnsafeEnabled && x != nil {
2978		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2979		if ms.LoadMessageInfo() == nil {
2980			ms.StoreMessageInfo(mi)
2981		}
2982		return ms
2983	}
2984	return mi.MessageOf(x)
2985}
2986
2987// Deprecated: Use HardwareFeatures_Hdmi.ProtoReflect.Descriptor instead.
2988func (*HardwareFeatures_Hdmi) Descriptor() ([]byte, []int) {
2989	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 4}
2990}
2991
2992func (x *HardwareFeatures_Hdmi) GetPresent() HardwareFeatures_Present {
2993	if x != nil {
2994		return x.Present
2995	}
2996	return HardwareFeatures_PRESENT_UNKNOWN
2997}
2998
2999func (x *HardwareFeatures_Hdmi) GetCec() *HardwareFeatures_Hdmi_Cec {
3000	if x != nil {
3001		return x.Cec
3002	}
3003	return nil
3004}
3005
3006type HardwareFeatures_FirmwareConfiguration struct {
3007	state         protoimpl.MessageState
3008	sizeCache     protoimpl.SizeCache
3009	unknownFields protoimpl.UnknownFields
3010
3011	// The firmware configuration value
3012	Value uint32 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"`
3013	// The mask of valid bits that could be used by above value
3014	Mask uint32 `protobuf:"varint,2,opt,name=mask,proto3" json:"mask,omitempty"`
3015	// Customizations to append as a suffix to the coreboot build target and AP
3016	// firmware packaging.
3017	CorebootCustomizations []string `protobuf:"bytes,3,rep,name=coreboot_customizations,json=corebootCustomizations,proto3" json:"coreboot_customizations,omitempty"`
3018	// The AP firmware has the CONFIG_VBOOT_CBFS_INTEGRATION feature enabled.
3019	VbootCbfsIntegration HardwareFeatures_Present `protobuf:"varint,5,opt,name=vboot_cbfs_integration,json=vbootCbfsIntegration,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"vboot_cbfs_integration,omitempty"`
3020	// The RO firmware version currently running on the DUT.
3021	FwRoVersion *HardwareFeatures_FirmwareConfiguration_SemVer `protobuf:"bytes,8,opt,name=fw_ro_version,json=fwRoVersion,proto3" json:"fw_ro_version,omitempty"`
3022	// The Intel Integrated Sensor Hub is available and supported by firmware.
3023	IntelIsh HardwareFeatures_Present `protobuf:"varint,9,opt,name=intel_ish,json=intelIsh,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"intel_ish,omitempty"`
3024	// The RW firmware version currently running on the DUT.
3025	FwRwVersion *HardwareFeatures_FirmwareConfiguration_SemVer `protobuf:"bytes,10,opt,name=fw_rw_version,json=fwRwVersion,proto3" json:"fw_rw_version,omitempty"`
3026	// The AP firmware has the CONFIG_BMP_LOGO feature enabled.
3027	BmpLogo HardwareFeatures_Present `protobuf:"varint,11,opt,name=bmp_logo,json=bmpLogo,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"bmp_logo,omitempty"`
3028	// The AP firmware has the CONFIG_FW_SPLASH_SCREEN feature enabled.
3029	FwSplashScreen HardwareFeatures_Present `protobuf:"varint,12,opt,name=fw_splash_screen,json=fwSplashScreen,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"fw_splash_screen,omitempty"`
3030	// The CSE sync is late at payload with CONFIG_SOC_INTEL_CSE_LITE_SYNC_BY_PAYLOAD
3031	// feature enabled.
3032	LateCseSync HardwareFeatures_Present `protobuf:"varint,13,opt,name=late_cse_sync,json=lateCseSync,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"late_cse_sync,omitempty"`
3033	// The AP firmware has the CONFIG_HAS_RECOVERY_MRC_CACHE feature enabled.
3034	HasRecoveryMrcCache HardwareFeatures_Present `protobuf:"varint,14,opt,name=has_recovery_mrc_cache,json=hasRecoveryMrcCache,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"has_recovery_mrc_cache,omitempty"`
3035	// The AP firmware has the CONFIG_CHROMEOS_ENABLE_ESOL feature enabled.
3036	MainboardHasEarlySignOfLife HardwareFeatures_Present `protobuf:"varint,15,opt,name=mainboard_has_early_sign_of_life,json=mainboardHasEarlySignOfLife,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"mainboard_has_early_sign_of_life,omitempty"`
3037}
3038
3039func (x *HardwareFeatures_FirmwareConfiguration) Reset() {
3040	*x = HardwareFeatures_FirmwareConfiguration{}
3041	if protoimpl.UnsafeEnabled {
3042		mi := &file_chromiumos_config_api_topology_proto_msgTypes[9]
3043		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3044		ms.StoreMessageInfo(mi)
3045	}
3046}
3047
3048func (x *HardwareFeatures_FirmwareConfiguration) String() string {
3049	return protoimpl.X.MessageStringOf(x)
3050}
3051
3052func (*HardwareFeatures_FirmwareConfiguration) ProtoMessage() {}
3053
3054func (x *HardwareFeatures_FirmwareConfiguration) ProtoReflect() protoreflect.Message {
3055	mi := &file_chromiumos_config_api_topology_proto_msgTypes[9]
3056	if protoimpl.UnsafeEnabled && x != nil {
3057		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3058		if ms.LoadMessageInfo() == nil {
3059			ms.StoreMessageInfo(mi)
3060		}
3061		return ms
3062	}
3063	return mi.MessageOf(x)
3064}
3065
3066// Deprecated: Use HardwareFeatures_FirmwareConfiguration.ProtoReflect.Descriptor instead.
3067func (*HardwareFeatures_FirmwareConfiguration) Descriptor() ([]byte, []int) {
3068	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 5}
3069}
3070
3071func (x *HardwareFeatures_FirmwareConfiguration) GetValue() uint32 {
3072	if x != nil {
3073		return x.Value
3074	}
3075	return 0
3076}
3077
3078func (x *HardwareFeatures_FirmwareConfiguration) GetMask() uint32 {
3079	if x != nil {
3080		return x.Mask
3081	}
3082	return 0
3083}
3084
3085func (x *HardwareFeatures_FirmwareConfiguration) GetCorebootCustomizations() []string {
3086	if x != nil {
3087		return x.CorebootCustomizations
3088	}
3089	return nil
3090}
3091
3092func (x *HardwareFeatures_FirmwareConfiguration) GetVbootCbfsIntegration() HardwareFeatures_Present {
3093	if x != nil {
3094		return x.VbootCbfsIntegration
3095	}
3096	return HardwareFeatures_PRESENT_UNKNOWN
3097}
3098
3099func (x *HardwareFeatures_FirmwareConfiguration) GetFwRoVersion() *HardwareFeatures_FirmwareConfiguration_SemVer {
3100	if x != nil {
3101		return x.FwRoVersion
3102	}
3103	return nil
3104}
3105
3106func (x *HardwareFeatures_FirmwareConfiguration) GetIntelIsh() HardwareFeatures_Present {
3107	if x != nil {
3108		return x.IntelIsh
3109	}
3110	return HardwareFeatures_PRESENT_UNKNOWN
3111}
3112
3113func (x *HardwareFeatures_FirmwareConfiguration) GetFwRwVersion() *HardwareFeatures_FirmwareConfiguration_SemVer {
3114	if x != nil {
3115		return x.FwRwVersion
3116	}
3117	return nil
3118}
3119
3120func (x *HardwareFeatures_FirmwareConfiguration) GetBmpLogo() HardwareFeatures_Present {
3121	if x != nil {
3122		return x.BmpLogo
3123	}
3124	return HardwareFeatures_PRESENT_UNKNOWN
3125}
3126
3127func (x *HardwareFeatures_FirmwareConfiguration) GetFwSplashScreen() HardwareFeatures_Present {
3128	if x != nil {
3129		return x.FwSplashScreen
3130	}
3131	return HardwareFeatures_PRESENT_UNKNOWN
3132}
3133
3134func (x *HardwareFeatures_FirmwareConfiguration) GetLateCseSync() HardwareFeatures_Present {
3135	if x != nil {
3136		return x.LateCseSync
3137	}
3138	return HardwareFeatures_PRESENT_UNKNOWN
3139}
3140
3141func (x *HardwareFeatures_FirmwareConfiguration) GetHasRecoveryMrcCache() HardwareFeatures_Present {
3142	if x != nil {
3143		return x.HasRecoveryMrcCache
3144	}
3145	return HardwareFeatures_PRESENT_UNKNOWN
3146}
3147
3148func (x *HardwareFeatures_FirmwareConfiguration) GetMainboardHasEarlySignOfLife() HardwareFeatures_Present {
3149	if x != nil {
3150		return x.MainboardHasEarlySignOfLife
3151	}
3152	return HardwareFeatures_PRESENT_UNKNOWN
3153}
3154
3155type HardwareFeatures_Audio struct {
3156	state         protoimpl.MessageState
3157	sizeCache     protoimpl.SizeCache
3158	unknownFields protoimpl.UnknownFields
3159
3160	// Which audio codec is in use (deprecated)
3161	AudioCodec HardwareFeatures_Audio_AudioCodec `protobuf:"varint,1,opt,name=audio_codec,json=audioCodec,proto3,enum=chromiumos.config.api.HardwareFeatures_Audio_AudioCodec" json:"audio_codec,omitempty"`
3162	// Which amplifier is in use for the speakers
3163	SpeakerAmp HardwareFeatures_Audio_Amplifier `protobuf:"varint,2,opt,name=speaker_amp,json=speakerAmp,proto3,enum=chromiumos.config.api.HardwareFeatures_Audio_Amplifier" json:"speaker_amp,omitempty"`
3164	// Which audio codec is in use for the headphones
3165	HeadphoneCodec HardwareFeatures_Audio_AudioCodec `protobuf:"varint,3,opt,name=headphone_codec,json=headphoneCodec,proto3,enum=chromiumos.config.api.HardwareFeatures_Audio_AudioCodec" json:"headphone_codec,omitempty"`
3166	// The number of microphones present in the lid
3167	LidMicrophone *HardwareFeatures_Count `protobuf:"bytes,4,opt,name=lid_microphone,json=lidMicrophone,proto3" json:"lid_microphone,omitempty"`
3168	// The number of microphones present in the base
3169	BaseMicrophone *HardwareFeatures_Count `protobuf:"bytes,5,opt,name=base_microphone,json=baseMicrophone,proto3" json:"base_microphone,omitempty"`
3170	// Which amplifier is in use for the speakers if one is present
3171	SpeakerAmplifier *Component_Amplifier `protobuf:"bytes,6,opt,name=speaker_amplifier,json=speakerAmplifier,proto3" json:"speaker_amplifier,omitempty"`
3172	// The card configs for this topology.
3173	CardConfigs []*HardwareFeatures_Audio_CardConfig `protobuf:"bytes,7,rep,name=card_configs,json=cardConfigs,proto3" json:"card_configs,omitempty"`
3174	// The source config file layout used for card-agnostic cras config.
3175	CrasConfig HardwareFeatures_Audio_AudioConfigStructure `protobuf:"varint,8,opt,name=cras_config,json=crasConfig,proto3,enum=chromiumos.config.api.HardwareFeatures_Audio_AudioConfigStructure" json:"cras_config,omitempty"`
3176	// If audio DSP firmware is SOF-backed.
3177	SofAudioDsp HardwareFeatures_Present `protobuf:"varint,9,opt,name=sof_audio_dsp,json=sofAudioDsp,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"sof_audio_dsp,omitempty"`
3178}
3179
3180func (x *HardwareFeatures_Audio) Reset() {
3181	*x = HardwareFeatures_Audio{}
3182	if protoimpl.UnsafeEnabled {
3183		mi := &file_chromiumos_config_api_topology_proto_msgTypes[10]
3184		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3185		ms.StoreMessageInfo(mi)
3186	}
3187}
3188
3189func (x *HardwareFeatures_Audio) String() string {
3190	return protoimpl.X.MessageStringOf(x)
3191}
3192
3193func (*HardwareFeatures_Audio) ProtoMessage() {}
3194
3195func (x *HardwareFeatures_Audio) ProtoReflect() protoreflect.Message {
3196	mi := &file_chromiumos_config_api_topology_proto_msgTypes[10]
3197	if protoimpl.UnsafeEnabled && x != nil {
3198		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3199		if ms.LoadMessageInfo() == nil {
3200			ms.StoreMessageInfo(mi)
3201		}
3202		return ms
3203	}
3204	return mi.MessageOf(x)
3205}
3206
3207// Deprecated: Use HardwareFeatures_Audio.ProtoReflect.Descriptor instead.
3208func (*HardwareFeatures_Audio) Descriptor() ([]byte, []int) {
3209	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 6}
3210}
3211
3212func (x *HardwareFeatures_Audio) GetAudioCodec() HardwareFeatures_Audio_AudioCodec {
3213	if x != nil {
3214		return x.AudioCodec
3215	}
3216	return HardwareFeatures_Audio_AUDIO_CODEC_UNKNOWN
3217}
3218
3219func (x *HardwareFeatures_Audio) GetSpeakerAmp() HardwareFeatures_Audio_Amplifier {
3220	if x != nil {
3221		return x.SpeakerAmp
3222	}
3223	return HardwareFeatures_Audio_AMPLIFIER_UNKNOWN
3224}
3225
3226func (x *HardwareFeatures_Audio) GetHeadphoneCodec() HardwareFeatures_Audio_AudioCodec {
3227	if x != nil {
3228		return x.HeadphoneCodec
3229	}
3230	return HardwareFeatures_Audio_AUDIO_CODEC_UNKNOWN
3231}
3232
3233func (x *HardwareFeatures_Audio) GetLidMicrophone() *HardwareFeatures_Count {
3234	if x != nil {
3235		return x.LidMicrophone
3236	}
3237	return nil
3238}
3239
3240func (x *HardwareFeatures_Audio) GetBaseMicrophone() *HardwareFeatures_Count {
3241	if x != nil {
3242		return x.BaseMicrophone
3243	}
3244	return nil
3245}
3246
3247func (x *HardwareFeatures_Audio) GetSpeakerAmplifier() *Component_Amplifier {
3248	if x != nil {
3249		return x.SpeakerAmplifier
3250	}
3251	return nil
3252}
3253
3254func (x *HardwareFeatures_Audio) GetCardConfigs() []*HardwareFeatures_Audio_CardConfig {
3255	if x != nil {
3256		return x.CardConfigs
3257	}
3258	return nil
3259}
3260
3261func (x *HardwareFeatures_Audio) GetCrasConfig() HardwareFeatures_Audio_AudioConfigStructure {
3262	if x != nil {
3263		return x.CrasConfig
3264	}
3265	return HardwareFeatures_Audio_AUDIO_CONFIG_STRUCTURE_NONE
3266}
3267
3268func (x *HardwareFeatures_Audio) GetSofAudioDsp() HardwareFeatures_Present {
3269	if x != nil {
3270		return x.SofAudioDsp
3271	}
3272	return HardwareFeatures_PRESENT_UNKNOWN
3273}
3274
3275type HardwareFeatures_Camera struct {
3276	state         protoimpl.MessageState
3277	sizeCache     protoimpl.SizeCache
3278	unknownFields protoimpl.UnknownFields
3279
3280	// List of camera devices on the model.
3281	Devices []*HardwareFeatures_Camera_Device `protobuf:"bytes,4,rep,name=devices,proto3" json:"devices,omitempty"`
3282	// The list of camera features that are enabled on this device.
3283	Features []string `protobuf:"bytes,5,rep,name=features,proto3" json:"features,omitempty"`
3284	// Whether expected camera devices were enumerated.
3285	Enumerated bool `protobuf:"varint,6,opt,name=enumerated,proto3" json:"enumerated,omitempty"`
3286	// List of strings each identifies an enumerated USB camera module.
3287	EnumeratedUsbIds []string `protobuf:"bytes,7,rep,name=enumerated_usb_ids,json=enumeratedUsbIds,proto3" json:"enumerated_usb_ids,omitempty"`
3288}
3289
3290func (x *HardwareFeatures_Camera) Reset() {
3291	*x = HardwareFeatures_Camera{}
3292	if protoimpl.UnsafeEnabled {
3293		mi := &file_chromiumos_config_api_topology_proto_msgTypes[11]
3294		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3295		ms.StoreMessageInfo(mi)
3296	}
3297}
3298
3299func (x *HardwareFeatures_Camera) String() string {
3300	return protoimpl.X.MessageStringOf(x)
3301}
3302
3303func (*HardwareFeatures_Camera) ProtoMessage() {}
3304
3305func (x *HardwareFeatures_Camera) ProtoReflect() protoreflect.Message {
3306	mi := &file_chromiumos_config_api_topology_proto_msgTypes[11]
3307	if protoimpl.UnsafeEnabled && x != nil {
3308		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3309		if ms.LoadMessageInfo() == nil {
3310			ms.StoreMessageInfo(mi)
3311		}
3312		return ms
3313	}
3314	return mi.MessageOf(x)
3315}
3316
3317// Deprecated: Use HardwareFeatures_Camera.ProtoReflect.Descriptor instead.
3318func (*HardwareFeatures_Camera) Descriptor() ([]byte, []int) {
3319	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 7}
3320}
3321
3322func (x *HardwareFeatures_Camera) GetDevices() []*HardwareFeatures_Camera_Device {
3323	if x != nil {
3324		return x.Devices
3325	}
3326	return nil
3327}
3328
3329func (x *HardwareFeatures_Camera) GetFeatures() []string {
3330	if x != nil {
3331		return x.Features
3332	}
3333	return nil
3334}
3335
3336func (x *HardwareFeatures_Camera) GetEnumerated() bool {
3337	if x != nil {
3338		return x.Enumerated
3339	}
3340	return false
3341}
3342
3343func (x *HardwareFeatures_Camera) GetEnumeratedUsbIds() []string {
3344	if x != nil {
3345		return x.EnumeratedUsbIds
3346	}
3347	return nil
3348}
3349
3350type HardwareFeatures_Accelerometer struct {
3351	state         protoimpl.MessageState
3352	sizeCache     protoimpl.SizeCache
3353	unknownFields protoimpl.UnknownFields
3354
3355	// If lid accelerometer is present on system
3356	LidAccelerometer HardwareFeatures_Present `protobuf:"varint,1,opt,name=lid_accelerometer,json=lidAccelerometer,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"lid_accelerometer,omitempty"`
3357	// If base accelerometer is present on system
3358	BaseAccelerometer HardwareFeatures_Present `protobuf:"varint,2,opt,name=base_accelerometer,json=baseAccelerometer,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"base_accelerometer,omitempty"`
3359}
3360
3361func (x *HardwareFeatures_Accelerometer) Reset() {
3362	*x = HardwareFeatures_Accelerometer{}
3363	if protoimpl.UnsafeEnabled {
3364		mi := &file_chromiumos_config_api_topology_proto_msgTypes[12]
3365		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3366		ms.StoreMessageInfo(mi)
3367	}
3368}
3369
3370func (x *HardwareFeatures_Accelerometer) String() string {
3371	return protoimpl.X.MessageStringOf(x)
3372}
3373
3374func (*HardwareFeatures_Accelerometer) ProtoMessage() {}
3375
3376func (x *HardwareFeatures_Accelerometer) ProtoReflect() protoreflect.Message {
3377	mi := &file_chromiumos_config_api_topology_proto_msgTypes[12]
3378	if protoimpl.UnsafeEnabled && x != nil {
3379		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3380		if ms.LoadMessageInfo() == nil {
3381			ms.StoreMessageInfo(mi)
3382		}
3383		return ms
3384	}
3385	return mi.MessageOf(x)
3386}
3387
3388// Deprecated: Use HardwareFeatures_Accelerometer.ProtoReflect.Descriptor instead.
3389func (*HardwareFeatures_Accelerometer) Descriptor() ([]byte, []int) {
3390	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 8}
3391}
3392
3393func (x *HardwareFeatures_Accelerometer) GetLidAccelerometer() HardwareFeatures_Present {
3394	if x != nil {
3395		return x.LidAccelerometer
3396	}
3397	return HardwareFeatures_PRESENT_UNKNOWN
3398}
3399
3400func (x *HardwareFeatures_Accelerometer) GetBaseAccelerometer() HardwareFeatures_Present {
3401	if x != nil {
3402		return x.BaseAccelerometer
3403	}
3404	return HardwareFeatures_PRESENT_UNKNOWN
3405}
3406
3407type HardwareFeatures_Gyroscope struct {
3408	state         protoimpl.MessageState
3409	sizeCache     protoimpl.SizeCache
3410	unknownFields protoimpl.UnknownFields
3411
3412	// If lid gyroscope is present on system
3413	LidGyroscope HardwareFeatures_Present `protobuf:"varint,1,opt,name=lid_gyroscope,json=lidGyroscope,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"lid_gyroscope,omitempty"`
3414	// If base gyroscope is present on system
3415	BaseGyroscope HardwareFeatures_Present `protobuf:"varint,2,opt,name=base_gyroscope,json=baseGyroscope,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"base_gyroscope,omitempty"`
3416}
3417
3418func (x *HardwareFeatures_Gyroscope) Reset() {
3419	*x = HardwareFeatures_Gyroscope{}
3420	if protoimpl.UnsafeEnabled {
3421		mi := &file_chromiumos_config_api_topology_proto_msgTypes[13]
3422		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3423		ms.StoreMessageInfo(mi)
3424	}
3425}
3426
3427func (x *HardwareFeatures_Gyroscope) String() string {
3428	return protoimpl.X.MessageStringOf(x)
3429}
3430
3431func (*HardwareFeatures_Gyroscope) ProtoMessage() {}
3432
3433func (x *HardwareFeatures_Gyroscope) ProtoReflect() protoreflect.Message {
3434	mi := &file_chromiumos_config_api_topology_proto_msgTypes[13]
3435	if protoimpl.UnsafeEnabled && x != nil {
3436		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3437		if ms.LoadMessageInfo() == nil {
3438			ms.StoreMessageInfo(mi)
3439		}
3440		return ms
3441	}
3442	return mi.MessageOf(x)
3443}
3444
3445// Deprecated: Use HardwareFeatures_Gyroscope.ProtoReflect.Descriptor instead.
3446func (*HardwareFeatures_Gyroscope) Descriptor() ([]byte, []int) {
3447	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 9}
3448}
3449
3450func (x *HardwareFeatures_Gyroscope) GetLidGyroscope() HardwareFeatures_Present {
3451	if x != nil {
3452		return x.LidGyroscope
3453	}
3454	return HardwareFeatures_PRESENT_UNKNOWN
3455}
3456
3457func (x *HardwareFeatures_Gyroscope) GetBaseGyroscope() HardwareFeatures_Present {
3458	if x != nil {
3459		return x.BaseGyroscope
3460	}
3461	return HardwareFeatures_PRESENT_UNKNOWN
3462}
3463
3464type HardwareFeatures_Magnetometer struct {
3465	state         protoimpl.MessageState
3466	sizeCache     protoimpl.SizeCache
3467	unknownFields protoimpl.UnknownFields
3468
3469	// If lid magnometer is present on system
3470	LidMagnetometer HardwareFeatures_Present `protobuf:"varint,1,opt,name=lid_magnetometer,json=lidMagnetometer,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"lid_magnetometer,omitempty"`
3471	// If base magnometer is present on system
3472	BaseMagnetometer HardwareFeatures_Present `protobuf:"varint,2,opt,name=base_magnetometer,json=baseMagnetometer,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"base_magnetometer,omitempty"`
3473}
3474
3475func (x *HardwareFeatures_Magnetometer) Reset() {
3476	*x = HardwareFeatures_Magnetometer{}
3477	if protoimpl.UnsafeEnabled {
3478		mi := &file_chromiumos_config_api_topology_proto_msgTypes[14]
3479		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3480		ms.StoreMessageInfo(mi)
3481	}
3482}
3483
3484func (x *HardwareFeatures_Magnetometer) String() string {
3485	return protoimpl.X.MessageStringOf(x)
3486}
3487
3488func (*HardwareFeatures_Magnetometer) ProtoMessage() {}
3489
3490func (x *HardwareFeatures_Magnetometer) ProtoReflect() protoreflect.Message {
3491	mi := &file_chromiumos_config_api_topology_proto_msgTypes[14]
3492	if protoimpl.UnsafeEnabled && x != nil {
3493		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3494		if ms.LoadMessageInfo() == nil {
3495			ms.StoreMessageInfo(mi)
3496		}
3497		return ms
3498	}
3499	return mi.MessageOf(x)
3500}
3501
3502// Deprecated: Use HardwareFeatures_Magnetometer.ProtoReflect.Descriptor instead.
3503func (*HardwareFeatures_Magnetometer) Descriptor() ([]byte, []int) {
3504	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 10}
3505}
3506
3507func (x *HardwareFeatures_Magnetometer) GetLidMagnetometer() HardwareFeatures_Present {
3508	if x != nil {
3509		return x.LidMagnetometer
3510	}
3511	return HardwareFeatures_PRESENT_UNKNOWN
3512}
3513
3514func (x *HardwareFeatures_Magnetometer) GetBaseMagnetometer() HardwareFeatures_Present {
3515	if x != nil {
3516		return x.BaseMagnetometer
3517	}
3518	return HardwareFeatures_PRESENT_UNKNOWN
3519}
3520
3521type HardwareFeatures_LightSensor struct {
3522	state         protoimpl.MessageState
3523	sizeCache     protoimpl.SizeCache
3524	unknownFields protoimpl.UnknownFields
3525
3526	// If lid light sensor is present on system
3527	LidLightsensor HardwareFeatures_Present `protobuf:"varint,1,opt,name=lid_lightsensor,json=lidLightsensor,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"lid_lightsensor,omitempty"`
3528	// If base light sensor is present on system
3529	BaseLightsensor HardwareFeatures_Present `protobuf:"varint,2,opt,name=base_lightsensor,json=baseLightsensor,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"base_lightsensor,omitempty"`
3530	// If camera light sensor is present on system
3531	CameraLightsensor HardwareFeatures_Present `protobuf:"varint,3,opt,name=camera_lightsensor,json=cameraLightsensor,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"camera_lightsensor,omitempty"`
3532}
3533
3534func (x *HardwareFeatures_LightSensor) Reset() {
3535	*x = HardwareFeatures_LightSensor{}
3536	if protoimpl.UnsafeEnabled {
3537		mi := &file_chromiumos_config_api_topology_proto_msgTypes[15]
3538		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3539		ms.StoreMessageInfo(mi)
3540	}
3541}
3542
3543func (x *HardwareFeatures_LightSensor) String() string {
3544	return protoimpl.X.MessageStringOf(x)
3545}
3546
3547func (*HardwareFeatures_LightSensor) ProtoMessage() {}
3548
3549func (x *HardwareFeatures_LightSensor) ProtoReflect() protoreflect.Message {
3550	mi := &file_chromiumos_config_api_topology_proto_msgTypes[15]
3551	if protoimpl.UnsafeEnabled && x != nil {
3552		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3553		if ms.LoadMessageInfo() == nil {
3554			ms.StoreMessageInfo(mi)
3555		}
3556		return ms
3557	}
3558	return mi.MessageOf(x)
3559}
3560
3561// Deprecated: Use HardwareFeatures_LightSensor.ProtoReflect.Descriptor instead.
3562func (*HardwareFeatures_LightSensor) Descriptor() ([]byte, []int) {
3563	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 11}
3564}
3565
3566func (x *HardwareFeatures_LightSensor) GetLidLightsensor() HardwareFeatures_Present {
3567	if x != nil {
3568		return x.LidLightsensor
3569	}
3570	return HardwareFeatures_PRESENT_UNKNOWN
3571}
3572
3573func (x *HardwareFeatures_LightSensor) GetBaseLightsensor() HardwareFeatures_Present {
3574	if x != nil {
3575		return x.BaseLightsensor
3576	}
3577	return HardwareFeatures_PRESENT_UNKNOWN
3578}
3579
3580func (x *HardwareFeatures_LightSensor) GetCameraLightsensor() HardwareFeatures_Present {
3581	if x != nil {
3582		return x.CameraLightsensor
3583	}
3584	return HardwareFeatures_PRESENT_UNKNOWN
3585}
3586
3587type HardwareFeatures_Screen struct {
3588	state         protoimpl.MessageState
3589	sizeCache     protoimpl.SizeCache
3590	unknownFields protoimpl.UnknownFields
3591
3592	ConnectorType   HardwareFeatures_Screen_ConnectorType `protobuf:"varint,4,opt,name=connector_type,json=connectorType,proto3,enum=chromiumos.config.api.HardwareFeatures_Screen_ConnectorType" json:"connector_type,omitempty"`
3593	PanelProperties *Component_DisplayPanel_Properties    `protobuf:"bytes,3,opt,name=panel_properties,json=panelProperties,proto3" json:"panel_properties,omitempty"`
3594	// If touch support is present on system
3595	TouchSupport HardwareFeatures_Present `protobuf:"varint,2,opt,name=touch_support,json=touchSupport,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"touch_support,omitempty"`
3596}
3597
3598func (x *HardwareFeatures_Screen) Reset() {
3599	*x = HardwareFeatures_Screen{}
3600	if protoimpl.UnsafeEnabled {
3601		mi := &file_chromiumos_config_api_topology_proto_msgTypes[16]
3602		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3603		ms.StoreMessageInfo(mi)
3604	}
3605}
3606
3607func (x *HardwareFeatures_Screen) String() string {
3608	return protoimpl.X.MessageStringOf(x)
3609}
3610
3611func (*HardwareFeatures_Screen) ProtoMessage() {}
3612
3613func (x *HardwareFeatures_Screen) ProtoReflect() protoreflect.Message {
3614	mi := &file_chromiumos_config_api_topology_proto_msgTypes[16]
3615	if protoimpl.UnsafeEnabled && x != nil {
3616		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3617		if ms.LoadMessageInfo() == nil {
3618			ms.StoreMessageInfo(mi)
3619		}
3620		return ms
3621	}
3622	return mi.MessageOf(x)
3623}
3624
3625// Deprecated: Use HardwareFeatures_Screen.ProtoReflect.Descriptor instead.
3626func (*HardwareFeatures_Screen) Descriptor() ([]byte, []int) {
3627	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 12}
3628}
3629
3630func (x *HardwareFeatures_Screen) GetConnectorType() HardwareFeatures_Screen_ConnectorType {
3631	if x != nil {
3632		return x.ConnectorType
3633	}
3634	return HardwareFeatures_Screen_CONNECTOR_TYPE_UNSPECIFIED
3635}
3636
3637func (x *HardwareFeatures_Screen) GetPanelProperties() *Component_DisplayPanel_Properties {
3638	if x != nil {
3639		return x.PanelProperties
3640	}
3641	return nil
3642}
3643
3644func (x *HardwareFeatures_Screen) GetTouchSupport() HardwareFeatures_Present {
3645	if x != nil {
3646		return x.TouchSupport
3647	}
3648	return HardwareFeatures_PRESENT_UNKNOWN
3649}
3650
3651type HardwareFeatures_FormFactor struct {
3652	state         protoimpl.MessageState
3653	sizeCache     protoimpl.SizeCache
3654	unknownFields protoimpl.UnknownFields
3655
3656	// Form factory of system
3657	FormFactor HardwareFeatures_FormFactor_FormFactorType `protobuf:"varint,1,opt,name=form_factor,json=formFactor,proto3,enum=chromiumos.config.api.HardwareFeatures_FormFactor_FormFactorType" json:"form_factor,omitempty"`
3658	// Input to enter recovery
3659	RecoveryInput HardwareFeatures_FormFactor_RecoveryInputType `protobuf:"varint,2,opt,name=recovery_input,json=recoveryInput,proto3,enum=chromiumos.config.api.HardwareFeatures_FormFactor_RecoveryInputType" json:"recovery_input,omitempty"`
3660	// Whether to enable detachable UI in firmware build.
3661	DetachableUi *wrapperspb.BoolValue `protobuf:"bytes,3,opt,name=detachable_ui,json=detachableUi,proto3" json:"detachable_ui,omitempty"`
3662}
3663
3664func (x *HardwareFeatures_FormFactor) Reset() {
3665	*x = HardwareFeatures_FormFactor{}
3666	if protoimpl.UnsafeEnabled {
3667		mi := &file_chromiumos_config_api_topology_proto_msgTypes[17]
3668		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3669		ms.StoreMessageInfo(mi)
3670	}
3671}
3672
3673func (x *HardwareFeatures_FormFactor) String() string {
3674	return protoimpl.X.MessageStringOf(x)
3675}
3676
3677func (*HardwareFeatures_FormFactor) ProtoMessage() {}
3678
3679func (x *HardwareFeatures_FormFactor) ProtoReflect() protoreflect.Message {
3680	mi := &file_chromiumos_config_api_topology_proto_msgTypes[17]
3681	if protoimpl.UnsafeEnabled && x != nil {
3682		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3683		if ms.LoadMessageInfo() == nil {
3684			ms.StoreMessageInfo(mi)
3685		}
3686		return ms
3687	}
3688	return mi.MessageOf(x)
3689}
3690
3691// Deprecated: Use HardwareFeatures_FormFactor.ProtoReflect.Descriptor instead.
3692func (*HardwareFeatures_FormFactor) Descriptor() ([]byte, []int) {
3693	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 13}
3694}
3695
3696func (x *HardwareFeatures_FormFactor) GetFormFactor() HardwareFeatures_FormFactor_FormFactorType {
3697	if x != nil {
3698		return x.FormFactor
3699	}
3700	return HardwareFeatures_FormFactor_FORM_FACTOR_UNKNOWN
3701}
3702
3703func (x *HardwareFeatures_FormFactor) GetRecoveryInput() HardwareFeatures_FormFactor_RecoveryInputType {
3704	if x != nil {
3705		return x.RecoveryInput
3706	}
3707	return HardwareFeatures_FormFactor_RECOVERY_INPUT_UNKNOWN
3708}
3709
3710func (x *HardwareFeatures_FormFactor) GetDetachableUi() *wrapperspb.BoolValue {
3711	if x != nil {
3712		return x.DetachableUi
3713	}
3714	return nil
3715}
3716
3717type HardwareFeatures_Stylus struct {
3718	state         protoimpl.MessageState
3719	sizeCache     protoimpl.SizeCache
3720	unknownFields protoimpl.UnknownFields
3721
3722	// Type of stylus
3723	Stylus HardwareFeatures_Stylus_StylusType `protobuf:"varint,1,opt,name=stylus,proto3,enum=chromiumos.config.api.HardwareFeatures_Stylus_StylusType" json:"stylus,omitempty"`
3724}
3725
3726func (x *HardwareFeatures_Stylus) Reset() {
3727	*x = HardwareFeatures_Stylus{}
3728	if protoimpl.UnsafeEnabled {
3729		mi := &file_chromiumos_config_api_topology_proto_msgTypes[18]
3730		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3731		ms.StoreMessageInfo(mi)
3732	}
3733}
3734
3735func (x *HardwareFeatures_Stylus) String() string {
3736	return protoimpl.X.MessageStringOf(x)
3737}
3738
3739func (*HardwareFeatures_Stylus) ProtoMessage() {}
3740
3741func (x *HardwareFeatures_Stylus) ProtoReflect() protoreflect.Message {
3742	mi := &file_chromiumos_config_api_topology_proto_msgTypes[18]
3743	if protoimpl.UnsafeEnabled && x != nil {
3744		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3745		if ms.LoadMessageInfo() == nil {
3746			ms.StoreMessageInfo(mi)
3747		}
3748		return ms
3749	}
3750	return mi.MessageOf(x)
3751}
3752
3753// Deprecated: Use HardwareFeatures_Stylus.ProtoReflect.Descriptor instead.
3754func (*HardwareFeatures_Stylus) Descriptor() ([]byte, []int) {
3755	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 14}
3756}
3757
3758func (x *HardwareFeatures_Stylus) GetStylus() HardwareFeatures_Stylus_StylusType {
3759	if x != nil {
3760		return x.Stylus
3761	}
3762	return HardwareFeatures_Stylus_STYLUS_UNKNOWN
3763}
3764
3765type HardwareFeatures_Keyboard struct {
3766	state         protoimpl.MessageState
3767	sizeCache     protoimpl.SizeCache
3768	unknownFields protoimpl.UnknownFields
3769
3770	// Type of keyboard present on system
3771	KeyboardType HardwareFeatures_Keyboard_KeyboardType `protobuf:"varint,1,opt,name=keyboard_type,json=keyboardType,proto3,enum=chromiumos.config.api.HardwareFeatures_Keyboard_KeyboardType" json:"keyboard_type,omitempty"`
3772	// If keyboard backlight is present on system
3773	Backlight HardwareFeatures_Present `protobuf:"varint,2,opt,name=backlight,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"backlight,omitempty"`
3774	// If power button is present on keyboard
3775	PowerButton HardwareFeatures_Present `protobuf:"varint,3,opt,name=power_button,json=powerButton,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"power_button,omitempty"`
3776	// If numeric pad is present on keyboard
3777	NumericPad HardwareFeatures_Present `protobuf:"varint,4,opt,name=numeric_pad,json=numericPad,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"numeric_pad,omitempty"`
3778	// Type of the MCU used in the system
3779	McuType HardwareFeatures_Keyboard_KeyboardMcuType `protobuf:"varint,6,opt,name=mcu_type,json=mcuType,proto3,enum=chromiumos.config.api.HardwareFeatures_Keyboard_KeyboardMcuType" json:"mcu_type,omitempty"`
3780	// The keyboard backlight level step values. Values must be in
3781	// increasing order. If set, the first value must be 0. This corresponds to
3782	// the keyboard_backlight_user_steps powerd pref.
3783	BacklightUserSteps []float64 `protobuf:"fixed64,5,rep,packed,name=backlight_user_steps,json=backlightUserSteps,proto3" json:"backlight_user_steps,omitempty"`
3784	// The configuration of the keyboard backlight percentage based on the
3785	// ambient light sensor value. Steps should be in increasing order.
3786	AlsSteps []*HardwareFeatures_KbAlsStep `protobuf:"bytes,7,rep,name=als_steps,json=alsSteps,proto3" json:"als_steps,omitempty"`
3787	// The default keyboard backlight percentage in the
3788	// absence of an ambient light sensor controlling the keyboard backlight.
3789	NoAlsBrightness float64 `protobuf:"fixed64,8,opt,name=no_als_brightness,json=noAlsBrightness,proto3" json:"no_als_brightness,omitempty"`
3790	// The number of keys on the left side of bottom row.
3791	BottomLeftLayout HardwareFeatures_Keyboard_KeyboardBottomLeftLayout `protobuf:"varint,9,opt,name=bottom_left_layout,json=bottomLeftLayout,proto3,enum=chromiumos.config.api.HardwareFeatures_Keyboard_KeyboardBottomLeftLayout" json:"bottom_left_layout,omitempty"`
3792	// The number of keys on the right side of bottom row.
3793	BottomRightLayout HardwareFeatures_Keyboard_KeyboardBottomRightLayout `protobuf:"varint,10,opt,name=bottom_right_layout,json=bottomRightLayout,proto3,enum=chromiumos.config.api.HardwareFeatures_Keyboard_KeyboardBottomRightLayout" json:"bottom_right_layout,omitempty"`
3794	// The number of columns of numeric pad.
3795	NumericPadLayout HardwareFeatures_Keyboard_NumericPadLayout `protobuf:"varint,11,opt,name=numeric_pad_layout,json=numericPadLayout,proto3,enum=chromiumos.config.api.HardwareFeatures_Keyboard_NumericPadLayout" json:"numeric_pad_layout,omitempty"`
3796}
3797
3798func (x *HardwareFeatures_Keyboard) Reset() {
3799	*x = HardwareFeatures_Keyboard{}
3800	if protoimpl.UnsafeEnabled {
3801		mi := &file_chromiumos_config_api_topology_proto_msgTypes[19]
3802		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3803		ms.StoreMessageInfo(mi)
3804	}
3805}
3806
3807func (x *HardwareFeatures_Keyboard) String() string {
3808	return protoimpl.X.MessageStringOf(x)
3809}
3810
3811func (*HardwareFeatures_Keyboard) ProtoMessage() {}
3812
3813func (x *HardwareFeatures_Keyboard) ProtoReflect() protoreflect.Message {
3814	mi := &file_chromiumos_config_api_topology_proto_msgTypes[19]
3815	if protoimpl.UnsafeEnabled && x != nil {
3816		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3817		if ms.LoadMessageInfo() == nil {
3818			ms.StoreMessageInfo(mi)
3819		}
3820		return ms
3821	}
3822	return mi.MessageOf(x)
3823}
3824
3825// Deprecated: Use HardwareFeatures_Keyboard.ProtoReflect.Descriptor instead.
3826func (*HardwareFeatures_Keyboard) Descriptor() ([]byte, []int) {
3827	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 15}
3828}
3829
3830func (x *HardwareFeatures_Keyboard) GetKeyboardType() HardwareFeatures_Keyboard_KeyboardType {
3831	if x != nil {
3832		return x.KeyboardType
3833	}
3834	return HardwareFeatures_Keyboard_KEYBOARD_TYPE_UNKNOWN
3835}
3836
3837func (x *HardwareFeatures_Keyboard) GetBacklight() HardwareFeatures_Present {
3838	if x != nil {
3839		return x.Backlight
3840	}
3841	return HardwareFeatures_PRESENT_UNKNOWN
3842}
3843
3844func (x *HardwareFeatures_Keyboard) GetPowerButton() HardwareFeatures_Present {
3845	if x != nil {
3846		return x.PowerButton
3847	}
3848	return HardwareFeatures_PRESENT_UNKNOWN
3849}
3850
3851func (x *HardwareFeatures_Keyboard) GetNumericPad() HardwareFeatures_Present {
3852	if x != nil {
3853		return x.NumericPad
3854	}
3855	return HardwareFeatures_PRESENT_UNKNOWN
3856}
3857
3858func (x *HardwareFeatures_Keyboard) GetMcuType() HardwareFeatures_Keyboard_KeyboardMcuType {
3859	if x != nil {
3860		return x.McuType
3861	}
3862	return HardwareFeatures_Keyboard_KEYBOARD_MCU_NOT_PRESENT
3863}
3864
3865func (x *HardwareFeatures_Keyboard) GetBacklightUserSteps() []float64 {
3866	if x != nil {
3867		return x.BacklightUserSteps
3868	}
3869	return nil
3870}
3871
3872func (x *HardwareFeatures_Keyboard) GetAlsSteps() []*HardwareFeatures_KbAlsStep {
3873	if x != nil {
3874		return x.AlsSteps
3875	}
3876	return nil
3877}
3878
3879func (x *HardwareFeatures_Keyboard) GetNoAlsBrightness() float64 {
3880	if x != nil {
3881		return x.NoAlsBrightness
3882	}
3883	return 0
3884}
3885
3886func (x *HardwareFeatures_Keyboard) GetBottomLeftLayout() HardwareFeatures_Keyboard_KeyboardBottomLeftLayout {
3887	if x != nil {
3888		return x.BottomLeftLayout
3889	}
3890	return HardwareFeatures_Keyboard_KEYBOARD_BOTTOM_LEFT_LAYOUT_UNKNOWN
3891}
3892
3893func (x *HardwareFeatures_Keyboard) GetBottomRightLayout() HardwareFeatures_Keyboard_KeyboardBottomRightLayout {
3894	if x != nil {
3895		return x.BottomRightLayout
3896	}
3897	return HardwareFeatures_Keyboard_KEYBOARD_BOTTOM_RIGHT_LAYOUT_UNKNOWN
3898}
3899
3900func (x *HardwareFeatures_Keyboard) GetNumericPadLayout() HardwareFeatures_Keyboard_NumericPadLayout {
3901	if x != nil {
3902		return x.NumericPadLayout
3903	}
3904	return HardwareFeatures_Keyboard_NUMERIC_PAD_LAYOUT_UNKNOWN
3905}
3906
3907type HardwareFeatures_Memory struct {
3908	state         protoimpl.MessageState
3909	sizeCache     protoimpl.SizeCache
3910	unknownFields protoimpl.UnknownFields
3911
3912	Profile *Component_Memory_Profile `protobuf:"bytes,1,opt,name=profile,proto3" json:"profile,omitempty"`
3913}
3914
3915func (x *HardwareFeatures_Memory) Reset() {
3916	*x = HardwareFeatures_Memory{}
3917	if protoimpl.UnsafeEnabled {
3918		mi := &file_chromiumos_config_api_topology_proto_msgTypes[20]
3919		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3920		ms.StoreMessageInfo(mi)
3921	}
3922}
3923
3924func (x *HardwareFeatures_Memory) String() string {
3925	return protoimpl.X.MessageStringOf(x)
3926}
3927
3928func (*HardwareFeatures_Memory) ProtoMessage() {}
3929
3930func (x *HardwareFeatures_Memory) ProtoReflect() protoreflect.Message {
3931	mi := &file_chromiumos_config_api_topology_proto_msgTypes[20]
3932	if protoimpl.UnsafeEnabled && x != nil {
3933		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3934		if ms.LoadMessageInfo() == nil {
3935			ms.StoreMessageInfo(mi)
3936		}
3937		return ms
3938	}
3939	return mi.MessageOf(x)
3940}
3941
3942// Deprecated: Use HardwareFeatures_Memory.ProtoReflect.Descriptor instead.
3943func (*HardwareFeatures_Memory) Descriptor() ([]byte, []int) {
3944	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 16}
3945}
3946
3947func (x *HardwareFeatures_Memory) GetProfile() *Component_Memory_Profile {
3948	if x != nil {
3949		return x.Profile
3950	}
3951	return nil
3952}
3953
3954type HardwareFeatures_Fingerprint struct {
3955	state         protoimpl.MessageState
3956	sizeCache     protoimpl.SizeCache
3957	unknownFields protoimpl.UnknownFields
3958
3959	// Location of fingerprint sensor
3960	Location HardwareFeatures_Fingerprint_Location `protobuf:"varint,1,opt,name=location,proto3,enum=chromiumos.config.api.HardwareFeatures_Fingerprint_Location" json:"location,omitempty"`
3961	// Fingerprint board used.
3962	Board string `protobuf:"bytes,2,opt,name=board,proto3" json:"board,omitempty"`
3963	// Read-only (RO) firmware version to use (empty means use default).
3964	RoVersion string `protobuf:"bytes,3,opt,name=ro_version,json=roVersion,proto3" json:"ro_version,omitempty"`
3965	// Healthd fingerprint diagnostic routine parameters.
3966	FingerprintDiag *HardwareFeatures_Fingerprint_FingerprintDiag `protobuf:"bytes,4,opt,name=fingerprint_diag,json=fingerprintDiag,proto3" json:"fingerprint_diag,omitempty"`
3967	// If fingerprint sensor is present on system
3968	Present bool `protobuf:"varint,5,opt,name=present,proto3" json:"present,omitempty"`
3969}
3970
3971func (x *HardwareFeatures_Fingerprint) Reset() {
3972	*x = HardwareFeatures_Fingerprint{}
3973	if protoimpl.UnsafeEnabled {
3974		mi := &file_chromiumos_config_api_topology_proto_msgTypes[21]
3975		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3976		ms.StoreMessageInfo(mi)
3977	}
3978}
3979
3980func (x *HardwareFeatures_Fingerprint) String() string {
3981	return protoimpl.X.MessageStringOf(x)
3982}
3983
3984func (*HardwareFeatures_Fingerprint) ProtoMessage() {}
3985
3986func (x *HardwareFeatures_Fingerprint) ProtoReflect() protoreflect.Message {
3987	mi := &file_chromiumos_config_api_topology_proto_msgTypes[21]
3988	if protoimpl.UnsafeEnabled && x != nil {
3989		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3990		if ms.LoadMessageInfo() == nil {
3991			ms.StoreMessageInfo(mi)
3992		}
3993		return ms
3994	}
3995	return mi.MessageOf(x)
3996}
3997
3998// Deprecated: Use HardwareFeatures_Fingerprint.ProtoReflect.Descriptor instead.
3999func (*HardwareFeatures_Fingerprint) Descriptor() ([]byte, []int) {
4000	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 17}
4001}
4002
4003func (x *HardwareFeatures_Fingerprint) GetLocation() HardwareFeatures_Fingerprint_Location {
4004	if x != nil {
4005		return x.Location
4006	}
4007	return HardwareFeatures_Fingerprint_LOCATION_UNKNOWN
4008}
4009
4010func (x *HardwareFeatures_Fingerprint) GetBoard() string {
4011	if x != nil {
4012		return x.Board
4013	}
4014	return ""
4015}
4016
4017func (x *HardwareFeatures_Fingerprint) GetRoVersion() string {
4018	if x != nil {
4019		return x.RoVersion
4020	}
4021	return ""
4022}
4023
4024func (x *HardwareFeatures_Fingerprint) GetFingerprintDiag() *HardwareFeatures_Fingerprint_FingerprintDiag {
4025	if x != nil {
4026		return x.FingerprintDiag
4027	}
4028	return nil
4029}
4030
4031func (x *HardwareFeatures_Fingerprint) GetPresent() bool {
4032	if x != nil {
4033		return x.Present
4034	}
4035	return false
4036}
4037
4038type HardwareFeatures_Storage struct {
4039	state         protoimpl.MessageState
4040	sizeCache     protoimpl.SizeCache
4041	unknownFields protoimpl.UnknownFields
4042
4043	StorageType Component_Storage_StorageType `protobuf:"varint,1,opt,name=storage_type,json=storageType,proto3,enum=chromiumos.config.api.Component_Storage_StorageType" json:"storage_type,omitempty"`
4044	SizeGb      uint32                        `protobuf:"varint,2,opt,name=size_gb,json=sizeGb,proto3" json:"size_gb,omitempty"`
4045}
4046
4047func (x *HardwareFeatures_Storage) Reset() {
4048	*x = HardwareFeatures_Storage{}
4049	if protoimpl.UnsafeEnabled {
4050		mi := &file_chromiumos_config_api_topology_proto_msgTypes[22]
4051		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4052		ms.StoreMessageInfo(mi)
4053	}
4054}
4055
4056func (x *HardwareFeatures_Storage) String() string {
4057	return protoimpl.X.MessageStringOf(x)
4058}
4059
4060func (*HardwareFeatures_Storage) ProtoMessage() {}
4061
4062func (x *HardwareFeatures_Storage) ProtoReflect() protoreflect.Message {
4063	mi := &file_chromiumos_config_api_topology_proto_msgTypes[22]
4064	if protoimpl.UnsafeEnabled && x != nil {
4065		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4066		if ms.LoadMessageInfo() == nil {
4067			ms.StoreMessageInfo(mi)
4068		}
4069		return ms
4070	}
4071	return mi.MessageOf(x)
4072}
4073
4074// Deprecated: Use HardwareFeatures_Storage.ProtoReflect.Descriptor instead.
4075func (*HardwareFeatures_Storage) Descriptor() ([]byte, []int) {
4076	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 18}
4077}
4078
4079func (x *HardwareFeatures_Storage) GetStorageType() Component_Storage_StorageType {
4080	if x != nil {
4081		return x.StorageType
4082	}
4083	return Component_Storage_STORAGE_TYPE_UNKNOWN
4084}
4085
4086func (x *HardwareFeatures_Storage) GetSizeGb() uint32 {
4087	if x != nil {
4088		return x.SizeGb
4089	}
4090	return 0
4091}
4092
4093type HardwareFeatures_Bluetooth struct {
4094	state         protoimpl.MessageState
4095	sizeCache     protoimpl.SizeCache
4096	unknownFields protoimpl.UnknownFields
4097
4098	// Defines the specific bt component used in the design config
4099	Component *Component_Bluetooth     `protobuf:"bytes,1,opt,name=component,proto3" json:"component,omitempty"`
4100	Present   HardwareFeatures_Present `protobuf:"varint,2,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
4101}
4102
4103func (x *HardwareFeatures_Bluetooth) Reset() {
4104	*x = HardwareFeatures_Bluetooth{}
4105	if protoimpl.UnsafeEnabled {
4106		mi := &file_chromiumos_config_api_topology_proto_msgTypes[23]
4107		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4108		ms.StoreMessageInfo(mi)
4109	}
4110}
4111
4112func (x *HardwareFeatures_Bluetooth) String() string {
4113	return protoimpl.X.MessageStringOf(x)
4114}
4115
4116func (*HardwareFeatures_Bluetooth) ProtoMessage() {}
4117
4118func (x *HardwareFeatures_Bluetooth) ProtoReflect() protoreflect.Message {
4119	mi := &file_chromiumos_config_api_topology_proto_msgTypes[23]
4120	if protoimpl.UnsafeEnabled && x != nil {
4121		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4122		if ms.LoadMessageInfo() == nil {
4123			ms.StoreMessageInfo(mi)
4124		}
4125		return ms
4126	}
4127	return mi.MessageOf(x)
4128}
4129
4130// Deprecated: Use HardwareFeatures_Bluetooth.ProtoReflect.Descriptor instead.
4131func (*HardwareFeatures_Bluetooth) Descriptor() ([]byte, []int) {
4132	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 19}
4133}
4134
4135func (x *HardwareFeatures_Bluetooth) GetComponent() *Component_Bluetooth {
4136	if x != nil {
4137		return x.Component
4138	}
4139	return nil
4140}
4141
4142func (x *HardwareFeatures_Bluetooth) GetPresent() HardwareFeatures_Present {
4143	if x != nil {
4144		return x.Present
4145	}
4146	return HardwareFeatures_PRESENT_UNKNOWN
4147}
4148
4149type HardwareFeatures_BarrelJack struct {
4150	state         protoimpl.MessageState
4151	sizeCache     protoimpl.SizeCache
4152	unknownFields protoimpl.UnknownFields
4153
4154	// If BarrelJack support is present on system.
4155	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
4156}
4157
4158func (x *HardwareFeatures_BarrelJack) Reset() {
4159	*x = HardwareFeatures_BarrelJack{}
4160	if protoimpl.UnsafeEnabled {
4161		mi := &file_chromiumos_config_api_topology_proto_msgTypes[24]
4162		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4163		ms.StoreMessageInfo(mi)
4164	}
4165}
4166
4167func (x *HardwareFeatures_BarrelJack) String() string {
4168	return protoimpl.X.MessageStringOf(x)
4169}
4170
4171func (*HardwareFeatures_BarrelJack) ProtoMessage() {}
4172
4173func (x *HardwareFeatures_BarrelJack) ProtoReflect() protoreflect.Message {
4174	mi := &file_chromiumos_config_api_topology_proto_msgTypes[24]
4175	if protoimpl.UnsafeEnabled && x != nil {
4176		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4177		if ms.LoadMessageInfo() == nil {
4178			ms.StoreMessageInfo(mi)
4179		}
4180		return ms
4181	}
4182	return mi.MessageOf(x)
4183}
4184
4185// Deprecated: Use HardwareFeatures_BarrelJack.ProtoReflect.Descriptor instead.
4186func (*HardwareFeatures_BarrelJack) Descriptor() ([]byte, []int) {
4187	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 20}
4188}
4189
4190func (x *HardwareFeatures_BarrelJack) GetPresent() HardwareFeatures_Present {
4191	if x != nil {
4192		return x.Present
4193	}
4194	return HardwareFeatures_PRESENT_UNKNOWN
4195}
4196
4197// Wifi properties
4198// NEXT TAG: 3
4199type HardwareFeatures_Wifi struct {
4200	state         protoimpl.MessageState
4201	sizeCache     protoimpl.SizeCache
4202	unknownFields protoimpl.UnknownFields
4203
4204	// WLAN protocols supported by the Wifi chipset(s).
4205	SupportedWlanProtocols []Component_Wifi_WLANProtocol    `protobuf:"varint,1,rep,packed,name=supported_wlan_protocols,json=supportedWlanProtocols,proto3,enum=chromiumos.config.api.Component_Wifi_WLANProtocol" json:"supported_wlan_protocols,omitempty"`
4206	WifiChips              []HardwareFeatures_Wifi_WifiChip `protobuf:"varint,2,rep,packed,name=wifi_chips,json=wifiChips,proto3,enum=chromiumos.config.api.HardwareFeatures_Wifi_WifiChip" json:"wifi_chips,omitempty"`
4207	WifiConfig             *WifiConfig                      `protobuf:"bytes,3,opt,name=wifi_config,json=wifiConfig,proto3" json:"wifi_config,omitempty"`
4208	WifiVpdSar             bool                             `protobuf:"varint,4,opt,name=wifi_vpd_sar,json=wifiVpdSar,proto3" json:"wifi_vpd_sar,omitempty"`
4209}
4210
4211func (x *HardwareFeatures_Wifi) Reset() {
4212	*x = HardwareFeatures_Wifi{}
4213	if protoimpl.UnsafeEnabled {
4214		mi := &file_chromiumos_config_api_topology_proto_msgTypes[25]
4215		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4216		ms.StoreMessageInfo(mi)
4217	}
4218}
4219
4220func (x *HardwareFeatures_Wifi) String() string {
4221	return protoimpl.X.MessageStringOf(x)
4222}
4223
4224func (*HardwareFeatures_Wifi) ProtoMessage() {}
4225
4226func (x *HardwareFeatures_Wifi) ProtoReflect() protoreflect.Message {
4227	mi := &file_chromiumos_config_api_topology_proto_msgTypes[25]
4228	if protoimpl.UnsafeEnabled && x != nil {
4229		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4230		if ms.LoadMessageInfo() == nil {
4231			ms.StoreMessageInfo(mi)
4232		}
4233		return ms
4234	}
4235	return mi.MessageOf(x)
4236}
4237
4238// Deprecated: Use HardwareFeatures_Wifi.ProtoReflect.Descriptor instead.
4239func (*HardwareFeatures_Wifi) Descriptor() ([]byte, []int) {
4240	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 21}
4241}
4242
4243func (x *HardwareFeatures_Wifi) GetSupportedWlanProtocols() []Component_Wifi_WLANProtocol {
4244	if x != nil {
4245		return x.SupportedWlanProtocols
4246	}
4247	return nil
4248}
4249
4250func (x *HardwareFeatures_Wifi) GetWifiChips() []HardwareFeatures_Wifi_WifiChip {
4251	if x != nil {
4252		return x.WifiChips
4253	}
4254	return nil
4255}
4256
4257func (x *HardwareFeatures_Wifi) GetWifiConfig() *WifiConfig {
4258	if x != nil {
4259		return x.WifiConfig
4260	}
4261	return nil
4262}
4263
4264func (x *HardwareFeatures_Wifi) GetWifiVpdSar() bool {
4265	if x != nil {
4266		return x.WifiVpdSar
4267	}
4268	return false
4269}
4270
4271type HardwareFeatures_Button struct {
4272	state         protoimpl.MessageState
4273	sizeCache     protoimpl.SizeCache
4274	unknownFields protoimpl.UnknownFields
4275
4276	Region HardwareFeatures_Button_Region `protobuf:"varint,1,opt,name=region,proto3,enum=chromiumos.config.api.HardwareFeatures_Button_Region" json:"region,omitempty"`
4277	Edge   HardwareFeatures_Button_Edge   `protobuf:"varint,2,opt,name=edge,proto3,enum=chromiumos.config.api.HardwareFeatures_Button_Edge" json:"edge,omitempty"`
4278	// The percentage for button center position to the display's width/height
4279	// in primary landscape screen orientation. If Edge is LEFT or RIGHT,
4280	// specifies the button's center position as a fraction of the Region's
4281	// height relative to the top of the Region. For TOP and BOTTOM, specifies
4282	// the position as a fraction of the Region's width relative to the left
4283	// side of the Region.
4284	Position float32 `protobuf:"fixed32,3,opt,name=position,proto3" json:"position,omitempty"`
4285}
4286
4287func (x *HardwareFeatures_Button) Reset() {
4288	*x = HardwareFeatures_Button{}
4289	if protoimpl.UnsafeEnabled {
4290		mi := &file_chromiumos_config_api_topology_proto_msgTypes[26]
4291		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4292		ms.StoreMessageInfo(mi)
4293	}
4294}
4295
4296func (x *HardwareFeatures_Button) String() string {
4297	return protoimpl.X.MessageStringOf(x)
4298}
4299
4300func (*HardwareFeatures_Button) ProtoMessage() {}
4301
4302func (x *HardwareFeatures_Button) ProtoReflect() protoreflect.Message {
4303	mi := &file_chromiumos_config_api_topology_proto_msgTypes[26]
4304	if protoimpl.UnsafeEnabled && x != nil {
4305		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4306		if ms.LoadMessageInfo() == nil {
4307			ms.StoreMessageInfo(mi)
4308		}
4309		return ms
4310	}
4311	return mi.MessageOf(x)
4312}
4313
4314// Deprecated: Use HardwareFeatures_Button.ProtoReflect.Descriptor instead.
4315func (*HardwareFeatures_Button) Descriptor() ([]byte, []int) {
4316	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 22}
4317}
4318
4319func (x *HardwareFeatures_Button) GetRegion() HardwareFeatures_Button_Region {
4320	if x != nil {
4321		return x.Region
4322	}
4323	return HardwareFeatures_Button_REGION_UNKNOWN
4324}
4325
4326func (x *HardwareFeatures_Button) GetEdge() HardwareFeatures_Button_Edge {
4327	if x != nil {
4328		return x.Edge
4329	}
4330	return HardwareFeatures_Button_EDGE_UNKNOWN
4331}
4332
4333func (x *HardwareFeatures_Button) GetPosition() float32 {
4334	if x != nil {
4335		return x.Position
4336	}
4337	return 0
4338}
4339
4340// EmbeddedController properties
4341// Next Tag: 12
4342type HardwareFeatures_EmbeddedController struct {
4343	state         protoimpl.MessageState
4344	sizeCache     protoimpl.SizeCache
4345	unknownFields protoimpl.UnknownFields
4346
4347	// Whether any kind of EC is present on the system.
4348	Present HardwareFeatures_Present                                   `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
4349	EcType  HardwareFeatures_EmbeddedController_EmbeddedControllerType `protobuf:"varint,2,opt,name=ec_type,json=ecType,proto3,enum=chromiumos.config.api.HardwareFeatures_EmbeddedController_EmbeddedControllerType" json:"ec_type,omitempty"`
4350	// The physical component of the EC.
4351	Part *Component_EmbeddedController `protobuf:"bytes,3,opt,name=part,proto3" json:"part,omitempty"`
4352	// Whether the EC supports EC_FEATURE_TYPEC_CMD.
4353	FeatureTypecCmd HardwareFeatures_Present `protobuf:"varint,4,opt,name=feature_typec_cmd,json=featureTypecCmd,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"feature_typec_cmd,omitempty"`
4354	// Whether the EC supports CBI (CrOS Board Info stored on the EEPROM).
4355	Cbi HardwareFeatures_Present `protobuf:"varint,5,opt,name=cbi,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"cbi,omitempty"`
4356	// Whether the EC detects the detachable base at runtime
4357	DetachableBase HardwareFeatures_Present `protobuf:"varint,6,opt,name=detachable_base,json=detachableBase,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"detachable_base,omitempty"`
4358	// Whether the EC supports EC_CMD_CHARGE_CONTROL v2.
4359	FeatureChargeControlV2 HardwareFeatures_Present `protobuf:"varint,7,opt,name=feature_charge_control_v2,json=featureChargeControlV2,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"feature_charge_control_v2,omitempty"`
4360	// Whether the EC will panic on Asserts
4361	FeatureAssertsPanic HardwareFeatures_Present `protobuf:"varint,8,opt,name=feature_asserts_panic,json=featureAssertsPanic,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"feature_asserts_panic,omitempty"`
4362	// Whether the EC supports system safe mode recovery.
4363	FeatureSystemSafeMode HardwareFeatures_Present `protobuf:"varint,9,opt,name=feature_system_safe_mode,json=featureSystemSafeMode,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"feature_system_safe_mode,omitempty"`
4364	// Whether the EC supports memory dump host commands.
4365	FeatureMemoryDumpCommands HardwareFeatures_Present `protobuf:"varint,10,opt,name=feature_memory_dump_commands,json=featureMemoryDumpCommands,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"feature_memory_dump_commands,omitempty"`
4366	// The extracted EC build config options
4367	// E.g. CONFIG_DEBUG_ASSERT, CONFIG_PLATFORM_EC_BATTERY
4368	BuildConfig map[string]HardwareFeatures_Present `protobuf:"bytes,11,rep,name=build_config,json=buildConfig,proto3" json:"build_config,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3,enum=chromiumos.config.api.HardwareFeatures_Present"`
4369	// Maximal ODR (Online data rate) of the MEMS sensors
4370	// (accelerometer/gyroscope). Usually EC can handle ODR up to ~200Hz. On
4371	// some EC, we need to reduce to 100Hz otherwise the sensor task is not
4372	// scheduled fast enough. It can lead to failing the CTS tests or worse EC
4373	// crashes (watchdog timer) if the idle stack is never scheduled. Normally,
4374	// the maximal ODR is set in the firmware, we find the right maximal ODR
4375	// during bring up. However, if we have to reduce the ODR between firmware
4376	// qual we can do it here: 0 (default) means the EC default is used by
4377	// iioservice to set the maximal sensor frequency. If |max_sensor_odr_mhz|
4378	// is greater than 0, iioservice will never set a maximal frequency above
4379	// it.
4380	MaxSensorOdrMhz *wrapperspb.UInt32Value `protobuf:"bytes,12,opt,name=max_sensor_odr_mhz,json=maxSensorOdrMhz,proto3" json:"max_sensor_odr_mhz,omitempty"`
4381}
4382
4383func (x *HardwareFeatures_EmbeddedController) Reset() {
4384	*x = HardwareFeatures_EmbeddedController{}
4385	if protoimpl.UnsafeEnabled {
4386		mi := &file_chromiumos_config_api_topology_proto_msgTypes[27]
4387		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4388		ms.StoreMessageInfo(mi)
4389	}
4390}
4391
4392func (x *HardwareFeatures_EmbeddedController) String() string {
4393	return protoimpl.X.MessageStringOf(x)
4394}
4395
4396func (*HardwareFeatures_EmbeddedController) ProtoMessage() {}
4397
4398func (x *HardwareFeatures_EmbeddedController) ProtoReflect() protoreflect.Message {
4399	mi := &file_chromiumos_config_api_topology_proto_msgTypes[27]
4400	if protoimpl.UnsafeEnabled && x != nil {
4401		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4402		if ms.LoadMessageInfo() == nil {
4403			ms.StoreMessageInfo(mi)
4404		}
4405		return ms
4406	}
4407	return mi.MessageOf(x)
4408}
4409
4410// Deprecated: Use HardwareFeatures_EmbeddedController.ProtoReflect.Descriptor instead.
4411func (*HardwareFeatures_EmbeddedController) Descriptor() ([]byte, []int) {
4412	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 23}
4413}
4414
4415func (x *HardwareFeatures_EmbeddedController) GetPresent() HardwareFeatures_Present {
4416	if x != nil {
4417		return x.Present
4418	}
4419	return HardwareFeatures_PRESENT_UNKNOWN
4420}
4421
4422func (x *HardwareFeatures_EmbeddedController) GetEcType() HardwareFeatures_EmbeddedController_EmbeddedControllerType {
4423	if x != nil {
4424		return x.EcType
4425	}
4426	return HardwareFeatures_EmbeddedController_EC_TYPE_UNKNOWN
4427}
4428
4429func (x *HardwareFeatures_EmbeddedController) GetPart() *Component_EmbeddedController {
4430	if x != nil {
4431		return x.Part
4432	}
4433	return nil
4434}
4435
4436func (x *HardwareFeatures_EmbeddedController) GetFeatureTypecCmd() HardwareFeatures_Present {
4437	if x != nil {
4438		return x.FeatureTypecCmd
4439	}
4440	return HardwareFeatures_PRESENT_UNKNOWN
4441}
4442
4443func (x *HardwareFeatures_EmbeddedController) GetCbi() HardwareFeatures_Present {
4444	if x != nil {
4445		return x.Cbi
4446	}
4447	return HardwareFeatures_PRESENT_UNKNOWN
4448}
4449
4450func (x *HardwareFeatures_EmbeddedController) GetDetachableBase() HardwareFeatures_Present {
4451	if x != nil {
4452		return x.DetachableBase
4453	}
4454	return HardwareFeatures_PRESENT_UNKNOWN
4455}
4456
4457func (x *HardwareFeatures_EmbeddedController) GetFeatureChargeControlV2() HardwareFeatures_Present {
4458	if x != nil {
4459		return x.FeatureChargeControlV2
4460	}
4461	return HardwareFeatures_PRESENT_UNKNOWN
4462}
4463
4464func (x *HardwareFeatures_EmbeddedController) GetFeatureAssertsPanic() HardwareFeatures_Present {
4465	if x != nil {
4466		return x.FeatureAssertsPanic
4467	}
4468	return HardwareFeatures_PRESENT_UNKNOWN
4469}
4470
4471func (x *HardwareFeatures_EmbeddedController) GetFeatureSystemSafeMode() HardwareFeatures_Present {
4472	if x != nil {
4473		return x.FeatureSystemSafeMode
4474	}
4475	return HardwareFeatures_PRESENT_UNKNOWN
4476}
4477
4478func (x *HardwareFeatures_EmbeddedController) GetFeatureMemoryDumpCommands() HardwareFeatures_Present {
4479	if x != nil {
4480		return x.FeatureMemoryDumpCommands
4481	}
4482	return HardwareFeatures_PRESENT_UNKNOWN
4483}
4484
4485func (x *HardwareFeatures_EmbeddedController) GetBuildConfig() map[string]HardwareFeatures_Present {
4486	if x != nil {
4487		return x.BuildConfig
4488	}
4489	return nil
4490}
4491
4492func (x *HardwareFeatures_EmbeddedController) GetMaxSensorOdrMhz() *wrapperspb.UInt32Value {
4493	if x != nil {
4494		return x.MaxSensorOdrMhz
4495	}
4496	return nil
4497}
4498
4499type HardwareFeatures_TrustedPlatformModule struct {
4500	state         protoimpl.MessageState
4501	sizeCache     protoimpl.SizeCache
4502	unknownFields protoimpl.UnknownFields
4503
4504	TpmType HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType `protobuf:"varint,1,opt,name=tpm_type,json=tpmType,proto3,enum=chromiumos.config.api.HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType" json:"tpm_type,omitempty"`
4505	// Whether GSC image is signed with production RW keyid.
4506	ProductionRwKeyId HardwareFeatures_Present                                 `protobuf:"varint,2,opt,name=production_rw_key_id,json=productionRwKeyId,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"production_rw_key_id,omitempty"`
4507	RuntimeTpmVersion HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion `protobuf:"varint,3,opt,name=runtime_tpm_version,json=runtimeTpmVersion,proto3,enum=chromiumos.config.api.HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion" json:"runtime_tpm_version,omitempty"`
4508	GscFwName         HardwareFeatures_TrustedPlatformModule_GscFirmwareName   `protobuf:"varint,4,opt,name=gsc_fw_name,json=gscFwName,proto3,enum=chromiumos.config.api.HardwareFeatures_TrustedPlatformModule_GscFirmwareName" json:"gsc_fw_name,omitempty"`
4509	// Whether the TPM has NVRAM space used for enterprise rollback.
4510	EnterpriseRollbackSpace HardwareFeatures_Present `protobuf:"varint,5,opt,name=enterprise_rollback_space,json=enterpriseRollbackSpace,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"enterprise_rollback_space,omitempty"`
4511	// Whether GSC ADID is valid. This is true if there's a valid
4512	// attested_device_id in the RO_VPD that matches the sn bits stored in GSC.
4513	ValidAdid HardwareFeatures_Present `protobuf:"varint,6,opt,name=valid_adid,json=validAdid,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"valid_adid,omitempty"`
4514}
4515
4516func (x *HardwareFeatures_TrustedPlatformModule) Reset() {
4517	*x = HardwareFeatures_TrustedPlatformModule{}
4518	if protoimpl.UnsafeEnabled {
4519		mi := &file_chromiumos_config_api_topology_proto_msgTypes[28]
4520		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4521		ms.StoreMessageInfo(mi)
4522	}
4523}
4524
4525func (x *HardwareFeatures_TrustedPlatformModule) String() string {
4526	return protoimpl.X.MessageStringOf(x)
4527}
4528
4529func (*HardwareFeatures_TrustedPlatformModule) ProtoMessage() {}
4530
4531func (x *HardwareFeatures_TrustedPlatformModule) ProtoReflect() protoreflect.Message {
4532	mi := &file_chromiumos_config_api_topology_proto_msgTypes[28]
4533	if protoimpl.UnsafeEnabled && x != nil {
4534		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4535		if ms.LoadMessageInfo() == nil {
4536			ms.StoreMessageInfo(mi)
4537		}
4538		return ms
4539	}
4540	return mi.MessageOf(x)
4541}
4542
4543// Deprecated: Use HardwareFeatures_TrustedPlatformModule.ProtoReflect.Descriptor instead.
4544func (*HardwareFeatures_TrustedPlatformModule) Descriptor() ([]byte, []int) {
4545	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 24}
4546}
4547
4548func (x *HardwareFeatures_TrustedPlatformModule) GetTpmType() HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType {
4549	if x != nil {
4550		return x.TpmType
4551	}
4552	return HardwareFeatures_TrustedPlatformModule_TPM_TYPE_UNKNOWN
4553}
4554
4555func (x *HardwareFeatures_TrustedPlatformModule) GetProductionRwKeyId() HardwareFeatures_Present {
4556	if x != nil {
4557		return x.ProductionRwKeyId
4558	}
4559	return HardwareFeatures_PRESENT_UNKNOWN
4560}
4561
4562func (x *HardwareFeatures_TrustedPlatformModule) GetRuntimeTpmVersion() HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion {
4563	if x != nil {
4564		return x.RuntimeTpmVersion
4565	}
4566	return HardwareFeatures_TrustedPlatformModule_TPM_VERSION_DISABLED
4567}
4568
4569func (x *HardwareFeatures_TrustedPlatformModule) GetGscFwName() HardwareFeatures_TrustedPlatformModule_GscFirmwareName {
4570	if x != nil {
4571		return x.GscFwName
4572	}
4573	return HardwareFeatures_TrustedPlatformModule_GSC_NONE
4574}
4575
4576func (x *HardwareFeatures_TrustedPlatformModule) GetEnterpriseRollbackSpace() HardwareFeatures_Present {
4577	if x != nil {
4578		return x.EnterpriseRollbackSpace
4579	}
4580	return HardwareFeatures_PRESENT_UNKNOWN
4581}
4582
4583func (x *HardwareFeatures_TrustedPlatformModule) GetValidAdid() HardwareFeatures_Present {
4584	if x != nil {
4585		return x.ValidAdid
4586	}
4587	return HardwareFeatures_PRESENT_UNKNOWN
4588}
4589
4590// Whether the system supports 'Hotwording' (ie wake-on-voice: "Hey Google")
4591type HardwareFeatures_Hotwording struct {
4592	state         protoimpl.MessageState
4593	sizeCache     protoimpl.SizeCache
4594	unknownFields protoimpl.UnknownFields
4595
4596	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
4597}
4598
4599func (x *HardwareFeatures_Hotwording) Reset() {
4600	*x = HardwareFeatures_Hotwording{}
4601	if protoimpl.UnsafeEnabled {
4602		mi := &file_chromiumos_config_api_topology_proto_msgTypes[29]
4603		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4604		ms.StoreMessageInfo(mi)
4605	}
4606}
4607
4608func (x *HardwareFeatures_Hotwording) String() string {
4609	return protoimpl.X.MessageStringOf(x)
4610}
4611
4612func (*HardwareFeatures_Hotwording) ProtoMessage() {}
4613
4614func (x *HardwareFeatures_Hotwording) ProtoReflect() protoreflect.Message {
4615	mi := &file_chromiumos_config_api_topology_proto_msgTypes[29]
4616	if protoimpl.UnsafeEnabled && x != nil {
4617		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4618		if ms.LoadMessageInfo() == nil {
4619			ms.StoreMessageInfo(mi)
4620		}
4621		return ms
4622	}
4623	return mi.MessageOf(x)
4624}
4625
4626// Deprecated: Use HardwareFeatures_Hotwording.ProtoReflect.Descriptor instead.
4627func (*HardwareFeatures_Hotwording) Descriptor() ([]byte, []int) {
4628	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 25}
4629}
4630
4631func (x *HardwareFeatures_Hotwording) GetPresent() HardwareFeatures_Present {
4632	if x != nil {
4633		return x.Present
4634	}
4635	return HardwareFeatures_PRESENT_UNKNOWN
4636}
4637
4638// Whether the system has an internal display, external display only or both
4639type HardwareFeatures_Display struct {
4640	state         protoimpl.MessageState
4641	sizeCache     protoimpl.SizeCache
4642	unknownFields protoimpl.UnknownFields
4643
4644	Type HardwareFeatures_Display_Type `protobuf:"varint,1,opt,name=type,proto3,enum=chromiumos.config.api.HardwareFeatures_Display_Type" json:"type,omitempty"`
4645}
4646
4647func (x *HardwareFeatures_Display) Reset() {
4648	*x = HardwareFeatures_Display{}
4649	if protoimpl.UnsafeEnabled {
4650		mi := &file_chromiumos_config_api_topology_proto_msgTypes[30]
4651		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4652		ms.StoreMessageInfo(mi)
4653	}
4654}
4655
4656func (x *HardwareFeatures_Display) String() string {
4657	return protoimpl.X.MessageStringOf(x)
4658}
4659
4660func (*HardwareFeatures_Display) ProtoMessage() {}
4661
4662func (x *HardwareFeatures_Display) ProtoReflect() protoreflect.Message {
4663	mi := &file_chromiumos_config_api_topology_proto_msgTypes[30]
4664	if protoimpl.UnsafeEnabled && x != nil {
4665		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4666		if ms.LoadMessageInfo() == nil {
4667			ms.StoreMessageInfo(mi)
4668		}
4669		return ms
4670	}
4671	return mi.MessageOf(x)
4672}
4673
4674// Deprecated: Use HardwareFeatures_Display.ProtoReflect.Descriptor instead.
4675func (*HardwareFeatures_Display) Descriptor() ([]byte, []int) {
4676	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 26}
4677}
4678
4679func (x *HardwareFeatures_Display) GetType() HardwareFeatures_Display_Type {
4680	if x != nil {
4681		return x.Type
4682	}
4683	return HardwareFeatures_Display_TYPE_UNKNOWN
4684}
4685
4686// Whether the system has a touchpad
4687type HardwareFeatures_Touchpad struct {
4688	state         protoimpl.MessageState
4689	sizeCache     protoimpl.SizeCache
4690	unknownFields protoimpl.UnknownFields
4691
4692	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
4693	// Type of touchpad present on system
4694	TouchpadType HardwareFeatures_Touchpad_TouchpadType `protobuf:"varint,2,opt,name=touchpad_type,json=touchpadType,proto3,enum=chromiumos.config.api.HardwareFeatures_Touchpad_TouchpadType" json:"touchpad_type,omitempty"`
4695}
4696
4697func (x *HardwareFeatures_Touchpad) Reset() {
4698	*x = HardwareFeatures_Touchpad{}
4699	if protoimpl.UnsafeEnabled {
4700		mi := &file_chromiumos_config_api_topology_proto_msgTypes[31]
4701		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4702		ms.StoreMessageInfo(mi)
4703	}
4704}
4705
4706func (x *HardwareFeatures_Touchpad) String() string {
4707	return protoimpl.X.MessageStringOf(x)
4708}
4709
4710func (*HardwareFeatures_Touchpad) ProtoMessage() {}
4711
4712func (x *HardwareFeatures_Touchpad) ProtoReflect() protoreflect.Message {
4713	mi := &file_chromiumos_config_api_topology_proto_msgTypes[31]
4714	if protoimpl.UnsafeEnabled && x != nil {
4715		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4716		if ms.LoadMessageInfo() == nil {
4717			ms.StoreMessageInfo(mi)
4718		}
4719		return ms
4720	}
4721	return mi.MessageOf(x)
4722}
4723
4724// Deprecated: Use HardwareFeatures_Touchpad.ProtoReflect.Descriptor instead.
4725func (*HardwareFeatures_Touchpad) Descriptor() ([]byte, []int) {
4726	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 27}
4727}
4728
4729func (x *HardwareFeatures_Touchpad) GetPresent() HardwareFeatures_Present {
4730	if x != nil {
4731		return x.Present
4732	}
4733	return HardwareFeatures_PRESENT_UNKNOWN
4734}
4735
4736func (x *HardwareFeatures_Touchpad) GetTouchpadType() HardwareFeatures_Touchpad_TouchpadType {
4737	if x != nil {
4738		return x.TouchpadType
4739	}
4740	return HardwareFeatures_Touchpad_TYPE_UNKNOWN
4741}
4742
4743// Whether the system has an audio input mute switch
4744type HardwareFeatures_MicrophoneMuteSwitch struct {
4745	state         protoimpl.MessageState
4746	sizeCache     protoimpl.SizeCache
4747	unknownFields protoimpl.UnknownFields
4748
4749	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
4750}
4751
4752func (x *HardwareFeatures_MicrophoneMuteSwitch) Reset() {
4753	*x = HardwareFeatures_MicrophoneMuteSwitch{}
4754	if protoimpl.UnsafeEnabled {
4755		mi := &file_chromiumos_config_api_topology_proto_msgTypes[32]
4756		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4757		ms.StoreMessageInfo(mi)
4758	}
4759}
4760
4761func (x *HardwareFeatures_MicrophoneMuteSwitch) String() string {
4762	return protoimpl.X.MessageStringOf(x)
4763}
4764
4765func (*HardwareFeatures_MicrophoneMuteSwitch) ProtoMessage() {}
4766
4767func (x *HardwareFeatures_MicrophoneMuteSwitch) ProtoReflect() protoreflect.Message {
4768	mi := &file_chromiumos_config_api_topology_proto_msgTypes[32]
4769	if protoimpl.UnsafeEnabled && x != nil {
4770		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4771		if ms.LoadMessageInfo() == nil {
4772			ms.StoreMessageInfo(mi)
4773		}
4774		return ms
4775	}
4776	return mi.MessageOf(x)
4777}
4778
4779// Deprecated: Use HardwareFeatures_MicrophoneMuteSwitch.ProtoReflect.Descriptor instead.
4780func (*HardwareFeatures_MicrophoneMuteSwitch) Descriptor() ([]byte, []int) {
4781	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 28}
4782}
4783
4784func (x *HardwareFeatures_MicrophoneMuteSwitch) GetPresent() HardwareFeatures_Present {
4785	if x != nil {
4786		return x.Present
4787	}
4788	return HardwareFeatures_PRESENT_UNKNOWN
4789}
4790
4791type HardwareFeatures_Battery struct {
4792	state         protoimpl.MessageState
4793	sizeCache     protoimpl.SizeCache
4794	unknownFields protoimpl.UnknownFields
4795
4796	// Battery present (e.g. not present on chromebox)
4797	Present  HardwareFeatures_Present           `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
4798	Lifetime *HardwareFeatures_Battery_Lifetime `protobuf:"bytes,2,opt,name=lifetime,proto3" json:"lifetime,omitempty"`
4799	Charging *HardwareFeatures_Battery_Charging `protobuf:"bytes,3,opt,name=charging,proto3" json:"charging,omitempty"`
4800	// Device supports the feature to boot with no battery.
4801	NoBatteryBootSupported bool `protobuf:"varint,4,opt,name=no_battery_boot_supported,json=noBatteryBootSupported,proto3" json:"no_battery_boot_supported,omitempty"`
4802}
4803
4804func (x *HardwareFeatures_Battery) Reset() {
4805	*x = HardwareFeatures_Battery{}
4806	if protoimpl.UnsafeEnabled {
4807		mi := &file_chromiumos_config_api_topology_proto_msgTypes[33]
4808		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4809		ms.StoreMessageInfo(mi)
4810	}
4811}
4812
4813func (x *HardwareFeatures_Battery) String() string {
4814	return protoimpl.X.MessageStringOf(x)
4815}
4816
4817func (*HardwareFeatures_Battery) ProtoMessage() {}
4818
4819func (x *HardwareFeatures_Battery) ProtoReflect() protoreflect.Message {
4820	mi := &file_chromiumos_config_api_topology_proto_msgTypes[33]
4821	if protoimpl.UnsafeEnabled && x != nil {
4822		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4823		if ms.LoadMessageInfo() == nil {
4824			ms.StoreMessageInfo(mi)
4825		}
4826		return ms
4827	}
4828	return mi.MessageOf(x)
4829}
4830
4831// Deprecated: Use HardwareFeatures_Battery.ProtoReflect.Descriptor instead.
4832func (*HardwareFeatures_Battery) Descriptor() ([]byte, []int) {
4833	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 29}
4834}
4835
4836func (x *HardwareFeatures_Battery) GetPresent() HardwareFeatures_Present {
4837	if x != nil {
4838		return x.Present
4839	}
4840	return HardwareFeatures_PRESENT_UNKNOWN
4841}
4842
4843func (x *HardwareFeatures_Battery) GetLifetime() *HardwareFeatures_Battery_Lifetime {
4844	if x != nil {
4845		return x.Lifetime
4846	}
4847	return nil
4848}
4849
4850func (x *HardwareFeatures_Battery) GetCharging() *HardwareFeatures_Battery_Charging {
4851	if x != nil {
4852		return x.Charging
4853	}
4854	return nil
4855}
4856
4857func (x *HardwareFeatures_Battery) GetNoBatteryBootSupported() bool {
4858	if x != nil {
4859		return x.NoBatteryBootSupported
4860	}
4861	return false
4862}
4863
4864type HardwareFeatures_PrivacyScreen struct {
4865	state         protoimpl.MessageState
4866	sizeCache     protoimpl.SizeCache
4867	unknownFields protoimpl.UnknownFields
4868
4869	// If privacy screen is present on system
4870	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
4871}
4872
4873func (x *HardwareFeatures_PrivacyScreen) Reset() {
4874	*x = HardwareFeatures_PrivacyScreen{}
4875	if protoimpl.UnsafeEnabled {
4876		mi := &file_chromiumos_config_api_topology_proto_msgTypes[34]
4877		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4878		ms.StoreMessageInfo(mi)
4879	}
4880}
4881
4882func (x *HardwareFeatures_PrivacyScreen) String() string {
4883	return protoimpl.X.MessageStringOf(x)
4884}
4885
4886func (*HardwareFeatures_PrivacyScreen) ProtoMessage() {}
4887
4888func (x *HardwareFeatures_PrivacyScreen) ProtoReflect() protoreflect.Message {
4889	mi := &file_chromiumos_config_api_topology_proto_msgTypes[34]
4890	if protoimpl.UnsafeEnabled && x != nil {
4891		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4892		if ms.LoadMessageInfo() == nil {
4893			ms.StoreMessageInfo(mi)
4894		}
4895		return ms
4896	}
4897	return mi.MessageOf(x)
4898}
4899
4900// Deprecated: Use HardwareFeatures_PrivacyScreen.ProtoReflect.Descriptor instead.
4901func (*HardwareFeatures_PrivacyScreen) Descriptor() ([]byte, []int) {
4902	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 30}
4903}
4904
4905func (x *HardwareFeatures_PrivacyScreen) GetPresent() HardwareFeatures_Present {
4906	if x != nil {
4907		return x.Present
4908	}
4909	return HardwareFeatures_PRESENT_UNKNOWN
4910}
4911
4912type HardwareFeatures_Soc struct {
4913	state         protoimpl.MessageState
4914	sizeCache     protoimpl.SizeCache
4915	unknownFields protoimpl.UnknownFields
4916
4917	Features             []Component_Soc_Feature       `protobuf:"varint,1,rep,packed,name=features,proto3,enum=chromiumos.config.api.Component_Soc_Feature" json:"features,omitempty"`
4918	Vulnerabilities      []Component_Soc_Vulnerability `protobuf:"varint,2,rep,packed,name=vulnerabilities,proto3,enum=chromiumos.config.api.Component_Soc_Vulnerability" json:"vulnerabilities,omitempty"`
4919	ArcMediaCodecsSuffix string                        `protobuf:"bytes,3,opt,name=arc_media_codecs_suffix,json=arcMediaCodecsSuffix,proto3" json:"arc_media_codecs_suffix,omitempty"`
4920	HevcSupport          HardwareFeatures_Present      `protobuf:"varint,4,opt,name=hevc_support,json=hevcSupport,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"hevc_support,omitempty"`
4921	ResourceConfig       *ResourceConfig               `protobuf:"bytes,5,opt,name=resource_config,json=resourceConfig,proto3" json:"resource_config,omitempty"`
4922}
4923
4924func (x *HardwareFeatures_Soc) Reset() {
4925	*x = HardwareFeatures_Soc{}
4926	if protoimpl.UnsafeEnabled {
4927		mi := &file_chromiumos_config_api_topology_proto_msgTypes[35]
4928		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4929		ms.StoreMessageInfo(mi)
4930	}
4931}
4932
4933func (x *HardwareFeatures_Soc) String() string {
4934	return protoimpl.X.MessageStringOf(x)
4935}
4936
4937func (*HardwareFeatures_Soc) ProtoMessage() {}
4938
4939func (x *HardwareFeatures_Soc) ProtoReflect() protoreflect.Message {
4940	mi := &file_chromiumos_config_api_topology_proto_msgTypes[35]
4941	if protoimpl.UnsafeEnabled && x != nil {
4942		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
4943		if ms.LoadMessageInfo() == nil {
4944			ms.StoreMessageInfo(mi)
4945		}
4946		return ms
4947	}
4948	return mi.MessageOf(x)
4949}
4950
4951// Deprecated: Use HardwareFeatures_Soc.ProtoReflect.Descriptor instead.
4952func (*HardwareFeatures_Soc) Descriptor() ([]byte, []int) {
4953	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 31}
4954}
4955
4956func (x *HardwareFeatures_Soc) GetFeatures() []Component_Soc_Feature {
4957	if x != nil {
4958		return x.Features
4959	}
4960	return nil
4961}
4962
4963func (x *HardwareFeatures_Soc) GetVulnerabilities() []Component_Soc_Vulnerability {
4964	if x != nil {
4965		return x.Vulnerabilities
4966	}
4967	return nil
4968}
4969
4970func (x *HardwareFeatures_Soc) GetArcMediaCodecsSuffix() string {
4971	if x != nil {
4972		return x.ArcMediaCodecsSuffix
4973	}
4974	return ""
4975}
4976
4977func (x *HardwareFeatures_Soc) GetHevcSupport() HardwareFeatures_Present {
4978	if x != nil {
4979		return x.HevcSupport
4980	}
4981	return HardwareFeatures_PRESENT_UNKNOWN
4982}
4983
4984func (x *HardwareFeatures_Soc) GetResourceConfig() *ResourceConfig {
4985	if x != nil {
4986		return x.ResourceConfig
4987	}
4988	return nil
4989}
4990
4991type HardwareFeatures_DisplayPortConverter struct {
4992	state         protoimpl.MessageState
4993	sizeCache     protoimpl.SizeCache
4994	unknownFields protoimpl.UnknownFields
4995
4996	Converters []*Component_DisplayPortConverter `protobuf:"bytes,1,rep,name=converters,proto3" json:"converters,omitempty"`
4997}
4998
4999func (x *HardwareFeatures_DisplayPortConverter) Reset() {
5000	*x = HardwareFeatures_DisplayPortConverter{}
5001	if protoimpl.UnsafeEnabled {
5002		mi := &file_chromiumos_config_api_topology_proto_msgTypes[36]
5003		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5004		ms.StoreMessageInfo(mi)
5005	}
5006}
5007
5008func (x *HardwareFeatures_DisplayPortConverter) String() string {
5009	return protoimpl.X.MessageStringOf(x)
5010}
5011
5012func (*HardwareFeatures_DisplayPortConverter) ProtoMessage() {}
5013
5014func (x *HardwareFeatures_DisplayPortConverter) ProtoReflect() protoreflect.Message {
5015	mi := &file_chromiumos_config_api_topology_proto_msgTypes[36]
5016	if protoimpl.UnsafeEnabled && x != nil {
5017		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5018		if ms.LoadMessageInfo() == nil {
5019			ms.StoreMessageInfo(mi)
5020		}
5021		return ms
5022	}
5023	return mi.MessageOf(x)
5024}
5025
5026// Deprecated: Use HardwareFeatures_DisplayPortConverter.ProtoReflect.Descriptor instead.
5027func (*HardwareFeatures_DisplayPortConverter) Descriptor() ([]byte, []int) {
5028	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 32}
5029}
5030
5031func (x *HardwareFeatures_DisplayPortConverter) GetConverters() []*Component_DisplayPortConverter {
5032	if x != nil {
5033		return x.Converters
5034	}
5035	return nil
5036}
5037
5038type HardwareFeatures_Hps struct {
5039	state         protoimpl.MessageState
5040	sizeCache     protoimpl.SizeCache
5041	unknownFields protoimpl.UnknownFields
5042
5043	// If hps is present on system
5044	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
5045}
5046
5047func (x *HardwareFeatures_Hps) Reset() {
5048	*x = HardwareFeatures_Hps{}
5049	if protoimpl.UnsafeEnabled {
5050		mi := &file_chromiumos_config_api_topology_proto_msgTypes[37]
5051		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5052		ms.StoreMessageInfo(mi)
5053	}
5054}
5055
5056func (x *HardwareFeatures_Hps) String() string {
5057	return protoimpl.X.MessageStringOf(x)
5058}
5059
5060func (*HardwareFeatures_Hps) ProtoMessage() {}
5061
5062func (x *HardwareFeatures_Hps) ProtoReflect() protoreflect.Message {
5063	mi := &file_chromiumos_config_api_topology_proto_msgTypes[37]
5064	if protoimpl.UnsafeEnabled && x != nil {
5065		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5066		if ms.LoadMessageInfo() == nil {
5067			ms.StoreMessageInfo(mi)
5068		}
5069		return ms
5070	}
5071	return mi.MessageOf(x)
5072}
5073
5074// Deprecated: Use HardwareFeatures_Hps.ProtoReflect.Descriptor instead.
5075func (*HardwareFeatures_Hps) Descriptor() ([]byte, []int) {
5076	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 33}
5077}
5078
5079func (x *HardwareFeatures_Hps) GetPresent() HardwareFeatures_Present {
5080	if x != nil {
5081		return x.Present
5082	}
5083	return HardwareFeatures_PRESENT_UNKNOWN
5084}
5085
5086type HardwareFeatures_PoE struct {
5087	state         protoimpl.MessageState
5088	sizeCache     protoimpl.SizeCache
5089	unknownFields protoimpl.UnknownFields
5090
5091	// If PoE peripheral support is present on system
5092	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
5093}
5094
5095func (x *HardwareFeatures_PoE) Reset() {
5096	*x = HardwareFeatures_PoE{}
5097	if protoimpl.UnsafeEnabled {
5098		mi := &file_chromiumos_config_api_topology_proto_msgTypes[38]
5099		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5100		ms.StoreMessageInfo(mi)
5101	}
5102}
5103
5104func (x *HardwareFeatures_PoE) String() string {
5105	return protoimpl.X.MessageStringOf(x)
5106}
5107
5108func (*HardwareFeatures_PoE) ProtoMessage() {}
5109
5110func (x *HardwareFeatures_PoE) ProtoReflect() protoreflect.Message {
5111	mi := &file_chromiumos_config_api_topology_proto_msgTypes[38]
5112	if protoimpl.UnsafeEnabled && x != nil {
5113		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5114		if ms.LoadMessageInfo() == nil {
5115			ms.StoreMessageInfo(mi)
5116		}
5117		return ms
5118	}
5119	return mi.MessageOf(x)
5120}
5121
5122// Deprecated: Use HardwareFeatures_PoE.ProtoReflect.Descriptor instead.
5123func (*HardwareFeatures_PoE) Descriptor() ([]byte, []int) {
5124	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 34}
5125}
5126
5127func (x *HardwareFeatures_PoE) GetPresent() HardwareFeatures_Present {
5128	if x != nil {
5129		return x.Present
5130	}
5131	return HardwareFeatures_PRESENT_UNKNOWN
5132}
5133
5134type HardwareFeatures_PowerSupply struct {
5135	state         protoimpl.MessageState
5136	sizeCache     protoimpl.SizeCache
5137	unknownFields protoimpl.UnknownFields
5138
5139	// If BarrelJack support is present on system.
5140	Barreljack HardwareFeatures_Present `protobuf:"varint,1,opt,name=barreljack,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"barreljack,omitempty"`
5141	// The input power below which a warning should be shown to use a
5142	// higher-power USB adapter.
5143	UsbMinAcWatts int32 `protobuf:"varint,2,opt,name=usb_min_ac_watts,json=usbMinAcWatts,proto3" json:"usb_min_ac_watts,omitempty"`
5144}
5145
5146func (x *HardwareFeatures_PowerSupply) Reset() {
5147	*x = HardwareFeatures_PowerSupply{}
5148	if protoimpl.UnsafeEnabled {
5149		mi := &file_chromiumos_config_api_topology_proto_msgTypes[39]
5150		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5151		ms.StoreMessageInfo(mi)
5152	}
5153}
5154
5155func (x *HardwareFeatures_PowerSupply) String() string {
5156	return protoimpl.X.MessageStringOf(x)
5157}
5158
5159func (*HardwareFeatures_PowerSupply) ProtoMessage() {}
5160
5161func (x *HardwareFeatures_PowerSupply) ProtoReflect() protoreflect.Message {
5162	mi := &file_chromiumos_config_api_topology_proto_msgTypes[39]
5163	if protoimpl.UnsafeEnabled && x != nil {
5164		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5165		if ms.LoadMessageInfo() == nil {
5166			ms.StoreMessageInfo(mi)
5167		}
5168		return ms
5169	}
5170	return mi.MessageOf(x)
5171}
5172
5173// Deprecated: Use HardwareFeatures_PowerSupply.ProtoReflect.Descriptor instead.
5174func (*HardwareFeatures_PowerSupply) Descriptor() ([]byte, []int) {
5175	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 35}
5176}
5177
5178func (x *HardwareFeatures_PowerSupply) GetBarreljack() HardwareFeatures_Present {
5179	if x != nil {
5180		return x.Barreljack
5181	}
5182	return HardwareFeatures_PRESENT_UNKNOWN
5183}
5184
5185func (x *HardwareFeatures_PowerSupply) GetUsbMinAcWatts() int32 {
5186	if x != nil {
5187		return x.UsbMinAcWatts
5188	}
5189	return 0
5190}
5191
5192type HardwareFeatures_Proximity struct {
5193	state         protoimpl.MessageState
5194	sizeCache     protoimpl.SizeCache
5195	unknownFields protoimpl.UnknownFields
5196
5197	Configs []*ProximityConfig `protobuf:"bytes,1,rep,name=configs,proto3" json:"configs,omitempty"`
5198}
5199
5200func (x *HardwareFeatures_Proximity) Reset() {
5201	*x = HardwareFeatures_Proximity{}
5202	if protoimpl.UnsafeEnabled {
5203		mi := &file_chromiumos_config_api_topology_proto_msgTypes[40]
5204		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5205		ms.StoreMessageInfo(mi)
5206	}
5207}
5208
5209func (x *HardwareFeatures_Proximity) String() string {
5210	return protoimpl.X.MessageStringOf(x)
5211}
5212
5213func (*HardwareFeatures_Proximity) ProtoMessage() {}
5214
5215func (x *HardwareFeatures_Proximity) ProtoReflect() protoreflect.Message {
5216	mi := &file_chromiumos_config_api_topology_proto_msgTypes[40]
5217	if protoimpl.UnsafeEnabled && x != nil {
5218		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5219		if ms.LoadMessageInfo() == nil {
5220			ms.StoreMessageInfo(mi)
5221		}
5222		return ms
5223	}
5224	return mi.MessageOf(x)
5225}
5226
5227// Deprecated: Use HardwareFeatures_Proximity.ProtoReflect.Descriptor instead.
5228func (*HardwareFeatures_Proximity) Descriptor() ([]byte, []int) {
5229	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 36}
5230}
5231
5232func (x *HardwareFeatures_Proximity) GetConfigs() []*ProximityConfig {
5233	if x != nil {
5234		return x.Configs
5235	}
5236	return nil
5237}
5238
5239type HardwareFeatures_Touch struct {
5240	state         protoimpl.MessageState
5241	sizeCache     protoimpl.SizeCache
5242	unknownFields protoimpl.UnknownFields
5243
5244	// Configures touch slop distance in Chrome.
5245	// This is the number of pixels a touch event can wander before being
5246	// recognized as a scroll rather than a tap.
5247	TouchSlopDistance *wrapperspb.UInt32Value `protobuf:"bytes,1,opt,name=touch_slop_distance,json=touchSlopDistance,proto3" json:"touch_slop_distance,omitempty"`
5248}
5249
5250func (x *HardwareFeatures_Touch) Reset() {
5251	*x = HardwareFeatures_Touch{}
5252	if protoimpl.UnsafeEnabled {
5253		mi := &file_chromiumos_config_api_topology_proto_msgTypes[41]
5254		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5255		ms.StoreMessageInfo(mi)
5256	}
5257}
5258
5259func (x *HardwareFeatures_Touch) String() string {
5260	return protoimpl.X.MessageStringOf(x)
5261}
5262
5263func (*HardwareFeatures_Touch) ProtoMessage() {}
5264
5265func (x *HardwareFeatures_Touch) ProtoReflect() protoreflect.Message {
5266	mi := &file_chromiumos_config_api_topology_proto_msgTypes[41]
5267	if protoimpl.UnsafeEnabled && x != nil {
5268		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5269		if ms.LoadMessageInfo() == nil {
5270			ms.StoreMessageInfo(mi)
5271		}
5272		return ms
5273	}
5274	return mi.MessageOf(x)
5275}
5276
5277// Deprecated: Use HardwareFeatures_Touch.ProtoReflect.Descriptor instead.
5278func (*HardwareFeatures_Touch) Descriptor() ([]byte, []int) {
5279	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 37}
5280}
5281
5282func (x *HardwareFeatures_Touch) GetTouchSlopDistance() *wrapperspb.UInt32Value {
5283	if x != nil {
5284		return x.TouchSlopDistance
5285	}
5286	return nil
5287}
5288
5289type HardwareFeatures_Thermal struct {
5290	state         protoimpl.MessageState
5291	sizeCache     protoimpl.SizeCache
5292	unknownFields protoimpl.UnknownFields
5293
5294	// A suffix to be added to the design name to determine the directory to
5295	// search for thermal config files, e.g. dptf.dv.
5296	ConfigPathSuffix string `protobuf:"bytes,1,opt,name=config_path_suffix,json=configPathSuffix,proto3" json:"config_path_suffix,omitempty"`
5297}
5298
5299func (x *HardwareFeatures_Thermal) Reset() {
5300	*x = HardwareFeatures_Thermal{}
5301	if protoimpl.UnsafeEnabled {
5302		mi := &file_chromiumos_config_api_topology_proto_msgTypes[42]
5303		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5304		ms.StoreMessageInfo(mi)
5305	}
5306}
5307
5308func (x *HardwareFeatures_Thermal) String() string {
5309	return protoimpl.X.MessageStringOf(x)
5310}
5311
5312func (*HardwareFeatures_Thermal) ProtoMessage() {}
5313
5314func (x *HardwareFeatures_Thermal) ProtoReflect() protoreflect.Message {
5315	mi := &file_chromiumos_config_api_topology_proto_msgTypes[42]
5316	if protoimpl.UnsafeEnabled && x != nil {
5317		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5318		if ms.LoadMessageInfo() == nil {
5319			ms.StoreMessageInfo(mi)
5320		}
5321		return ms
5322	}
5323	return mi.MessageOf(x)
5324}
5325
5326// Deprecated: Use HardwareFeatures_Thermal.ProtoReflect.Descriptor instead.
5327func (*HardwareFeatures_Thermal) Descriptor() ([]byte, []int) {
5328	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 38}
5329}
5330
5331func (x *HardwareFeatures_Thermal) GetConfigPathSuffix() string {
5332	if x != nil {
5333		return x.ConfigPathSuffix
5334	}
5335	return ""
5336}
5337
5338type HardwareFeatures_RuntimeProbeConfig struct {
5339	state         protoimpl.MessageState
5340	sizeCache     protoimpl.SizeCache
5341	unknownFields protoimpl.UnknownFields
5342
5343	// If the probe config file under /etc/runtime_probe/{model}/ present on
5344	// device.
5345	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
5346	// If the encrypted probe config file under /etc/runtime_probe/{model}/
5347	// present on device.
5348	EncryptedConfigPresent HardwareFeatures_Present `protobuf:"varint,2,opt,name=encrypted_config_present,json=encryptedConfigPresent,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"encrypted_config_present,omitempty"`
5349}
5350
5351func (x *HardwareFeatures_RuntimeProbeConfig) Reset() {
5352	*x = HardwareFeatures_RuntimeProbeConfig{}
5353	if protoimpl.UnsafeEnabled {
5354		mi := &file_chromiumos_config_api_topology_proto_msgTypes[43]
5355		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5356		ms.StoreMessageInfo(mi)
5357	}
5358}
5359
5360func (x *HardwareFeatures_RuntimeProbeConfig) String() string {
5361	return protoimpl.X.MessageStringOf(x)
5362}
5363
5364func (*HardwareFeatures_RuntimeProbeConfig) ProtoMessage() {}
5365
5366func (x *HardwareFeatures_RuntimeProbeConfig) ProtoReflect() protoreflect.Message {
5367	mi := &file_chromiumos_config_api_topology_proto_msgTypes[43]
5368	if protoimpl.UnsafeEnabled && x != nil {
5369		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5370		if ms.LoadMessageInfo() == nil {
5371			ms.StoreMessageInfo(mi)
5372		}
5373		return ms
5374	}
5375	return mi.MessageOf(x)
5376}
5377
5378// Deprecated: Use HardwareFeatures_RuntimeProbeConfig.ProtoReflect.Descriptor instead.
5379func (*HardwareFeatures_RuntimeProbeConfig) Descriptor() ([]byte, []int) {
5380	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 39}
5381}
5382
5383func (x *HardwareFeatures_RuntimeProbeConfig) GetPresent() HardwareFeatures_Present {
5384	if x != nil {
5385		return x.Present
5386	}
5387	return HardwareFeatures_PRESENT_UNKNOWN
5388}
5389
5390func (x *HardwareFeatures_RuntimeProbeConfig) GetEncryptedConfigPresent() HardwareFeatures_Present {
5391	if x != nil {
5392		return x.EncryptedConfigPresent
5393	}
5394	return HardwareFeatures_PRESENT_UNKNOWN
5395}
5396
5397type HardwareFeatures_Dgpu struct {
5398	state         protoimpl.MessageState
5399	sizeCache     protoimpl.SizeCache
5400	unknownFields protoimpl.UnknownFields
5401
5402	Present  HardwareFeatures_Present       `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
5403	DgpuType HardwareFeatures_Dgpu_DgpuType `protobuf:"varint,2,opt,name=dgpu_type,json=dgpuType,proto3,enum=chromiumos.config.api.HardwareFeatures_Dgpu_DgpuType" json:"dgpu_type,omitempty"`
5404}
5405
5406func (x *HardwareFeatures_Dgpu) Reset() {
5407	*x = HardwareFeatures_Dgpu{}
5408	if protoimpl.UnsafeEnabled {
5409		mi := &file_chromiumos_config_api_topology_proto_msgTypes[44]
5410		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5411		ms.StoreMessageInfo(mi)
5412	}
5413}
5414
5415func (x *HardwareFeatures_Dgpu) String() string {
5416	return protoimpl.X.MessageStringOf(x)
5417}
5418
5419func (*HardwareFeatures_Dgpu) ProtoMessage() {}
5420
5421func (x *HardwareFeatures_Dgpu) ProtoReflect() protoreflect.Message {
5422	mi := &file_chromiumos_config_api_topology_proto_msgTypes[44]
5423	if protoimpl.UnsafeEnabled && x != nil {
5424		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5425		if ms.LoadMessageInfo() == nil {
5426			ms.StoreMessageInfo(mi)
5427		}
5428		return ms
5429	}
5430	return mi.MessageOf(x)
5431}
5432
5433// Deprecated: Use HardwareFeatures_Dgpu.ProtoReflect.Descriptor instead.
5434func (*HardwareFeatures_Dgpu) Descriptor() ([]byte, []int) {
5435	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 40}
5436}
5437
5438func (x *HardwareFeatures_Dgpu) GetPresent() HardwareFeatures_Present {
5439	if x != nil {
5440		return x.Present
5441	}
5442	return HardwareFeatures_PRESENT_UNKNOWN
5443}
5444
5445func (x *HardwareFeatures_Dgpu) GetDgpuType() HardwareFeatures_Dgpu_DgpuType {
5446	if x != nil {
5447		return x.DgpuType
5448	}
5449	return HardwareFeatures_Dgpu_DGPU_UNKNOWN
5450}
5451
5452type HardwareFeatures_Uwb struct {
5453	state         protoimpl.MessageState
5454	sizeCache     protoimpl.SizeCache
5455	unknownFields protoimpl.UnknownFields
5456
5457	// If UWB is present on system
5458	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
5459}
5460
5461func (x *HardwareFeatures_Uwb) Reset() {
5462	*x = HardwareFeatures_Uwb{}
5463	if protoimpl.UnsafeEnabled {
5464		mi := &file_chromiumos_config_api_topology_proto_msgTypes[45]
5465		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5466		ms.StoreMessageInfo(mi)
5467	}
5468}
5469
5470func (x *HardwareFeatures_Uwb) String() string {
5471	return protoimpl.X.MessageStringOf(x)
5472}
5473
5474func (*HardwareFeatures_Uwb) ProtoMessage() {}
5475
5476func (x *HardwareFeatures_Uwb) ProtoReflect() protoreflect.Message {
5477	mi := &file_chromiumos_config_api_topology_proto_msgTypes[45]
5478	if protoimpl.UnsafeEnabled && x != nil {
5479		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5480		if ms.LoadMessageInfo() == nil {
5481			ms.StoreMessageInfo(mi)
5482		}
5483		return ms
5484	}
5485	return mi.MessageOf(x)
5486}
5487
5488// Deprecated: Use HardwareFeatures_Uwb.ProtoReflect.Descriptor instead.
5489func (*HardwareFeatures_Uwb) Descriptor() ([]byte, []int) {
5490	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 41}
5491}
5492
5493func (x *HardwareFeatures_Uwb) GetPresent() HardwareFeatures_Present {
5494	if x != nil {
5495		return x.Present
5496	}
5497	return HardwareFeatures_PRESENT_UNKNOWN
5498}
5499
5500type HardwareFeatures_HardwareProbe struct {
5501	state         protoimpl.MessageState
5502	sizeCache     protoimpl.SizeCache
5503	unknownFields protoimpl.UnknownFields
5504
5505	GpuFamily      string `protobuf:"bytes,1,opt,name=gpu_family,json=gpuFamily,proto3" json:"gpu_family,omitempty"`
5506	GpuVendor      string `protobuf:"bytes,2,opt,name=gpu_vendor,json=gpuVendor,proto3" json:"gpu_vendor,omitempty"`
5507	CpuSocFamily   string `protobuf:"bytes,3,opt,name=cpu_soc_family,json=cpuSocFamily,proto3" json:"cpu_soc_family,omitempty"`
5508	DmiProductName string `protobuf:"bytes,4,opt,name=dmi_product_name,json=dmiProductName,proto3" json:"dmi_product_name,omitempty"`
5509}
5510
5511func (x *HardwareFeatures_HardwareProbe) Reset() {
5512	*x = HardwareFeatures_HardwareProbe{}
5513	if protoimpl.UnsafeEnabled {
5514		mi := &file_chromiumos_config_api_topology_proto_msgTypes[46]
5515		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5516		ms.StoreMessageInfo(mi)
5517	}
5518}
5519
5520func (x *HardwareFeatures_HardwareProbe) String() string {
5521	return protoimpl.X.MessageStringOf(x)
5522}
5523
5524func (*HardwareFeatures_HardwareProbe) ProtoMessage() {}
5525
5526func (x *HardwareFeatures_HardwareProbe) ProtoReflect() protoreflect.Message {
5527	mi := &file_chromiumos_config_api_topology_proto_msgTypes[46]
5528	if protoimpl.UnsafeEnabled && x != nil {
5529		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5530		if ms.LoadMessageInfo() == nil {
5531			ms.StoreMessageInfo(mi)
5532		}
5533		return ms
5534	}
5535	return mi.MessageOf(x)
5536}
5537
5538// Deprecated: Use HardwareFeatures_HardwareProbe.ProtoReflect.Descriptor instead.
5539func (*HardwareFeatures_HardwareProbe) Descriptor() ([]byte, []int) {
5540	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 42}
5541}
5542
5543func (x *HardwareFeatures_HardwareProbe) GetGpuFamily() string {
5544	if x != nil {
5545		return x.GpuFamily
5546	}
5547	return ""
5548}
5549
5550func (x *HardwareFeatures_HardwareProbe) GetGpuVendor() string {
5551	if x != nil {
5552		return x.GpuVendor
5553	}
5554	return ""
5555}
5556
5557func (x *HardwareFeatures_HardwareProbe) GetCpuSocFamily() string {
5558	if x != nil {
5559		return x.CpuSocFamily
5560	}
5561	return ""
5562}
5563
5564func (x *HardwareFeatures_HardwareProbe) GetDmiProductName() string {
5565	if x != nil {
5566		return x.DmiProductName
5567	}
5568	return ""
5569}
5570
5571// A single step in an ambient light sensor configuration table. Each step
5572// configures the brightness percentage while at that step as well as the
5573// sensor value at which the next or previous step should be considered.
5574// Steps should be specified in increasing order for each field.
5575type HardwareFeatures_KbAlsStep struct {
5576	state         protoimpl.MessageState
5577	sizeCache     protoimpl.SizeCache
5578	unknownFields protoimpl.UnknownFields
5579
5580	// The backlight brightness percentage for this step.
5581	BacklightPercent float64                 `protobuf:"fixed64,1,opt,name=backlight_percent,json=backlightPercent,proto3" json:"backlight_percent,omitempty"`
5582	LuxThreshold     *Component_LuxThreshold `protobuf:"bytes,2,opt,name=lux_threshold,json=luxThreshold,proto3" json:"lux_threshold,omitempty"`
5583}
5584
5585func (x *HardwareFeatures_KbAlsStep) Reset() {
5586	*x = HardwareFeatures_KbAlsStep{}
5587	if protoimpl.UnsafeEnabled {
5588		mi := &file_chromiumos_config_api_topology_proto_msgTypes[47]
5589		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5590		ms.StoreMessageInfo(mi)
5591	}
5592}
5593
5594func (x *HardwareFeatures_KbAlsStep) String() string {
5595	return protoimpl.X.MessageStringOf(x)
5596}
5597
5598func (*HardwareFeatures_KbAlsStep) ProtoMessage() {}
5599
5600func (x *HardwareFeatures_KbAlsStep) ProtoReflect() protoreflect.Message {
5601	mi := &file_chromiumos_config_api_topology_proto_msgTypes[47]
5602	if protoimpl.UnsafeEnabled && x != nil {
5603		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5604		if ms.LoadMessageInfo() == nil {
5605			ms.StoreMessageInfo(mi)
5606		}
5607		return ms
5608	}
5609	return mi.MessageOf(x)
5610}
5611
5612// Deprecated: Use HardwareFeatures_KbAlsStep.ProtoReflect.Descriptor instead.
5613func (*HardwareFeatures_KbAlsStep) Descriptor() ([]byte, []int) {
5614	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 43}
5615}
5616
5617func (x *HardwareFeatures_KbAlsStep) GetBacklightPercent() float64 {
5618	if x != nil {
5619		return x.BacklightPercent
5620	}
5621	return 0
5622}
5623
5624func (x *HardwareFeatures_KbAlsStep) GetLuxThreshold() *Component_LuxThreshold {
5625	if x != nil {
5626		return x.LuxThreshold
5627	}
5628	return nil
5629}
5630
5631type HardwareFeatures_DetachableBase struct {
5632	state         protoimpl.MessageState
5633	sizeCache     protoimpl.SizeCache
5634	unknownFields protoimpl.UnknownFields
5635
5636	// The target EC binary name which is placed under /lib/firmware.
5637	EcImageName string `protobuf:"bytes,1,opt,name=ec_image_name,json=ecImageName,proto3" json:"ec_image_name,omitempty"`
5638	// The Product ID of the detachable base.
5639	// This value can be queried by command 'lsusb'.
5640	ProductId uint32 `protobuf:"varint,2,opt,name=product_id,json=productId,proto3" json:"product_id,omitempty"`
5641	// The touchpad binary name which is placed under /lib/firmware
5642	// This is only needed if the detachable base contains touchpad.
5643	TouchImageName string `protobuf:"bytes,3,opt,name=touch_image_name,json=touchImageName,proto3" json:"touch_image_name,omitempty"`
5644	// Searches and finds the idVendor and idProduct under sysfs
5645	// /sys/bus/usb/devices/* which matches the vendor-id and product-id.
5646	// This is required for usb interface detachable base.
5647	UsbPath string `protobuf:"bytes,4,opt,name=usb_path,json=usbPath,proto3" json:"usb_path,omitempty"`
5648	// The Vendor ID of the detachable base.
5649	// This value can be queried by command 'lsusb'.
5650	VendorId uint32 `protobuf:"varint,5,opt,name=vendor_id,json=vendorId,proto3" json:"vendor_id,omitempty"`
5651	// Searches and finds the idVendor and idProduct under sysfs
5652	// /sys/bus/i2c/devices/* which matches the vendor-id and product-id
5653	// due to hid-over-i2c is used.
5654	// This is required for i2c interface detachable base.
5655	// Note - i2c bus numbering can shift across reboots, please have
5656	// corresponding setup based on your platform to ensure consistency.
5657	I2CPath string `protobuf:"bytes,6,opt,name=i2c_path,json=i2cPath,proto3" json:"i2c_path,omitempty"`
5658}
5659
5660func (x *HardwareFeatures_DetachableBase) Reset() {
5661	*x = HardwareFeatures_DetachableBase{}
5662	if protoimpl.UnsafeEnabled {
5663		mi := &file_chromiumos_config_api_topology_proto_msgTypes[48]
5664		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5665		ms.StoreMessageInfo(mi)
5666	}
5667}
5668
5669func (x *HardwareFeatures_DetachableBase) String() string {
5670	return protoimpl.X.MessageStringOf(x)
5671}
5672
5673func (*HardwareFeatures_DetachableBase) ProtoMessage() {}
5674
5675func (x *HardwareFeatures_DetachableBase) ProtoReflect() protoreflect.Message {
5676	mi := &file_chromiumos_config_api_topology_proto_msgTypes[48]
5677	if protoimpl.UnsafeEnabled && x != nil {
5678		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5679		if ms.LoadMessageInfo() == nil {
5680			ms.StoreMessageInfo(mi)
5681		}
5682		return ms
5683	}
5684	return mi.MessageOf(x)
5685}
5686
5687// Deprecated: Use HardwareFeatures_DetachableBase.ProtoReflect.Descriptor instead.
5688func (*HardwareFeatures_DetachableBase) Descriptor() ([]byte, []int) {
5689	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 44}
5690}
5691
5692func (x *HardwareFeatures_DetachableBase) GetEcImageName() string {
5693	if x != nil {
5694		return x.EcImageName
5695	}
5696	return ""
5697}
5698
5699func (x *HardwareFeatures_DetachableBase) GetProductId() uint32 {
5700	if x != nil {
5701		return x.ProductId
5702	}
5703	return 0
5704}
5705
5706func (x *HardwareFeatures_DetachableBase) GetTouchImageName() string {
5707	if x != nil {
5708		return x.TouchImageName
5709	}
5710	return ""
5711}
5712
5713func (x *HardwareFeatures_DetachableBase) GetUsbPath() string {
5714	if x != nil {
5715		return x.UsbPath
5716	}
5717	return ""
5718}
5719
5720func (x *HardwareFeatures_DetachableBase) GetVendorId() uint32 {
5721	if x != nil {
5722		return x.VendorId
5723	}
5724	return 0
5725}
5726
5727func (x *HardwareFeatures_DetachableBase) GetI2CPath() string {
5728	if x != nil {
5729		return x.I2CPath
5730	}
5731	return ""
5732}
5733
5734type HardwareFeatures_Suspend struct {
5735	state         protoimpl.MessageState
5736	sizeCache     protoimpl.SizeCache
5737	unknownFields protoimpl.UnknownFields
5738
5739	// If S3 (suspend to mem) is supported
5740	SuspendToMem HardwareFeatures_Present `protobuf:"varint,1,opt,name=suspend_to_mem,json=suspendToMem,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"suspend_to_mem,omitempty"`
5741	// If S0ix (suspend to idle) is supported
5742	SuspendToIdle HardwareFeatures_Present `protobuf:"varint,2,opt,name=suspend_to_idle,json=suspendToIdle,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"suspend_to_idle,omitempty"`
5743}
5744
5745func (x *HardwareFeatures_Suspend) Reset() {
5746	*x = HardwareFeatures_Suspend{}
5747	if protoimpl.UnsafeEnabled {
5748		mi := &file_chromiumos_config_api_topology_proto_msgTypes[49]
5749		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5750		ms.StoreMessageInfo(mi)
5751	}
5752}
5753
5754func (x *HardwareFeatures_Suspend) String() string {
5755	return protoimpl.X.MessageStringOf(x)
5756}
5757
5758func (*HardwareFeatures_Suspend) ProtoMessage() {}
5759
5760func (x *HardwareFeatures_Suspend) ProtoReflect() protoreflect.Message {
5761	mi := &file_chromiumos_config_api_topology_proto_msgTypes[49]
5762	if protoimpl.UnsafeEnabled && x != nil {
5763		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5764		if ms.LoadMessageInfo() == nil {
5765			ms.StoreMessageInfo(mi)
5766		}
5767		return ms
5768	}
5769	return mi.MessageOf(x)
5770}
5771
5772// Deprecated: Use HardwareFeatures_Suspend.ProtoReflect.Descriptor instead.
5773func (*HardwareFeatures_Suspend) Descriptor() ([]byte, []int) {
5774	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 45}
5775}
5776
5777func (x *HardwareFeatures_Suspend) GetSuspendToMem() HardwareFeatures_Present {
5778	if x != nil {
5779		return x.SuspendToMem
5780	}
5781	return HardwareFeatures_PRESENT_UNKNOWN
5782}
5783
5784func (x *HardwareFeatures_Suspend) GetSuspendToIdle() HardwareFeatures_Present {
5785	if x != nil {
5786		return x.SuspendToIdle
5787	}
5788	return HardwareFeatures_PRESENT_UNKNOWN
5789}
5790
5791type HardwareFeatures_Vrr struct {
5792	state         protoimpl.MessageState
5793	sizeCache     protoimpl.SizeCache
5794	unknownFields protoimpl.UnknownFields
5795
5796	// If VRR is supported.
5797	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
5798}
5799
5800func (x *HardwareFeatures_Vrr) Reset() {
5801	*x = HardwareFeatures_Vrr{}
5802	if protoimpl.UnsafeEnabled {
5803		mi := &file_chromiumos_config_api_topology_proto_msgTypes[50]
5804		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5805		ms.StoreMessageInfo(mi)
5806	}
5807}
5808
5809func (x *HardwareFeatures_Vrr) String() string {
5810	return protoimpl.X.MessageStringOf(x)
5811}
5812
5813func (*HardwareFeatures_Vrr) ProtoMessage() {}
5814
5815func (x *HardwareFeatures_Vrr) ProtoReflect() protoreflect.Message {
5816	mi := &file_chromiumos_config_api_topology_proto_msgTypes[50]
5817	if protoimpl.UnsafeEnabled && x != nil {
5818		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5819		if ms.LoadMessageInfo() == nil {
5820			ms.StoreMessageInfo(mi)
5821		}
5822		return ms
5823	}
5824	return mi.MessageOf(x)
5825}
5826
5827// Deprecated: Use HardwareFeatures_Vrr.ProtoReflect.Descriptor instead.
5828func (*HardwareFeatures_Vrr) Descriptor() ([]byte, []int) {
5829	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 46}
5830}
5831
5832func (x *HardwareFeatures_Vrr) GetPresent() HardwareFeatures_Present {
5833	if x != nil {
5834		return x.Present
5835	}
5836	return HardwareFeatures_PRESENT_UNKNOWN
5837}
5838
5839type HardwareFeatures_SdReader struct {
5840	state         protoimpl.MessageState
5841	sizeCache     protoimpl.SizeCache
5842	unknownFields protoimpl.UnknownFields
5843
5844	// If SD reader is supported.
5845	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
5846}
5847
5848func (x *HardwareFeatures_SdReader) Reset() {
5849	*x = HardwareFeatures_SdReader{}
5850	if protoimpl.UnsafeEnabled {
5851		mi := &file_chromiumos_config_api_topology_proto_msgTypes[51]
5852		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5853		ms.StoreMessageInfo(mi)
5854	}
5855}
5856
5857func (x *HardwareFeatures_SdReader) String() string {
5858	return protoimpl.X.MessageStringOf(x)
5859}
5860
5861func (*HardwareFeatures_SdReader) ProtoMessage() {}
5862
5863func (x *HardwareFeatures_SdReader) ProtoReflect() protoreflect.Message {
5864	mi := &file_chromiumos_config_api_topology_proto_msgTypes[51]
5865	if protoimpl.UnsafeEnabled && x != nil {
5866		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5867		if ms.LoadMessageInfo() == nil {
5868			ms.StoreMessageInfo(mi)
5869		}
5870		return ms
5871	}
5872	return mi.MessageOf(x)
5873}
5874
5875// Deprecated: Use HardwareFeatures_SdReader.ProtoReflect.Descriptor instead.
5876func (*HardwareFeatures_SdReader) Descriptor() ([]byte, []int) {
5877	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 47}
5878}
5879
5880func (x *HardwareFeatures_SdReader) GetPresent() HardwareFeatures_Present {
5881	if x != nil {
5882		return x.Present
5883	}
5884	return HardwareFeatures_PRESENT_UNKNOWN
5885}
5886
5887type HardwareFeatures_OEMInfo struct {
5888	state         protoimpl.MessageState
5889	sizeCache     protoimpl.SizeCache
5890	unknownFields protoimpl.UnknownFields
5891
5892	// Name stores the name of OEM.
5893	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
5894}
5895
5896func (x *HardwareFeatures_OEMInfo) Reset() {
5897	*x = HardwareFeatures_OEMInfo{}
5898	if protoimpl.UnsafeEnabled {
5899		mi := &file_chromiumos_config_api_topology_proto_msgTypes[52]
5900		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5901		ms.StoreMessageInfo(mi)
5902	}
5903}
5904
5905func (x *HardwareFeatures_OEMInfo) String() string {
5906	return protoimpl.X.MessageStringOf(x)
5907}
5908
5909func (*HardwareFeatures_OEMInfo) ProtoMessage() {}
5910
5911func (x *HardwareFeatures_OEMInfo) ProtoReflect() protoreflect.Message {
5912	mi := &file_chromiumos_config_api_topology_proto_msgTypes[52]
5913	if protoimpl.UnsafeEnabled && x != nil {
5914		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5915		if ms.LoadMessageInfo() == nil {
5916			ms.StoreMessageInfo(mi)
5917		}
5918		return ms
5919	}
5920	return mi.MessageOf(x)
5921}
5922
5923// Deprecated: Use HardwareFeatures_OEMInfo.ProtoReflect.Descriptor instead.
5924func (*HardwareFeatures_OEMInfo) Descriptor() ([]byte, []int) {
5925	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 48}
5926}
5927
5928func (x *HardwareFeatures_OEMInfo) GetName() string {
5929	if x != nil {
5930		return x.Name
5931	}
5932	return ""
5933}
5934
5935type HardwareFeatures_Fan struct {
5936	state         protoimpl.MessageState
5937	sizeCache     protoimpl.SizeCache
5938	unknownFields protoimpl.UnknownFields
5939
5940	// The number of fan in the device.
5941	FanCount *wrapperspb.UInt32Value `protobuf:"bytes,1,opt,name=fan_count,json=fanCount,proto3" json:"fan_count,omitempty"`
5942}
5943
5944func (x *HardwareFeatures_Fan) Reset() {
5945	*x = HardwareFeatures_Fan{}
5946	if protoimpl.UnsafeEnabled {
5947		mi := &file_chromiumos_config_api_topology_proto_msgTypes[53]
5948		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5949		ms.StoreMessageInfo(mi)
5950	}
5951}
5952
5953func (x *HardwareFeatures_Fan) String() string {
5954	return protoimpl.X.MessageStringOf(x)
5955}
5956
5957func (*HardwareFeatures_Fan) ProtoMessage() {}
5958
5959func (x *HardwareFeatures_Fan) ProtoReflect() protoreflect.Message {
5960	mi := &file_chromiumos_config_api_topology_proto_msgTypes[53]
5961	if protoimpl.UnsafeEnabled && x != nil {
5962		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5963		if ms.LoadMessageInfo() == nil {
5964			ms.StoreMessageInfo(mi)
5965		}
5966		return ms
5967	}
5968	return mi.MessageOf(x)
5969}
5970
5971// Deprecated: Use HardwareFeatures_Fan.ProtoReflect.Descriptor instead.
5972func (*HardwareFeatures_Fan) Descriptor() ([]byte, []int) {
5973	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 49}
5974}
5975
5976func (x *HardwareFeatures_Fan) GetFanCount() *wrapperspb.UInt32Value {
5977	if x != nil {
5978		return x.FanCount
5979	}
5980	return nil
5981}
5982
5983type HardwareFeatures_InterruptControllerInfo struct {
5984	state         protoimpl.MessageState
5985	sizeCache     protoimpl.SizeCache
5986	unknownFields protoimpl.UnknownFields
5987
5988	// If present then the Interrupt controller can support NMIs
5989	NmiSupport HardwareFeatures_Present `protobuf:"varint,1,opt,name=nmi_support,json=nmiSupport,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"nmi_support,omitempty"`
5990}
5991
5992func (x *HardwareFeatures_InterruptControllerInfo) Reset() {
5993	*x = HardwareFeatures_InterruptControllerInfo{}
5994	if protoimpl.UnsafeEnabled {
5995		mi := &file_chromiumos_config_api_topology_proto_msgTypes[54]
5996		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
5997		ms.StoreMessageInfo(mi)
5998	}
5999}
6000
6001func (x *HardwareFeatures_InterruptControllerInfo) String() string {
6002	return protoimpl.X.MessageStringOf(x)
6003}
6004
6005func (*HardwareFeatures_InterruptControllerInfo) ProtoMessage() {}
6006
6007func (x *HardwareFeatures_InterruptControllerInfo) ProtoReflect() protoreflect.Message {
6008	mi := &file_chromiumos_config_api_topology_proto_msgTypes[54]
6009	if protoimpl.UnsafeEnabled && x != nil {
6010		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6011		if ms.LoadMessageInfo() == nil {
6012			ms.StoreMessageInfo(mi)
6013		}
6014		return ms
6015	}
6016	return mi.MessageOf(x)
6017}
6018
6019// Deprecated: Use HardwareFeatures_InterruptControllerInfo.ProtoReflect.Descriptor instead.
6020func (*HardwareFeatures_InterruptControllerInfo) Descriptor() ([]byte, []int) {
6021	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 50}
6022}
6023
6024func (x *HardwareFeatures_InterruptControllerInfo) GetNmiSupport() HardwareFeatures_Present {
6025	if x != nil {
6026		return x.NmiSupport
6027	}
6028	return HardwareFeatures_PRESENT_UNKNOWN
6029}
6030
6031type HardwareFeatures_TiledDisplay struct {
6032	state         protoimpl.MessageState
6033	sizeCache     protoimpl.SizeCache
6034	unknownFields protoimpl.UnknownFields
6035
6036	// If the device is connected to a tiled display.
6037	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
6038}
6039
6040func (x *HardwareFeatures_TiledDisplay) Reset() {
6041	*x = HardwareFeatures_TiledDisplay{}
6042	if protoimpl.UnsafeEnabled {
6043		mi := &file_chromiumos_config_api_topology_proto_msgTypes[55]
6044		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6045		ms.StoreMessageInfo(mi)
6046	}
6047}
6048
6049func (x *HardwareFeatures_TiledDisplay) String() string {
6050	return protoimpl.X.MessageStringOf(x)
6051}
6052
6053func (*HardwareFeatures_TiledDisplay) ProtoMessage() {}
6054
6055func (x *HardwareFeatures_TiledDisplay) ProtoReflect() protoreflect.Message {
6056	mi := &file_chromiumos_config_api_topology_proto_msgTypes[55]
6057	if protoimpl.UnsafeEnabled && x != nil {
6058		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6059		if ms.LoadMessageInfo() == nil {
6060			ms.StoreMessageInfo(mi)
6061		}
6062		return ms
6063	}
6064	return mi.MessageOf(x)
6065}
6066
6067// Deprecated: Use HardwareFeatures_TiledDisplay.ProtoReflect.Descriptor instead.
6068func (*HardwareFeatures_TiledDisplay) Descriptor() ([]byte, []int) {
6069	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 51}
6070}
6071
6072func (x *HardwareFeatures_TiledDisplay) GetPresent() HardwareFeatures_Present {
6073	if x != nil {
6074		return x.Present
6075	}
6076	return HardwareFeatures_PRESENT_UNKNOWN
6077}
6078
6079type HardwareFeatures_CpuInfo struct {
6080	state         protoimpl.MessageState
6081	sizeCache     protoimpl.SizeCache
6082	unknownFields protoimpl.UnknownFields
6083
6084	VendorInfo *HardwareFeatures_CpuInfo_VendorInfo `protobuf:"bytes,1,opt,name=vendor_info,json=vendorInfo,proto3" json:"vendor_info,omitempty"`
6085}
6086
6087func (x *HardwareFeatures_CpuInfo) Reset() {
6088	*x = HardwareFeatures_CpuInfo{}
6089	if protoimpl.UnsafeEnabled {
6090		mi := &file_chromiumos_config_api_topology_proto_msgTypes[56]
6091		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6092		ms.StoreMessageInfo(mi)
6093	}
6094}
6095
6096func (x *HardwareFeatures_CpuInfo) String() string {
6097	return protoimpl.X.MessageStringOf(x)
6098}
6099
6100func (*HardwareFeatures_CpuInfo) ProtoMessage() {}
6101
6102func (x *HardwareFeatures_CpuInfo) ProtoReflect() protoreflect.Message {
6103	mi := &file_chromiumos_config_api_topology_proto_msgTypes[56]
6104	if protoimpl.UnsafeEnabled && x != nil {
6105		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6106		if ms.LoadMessageInfo() == nil {
6107			ms.StoreMessageInfo(mi)
6108		}
6109		return ms
6110	}
6111	return mi.MessageOf(x)
6112}
6113
6114// Deprecated: Use HardwareFeatures_CpuInfo.ProtoReflect.Descriptor instead.
6115func (*HardwareFeatures_CpuInfo) Descriptor() ([]byte, []int) {
6116	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 52}
6117}
6118
6119func (x *HardwareFeatures_CpuInfo) GetVendorInfo() *HardwareFeatures_CpuInfo_VendorInfo {
6120	if x != nil {
6121		return x.VendorInfo
6122	}
6123	return nil
6124}
6125
6126type HardwareFeatures_Pendrive struct {
6127	state         protoimpl.MessageState
6128	sizeCache     protoimpl.SizeCache
6129	unknownFields protoimpl.UnknownFields
6130
6131	Present HardwareFeatures_Present `protobuf:"varint,1,opt,name=present,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"present,omitempty"`
6132}
6133
6134func (x *HardwareFeatures_Pendrive) Reset() {
6135	*x = HardwareFeatures_Pendrive{}
6136	if protoimpl.UnsafeEnabled {
6137		mi := &file_chromiumos_config_api_topology_proto_msgTypes[57]
6138		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6139		ms.StoreMessageInfo(mi)
6140	}
6141}
6142
6143func (x *HardwareFeatures_Pendrive) String() string {
6144	return protoimpl.X.MessageStringOf(x)
6145}
6146
6147func (*HardwareFeatures_Pendrive) ProtoMessage() {}
6148
6149func (x *HardwareFeatures_Pendrive) ProtoReflect() protoreflect.Message {
6150	mi := &file_chromiumos_config_api_topology_proto_msgTypes[57]
6151	if protoimpl.UnsafeEnabled && x != nil {
6152		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6153		if ms.LoadMessageInfo() == nil {
6154			ms.StoreMessageInfo(mi)
6155		}
6156		return ms
6157	}
6158	return mi.MessageOf(x)
6159}
6160
6161// Deprecated: Use HardwareFeatures_Pendrive.ProtoReflect.Descriptor instead.
6162func (*HardwareFeatures_Pendrive) Descriptor() ([]byte, []int) {
6163	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 53}
6164}
6165
6166func (x *HardwareFeatures_Pendrive) GetPresent() HardwareFeatures_Present {
6167	if x != nil {
6168		return x.Present
6169	}
6170	return HardwareFeatures_PRESENT_UNKNOWN
6171}
6172
6173type HardwareFeatures_UsbC_Port struct {
6174	state         protoimpl.MessageState
6175	sizeCache     protoimpl.SizeCache
6176	unknownFields protoimpl.UnknownFields
6177
6178	// The position of the port on the chassis.
6179	Position HardwareFeatures_PortPosition `protobuf:"varint,1,opt,name=position,proto3,enum=chromiumos.config.api.HardwareFeatures_PortPosition" json:"position,omitempty"`
6180	// The 0-indexed index of this USB-C port. If set, this is used as the
6181	// port index rather than numbering the motherboard ports in order
6182	// followed by daughter board ports, in the order they are specified.
6183	// This value must be in the range [0, number_of_usb_c_ports).
6184	IndexOverride *wrapperspb.UInt32Value `protobuf:"bytes,2,opt,name=index_override,json=indexOverride,proto3" json:"index_override,omitempty"`
6185}
6186
6187func (x *HardwareFeatures_UsbC_Port) Reset() {
6188	*x = HardwareFeatures_UsbC_Port{}
6189	if protoimpl.UnsafeEnabled {
6190		mi := &file_chromiumos_config_api_topology_proto_msgTypes[58]
6191		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6192		ms.StoreMessageInfo(mi)
6193	}
6194}
6195
6196func (x *HardwareFeatures_UsbC_Port) String() string {
6197	return protoimpl.X.MessageStringOf(x)
6198}
6199
6200func (*HardwareFeatures_UsbC_Port) ProtoMessage() {}
6201
6202func (x *HardwareFeatures_UsbC_Port) ProtoReflect() protoreflect.Message {
6203	mi := &file_chromiumos_config_api_topology_proto_msgTypes[58]
6204	if protoimpl.UnsafeEnabled && x != nil {
6205		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6206		if ms.LoadMessageInfo() == nil {
6207			ms.StoreMessageInfo(mi)
6208		}
6209		return ms
6210	}
6211	return mi.MessageOf(x)
6212}
6213
6214// Deprecated: Use HardwareFeatures_UsbC_Port.ProtoReflect.Descriptor instead.
6215func (*HardwareFeatures_UsbC_Port) Descriptor() ([]byte, []int) {
6216	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 1, 0}
6217}
6218
6219func (x *HardwareFeatures_UsbC_Port) GetPosition() HardwareFeatures_PortPosition {
6220	if x != nil {
6221		return x.Position
6222	}
6223	return HardwareFeatures_UNKNOWN
6224}
6225
6226func (x *HardwareFeatures_UsbC_Port) GetIndexOverride() *wrapperspb.UInt32Value {
6227	if x != nil {
6228		return x.IndexOverride
6229	}
6230	return nil
6231}
6232
6233type HardwareFeatures_Cellular_DynamicPowerReductionConfig struct {
6234	state         protoimpl.MessageState
6235	sizeCache     protoimpl.SizeCache
6236	unknownFields protoimpl.UnknownFields
6237
6238	// Types that are assignable to DynamicPowerReductionConfig:
6239	//	*HardwareFeatures_Cellular_DynamicPowerReductionConfig_Gpio
6240	//	*HardwareFeatures_Cellular_DynamicPowerReductionConfig_ModemManager
6241	DynamicPowerReductionConfig isHardwareFeatures_Cellular_DynamicPowerReductionConfig_DynamicPowerReductionConfig `protobuf_oneof:"dynamic_power_reduction_config"`
6242	// Whether tablet mode should be a trigger for dynamic power reduction.
6243	TabletMode bool `protobuf:"varint,3,opt,name=tablet_mode,json=tabletMode,proto3" json:"tablet_mode,omitempty"`
6244	// Whether multi level dynamic power reduction is enabled.
6245	EnableMultiPowerLevelSar bool `protobuf:"varint,4,opt,name=enable_multi_power_level_sar,json=enableMultiPowerLevelSar,proto3" json:"enable_multi_power_level_sar,omitempty"`
6246	// Whether we should set the initial proximity state to far.
6247	EnableDefaultProximityStateFar bool `protobuf:"varint,5,opt,name=enable_default_proximity_state_far,json=enableDefaultProximityStateFar,proto3" json:"enable_default_proximity_state_far,omitempty"`
6248	// Map of custom power level to modem index mapping.
6249	// E.g. HIGH -> 1, LOW -> 2
6250	PowerLevelMapping map[string]uint32 `protobuf:"bytes,6,rep,name=power_level_mapping,json=powerLevelMapping,proto3" json:"power_level_mapping,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
6251	// Map of regulatory domains and power level offset.
6252	// E.g. KCC -> 2
6253	RegulatoryDomainMapping map[string]uint32 `protobuf:"bytes,7,rep,name=regulatory_domain_mapping,json=regulatoryDomainMapping,proto3" json:"regulatory_domain_mapping,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
6254}
6255
6256func (x *HardwareFeatures_Cellular_DynamicPowerReductionConfig) Reset() {
6257	*x = HardwareFeatures_Cellular_DynamicPowerReductionConfig{}
6258	if protoimpl.UnsafeEnabled {
6259		mi := &file_chromiumos_config_api_topology_proto_msgTypes[59]
6260		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6261		ms.StoreMessageInfo(mi)
6262	}
6263}
6264
6265func (x *HardwareFeatures_Cellular_DynamicPowerReductionConfig) String() string {
6266	return protoimpl.X.MessageStringOf(x)
6267}
6268
6269func (*HardwareFeatures_Cellular_DynamicPowerReductionConfig) ProtoMessage() {}
6270
6271func (x *HardwareFeatures_Cellular_DynamicPowerReductionConfig) ProtoReflect() protoreflect.Message {
6272	mi := &file_chromiumos_config_api_topology_proto_msgTypes[59]
6273	if protoimpl.UnsafeEnabled && x != nil {
6274		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6275		if ms.LoadMessageInfo() == nil {
6276			ms.StoreMessageInfo(mi)
6277		}
6278		return ms
6279	}
6280	return mi.MessageOf(x)
6281}
6282
6283// Deprecated: Use HardwareFeatures_Cellular_DynamicPowerReductionConfig.ProtoReflect.Descriptor instead.
6284func (*HardwareFeatures_Cellular_DynamicPowerReductionConfig) Descriptor() ([]byte, []int) {
6285	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 3, 0}
6286}
6287
6288func (m *HardwareFeatures_Cellular_DynamicPowerReductionConfig) GetDynamicPowerReductionConfig() isHardwareFeatures_Cellular_DynamicPowerReductionConfig_DynamicPowerReductionConfig {
6289	if m != nil {
6290		return m.DynamicPowerReductionConfig
6291	}
6292	return nil
6293}
6294
6295func (x *HardwareFeatures_Cellular_DynamicPowerReductionConfig) GetGpio() uint32 {
6296	if x, ok := x.GetDynamicPowerReductionConfig().(*HardwareFeatures_Cellular_DynamicPowerReductionConfig_Gpio); ok {
6297		return x.Gpio
6298	}
6299	return 0
6300}
6301
6302func (x *HardwareFeatures_Cellular_DynamicPowerReductionConfig) GetModemManager() bool {
6303	if x, ok := x.GetDynamicPowerReductionConfig().(*HardwareFeatures_Cellular_DynamicPowerReductionConfig_ModemManager); ok {
6304		return x.ModemManager
6305	}
6306	return false
6307}
6308
6309func (x *HardwareFeatures_Cellular_DynamicPowerReductionConfig) GetTabletMode() bool {
6310	if x != nil {
6311		return x.TabletMode
6312	}
6313	return false
6314}
6315
6316func (x *HardwareFeatures_Cellular_DynamicPowerReductionConfig) GetEnableMultiPowerLevelSar() bool {
6317	if x != nil {
6318		return x.EnableMultiPowerLevelSar
6319	}
6320	return false
6321}
6322
6323func (x *HardwareFeatures_Cellular_DynamicPowerReductionConfig) GetEnableDefaultProximityStateFar() bool {
6324	if x != nil {
6325		return x.EnableDefaultProximityStateFar
6326	}
6327	return false
6328}
6329
6330func (x *HardwareFeatures_Cellular_DynamicPowerReductionConfig) GetPowerLevelMapping() map[string]uint32 {
6331	if x != nil {
6332		return x.PowerLevelMapping
6333	}
6334	return nil
6335}
6336
6337func (x *HardwareFeatures_Cellular_DynamicPowerReductionConfig) GetRegulatoryDomainMapping() map[string]uint32 {
6338	if x != nil {
6339		return x.RegulatoryDomainMapping
6340	}
6341	return nil
6342}
6343
6344type isHardwareFeatures_Cellular_DynamicPowerReductionConfig_DynamicPowerReductionConfig interface {
6345	isHardwareFeatures_Cellular_DynamicPowerReductionConfig_DynamicPowerReductionConfig()
6346}
6347
6348type HardwareFeatures_Cellular_DynamicPowerReductionConfig_Gpio struct {
6349	// A uint identifying the GPIO to use to toggle dynamic power
6350	// reduction.
6351	Gpio uint32 `protobuf:"varint,1,opt,name=gpio,proto3,oneof"`
6352}
6353
6354type HardwareFeatures_Cellular_DynamicPowerReductionConfig_ModemManager struct {
6355	// A dummy value identifying that modem manager should be used to
6356	// toggle dynamic power reduction.
6357	ModemManager bool `protobuf:"varint,2,opt,name=modem_manager,json=modemManager,proto3,oneof"`
6358}
6359
6360func (*HardwareFeatures_Cellular_DynamicPowerReductionConfig_Gpio) isHardwareFeatures_Cellular_DynamicPowerReductionConfig_DynamicPowerReductionConfig() {
6361}
6362
6363func (*HardwareFeatures_Cellular_DynamicPowerReductionConfig_ModemManager) isHardwareFeatures_Cellular_DynamicPowerReductionConfig_DynamicPowerReductionConfig() {
6364}
6365
6366type HardwareFeatures_Hdmi_Cec struct {
6367	state         protoimpl.MessageState
6368	sizeCache     protoimpl.SizeCache
6369	unknownFields protoimpl.UnknownFields
6370
6371	// Automatically power on all connected displays on boot.
6372	PowerOnDisplaysOnBoot bool `protobuf:"varint,1,opt,name=power_on_displays_on_boot,json=powerOnDisplaysOnBoot,proto3" json:"power_on_displays_on_boot,omitempty"`
6373	// Automatically power off all connected displays on shutdown.
6374	PowerOffDisplaysOnShutdown bool `protobuf:"varint,2,opt,name=power_off_displays_on_shutdown,json=powerOffDisplaysOnShutdown,proto3" json:"power_off_displays_on_shutdown,omitempty"`
6375}
6376
6377func (x *HardwareFeatures_Hdmi_Cec) Reset() {
6378	*x = HardwareFeatures_Hdmi_Cec{}
6379	if protoimpl.UnsafeEnabled {
6380		mi := &file_chromiumos_config_api_topology_proto_msgTypes[62]
6381		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6382		ms.StoreMessageInfo(mi)
6383	}
6384}
6385
6386func (x *HardwareFeatures_Hdmi_Cec) String() string {
6387	return protoimpl.X.MessageStringOf(x)
6388}
6389
6390func (*HardwareFeatures_Hdmi_Cec) ProtoMessage() {}
6391
6392func (x *HardwareFeatures_Hdmi_Cec) ProtoReflect() protoreflect.Message {
6393	mi := &file_chromiumos_config_api_topology_proto_msgTypes[62]
6394	if protoimpl.UnsafeEnabled && x != nil {
6395		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6396		if ms.LoadMessageInfo() == nil {
6397			ms.StoreMessageInfo(mi)
6398		}
6399		return ms
6400	}
6401	return mi.MessageOf(x)
6402}
6403
6404// Deprecated: Use HardwareFeatures_Hdmi_Cec.ProtoReflect.Descriptor instead.
6405func (*HardwareFeatures_Hdmi_Cec) Descriptor() ([]byte, []int) {
6406	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 4, 0}
6407}
6408
6409func (x *HardwareFeatures_Hdmi_Cec) GetPowerOnDisplaysOnBoot() bool {
6410	if x != nil {
6411		return x.PowerOnDisplaysOnBoot
6412	}
6413	return false
6414}
6415
6416func (x *HardwareFeatures_Hdmi_Cec) GetPowerOffDisplaysOnShutdown() bool {
6417	if x != nil {
6418		return x.PowerOffDisplaysOnShutdown
6419	}
6420	return false
6421}
6422
6423type HardwareFeatures_FirmwareConfiguration_SemVer struct {
6424	state         protoimpl.MessageState
6425	sizeCache     protoimpl.SizeCache
6426	unknownFields protoimpl.UnknownFields
6427
6428	MajorVersion uint32 `protobuf:"varint,1,opt,name=major_version,json=majorVersion,proto3" json:"major_version,omitempty"`
6429	MinorVersion uint32 `protobuf:"varint,2,opt,name=minor_version,json=minorVersion,proto3" json:"minor_version,omitempty"`
6430	PatchVersion uint32 `protobuf:"varint,3,opt,name=patch_version,json=patchVersion,proto3" json:"patch_version,omitempty"`
6431}
6432
6433func (x *HardwareFeatures_FirmwareConfiguration_SemVer) Reset() {
6434	*x = HardwareFeatures_FirmwareConfiguration_SemVer{}
6435	if protoimpl.UnsafeEnabled {
6436		mi := &file_chromiumos_config_api_topology_proto_msgTypes[63]
6437		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6438		ms.StoreMessageInfo(mi)
6439	}
6440}
6441
6442func (x *HardwareFeatures_FirmwareConfiguration_SemVer) String() string {
6443	return protoimpl.X.MessageStringOf(x)
6444}
6445
6446func (*HardwareFeatures_FirmwareConfiguration_SemVer) ProtoMessage() {}
6447
6448func (x *HardwareFeatures_FirmwareConfiguration_SemVer) ProtoReflect() protoreflect.Message {
6449	mi := &file_chromiumos_config_api_topology_proto_msgTypes[63]
6450	if protoimpl.UnsafeEnabled && x != nil {
6451		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6452		if ms.LoadMessageInfo() == nil {
6453			ms.StoreMessageInfo(mi)
6454		}
6455		return ms
6456	}
6457	return mi.MessageOf(x)
6458}
6459
6460// Deprecated: Use HardwareFeatures_FirmwareConfiguration_SemVer.ProtoReflect.Descriptor instead.
6461func (*HardwareFeatures_FirmwareConfiguration_SemVer) Descriptor() ([]byte, []int) {
6462	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 5, 0}
6463}
6464
6465func (x *HardwareFeatures_FirmwareConfiguration_SemVer) GetMajorVersion() uint32 {
6466	if x != nil {
6467		return x.MajorVersion
6468	}
6469	return 0
6470}
6471
6472func (x *HardwareFeatures_FirmwareConfiguration_SemVer) GetMinorVersion() uint32 {
6473	if x != nil {
6474		return x.MinorVersion
6475	}
6476	return 0
6477}
6478
6479func (x *HardwareFeatures_FirmwareConfiguration_SemVer) GetPatchVersion() uint32 {
6480	if x != nil {
6481		return x.PatchVersion
6482	}
6483	return 0
6484}
6485
6486// The configuration file layout structure for a single card.
6487type HardwareFeatures_Audio_CardConfig struct {
6488	state         protoimpl.MessageState
6489	sizeCache     protoimpl.SizeCache
6490	unknownFields protoimpl.UnknownFields
6491
6492	// The name of the audio card.
6493	CardName string `protobuf:"bytes,1,opt,name=card_name,json=cardName,proto3" json:"card_name,omitempty"`
6494	// The UCM suffix pattern for this card if different to the program-level
6495	// default.
6496	UcmSuffix *wrapperspb.StringValue `protobuf:"bytes,2,opt,name=ucm_suffix,json=ucmSuffix,proto3" json:"ucm_suffix,omitempty"`
6497	// The source config file layout used for UCM config. May not be
6498	// AUDIO_CONFIG_STRUCTURE_NONE.
6499	UcmConfig HardwareFeatures_Audio_AudioConfigStructure `protobuf:"varint,3,opt,name=ucm_config,json=ucmConfig,proto3,enum=chromiumos.config.api.HardwareFeatures_Audio_AudioConfigStructure" json:"ucm_config,omitempty"`
6500	// The source config file layout used for card-level cras config.
6501	CrasConfig HardwareFeatures_Audio_AudioConfigStructure `protobuf:"varint,4,opt,name=cras_config,json=crasConfig,proto3,enum=chromiumos.config.api.HardwareFeatures_Audio_AudioConfigStructure" json:"cras_config,omitempty"`
6502	// The source config file layout used for sound card init config.
6503	SoundCardInitConfig HardwareFeatures_Audio_AudioConfigStructure `protobuf:"varint,5,opt,name=sound_card_init_config,json=soundCardInitConfig,proto3,enum=chromiumos.config.api.HardwareFeatures_Audio_AudioConfigStructure" json:"sound_card_init_config,omitempty"`
6504	// The cras suffix pattern for this card if different to the program-level
6505	// default.
6506	CrasSuffix *wrapperspb.StringValue `protobuf:"bytes,6,opt,name=cras_suffix,json=crasSuffix,proto3" json:"cras_suffix,omitempty"`
6507}
6508
6509func (x *HardwareFeatures_Audio_CardConfig) Reset() {
6510	*x = HardwareFeatures_Audio_CardConfig{}
6511	if protoimpl.UnsafeEnabled {
6512		mi := &file_chromiumos_config_api_topology_proto_msgTypes[64]
6513		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6514		ms.StoreMessageInfo(mi)
6515	}
6516}
6517
6518func (x *HardwareFeatures_Audio_CardConfig) String() string {
6519	return protoimpl.X.MessageStringOf(x)
6520}
6521
6522func (*HardwareFeatures_Audio_CardConfig) ProtoMessage() {}
6523
6524func (x *HardwareFeatures_Audio_CardConfig) ProtoReflect() protoreflect.Message {
6525	mi := &file_chromiumos_config_api_topology_proto_msgTypes[64]
6526	if protoimpl.UnsafeEnabled && x != nil {
6527		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6528		if ms.LoadMessageInfo() == nil {
6529			ms.StoreMessageInfo(mi)
6530		}
6531		return ms
6532	}
6533	return mi.MessageOf(x)
6534}
6535
6536// Deprecated: Use HardwareFeatures_Audio_CardConfig.ProtoReflect.Descriptor instead.
6537func (*HardwareFeatures_Audio_CardConfig) Descriptor() ([]byte, []int) {
6538	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 6, 0}
6539}
6540
6541func (x *HardwareFeatures_Audio_CardConfig) GetCardName() string {
6542	if x != nil {
6543		return x.CardName
6544	}
6545	return ""
6546}
6547
6548func (x *HardwareFeatures_Audio_CardConfig) GetUcmSuffix() *wrapperspb.StringValue {
6549	if x != nil {
6550		return x.UcmSuffix
6551	}
6552	return nil
6553}
6554
6555func (x *HardwareFeatures_Audio_CardConfig) GetUcmConfig() HardwareFeatures_Audio_AudioConfigStructure {
6556	if x != nil {
6557		return x.UcmConfig
6558	}
6559	return HardwareFeatures_Audio_AUDIO_CONFIG_STRUCTURE_NONE
6560}
6561
6562func (x *HardwareFeatures_Audio_CardConfig) GetCrasConfig() HardwareFeatures_Audio_AudioConfigStructure {
6563	if x != nil {
6564		return x.CrasConfig
6565	}
6566	return HardwareFeatures_Audio_AUDIO_CONFIG_STRUCTURE_NONE
6567}
6568
6569func (x *HardwareFeatures_Audio_CardConfig) GetSoundCardInitConfig() HardwareFeatures_Audio_AudioConfigStructure {
6570	if x != nil {
6571		return x.SoundCardInitConfig
6572	}
6573	return HardwareFeatures_Audio_AUDIO_CONFIG_STRUCTURE_NONE
6574}
6575
6576func (x *HardwareFeatures_Audio_CardConfig) GetCrasSuffix() *wrapperspb.StringValue {
6577	if x != nil {
6578		return x.CrasSuffix
6579	}
6580	return nil
6581}
6582
6583type HardwareFeatures_Camera_Device struct {
6584	state         protoimpl.MessageState
6585	sizeCache     protoimpl.SizeCache
6586	unknownFields protoimpl.UnknownFields
6587
6588	// The interface type of the camera device.
6589	Interface HardwareFeatures_Camera_Interface `protobuf:"varint,2,opt,name=interface,proto3,enum=chromiumos.config.api.HardwareFeatures_Camera_Interface" json:"interface,omitempty"`
6590	// Direction the camera faces relative to device screen.
6591	Facing HardwareFeatures_Camera_Facing `protobuf:"varint,3,opt,name=facing,proto3,enum=chromiumos.config.api.HardwareFeatures_Camera_Facing" json:"facing,omitempty"`
6592	// Clockwise angle through which the output image needs to be rotated to
6593	// be upright on the device screen in its native orientation.
6594	Orientation HardwareFeatures_Camera_Orientation `protobuf:"varint,4,opt,name=orientation,proto3,enum=chromiumos.config.api.HardwareFeatures_Camera_Orientation" json:"orientation,omitempty"`
6595	// Bit flags representing camera capabilities of this device. A camera
6596	// module can be mounted on this slot only if all the flags match.
6597	Flags uint32 `protobuf:"varint,5,opt,name=flags,proto3" json:"flags,omitempty"`
6598	// List of strings each identifies a possible camera module on this slot.
6599	Ids []string `protobuf:"bytes,6,rep,name=ids,proto3" json:"ids,omitempty"`
6600	// If privacy switch is present on the camera
6601	PrivacySwitch HardwareFeatures_Present `protobuf:"varint,7,opt,name=privacy_switch,json=privacySwitch,proto3,enum=chromiumos.config.api.HardwareFeatures_Present" json:"privacy_switch,omitempty"`
6602	// The number of microphones associated with this device.
6603	MicrophoneCount *HardwareFeatures_Count `protobuf:"bytes,8,opt,name=microphone_count,json=microphoneCount,proto3" json:"microphone_count,omitempty"`
6604	// Whether the camera module is detachable.
6605	Detachable bool `protobuf:"varint,9,opt,name=detachable,proto3" json:"detachable,omitempty"`
6606}
6607
6608func (x *HardwareFeatures_Camera_Device) Reset() {
6609	*x = HardwareFeatures_Camera_Device{}
6610	if protoimpl.UnsafeEnabled {
6611		mi := &file_chromiumos_config_api_topology_proto_msgTypes[65]
6612		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6613		ms.StoreMessageInfo(mi)
6614	}
6615}
6616
6617func (x *HardwareFeatures_Camera_Device) String() string {
6618	return protoimpl.X.MessageStringOf(x)
6619}
6620
6621func (*HardwareFeatures_Camera_Device) ProtoMessage() {}
6622
6623func (x *HardwareFeatures_Camera_Device) ProtoReflect() protoreflect.Message {
6624	mi := &file_chromiumos_config_api_topology_proto_msgTypes[65]
6625	if protoimpl.UnsafeEnabled && x != nil {
6626		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6627		if ms.LoadMessageInfo() == nil {
6628			ms.StoreMessageInfo(mi)
6629		}
6630		return ms
6631	}
6632	return mi.MessageOf(x)
6633}
6634
6635// Deprecated: Use HardwareFeatures_Camera_Device.ProtoReflect.Descriptor instead.
6636func (*HardwareFeatures_Camera_Device) Descriptor() ([]byte, []int) {
6637	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 7, 0}
6638}
6639
6640func (x *HardwareFeatures_Camera_Device) GetInterface() HardwareFeatures_Camera_Interface {
6641	if x != nil {
6642		return x.Interface
6643	}
6644	return HardwareFeatures_Camera_INTERFACE_UNKNOWN
6645}
6646
6647func (x *HardwareFeatures_Camera_Device) GetFacing() HardwareFeatures_Camera_Facing {
6648	if x != nil {
6649		return x.Facing
6650	}
6651	return HardwareFeatures_Camera_FACING_UNKNOWN
6652}
6653
6654func (x *HardwareFeatures_Camera_Device) GetOrientation() HardwareFeatures_Camera_Orientation {
6655	if x != nil {
6656		return x.Orientation
6657	}
6658	return HardwareFeatures_Camera_ORIENTATION_UNKNOWN
6659}
6660
6661func (x *HardwareFeatures_Camera_Device) GetFlags() uint32 {
6662	if x != nil {
6663		return x.Flags
6664	}
6665	return 0
6666}
6667
6668func (x *HardwareFeatures_Camera_Device) GetIds() []string {
6669	if x != nil {
6670		return x.Ids
6671	}
6672	return nil
6673}
6674
6675func (x *HardwareFeatures_Camera_Device) GetPrivacySwitch() HardwareFeatures_Present {
6676	if x != nil {
6677		return x.PrivacySwitch
6678	}
6679	return HardwareFeatures_PRESENT_UNKNOWN
6680}
6681
6682func (x *HardwareFeatures_Camera_Device) GetMicrophoneCount() *HardwareFeatures_Count {
6683	if x != nil {
6684		return x.MicrophoneCount
6685	}
6686	return nil
6687}
6688
6689func (x *HardwareFeatures_Camera_Device) GetDetachable() bool {
6690	if x != nil {
6691		return x.Detachable
6692	}
6693	return false
6694}
6695
6696type HardwareFeatures_Fingerprint_FingerprintDiag struct {
6697	state         protoimpl.MessageState
6698	sizeCache     protoimpl.SizeCache
6699	unknownFields protoimpl.UnknownFields
6700
6701	RoutineEnable             bool                                                       `protobuf:"varint,1,opt,name=routine_enable,json=routineEnable,proto3" json:"routine_enable,omitempty"`
6702	MaxPixelDev               uint32                                                     `protobuf:"varint,2,opt,name=max_pixel_dev,json=maxPixelDev,proto3" json:"max_pixel_dev,omitempty"`
6703	MaxDeadPixels             uint32                                                     `protobuf:"varint,3,opt,name=max_dead_pixels,json=maxDeadPixels,proto3" json:"max_dead_pixels,omitempty"`
6704	PixelMedian               *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian  `protobuf:"bytes,4,opt,name=pixel_median,json=pixelMedian,proto3" json:"pixel_median,omitempty"`
6705	NumDetectZone             uint32                                                     `protobuf:"varint,5,opt,name=num_detect_zone,json=numDetectZone,proto3" json:"num_detect_zone,omitempty"`
6706	DetectZones               []*HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone `protobuf:"bytes,6,rep,name=detect_zones,json=detectZones,proto3" json:"detect_zones,omitempty"`
6707	MaxDeadPixelsInDetectZone uint32                                                     `protobuf:"varint,7,opt,name=max_dead_pixels_in_detect_zone,json=maxDeadPixelsInDetectZone,proto3" json:"max_dead_pixels_in_detect_zone,omitempty"`
6708	MaxResetPixelDev          uint32                                                     `protobuf:"varint,8,opt,name=max_reset_pixel_dev,json=maxResetPixelDev,proto3" json:"max_reset_pixel_dev,omitempty"`
6709	MaxErrorResetPixels       uint32                                                     `protobuf:"varint,9,opt,name=max_error_reset_pixels,json=maxErrorResetPixels,proto3" json:"max_error_reset_pixels,omitempty"`
6710}
6711
6712func (x *HardwareFeatures_Fingerprint_FingerprintDiag) Reset() {
6713	*x = HardwareFeatures_Fingerprint_FingerprintDiag{}
6714	if protoimpl.UnsafeEnabled {
6715		mi := &file_chromiumos_config_api_topology_proto_msgTypes[66]
6716		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6717		ms.StoreMessageInfo(mi)
6718	}
6719}
6720
6721func (x *HardwareFeatures_Fingerprint_FingerprintDiag) String() string {
6722	return protoimpl.X.MessageStringOf(x)
6723}
6724
6725func (*HardwareFeatures_Fingerprint_FingerprintDiag) ProtoMessage() {}
6726
6727func (x *HardwareFeatures_Fingerprint_FingerprintDiag) ProtoReflect() protoreflect.Message {
6728	mi := &file_chromiumos_config_api_topology_proto_msgTypes[66]
6729	if protoimpl.UnsafeEnabled && x != nil {
6730		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6731		if ms.LoadMessageInfo() == nil {
6732			ms.StoreMessageInfo(mi)
6733		}
6734		return ms
6735	}
6736	return mi.MessageOf(x)
6737}
6738
6739// Deprecated: Use HardwareFeatures_Fingerprint_FingerprintDiag.ProtoReflect.Descriptor instead.
6740func (*HardwareFeatures_Fingerprint_FingerprintDiag) Descriptor() ([]byte, []int) {
6741	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 17, 0}
6742}
6743
6744func (x *HardwareFeatures_Fingerprint_FingerprintDiag) GetRoutineEnable() bool {
6745	if x != nil {
6746		return x.RoutineEnable
6747	}
6748	return false
6749}
6750
6751func (x *HardwareFeatures_Fingerprint_FingerprintDiag) GetMaxPixelDev() uint32 {
6752	if x != nil {
6753		return x.MaxPixelDev
6754	}
6755	return 0
6756}
6757
6758func (x *HardwareFeatures_Fingerprint_FingerprintDiag) GetMaxDeadPixels() uint32 {
6759	if x != nil {
6760		return x.MaxDeadPixels
6761	}
6762	return 0
6763}
6764
6765func (x *HardwareFeatures_Fingerprint_FingerprintDiag) GetPixelMedian() *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian {
6766	if x != nil {
6767		return x.PixelMedian
6768	}
6769	return nil
6770}
6771
6772func (x *HardwareFeatures_Fingerprint_FingerprintDiag) GetNumDetectZone() uint32 {
6773	if x != nil {
6774		return x.NumDetectZone
6775	}
6776	return 0
6777}
6778
6779func (x *HardwareFeatures_Fingerprint_FingerprintDiag) GetDetectZones() []*HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone {
6780	if x != nil {
6781		return x.DetectZones
6782	}
6783	return nil
6784}
6785
6786func (x *HardwareFeatures_Fingerprint_FingerprintDiag) GetMaxDeadPixelsInDetectZone() uint32 {
6787	if x != nil {
6788		return x.MaxDeadPixelsInDetectZone
6789	}
6790	return 0
6791}
6792
6793func (x *HardwareFeatures_Fingerprint_FingerprintDiag) GetMaxResetPixelDev() uint32 {
6794	if x != nil {
6795		return x.MaxResetPixelDev
6796	}
6797	return 0
6798}
6799
6800func (x *HardwareFeatures_Fingerprint_FingerprintDiag) GetMaxErrorResetPixels() uint32 {
6801	if x != nil {
6802		return x.MaxErrorResetPixels
6803	}
6804	return 0
6805}
6806
6807type HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian struct {
6808	state         protoimpl.MessageState
6809	sizeCache     protoimpl.SizeCache
6810	unknownFields protoimpl.UnknownFields
6811
6812	CbType1Lower  uint32 `protobuf:"varint,1,opt,name=cb_type1_lower,json=cbType1Lower,proto3" json:"cb_type1_lower,omitempty"`
6813	CbType1Upper  uint32 `protobuf:"varint,2,opt,name=cb_type1_upper,json=cbType1Upper,proto3" json:"cb_type1_upper,omitempty"`
6814	CbType2Lower  uint32 `protobuf:"varint,3,opt,name=cb_type2_lower,json=cbType2Lower,proto3" json:"cb_type2_lower,omitempty"`
6815	CbType2Upper  uint32 `protobuf:"varint,4,opt,name=cb_type2_upper,json=cbType2Upper,proto3" json:"cb_type2_upper,omitempty"`
6816	IcbType1Lower uint32 `protobuf:"varint,5,opt,name=icb_type1_lower,json=icbType1Lower,proto3" json:"icb_type1_lower,omitempty"`
6817	IcbType1Upper uint32 `protobuf:"varint,6,opt,name=icb_type1_upper,json=icbType1Upper,proto3" json:"icb_type1_upper,omitempty"`
6818	IcbType2Lower uint32 `protobuf:"varint,7,opt,name=icb_type2_lower,json=icbType2Lower,proto3" json:"icb_type2_lower,omitempty"`
6819	IcbType2Upper uint32 `protobuf:"varint,8,opt,name=icb_type2_upper,json=icbType2Upper,proto3" json:"icb_type2_upper,omitempty"`
6820}
6821
6822func (x *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) Reset() {
6823	*x = HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian{}
6824	if protoimpl.UnsafeEnabled {
6825		mi := &file_chromiumos_config_api_topology_proto_msgTypes[67]
6826		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6827		ms.StoreMessageInfo(mi)
6828	}
6829}
6830
6831func (x *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) String() string {
6832	return protoimpl.X.MessageStringOf(x)
6833}
6834
6835func (*HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) ProtoMessage() {}
6836
6837func (x *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) ProtoReflect() protoreflect.Message {
6838	mi := &file_chromiumos_config_api_topology_proto_msgTypes[67]
6839	if protoimpl.UnsafeEnabled && x != nil {
6840		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6841		if ms.LoadMessageInfo() == nil {
6842			ms.StoreMessageInfo(mi)
6843		}
6844		return ms
6845	}
6846	return mi.MessageOf(x)
6847}
6848
6849// Deprecated: Use HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian.ProtoReflect.Descriptor instead.
6850func (*HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) Descriptor() ([]byte, []int) {
6851	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 17, 0, 0}
6852}
6853
6854func (x *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) GetCbType1Lower() uint32 {
6855	if x != nil {
6856		return x.CbType1Lower
6857	}
6858	return 0
6859}
6860
6861func (x *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) GetCbType1Upper() uint32 {
6862	if x != nil {
6863		return x.CbType1Upper
6864	}
6865	return 0
6866}
6867
6868func (x *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) GetCbType2Lower() uint32 {
6869	if x != nil {
6870		return x.CbType2Lower
6871	}
6872	return 0
6873}
6874
6875func (x *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) GetCbType2Upper() uint32 {
6876	if x != nil {
6877		return x.CbType2Upper
6878	}
6879	return 0
6880}
6881
6882func (x *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) GetIcbType1Lower() uint32 {
6883	if x != nil {
6884		return x.IcbType1Lower
6885	}
6886	return 0
6887}
6888
6889func (x *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) GetIcbType1Upper() uint32 {
6890	if x != nil {
6891		return x.IcbType1Upper
6892	}
6893	return 0
6894}
6895
6896func (x *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) GetIcbType2Lower() uint32 {
6897	if x != nil {
6898		return x.IcbType2Lower
6899	}
6900	return 0
6901}
6902
6903func (x *HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian) GetIcbType2Upper() uint32 {
6904	if x != nil {
6905		return x.IcbType2Upper
6906	}
6907	return 0
6908}
6909
6910type HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone struct {
6911	state         protoimpl.MessageState
6912	sizeCache     protoimpl.SizeCache
6913	unknownFields protoimpl.UnknownFields
6914
6915	X1 uint32 `protobuf:"varint,1,opt,name=x1,proto3" json:"x1,omitempty"`
6916	Y1 uint32 `protobuf:"varint,2,opt,name=y1,proto3" json:"y1,omitempty"`
6917	X2 uint32 `protobuf:"varint,3,opt,name=x2,proto3" json:"x2,omitempty"`
6918	Y2 uint32 `protobuf:"varint,4,opt,name=y2,proto3" json:"y2,omitempty"`
6919}
6920
6921func (x *HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone) Reset() {
6922	*x = HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone{}
6923	if protoimpl.UnsafeEnabled {
6924		mi := &file_chromiumos_config_api_topology_proto_msgTypes[68]
6925		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6926		ms.StoreMessageInfo(mi)
6927	}
6928}
6929
6930func (x *HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone) String() string {
6931	return protoimpl.X.MessageStringOf(x)
6932}
6933
6934func (*HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone) ProtoMessage() {}
6935
6936func (x *HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone) ProtoReflect() protoreflect.Message {
6937	mi := &file_chromiumos_config_api_topology_proto_msgTypes[68]
6938	if protoimpl.UnsafeEnabled && x != nil {
6939		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
6940		if ms.LoadMessageInfo() == nil {
6941			ms.StoreMessageInfo(mi)
6942		}
6943		return ms
6944	}
6945	return mi.MessageOf(x)
6946}
6947
6948// Deprecated: Use HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone.ProtoReflect.Descriptor instead.
6949func (*HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone) Descriptor() ([]byte, []int) {
6950	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 17, 0, 1}
6951}
6952
6953func (x *HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone) GetX1() uint32 {
6954	if x != nil {
6955		return x.X1
6956	}
6957	return 0
6958}
6959
6960func (x *HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone) GetY1() uint32 {
6961	if x != nil {
6962		return x.Y1
6963	}
6964	return 0
6965}
6966
6967func (x *HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone) GetX2() uint32 {
6968	if x != nil {
6969		return x.X2
6970	}
6971	return 0
6972}
6973
6974func (x *HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone) GetY2() uint32 {
6975	if x != nil {
6976		return x.Y2
6977	}
6978	return 0
6979}
6980
6981type HardwareFeatures_Battery_Lifetime struct {
6982	state         protoimpl.MessageState
6983	sizeCache     protoimpl.SizeCache
6984	unknownFields protoimpl.UnknownFields
6985
6986	// Starting with a fully-charged battery, the amount of time a Chrome
6987	// device must remain operational in the Shipping state.
6988	ShippingMin *Duration `protobuf:"bytes,1,opt,name=shipping_min,json=shippingMin,proto3" json:"shipping_min,omitempty"`
6989	// Starting with a fully-charged battery, the amount of time a Chrome
6990	// device must remain operational in the Deep Sleep state.
6991	DeepSleepMin *Duration `protobuf:"bytes,2,opt,name=deep_sleep_min,json=deepSleepMin,proto3" json:"deep_sleep_min,omitempty"`
6992	// Starting with a fully-charged battery, the amount of time a Chrome
6993	// device must remain operational in the Suspend state.
6994	SuspendMin *Duration `protobuf:"bytes,3,opt,name=suspend_min,json=suspendMin,proto3" json:"suspend_min,omitempty"`
6995	// Starting with a fully-charged battery, the amount of time a Chrome
6996	// device must remain operational in the Lucid Sleep state.
6997	LucidSleepMin *Duration `protobuf:"bytes,4,opt,name=lucid_sleep_min,json=lucidSleepMin,proto3" json:"lucid_sleep_min,omitempty"`
6998	// Starting with a fully-charged battery, the amount of time a Chrome
6999	// device must remain operational in the Active state.
7000	ActiveMin *Duration `protobuf:"bytes,5,opt,name=active_min,json=activeMin,proto3" json:"active_min,omitempty"`
7001}
7002
7003func (x *HardwareFeatures_Battery_Lifetime) Reset() {
7004	*x = HardwareFeatures_Battery_Lifetime{}
7005	if protoimpl.UnsafeEnabled {
7006		mi := &file_chromiumos_config_api_topology_proto_msgTypes[70]
7007		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
7008		ms.StoreMessageInfo(mi)
7009	}
7010}
7011
7012func (x *HardwareFeatures_Battery_Lifetime) String() string {
7013	return protoimpl.X.MessageStringOf(x)
7014}
7015
7016func (*HardwareFeatures_Battery_Lifetime) ProtoMessage() {}
7017
7018func (x *HardwareFeatures_Battery_Lifetime) ProtoReflect() protoreflect.Message {
7019	mi := &file_chromiumos_config_api_topology_proto_msgTypes[70]
7020	if protoimpl.UnsafeEnabled && x != nil {
7021		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
7022		if ms.LoadMessageInfo() == nil {
7023			ms.StoreMessageInfo(mi)
7024		}
7025		return ms
7026	}
7027	return mi.MessageOf(x)
7028}
7029
7030// Deprecated: Use HardwareFeatures_Battery_Lifetime.ProtoReflect.Descriptor instead.
7031func (*HardwareFeatures_Battery_Lifetime) Descriptor() ([]byte, []int) {
7032	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 29, 0}
7033}
7034
7035func (x *HardwareFeatures_Battery_Lifetime) GetShippingMin() *Duration {
7036	if x != nil {
7037		return x.ShippingMin
7038	}
7039	return nil
7040}
7041
7042func (x *HardwareFeatures_Battery_Lifetime) GetDeepSleepMin() *Duration {
7043	if x != nil {
7044		return x.DeepSleepMin
7045	}
7046	return nil
7047}
7048
7049func (x *HardwareFeatures_Battery_Lifetime) GetSuspendMin() *Duration {
7050	if x != nil {
7051		return x.SuspendMin
7052	}
7053	return nil
7054}
7055
7056func (x *HardwareFeatures_Battery_Lifetime) GetLucidSleepMin() *Duration {
7057	if x != nil {
7058		return x.LucidSleepMin
7059	}
7060	return nil
7061}
7062
7063func (x *HardwareFeatures_Battery_Lifetime) GetActiveMin() *Duration {
7064	if x != nil {
7065		return x.ActiveMin
7066	}
7067	return nil
7068}
7069
7070type HardwareFeatures_Battery_Charging struct {
7071	state         protoimpl.MessageState
7072	sizeCache     protoimpl.SizeCache
7073	unknownFields protoimpl.UnknownFields
7074
7075	// Max time to charge from 0 to 100% in the Active state at average load.
7076	ActiveMax *Duration `protobuf:"bytes,1,opt,name=active_max,json=activeMax,proto3" json:"active_max,omitempty"`
7077	// Max time to charge from 0 to 100% in the Suspend state.
7078	SuspendMax *Duration `protobuf:"bytes,2,opt,name=suspend_max,json=suspendMax,proto3" json:"suspend_max,omitempty"`
7079	// Max time to charge from 0 to 100% in the Deep sleep state.
7080	DeepSleepMax *Duration `protobuf:"bytes,3,opt,name=deep_sleep_max,json=deepSleepMax,proto3" json:"deep_sleep_max,omitempty"`
7081}
7082
7083func (x *HardwareFeatures_Battery_Charging) Reset() {
7084	*x = HardwareFeatures_Battery_Charging{}
7085	if protoimpl.UnsafeEnabled {
7086		mi := &file_chromiumos_config_api_topology_proto_msgTypes[71]
7087		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
7088		ms.StoreMessageInfo(mi)
7089	}
7090}
7091
7092func (x *HardwareFeatures_Battery_Charging) String() string {
7093	return protoimpl.X.MessageStringOf(x)
7094}
7095
7096func (*HardwareFeatures_Battery_Charging) ProtoMessage() {}
7097
7098func (x *HardwareFeatures_Battery_Charging) ProtoReflect() protoreflect.Message {
7099	mi := &file_chromiumos_config_api_topology_proto_msgTypes[71]
7100	if protoimpl.UnsafeEnabled && x != nil {
7101		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
7102		if ms.LoadMessageInfo() == nil {
7103			ms.StoreMessageInfo(mi)
7104		}
7105		return ms
7106	}
7107	return mi.MessageOf(x)
7108}
7109
7110// Deprecated: Use HardwareFeatures_Battery_Charging.ProtoReflect.Descriptor instead.
7111func (*HardwareFeatures_Battery_Charging) Descriptor() ([]byte, []int) {
7112	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 29, 1}
7113}
7114
7115func (x *HardwareFeatures_Battery_Charging) GetActiveMax() *Duration {
7116	if x != nil {
7117		return x.ActiveMax
7118	}
7119	return nil
7120}
7121
7122func (x *HardwareFeatures_Battery_Charging) GetSuspendMax() *Duration {
7123	if x != nil {
7124		return x.SuspendMax
7125	}
7126	return nil
7127}
7128
7129func (x *HardwareFeatures_Battery_Charging) GetDeepSleepMax() *Duration {
7130	if x != nil {
7131		return x.DeepSleepMax
7132	}
7133	return nil
7134}
7135
7136// Details about cpu vendor info.
7137type HardwareFeatures_CpuInfo_VendorInfo struct {
7138	state         protoimpl.MessageState
7139	sizeCache     protoimpl.SizeCache
7140	unknownFields protoimpl.UnknownFields
7141
7142	CpuFamilyNum int64 `protobuf:"varint,1,opt,name=cpu_family_num,json=cpuFamilyNum,proto3" json:"cpu_family_num,omitempty"`
7143	CpuModelNum  int64 `protobuf:"varint,2,opt,name=cpu_model_num,json=cpuModelNum,proto3" json:"cpu_model_num,omitempty"`
7144}
7145
7146func (x *HardwareFeatures_CpuInfo_VendorInfo) Reset() {
7147	*x = HardwareFeatures_CpuInfo_VendorInfo{}
7148	if protoimpl.UnsafeEnabled {
7149		mi := &file_chromiumos_config_api_topology_proto_msgTypes[72]
7150		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
7151		ms.StoreMessageInfo(mi)
7152	}
7153}
7154
7155func (x *HardwareFeatures_CpuInfo_VendorInfo) String() string {
7156	return protoimpl.X.MessageStringOf(x)
7157}
7158
7159func (*HardwareFeatures_CpuInfo_VendorInfo) ProtoMessage() {}
7160
7161func (x *HardwareFeatures_CpuInfo_VendorInfo) ProtoReflect() protoreflect.Message {
7162	mi := &file_chromiumos_config_api_topology_proto_msgTypes[72]
7163	if protoimpl.UnsafeEnabled && x != nil {
7164		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
7165		if ms.LoadMessageInfo() == nil {
7166			ms.StoreMessageInfo(mi)
7167		}
7168		return ms
7169	}
7170	return mi.MessageOf(x)
7171}
7172
7173// Deprecated: Use HardwareFeatures_CpuInfo_VendorInfo.ProtoReflect.Descriptor instead.
7174func (*HardwareFeatures_CpuInfo_VendorInfo) Descriptor() ([]byte, []int) {
7175	return file_chromiumos_config_api_topology_proto_rawDescGZIP(), []int{2, 52, 0}
7176}
7177
7178func (x *HardwareFeatures_CpuInfo_VendorInfo) GetCpuFamilyNum() int64 {
7179	if x != nil {
7180		return x.CpuFamilyNum
7181	}
7182	return 0
7183}
7184
7185func (x *HardwareFeatures_CpuInfo_VendorInfo) GetCpuModelNum() int64 {
7186	if x != nil {
7187		return x.CpuModelNum
7188	}
7189	return 0
7190}
7191
7192var File_chromiumos_config_api_topology_proto protoreflect.FileDescriptor
7193
7194var file_chromiumos_config_api_topology_proto_rawDesc = []byte{
7195	0x0a, 0x24, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x6e,
7196	0x66, 0x69, 0x67, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x79,
7197	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x15, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
7198	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x1a, 0x25, 0x63,
7199	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
7200	0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x2e, 0x70,
7201	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2c, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73,
7202	0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x70, 0x72, 0x6f, 0x78,
7203	0x69, 0x6d, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f,
7204	0x74, 0x6f, 0x1a, 0x2b, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2f, 0x63,
7205	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
7206	0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
7207	0x27, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x6e, 0x66,
7208	0x69, 0x67, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x77, 0x69, 0x66, 0x69, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
7209	0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
7210	0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65,
7211	0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa7, 0x07, 0x0a, 0x08, 0x54, 0x6f, 0x70,
7212	0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
7213	0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x38, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20,
7214	0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73,
7215	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54, 0x6f, 0x70, 0x6f,
7216	0x6c, 0x6f, 0x67, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12,
7217	0x52, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03,
7218	0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
7219	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x54, 0x6f, 0x70,
7220	0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
7221	0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
7222	0x69, 0x6f, 0x6e, 0x12, 0x52, 0x0a, 0x10, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x5f,
7223	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e,
7224	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
7225	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
7226	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x0f, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
7227	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x1a, 0x3e, 0x0a, 0x10, 0x44, 0x65, 0x73, 0x63, 0x72,
7228	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
7229	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a,
7230	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61,
7231	0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xe8, 0x04, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65,
7232	0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e,
7233	0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x43, 0x52, 0x45, 0x45, 0x4e, 0x10, 0x01, 0x12, 0x0f,
7234	0x0a, 0x0b, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x46, 0x41, 0x43, 0x54, 0x4f, 0x52, 0x10, 0x02, 0x12,
7235	0x09, 0x0a, 0x05, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54,
7236	0x59, 0x4c, 0x55, 0x53, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41,
7237	0x52, 0x44, 0x10, 0x05, 0x12, 0x0b, 0x0a, 0x07, 0x54, 0x48, 0x45, 0x52, 0x4d, 0x41, 0x4c, 0x10,
7238	0x06, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x41, 0x4d, 0x45, 0x52, 0x41, 0x10, 0x07, 0x12, 0x28, 0x0a,
7239	0x24, 0x41, 0x43, 0x43, 0x45, 0x4c, 0x45, 0x52, 0x4f, 0x4d, 0x45, 0x54, 0x45, 0x52, 0x5f, 0x47,
7240	0x59, 0x52, 0x4f, 0x53, 0x43, 0x4f, 0x50, 0x45, 0x5f, 0x4d, 0x41, 0x47, 0x4e, 0x45, 0x54, 0x4f,
7241	0x4d, 0x45, 0x54, 0x45, 0x52, 0x10, 0x08, 0x12, 0x0f, 0x0a, 0x0b, 0x46, 0x49, 0x4e, 0x47, 0x45,
7242	0x52, 0x50, 0x52, 0x49, 0x4e, 0x54, 0x10, 0x09, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x52, 0x4f, 0x58,
7243	0x49, 0x4d, 0x49, 0x54, 0x59, 0x5f, 0x53, 0x45, 0x4e, 0x53, 0x4f, 0x52, 0x10, 0x0a, 0x12, 0x12,
7244	0x0a, 0x0e, 0x44, 0x41, 0x55, 0x47, 0x48, 0x54, 0x45, 0x52, 0x5f, 0x42, 0x4f, 0x41, 0x52, 0x44,
7245	0x10, 0x0b, 0x12, 0x18, 0x0a, 0x14, 0x4e, 0x4f, 0x4e, 0x5f, 0x56, 0x4f, 0x4c, 0x41, 0x54, 0x49,
7246	0x4c, 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x41, 0x47, 0x45, 0x10, 0x0c, 0x12, 0x07, 0x0a, 0x03,
7247	0x52, 0x41, 0x4d, 0x10, 0x0d, 0x12, 0x08, 0x0a, 0x04, 0x57, 0x49, 0x46, 0x49, 0x10, 0x0e, 0x12,
7248	0x12, 0x0a, 0x0e, 0x43, 0x45, 0x4c, 0x4c, 0x55, 0x4c, 0x41, 0x52, 0x5f, 0x42, 0x4f, 0x41, 0x52,
7249	0x44, 0x10, 0x0f, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x44, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x45, 0x52,
7250	0x10, 0x10, 0x12, 0x13, 0x0a, 0x0f, 0x4d, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x42, 0x4f, 0x41, 0x52,
7251	0x44, 0x5f, 0x55, 0x53, 0x42, 0x10, 0x11, 0x12, 0x0d, 0x0a, 0x09, 0x42, 0x4c, 0x55, 0x45, 0x54,
7252	0x4f, 0x4f, 0x54, 0x48, 0x10, 0x12, 0x12, 0x0e, 0x0a, 0x0a, 0x42, 0x41, 0x52, 0x52, 0x45, 0x4c,
7253	0x4a, 0x41, 0x43, 0x4b, 0x10, 0x13, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f,
7254	0x42, 0x55, 0x54, 0x54, 0x4f, 0x4e, 0x10, 0x14, 0x12, 0x11, 0x0a, 0x0d, 0x56, 0x4f, 0x4c, 0x55,
7255	0x4d, 0x45, 0x5f, 0x42, 0x55, 0x54, 0x54, 0x4f, 0x4e, 0x10, 0x15, 0x12, 0x06, 0x0a, 0x02, 0x45,
7256	0x43, 0x10, 0x16, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x4f, 0x55, 0x43, 0x48, 0x10, 0x17, 0x12, 0x07,
7257	0x0a, 0x03, 0x54, 0x50, 0x4d, 0x10, 0x18, 0x12, 0x1a, 0x0a, 0x16, 0x4d, 0x49, 0x43, 0x52, 0x4f,
7258	0x50, 0x48, 0x4f, 0x4e, 0x45, 0x5f, 0x4d, 0x55, 0x54, 0x45, 0x5f, 0x53, 0x57, 0x49, 0x54, 0x43,
7259	0x48, 0x10, 0x19, 0x12, 0x0b, 0x0a, 0x07, 0x42, 0x41, 0x54, 0x54, 0x45, 0x52, 0x59, 0x10, 0x1a,
7260	0x12, 0x08, 0x0a, 0x04, 0x48, 0x44, 0x4d, 0x49, 0x10, 0x1b, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x4f,
7261	0x43, 0x10, 0x1c, 0x12, 0x07, 0x0a, 0x03, 0x48, 0x50, 0x53, 0x10, 0x1d, 0x12, 0x10, 0x0a, 0x0c,
7262	0x44, 0x50, 0x5f, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x52, 0x54, 0x45, 0x52, 0x10, 0x1e, 0x12, 0x07,
7263	0x0a, 0x03, 0x50, 0x4f, 0x45, 0x10, 0x1f, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x4f, 0x57, 0x45, 0x52,
7264	0x5f, 0x53, 0x55, 0x50, 0x50, 0x4c, 0x59, 0x10, 0x20, 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x45, 0x43,
7265	0x4f, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x49, 0x4e, 0x50, 0x55, 0x54, 0x10, 0x21, 0x12, 0x12, 0x0a,
7266	0x0e, 0x50, 0x52, 0x49, 0x56, 0x41, 0x43, 0x59, 0x5f, 0x53, 0x43, 0x52, 0x45, 0x45, 0x4e, 0x10,
7267	0x22, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x47, 0x50, 0x55, 0x10, 0x23, 0x12, 0x07, 0x0a, 0x03, 0x55,
7268	0x57, 0x42, 0x10, 0x24, 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x45, 0x54, 0x41, 0x43, 0x48, 0x41, 0x42,
7269	0x4c, 0x45, 0x5f, 0x42, 0x41, 0x53, 0x45, 0x10, 0x25, 0x12, 0x07, 0x0a, 0x03, 0x46, 0x41, 0x4e,
7270	0x10, 0x26, 0x22, 0xb5, 0x01, 0x0a, 0x08, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
7271	0x38, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e,
7272	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
7273	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54,
7274	0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
7275	0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22,
7276	0x59, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f,
7277	0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x49, 0x4c,
7278	0x4c, 0x49, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x53, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x53,
7279	0x45, 0x43, 0x4f, 0x4e, 0x44, 0x53, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x49, 0x4e, 0x55,
7280	0x54, 0x45, 0x53, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x48, 0x4f, 0x55, 0x52, 0x53, 0x10, 0x04,
7281	0x12, 0x08, 0x0a, 0x04, 0x44, 0x41, 0x59, 0x53, 0x10, 0x05, 0x22, 0xb6, 0xbe, 0x01, 0x0a, 0x10,
7282	0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
7283	0x12, 0x41, 0x0a, 0x05, 0x75, 0x73, 0x62, 0x5f, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
7284	0x2c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
7285	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
7286	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x55, 0x73, 0x62, 0x43, 0x52, 0x04, 0x75,
7287	0x73, 0x62, 0x43, 0x12, 0x41, 0x0a, 0x05, 0x75, 0x73, 0x62, 0x5f, 0x61, 0x18, 0x02, 0x20, 0x01,
7288	0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
7289	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
7290	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x55, 0x73, 0x62, 0x41,
7291	0x52, 0x04, 0x75, 0x73, 0x62, 0x41, 0x12, 0x4c, 0x0a, 0x08, 0x63, 0x65, 0x6c, 0x6c, 0x75, 0x6c,
7292	0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
7293	0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69,
7294	0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
7295	0x73, 0x2e, 0x43, 0x65, 0x6c, 0x6c, 0x75, 0x6c, 0x61, 0x72, 0x52, 0x08, 0x63, 0x65, 0x6c, 0x6c,
7296	0x75, 0x6c, 0x61, 0x72, 0x12, 0x40, 0x0a, 0x04, 0x68, 0x64, 0x6d, 0x69, 0x18, 0x04, 0x20, 0x01,
7297	0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
7298	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
7299	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x48, 0x64, 0x6d, 0x69,
7300	0x52, 0x04, 0x68, 0x64, 0x6d, 0x69, 0x12, 0x5a, 0x0a, 0x09, 0x66, 0x77, 0x5f, 0x63, 0x6f, 0x6e,
7301	0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x63, 0x68, 0x72, 0x6f,
7302	0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70,
7303	0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
7304	0x65, 0x73, 0x2e, 0x46, 0x69, 0x72, 0x6d, 0x77, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69,
7305	0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x66, 0x77, 0x43, 0x6f, 0x6e, 0x66,
7306	0x69, 0x67, 0x12, 0x43, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28,
7307	0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63,
7308	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61,
7309	0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f,
7310	0x52, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x46, 0x0a, 0x06, 0x63, 0x61, 0x6d, 0x65, 0x72,
7311	0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
7312	0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e,
7313	0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
7314	0x2e, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x52, 0x06, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x12,
7315	0x5b, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72,
7316	0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
7317	0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48,
7318	0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e,
7319	0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x52, 0x0d, 0x61,
7320	0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x4f, 0x0a, 0x09,
7321	0x67, 0x79, 0x72, 0x6f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32,
7322	0x31, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
7323	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
7324	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x47, 0x79, 0x72, 0x6f, 0x73, 0x63, 0x6f,
7325	0x70, 0x65, 0x52, 0x09, 0x67, 0x79, 0x72, 0x6f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x58, 0x0a,
7326	0x0c, 0x6d, 0x61, 0x67, 0x6e, 0x65, 0x74, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x0a, 0x20,
7327	0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73,
7328	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64,
7329	0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x4d, 0x61, 0x67,
7330	0x6e, 0x65, 0x74, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x52, 0x0c, 0x6d, 0x61, 0x67, 0x6e, 0x65,
7331	0x74, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x56, 0x0a, 0x0c, 0x6c, 0x69, 0x67, 0x68, 0x74,
7332	0x5f, 0x73, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e,
7333	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
7334	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
7335	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x53, 0x65, 0x6e, 0x73,
7336	0x6f, 0x72, 0x52, 0x0b, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x53, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x12,
7337	0x46, 0x0a, 0x06, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32,
7338	0x2e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
7339	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
7340	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x52,
7341	0x06, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x12, 0x53, 0x0a, 0x0b, 0x66, 0x6f, 0x72, 0x6d, 0x5f,
7342	0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x63,
7343	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
7344	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61,
7345	0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72,
7346	0x52, 0x0a, 0x66, 0x6f, 0x72, 0x6d, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x46, 0x0a, 0x06,
7347	0x73, 0x74, 0x79, 0x6c, 0x75, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63,
7348	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
7349	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61,
7350	0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74,
7351	0x79, 0x6c, 0x75, 0x73, 0x12, 0x4c, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64,
7352	0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
7353	0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48,
7354	0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e,
7355	0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61,
7356	0x72, 0x64, 0x12, 0x46, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x18, 0x10, 0x20, 0x01,
7357	0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
7358	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
7359	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x4d, 0x65, 0x6d, 0x6f,
7360	0x72, 0x79, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x12, 0x55, 0x0a, 0x0b, 0x66, 0x69,
7361	0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32,
7362	0x33, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
7363	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
7364	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70,
7365	0x72, 0x69, 0x6e, 0x74, 0x52, 0x0b, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e,
7366	0x74, 0x12, 0x49, 0x0a, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x18, 0x12, 0x20, 0x01,
7367	0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
7368	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
7369	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x53, 0x74, 0x6f, 0x72,
7370	0x61, 0x67, 0x65, 0x52, 0x07, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x4f, 0x0a, 0x09,
7371	0x62, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32,
7372	0x31, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
7373	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
7374	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f,
7375	0x74, 0x68, 0x52, 0x09, 0x62, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x12, 0x52, 0x0a,
7376	0x0a, 0x62, 0x61, 0x72, 0x72, 0x65, 0x6c, 0x6a, 0x61, 0x63, 0x6b, 0x18, 0x14, 0x20, 0x01, 0x28,
7377	0x0b, 0x32, 0x32, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63,
7378	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61,
7379	0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x42, 0x61, 0x72, 0x72, 0x65,
7380	0x6c, 0x4a, 0x61, 0x63, 0x6b, 0x52, 0x0a, 0x62, 0x61, 0x72, 0x72, 0x65, 0x6c, 0x6a, 0x61, 0x63,
7381	0x6b, 0x12, 0x40, 0x0a, 0x04, 0x77, 0x69, 0x66, 0x69, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32,
7382	0x2c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
7383	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
7384	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x57, 0x69, 0x66, 0x69, 0x52, 0x04, 0x77,
7385	0x69, 0x66, 0x69, 0x12, 0x51, 0x0a, 0x0c, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x62, 0x75, 0x74,
7386	0x74, 0x6f, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x63, 0x68, 0x72, 0x6f,
7387	0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70,
7388	0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
7389	0x65, 0x73, 0x2e, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x52, 0x0b, 0x70, 0x6f, 0x77, 0x65, 0x72,
7390	0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x53, 0x0a, 0x0d, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
7391	0x5f, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e,
7392	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
7393	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
7394	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x52, 0x0c, 0x76,
7395	0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x6b, 0x0a, 0x13, 0x65,
7396	0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c,
7397	0x65, 0x72, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
7398	0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69,
7399	0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
7400	0x73, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
7401	0x6c, 0x6c, 0x65, 0x72, 0x52, 0x12, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x43, 0x6f,
7402	0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x75, 0x0a, 0x17, 0x74, 0x72, 0x75, 0x73,
7403	0x74, 0x65, 0x64, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x6d, 0x6f, 0x64,
7404	0x75, 0x6c, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x63, 0x68, 0x72, 0x6f,
7405	0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70,
7406	0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
7407	0x65, 0x73, 0x2e, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f,
7408	0x72, 0x6d, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x52, 0x15, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65,
7409	0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12,
7410	0x52, 0x0a, 0x0a, 0x68, 0x6f, 0x74, 0x77, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x1a, 0x20,
7411	0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73,
7412	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64,
7413	0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x48, 0x6f, 0x74,
7414	0x77, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x0a, 0x68, 0x6f, 0x74, 0x77, 0x6f, 0x72, 0x64,
7415	0x69, 0x6e, 0x67, 0x12, 0x49, 0x0a, 0x07, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x18, 0x1b,
7416	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
7417	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72,
7418	0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x44, 0x69,
7419	0x73, 0x70, 0x6c, 0x61, 0x79, 0x52, 0x07, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x4c,
7420	0x0a, 0x08, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x70, 0x61, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b,
7421	0x32, 0x30, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f,
7422	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72,
7423	0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x54, 0x6f, 0x75, 0x63, 0x68, 0x70,
7424	0x61, 0x64, 0x52, 0x08, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x70, 0x61, 0x64, 0x12, 0x72, 0x0a, 0x16,
7425	0x6d, 0x69, 0x63, 0x72, 0x6f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6d, 0x75, 0x74, 0x65, 0x5f,
7426	0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x63,
7427	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
7428	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61,
7429	0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x70, 0x68, 0x6f, 0x6e, 0x65,
7430	0x4d, 0x75, 0x74, 0x65, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x52, 0x14, 0x6d, 0x69, 0x63, 0x72,
7431	0x6f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x4d, 0x75, 0x74, 0x65, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68,
7432	0x12, 0x49, 0x0a, 0x07, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x18, 0x1e, 0x20, 0x01, 0x28,
7433	0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63,
7434	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61,
7435	0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x65,
7436	0x72, 0x79, 0x52, 0x07, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x12, 0x5c, 0x0a, 0x0e, 0x70,
7437	0x72, 0x69, 0x76, 0x61, 0x63, 0x79, 0x5f, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x18, 0x1f, 0x20,
7438	0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73,
7439	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64,
7440	0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x69,
7441	0x76, 0x61, 0x63, 0x79, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x52, 0x0d, 0x70, 0x72, 0x69, 0x76,
7442	0x61, 0x63, 0x79, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x12, 0x3d, 0x0a, 0x03, 0x73, 0x6f, 0x63,
7443	0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
7444	0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48,
7445	0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e,
7446	0x53, 0x6f, 0x63, 0x52, 0x03, 0x73, 0x6f, 0x63, 0x12, 0x5f, 0x0a, 0x0c, 0x64, 0x70, 0x5f, 0x63,
7447	0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x65, 0x72, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c,
7448	0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
7449	0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46,
7450	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x50,
7451	0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x65, 0x72, 0x52, 0x0b, 0x64, 0x70,
7452	0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x65, 0x72, 0x12, 0x3d, 0x0a, 0x03, 0x68, 0x70, 0x73,
7453	0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
7454	0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48,
7455	0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e,
7456	0x48, 0x70, 0x73, 0x52, 0x03, 0x68, 0x70, 0x73, 0x12, 0x3d, 0x0a, 0x03, 0x70, 0x6f, 0x65, 0x18,
7457	0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
7458	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61,
7459	0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50,
7460	0x6f, 0x45, 0x52, 0x03, 0x70, 0x6f, 0x65, 0x12, 0x56, 0x0a, 0x0c, 0x70, 0x6f, 0x77, 0x65, 0x72,
7461	0x5f, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x79, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e,
7462	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
7463	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
7464	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x75, 0x70, 0x70,
7465	0x6c, 0x79, 0x52, 0x0b, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x75, 0x70, 0x70, 0x6c, 0x79, 0x12,
7466	0x4f, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x69, 0x74, 0x79, 0x18, 0x25, 0x20, 0x01,
7467	0x28, 0x0b, 0x32, 0x31, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
7468	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
7469	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x78,
7470	0x69, 0x6d, 0x69, 0x74, 0x79, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x69, 0x74, 0x79,
7471	0x12, 0x43, 0x0a, 0x05, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32,
7472	0x2d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
7473	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
7474	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x54, 0x6f, 0x75, 0x63, 0x68, 0x52, 0x05,
7475	0x74, 0x6f, 0x75, 0x63, 0x68, 0x12, 0x49, 0x0a, 0x07, 0x74, 0x68, 0x65, 0x72, 0x6d, 0x61, 0x6c,
7476	0x18, 0x27, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
7477	0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48,
7478	0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e,
7479	0x54, 0x68, 0x65, 0x72, 0x6d, 0x61, 0x6c, 0x52, 0x07, 0x74, 0x68, 0x65, 0x72, 0x6d, 0x61, 0x6c,
7480	0x12, 0x6c, 0x0a, 0x14, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x62,
7481	0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a,
7482	0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
7483	0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46,
7484	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x50,
7485	0x72, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x12, 0x72, 0x75, 0x6e, 0x74,
7486	0x69, 0x6d, 0x65, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4d,
7487	0x0a, 0x0b, 0x64, 0x67, 0x70, 0x75, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x29, 0x20,
7488	0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73,
7489	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64,
7490	0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x44, 0x67, 0x70,
7491	0x75, 0x52, 0x0a, 0x64, 0x67, 0x70, 0x75, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4a, 0x0a,
7492	0x0a, 0x75, 0x77, 0x62, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x2a, 0x20, 0x01, 0x28,
7493	0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63,
7494	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61,
7495	0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x55, 0x77, 0x62, 0x52, 0x09,
7496	0x75, 0x77, 0x62, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x69, 0x0a, 0x15, 0x68, 0x61, 0x72,
7497	0x64, 0x77, 0x61, 0x72, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
7498	0x69, 0x67, 0x18, 0x2b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
7499	0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69,
7500	0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
7501	0x73, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x52,
7502	0x13, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x43, 0x6f,
7503	0x6e, 0x66, 0x69, 0x67, 0x12, 0x5f, 0x0a, 0x0f, 0x64, 0x65, 0x74, 0x61, 0x63, 0x68, 0x61, 0x62,
7504	0x6c, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e,
7505	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
7506	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
7507	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x44, 0x65, 0x74, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c,
7508	0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x0e, 0x64, 0x65, 0x74, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c,
7509	0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x07, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64,
7510	0x18, 0x2d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
7511	0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48,
7512	0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e,
7513	0x53, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x52, 0x07, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64,
7514	0x12, 0x3d, 0x0a, 0x03, 0x76, 0x72, 0x72, 0x18, 0x2e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
7515	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
7516	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
7517	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x56, 0x72, 0x72, 0x52, 0x03, 0x76, 0x72, 0x72, 0x12,
7518	0x4d, 0x0a, 0x09, 0x73, 0x64, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x2f, 0x20, 0x01,
7519	0x28, 0x0b, 0x32, 0x30, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
7520	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
7521	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x53, 0x64, 0x52, 0x65,
7522	0x61, 0x64, 0x65, 0x72, 0x52, 0x08, 0x73, 0x64, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x23,
7523	0x0a, 0x0d, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18,
7524	0x30, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x4c, 0x65,
7525	0x76, 0x65, 0x6c, 0x12, 0x4a, 0x0a, 0x08, 0x6f, 0x65, 0x6d, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18,
7526	0x31, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
7527	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61,
7528	0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x4f,
7529	0x45, 0x4d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x6f, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12,
7530	0x3d, 0x0a, 0x03, 0x66, 0x61, 0x6e, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63,
7531	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
7532	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61,
7533	0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x46, 0x61, 0x6e, 0x52, 0x03, 0x66, 0x61, 0x6e, 0x12, 0x7b,
7534	0x0a, 0x19, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x72, 0x75, 0x70, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74,
7535	0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x33, 0x20, 0x01, 0x28,
7536	0x0b, 0x32, 0x3f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63,
7537	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61,
7538	0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72,
7539	0x72, 0x75, 0x70, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x49, 0x6e,
7540	0x66, 0x6f, 0x52, 0x17, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x72, 0x75, 0x70, 0x74, 0x43, 0x6f, 0x6e,
7541	0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x59, 0x0a, 0x0d, 0x74,
7542	0x69, 0x6c, 0x65, 0x64, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x18, 0x34, 0x20, 0x01,
7543	0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
7544	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
7545	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x54, 0x69, 0x6c, 0x65,
7546	0x64, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x52, 0x0c, 0x74, 0x69, 0x6c, 0x65, 0x64, 0x44,
7547	0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x4a, 0x0a, 0x08, 0x63, 0x70, 0x75, 0x5f, 0x69, 0x6e,
7548	0x66, 0x6f, 0x18, 0x35, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
7549	0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69,
7550	0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
7551	0x73, 0x2e, 0x43, 0x70, 0x75, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x63, 0x70, 0x75, 0x49, 0x6e,
7552	0x66, 0x6f, 0x12, 0x4c, 0x0a, 0x08, 0x70, 0x65, 0x6e, 0x64, 0x72, 0x69, 0x76, 0x65, 0x18, 0x36,
7553	0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
7554	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72,
7555	0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x65,
7556	0x6e, 0x64, 0x72, 0x69, 0x76, 0x65, 0x52, 0x08, 0x70, 0x65, 0x6e, 0x64, 0x72, 0x69, 0x76, 0x65,
7557	0x1a, 0x1d, 0x0a, 0x05, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
7558	0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a,
7559	0x8d, 0x03, 0x0a, 0x04, 0x55, 0x73, 0x62, 0x43, 0x12, 0x43, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e,
7560	0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
7561	0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e,
7562	0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
7563	0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x47, 0x0a,
7564	0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x63,
7565	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
7566	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61,
7567	0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x55, 0x73, 0x62, 0x43, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x52,
7568	0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x62, 0x34, 0x18, 0x03,
7569	0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x75, 0x73, 0x62, 0x34, 0x12, 0x43, 0x0a, 0x1e, 0x64, 0x65,
7570	0x66, 0x65, 0x72, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x64, 0x69, 0x73,
7571	0x70, 0x6c, 0x61, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01,
7572	0x28, 0x0d, 0x52, 0x1b, 0x64, 0x65, 0x66, 0x65, 0x72, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
7573	0x6c, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x1a,
7574	0x9d, 0x01, 0x0a, 0x04, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x50, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69,
7575	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x63, 0x68, 0x72,
7576	0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61,
7577	0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75,
7578	0x72, 0x65, 0x73, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e,
7579	0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x43, 0x0a, 0x0e, 0x69, 0x6e,
7580	0x64, 0x65, 0x78, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01,
7581	0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
7582	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65,
7583	0x52, 0x0d, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x1a,
7584	0x4b, 0x0a, 0x04, 0x55, 0x73, 0x62, 0x41, 0x12, 0x43, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74,
7585	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
7586	0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48,
7587	0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e,
7588	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0xa2, 0x0c, 0x0a,
7589	0x08, 0x43, 0x65, 0x6c, 0x6c, 0x75, 0x6c, 0x61, 0x72, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72, 0x65,
7590	0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72,
7591	0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61,
7592	0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75,
7593	0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x72, 0x65,
7594	0x73, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x02, 0x20,
7595	0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x51, 0x0a, 0x04, 0x74, 0x79,
7596	0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
7597	0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69,
7598	0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
7599	0x73, 0x2e, 0x43, 0x65, 0x6c, 0x6c, 0x75, 0x6c, 0x61, 0x72, 0x2e, 0x43, 0x65, 0x6c, 0x6c, 0x75,
7600	0x6c, 0x61, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x32, 0x0a,
7601	0x13, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x5f, 0x61, 0x70, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75,
7602	0x69, 0x72, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x11,
7603	0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x41, 0x70, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65,
7604	0x64, 0x12, 0x91, 0x01, 0x0a, 0x1e, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, 0x70, 0x6f,
7605	0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f,
7606	0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4c, 0x2e, 0x63, 0x68, 0x72,
7607	0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61,
7608	0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75,
7609	0x72, 0x65, 0x73, 0x2e, 0x43, 0x65, 0x6c, 0x6c, 0x75, 0x6c, 0x61, 0x72, 0x2e, 0x44, 0x79, 0x6e,
7610	0x61, 0x6d, 0x69, 0x63, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69,
7611	0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x1b, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69,
7612	0x63, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43,
7613	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2d, 0x0a, 0x13, 0x77, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x74,
7614	0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x5f, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x01,
7615	0x28, 0x0d, 0x52, 0x10, 0x77, 0x65, 0x64, 0x67, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
7616	0x49, 0x6e, 0x4d, 0x73, 0x12, 0x59, 0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x5f, 0x74, 0x79,
7617	0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
7618	0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69,
7619	0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
7620	0x73, 0x2e, 0x43, 0x65, 0x6c, 0x6c, 0x75, 0x6c, 0x61, 0x72, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6d,
7621	0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x1a,
7622	0xf9, 0x05, 0x0a, 0x1b, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x50, 0x6f, 0x77, 0x65, 0x72,
7623	0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
7624	0x14, 0x0a, 0x04, 0x67, 0x70, 0x69, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52,
7625	0x04, 0x67, 0x70, 0x69, 0x6f, 0x12, 0x25, 0x0a, 0x0d, 0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x5f, 0x6d,
7626	0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0c,
7627	0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b,
7628	0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
7629	0x08, 0x52, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x3e, 0x0a,
7630	0x1c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x5f, 0x70, 0x6f,
7631	0x77, 0x65, 0x72, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x73, 0x61, 0x72, 0x18, 0x04, 0x20,
7632	0x01, 0x28, 0x08, 0x52, 0x18, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69,
7633	0x50, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x53, 0x61, 0x72, 0x12, 0x4a, 0x0a,
7634	0x22, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f,
7635	0x70, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f,
7636	0x66, 0x61, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1e, 0x65, 0x6e, 0x61, 0x62, 0x6c,
7637	0x65, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x69, 0x74,
7638	0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x46, 0x61, 0x72, 0x12, 0x93, 0x01, 0x0a, 0x13, 0x70, 0x6f,
7639	0x77, 0x65, 0x72, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e,
7640	0x67, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x63, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
7641	0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e,
7642	0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
7643	0x2e, 0x43, 0x65, 0x6c, 0x6c, 0x75, 0x6c, 0x61, 0x72, 0x2e, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69,
7644	0x63, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43,
7645	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c,
7646	0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x11, 0x70, 0x6f,
7647	0x77, 0x65, 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12,
7648	0xa5, 0x01, 0x0a, 0x19, 0x72, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x64,
7649	0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x07, 0x20,
7650	0x03, 0x28, 0x0b, 0x32, 0x69, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73,
7651	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64,
7652	0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x43, 0x65, 0x6c,
7653	0x6c, 0x75, 0x6c, 0x61, 0x72, 0x2e, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x50, 0x6f, 0x77,
7654	0x65, 0x72, 0x52, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
7655	0x67, 0x2e, 0x52, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x44, 0x6f, 0x6d, 0x61,
7656	0x69, 0x6e, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x17,
7657	0x72, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
7658	0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x1a, 0x44, 0x0a, 0x16, 0x50, 0x6f, 0x77, 0x65, 0x72,
7659	0x4c, 0x65, 0x76, 0x65, 0x6c, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72,
7660	0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
7661	0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
7662	0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x4a, 0x0a,
7663	0x1c, 0x52, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x44, 0x6f, 0x6d, 0x61, 0x69,
7664	0x6e, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
7665	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
7666	0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05,
7667	0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x20, 0x0a, 0x1e, 0x64, 0x79, 0x6e,
7668	0x61, 0x6d, 0x69, 0x63, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63,
7669	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x47, 0x0a, 0x0c, 0x43,
7670	0x65, 0x6c, 0x6c, 0x75, 0x6c, 0x61, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x43,
7671	0x45, 0x4c, 0x4c, 0x55, 0x4c, 0x41, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10,
7672	0x00, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x45, 0x4c, 0x4c, 0x55, 0x4c, 0x41, 0x52, 0x5f, 0x4c, 0x54,
7673	0x45, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x45, 0x4c, 0x4c, 0x55, 0x4c, 0x41, 0x52, 0x5f,
7674	0x35, 0x47, 0x10, 0x02, 0x22, 0xca, 0x01, 0x0a, 0x09, 0x4d, 0x6f, 0x64, 0x65, 0x6d, 0x54, 0x79,
7675	0x70, 0x65, 0x12, 0x11, 0x0a, 0x0d, 0x4d, 0x4f, 0x44, 0x45, 0x4d, 0x5f, 0x55, 0x4e, 0x4b, 0x4e,
7676	0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, 0x4f, 0x44, 0x45, 0x4d, 0x5f, 0x4c,
7677	0x38, 0x35, 0x30, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x4f, 0x44, 0x45, 0x4d, 0x5f, 0x4e,
7678	0x4c, 0x36, 0x36, 0x38, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x4f, 0x44, 0x45, 0x4d, 0x5f,
7679	0x46, 0x4d, 0x31, 0x30, 0x31, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x4f, 0x44, 0x45, 0x4d,
7680	0x5f, 0x46, 0x4d, 0x33, 0x35, 0x30, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x4f, 0x44, 0x45,
7681	0x4d, 0x5f, 0x53, 0x43, 0x37, 0x31, 0x38, 0x30, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x4f,
7682	0x44, 0x45, 0x4d, 0x5f, 0x53, 0x43, 0x37, 0x32, 0x38, 0x30, 0x10, 0x06, 0x12, 0x0f, 0x0a, 0x0b,
7683	0x4d, 0x4f, 0x44, 0x45, 0x4d, 0x5f, 0x45, 0x4d, 0x30, 0x36, 0x30, 0x10, 0x07, 0x12, 0x0f, 0x0a,
7684	0x0b, 0x4d, 0x4f, 0x44, 0x45, 0x4d, 0x5f, 0x52, 0x57, 0x31, 0x30, 0x31, 0x10, 0x08, 0x12, 0x0f,
7685	0x0a, 0x0b, 0x4d, 0x4f, 0x44, 0x45, 0x4d, 0x5f, 0x52, 0x57, 0x31, 0x33, 0x35, 0x10, 0x09, 0x12,
7686	0x10, 0x0a, 0x0c, 0x4d, 0x4f, 0x44, 0x45, 0x4d, 0x5f, 0x4c, 0x43, 0x55, 0x4b, 0x35, 0x34, 0x10,
7687	0x0a, 0x1a, 0x9b, 0x02, 0x0a, 0x04, 0x48, 0x64, 0x6d, 0x69, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72,
7688	0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68,
7689	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
7690	0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74,
7691	0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x72,
7692	0x65, 0x73, 0x65, 0x6e, 0x74, 0x12, 0x42, 0x0a, 0x03, 0x63, 0x65, 0x63, 0x18, 0x02, 0x20, 0x01,
7693	0x28, 0x0b, 0x32, 0x30, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
7694	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
7695	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x48, 0x64, 0x6d, 0x69,
7696	0x2e, 0x43, 0x65, 0x63, 0x52, 0x03, 0x63, 0x65, 0x63, 0x1a, 0x83, 0x01, 0x0a, 0x03, 0x43, 0x65,
7697	0x63, 0x12, 0x38, 0x0a, 0x19, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6f, 0x6e, 0x5f, 0x64, 0x69,
7698	0x73, 0x70, 0x6c, 0x61, 0x79, 0x73, 0x5f, 0x6f, 0x6e, 0x5f, 0x62, 0x6f, 0x6f, 0x74, 0x18, 0x01,
7699	0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x4f, 0x6e, 0x44, 0x69, 0x73,
7700	0x70, 0x6c, 0x61, 0x79, 0x73, 0x4f, 0x6e, 0x42, 0x6f, 0x6f, 0x74, 0x12, 0x42, 0x0a, 0x1e, 0x70,
7701	0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6f, 0x66, 0x66, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79,
7702	0x73, 0x5f, 0x6f, 0x6e, 0x5f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x02, 0x20,
7703	0x01, 0x28, 0x08, 0x52, 0x1a, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x44, 0x69, 0x73,
7704	0x70, 0x6c, 0x61, 0x79, 0x73, 0x4f, 0x6e, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x1a,
7705	0xe8, 0x08, 0x0a, 0x15, 0x46, 0x69, 0x72, 0x6d, 0x77, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66,
7706	0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
7707	0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12,
7708	0x12, 0x0a, 0x04, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6d,
7709	0x61, 0x73, 0x6b, 0x12, 0x37, 0x0a, 0x17, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x5f,
7710	0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03,
7711	0x20, 0x03, 0x28, 0x09, 0x52, 0x16, 0x63, 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x43, 0x75,
7712	0x73, 0x74, 0x6f, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x65, 0x0a, 0x16,
7713	0x76, 0x62, 0x6f, 0x6f, 0x74, 0x5f, 0x63, 0x62, 0x66, 0x73, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x67,
7714	0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63,
7715	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
7716	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61,
7717	0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x14, 0x76,
7718	0x62, 0x6f, 0x6f, 0x74, 0x43, 0x62, 0x66, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74,
7719	0x69, 0x6f, 0x6e, 0x12, 0x68, 0x0a, 0x0d, 0x66, 0x77, 0x5f, 0x72, 0x6f, 0x5f, 0x76, 0x65, 0x72,
7720	0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x63, 0x68, 0x72,
7721	0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61,
7722	0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75,
7723	0x72, 0x65, 0x73, 0x2e, 0x46, 0x69, 0x72, 0x6d, 0x77, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66,
7724	0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x6d, 0x56, 0x65, 0x72,
7725	0x52, 0x0b, 0x66, 0x77, 0x52, 0x6f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x4c, 0x0a,
7726	0x09, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x5f, 0x69, 0x73, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e,
7727	0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f,
7728	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72,
7729	0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e,
7730	0x74, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x49, 0x73, 0x68, 0x12, 0x68, 0x0a, 0x0d, 0x66,
7731	0x77, 0x5f, 0x72, 0x77, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01,
7732	0x28, 0x0b, 0x32, 0x44, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
7733	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
7734	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x46, 0x69, 0x72, 0x6d,
7735	0x77, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
7736	0x6e, 0x2e, 0x53, 0x65, 0x6d, 0x56, 0x65, 0x72, 0x52, 0x0b, 0x66, 0x77, 0x52, 0x77, 0x56, 0x65,
7737	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x4a, 0x0a, 0x08, 0x62, 0x6d, 0x70, 0x5f, 0x6c, 0x6f, 0x67,
7738	0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
7739	0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e,
7740	0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
7741	0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x62, 0x6d, 0x70, 0x4c, 0x6f, 0x67,
7742	0x6f, 0x12, 0x59, 0x0a, 0x10, 0x66, 0x77, 0x5f, 0x73, 0x70, 0x6c, 0x61, 0x73, 0x68, 0x5f, 0x73,
7743	0x63, 0x72, 0x65, 0x65, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68,
7744	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
7745	0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74,
7746	0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x0e, 0x66, 0x77,
7747	0x53, 0x70, 0x6c, 0x61, 0x73, 0x68, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x12, 0x53, 0x0a, 0x0d,
7748	0x6c, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x73, 0x65, 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x18, 0x0d, 0x20,
7749	0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73,
7750	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64,
7751	0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65,
7752	0x73, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x73, 0x65, 0x53, 0x79, 0x6e,
7753	0x63, 0x12, 0x64, 0x0a, 0x16, 0x68, 0x61, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72,
7754	0x79, 0x5f, 0x6d, 0x72, 0x63, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28,
7755	0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63,
7756	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61,
7757	0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65,
7758	0x6e, 0x74, 0x52, 0x13, 0x68, 0x61, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x4d,
7759	0x72, 0x63, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x76, 0x0a, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x62,
7760	0x6f, 0x61, 0x72, 0x64, 0x5f, 0x68, 0x61, 0x73, 0x5f, 0x65, 0x61, 0x72, 0x6c, 0x79, 0x5f, 0x73,
7761	0x69, 0x67, 0x6e, 0x5f, 0x6f, 0x66, 0x5f, 0x6c, 0x69, 0x66, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28,
7762	0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63,
7763	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61,
7764	0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65,
7765	0x6e, 0x74, 0x52, 0x1b, 0x6d, 0x61, 0x69, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x48, 0x61, 0x73,
7766	0x45, 0x61, 0x72, 0x6c, 0x79, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x66, 0x4c, 0x69, 0x66, 0x65, 0x1a,
7767	0x77, 0x0a, 0x06, 0x53, 0x65, 0x6d, 0x56, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x61, 0x6a,
7768	0x6f, 0x72, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
7769	0x52, 0x0c, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23,
7770	0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
7771	0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x56, 0x65, 0x72, 0x73,
7772	0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x76, 0x65, 0x72,
7773	0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x61, 0x74, 0x63,
7774	0x68, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x4a, 0x04,
7775	0x08, 0x06, 0x10, 0x07, 0x4a, 0x04, 0x08, 0x07, 0x10, 0x08, 0x1a, 0xd8, 0x10, 0x0a, 0x05, 0x41,
7776	0x75, 0x64, 0x69, 0x6f, 0x12, 0x59, 0x0a, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x6f,
7777	0x64, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x63, 0x68, 0x72, 0x6f,
7778	0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70,
7779	0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
7780	0x65, 0x73, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f,
7781	0x64, 0x65, 0x63, 0x52, 0x0a, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x12,
7782	0x58, 0x0a, 0x0b, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x5f, 0x61, 0x6d, 0x70, 0x18, 0x02,
7783	0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
7784	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72,
7785	0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x41, 0x75,
7786	0x64, 0x69, 0x6f, 0x2e, 0x41, 0x6d, 0x70, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0a, 0x73,
7787	0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x41, 0x6d, 0x70, 0x12, 0x61, 0x0a, 0x0f, 0x68, 0x65, 0x61,
7788	0x64, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x18, 0x03, 0x20, 0x01,
7789	0x28, 0x0e, 0x32, 0x38, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
7790	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
7791	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x41, 0x75, 0x64, 0x69,
7792	0x6f, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x52, 0x0e, 0x68, 0x65,
7793	0x61, 0x64, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x12, 0x54, 0x0a, 0x0e,
7794	0x6c, 0x69, 0x64, 0x5f, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x04,
7795	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
7796	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72,
7797	0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x43, 0x6f,
7798	0x75, 0x6e, 0x74, 0x52, 0x0d, 0x6c, 0x69, 0x64, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x70, 0x68, 0x6f,
7799	0x6e, 0x65, 0x12, 0x56, 0x0a, 0x0f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x69, 0x63, 0x72, 0x6f,
7800	0x70, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x68,
7801	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
7802	0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74,
7803	0x75, 0x72, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0e, 0x62, 0x61, 0x73, 0x65,
7804	0x4d, 0x69, 0x63, 0x72, 0x6f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x57, 0x0a, 0x11, 0x73, 0x70,
7805	0x65, 0x61, 0x6b, 0x65, 0x72, 0x5f, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18,
7806	0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
7807	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6f,
7808	0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x6d, 0x70, 0x6c, 0x69, 0x66, 0x69, 0x65,
7809	0x72, 0x52, 0x10, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x41, 0x6d, 0x70, 0x6c, 0x69, 0x66,
7810	0x69, 0x65, 0x72, 0x12, 0x5b, 0x0a, 0x0c, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
7811	0x69, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x63, 0x68, 0x72, 0x6f,
7812	0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70,
7813	0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
7814	0x65, 0x73, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e,
7815	0x66, 0x69, 0x67, 0x52, 0x0b, 0x63, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
7816	0x12, 0x63, 0x0a, 0x0b, 0x63, 0x72, 0x61, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18,
7817	0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
7818	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61,
7819	0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x41,
7820	0x75, 0x64, 0x69, 0x6f, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
7821	0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0a, 0x63, 0x72, 0x61, 0x73, 0x43,
7822	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x53, 0x0a, 0x0d, 0x73, 0x6f, 0x66, 0x5f, 0x61, 0x75, 0x64,
7823	0x69, 0x6f, 0x5f, 0x64, 0x73, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63,
7824	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
7825	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61,
7826	0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x73,
7827	0x6f, 0x66, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x44, 0x73, 0x70, 0x1a, 0xe6, 0x03, 0x0a, 0x0a, 0x43,
7828	0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x61, 0x72,
7829	0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x61,
7830	0x72, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x75, 0x63, 0x6d, 0x5f, 0x73, 0x75,
7831	0x66, 0x66, 0x69, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
7832	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72,
7833	0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x75, 0x63, 0x6d, 0x53, 0x75, 0x66,
7834	0x66, 0x69, 0x78, 0x12, 0x61, 0x0a, 0x0a, 0x75, 0x63, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
7835	0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
7836	0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e,
7837	0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
7838	0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66,
7839	0x69, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x52, 0x09, 0x75, 0x63, 0x6d,
7840	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x63, 0x0a, 0x0b, 0x63, 0x72, 0x61, 0x73, 0x5f, 0x63,
7841	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, 0x2e, 0x63, 0x68,
7842	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
7843	0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74,
7844	0x75, 0x72, 0x65, 0x73, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f,
7845	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x52,
7846	0x0a, 0x63, 0x72, 0x61, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x77, 0x0a, 0x16, 0x73,
7847	0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x5f, 0x63,
7848	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, 0x2e, 0x63, 0x68,
7849	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
7850	0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74,
7851	0x75, 0x72, 0x65, 0x73, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f,
7852	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x52,
7853	0x13, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x43, 0x61, 0x72, 0x64, 0x49, 0x6e, 0x69, 0x74, 0x43, 0x6f,
7854	0x6e, 0x66, 0x69, 0x67, 0x12, 0x3d, 0x0a, 0x0b, 0x63, 0x72, 0x61, 0x73, 0x5f, 0x73, 0x75, 0x66,
7855	0x66, 0x69, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
7856	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69,
7857	0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0a, 0x63, 0x72, 0x61, 0x73, 0x53, 0x75, 0x66,
7858	0x66, 0x69, 0x78, 0x22, 0xe1, 0x02, 0x0a, 0x0a, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x64,
7859	0x65, 0x63, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43, 0x4f, 0x44, 0x45,
7860	0x43, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x52,
7861	0x54, 0x35, 0x36, 0x38, 0x32, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x4c, 0x43, 0x35, 0x36,
7862	0x38, 0x32, 0x49, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x41, 0x4c, 0x43, 0x35, 0x36, 0x38, 0x32,
7863	0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x41, 0x37, 0x32, 0x31, 0x39, 0x10, 0x08, 0x12, 0x0d,
7864	0x0a, 0x09, 0x4e, 0x41, 0x55, 0x38, 0x38, 0x4c, 0x32, 0x35, 0x42, 0x10, 0x0a, 0x12, 0x0b, 0x0a,
7865	0x07, 0x43, 0x53, 0x34, 0x32, 0x4c, 0x34, 0x32, 0x10, 0x0b, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x4c,
7866	0x43, 0x35, 0x36, 0x38, 0x32, 0x49, 0x56, 0x53, 0x10, 0x0c, 0x12, 0x0b, 0x0a, 0x07, 0x57, 0x43,
7867	0x44, 0x39, 0x33, 0x38, 0x35, 0x10, 0x0d, 0x12, 0x0a, 0x0a, 0x06, 0x45, 0x53, 0x38, 0x33, 0x32,
7868	0x36, 0x10, 0x0e, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x4c, 0x43, 0x32, 0x37, 0x32, 0x10, 0x0f, 0x12,
7869	0x17, 0x0a, 0x13, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x43, 0x5f, 0x41,
7870	0x4c, 0x43, 0x35, 0x36, 0x35, 0x30, 0x10, 0x11, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x55, 0x44, 0x49,
7871	0x4f, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x43, 0x5f, 0x41, 0x4c, 0x43, 0x32, 0x35, 0x36, 0x10, 0x12,
7872	0x12, 0x17, 0x0a, 0x13, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x43, 0x5f,
7873	0x41, 0x4c, 0x43, 0x33, 0x32, 0x34, 0x37, 0x10, 0x13, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x55, 0x44,
7874	0x49, 0x4f, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x43, 0x5f, 0x41, 0x4c, 0x43, 0x33, 0x32, 0x38, 0x37,
7875	0x10, 0x14, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43, 0x4f, 0x44, 0x45,
7876	0x43, 0x5f, 0x41, 0x4c, 0x43, 0x37, 0x32, 0x32, 0x10, 0x16, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x55,
7877	0x44, 0x49, 0x4f, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x43, 0x5f, 0x41, 0x4c, 0x43, 0x37, 0x32, 0x31,
7878	0x10, 0x17, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43, 0x4f, 0x44, 0x45,
7879	0x43, 0x5f, 0x41, 0x4c, 0x43, 0x33, 0x32, 0x30, 0x34, 0x10, 0x18, 0x22, 0x04, 0x08, 0x04, 0x10,
7880	0x07, 0x22, 0x04, 0x08, 0x09, 0x10, 0x09, 0x22, 0xfa, 0x02, 0x0a, 0x09, 0x41, 0x6d, 0x70, 0x6c,
7881	0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x4d, 0x50, 0x4c, 0x49, 0x46, 0x49,
7882	0x45, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08,
7883	0x4d, 0x41, 0x58, 0x39, 0x38, 0x33, 0x35, 0x37, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x41,
7884	0x58, 0x39, 0x38, 0x33, 0x37, 0x33, 0x10, 0x05, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x41, 0x58, 0x39,
7885	0x38, 0x33, 0x36, 0x30, 0x10, 0x06, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x54, 0x31, 0x30, 0x31, 0x35,
7886	0x10, 0x07, 0x12, 0x0b, 0x0a, 0x07, 0x41, 0x4c, 0x43, 0x31, 0x30, 0x31, 0x31, 0x10, 0x09, 0x12,
7887	0x0b, 0x0a, 0x07, 0x52, 0x54, 0x31, 0x30, 0x31, 0x35, 0x50, 0x10, 0x0a, 0x12, 0x0b, 0x0a, 0x07,
7888	0x41, 0x4c, 0x43, 0x31, 0x30, 0x31, 0x39, 0x10, 0x0b, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x41, 0x58,
7889	0x39, 0x38, 0x33, 0x39, 0x30, 0x10, 0x0c, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x41, 0x58, 0x39, 0x38,
7890	0x33, 0x39, 0x36, 0x10, 0x0d, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x53, 0x33, 0x35, 0x4c, 0x34, 0x31,
7891	0x10, 0x0e, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x41, 0x58, 0x39, 0x38, 0x33, 0x36, 0x33, 0x10, 0x0f,
7892	0x12, 0x0b, 0x0a, 0x07, 0x4e, 0x41, 0x55, 0x38, 0x33, 0x31, 0x38, 0x10, 0x10, 0x12, 0x15, 0x0a,
7893	0x11, 0x41, 0x4d, 0x50, 0x4c, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x41, 0x4c, 0x43, 0x35, 0x36,
7894	0x35, 0x30, 0x10, 0x11, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x4d, 0x50, 0x4c, 0x49, 0x46, 0x49, 0x45,
7895	0x52, 0x5f, 0x41, 0x4c, 0x43, 0x32, 0x35, 0x36, 0x10, 0x12, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x4d,
7896	0x50, 0x4c, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x41, 0x4c, 0x43, 0x33, 0x32, 0x34, 0x37, 0x10,
7897	0x13, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x4d, 0x50, 0x4c, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x41,
7898	0x4c, 0x43, 0x33, 0x32, 0x38, 0x37, 0x10, 0x14, 0x12, 0x0b, 0x0a, 0x07, 0x54, 0x41, 0x53, 0x32,
7899	0x35, 0x36, 0x33, 0x10, 0x15, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x4d, 0x50, 0x4c, 0x49, 0x46, 0x49,
7900	0x45, 0x52, 0x5f, 0x41, 0x4c, 0x43, 0x37, 0x32, 0x32, 0x10, 0x16, 0x12, 0x14, 0x0a, 0x10, 0x41,
7901	0x4d, 0x50, 0x4c, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x41, 0x4c, 0x43, 0x37, 0x32, 0x31, 0x10,
7902	0x17, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x4d, 0x50, 0x4c, 0x49, 0x46, 0x49, 0x45, 0x52, 0x5f, 0x41,
7903	0x4c, 0x43, 0x33, 0x32, 0x30, 0x34, 0x10, 0x18, 0x22, 0x04, 0x08, 0x01, 0x10, 0x03, 0x22, 0x04,
7904	0x08, 0x08, 0x10, 0x08, 0x22, 0x4f, 0x0a, 0x14, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e,
7905	0x66, 0x69, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x1b,
7906	0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x5f, 0x53, 0x54, 0x52,
7907	0x55, 0x43, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0a, 0x0a,
7908	0x06, 0x44, 0x45, 0x53, 0x49, 0x47, 0x4e, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x4f, 0x4d,
7909	0x4d, 0x4f, 0x4e, 0x10, 0x02, 0x1a, 0xa1, 0x08, 0x0a, 0x06, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61,
7910	0x12, 0x4f, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
7911	0x0b, 0x32, 0x35, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63,
7912	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61,
7913	0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x43, 0x61, 0x6d, 0x65, 0x72,
7914	0x61, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
7915	0x73, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x05, 0x20,
7916	0x03, 0x28, 0x09, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x1e, 0x0a,
7917	0x0a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28,
7918	0x08, 0x52, 0x0a, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x12, 0x2c, 0x0a,
7919	0x12, 0x65, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x62, 0x5f,
7920	0x69, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x65, 0x6e, 0x75, 0x6d, 0x65,
7921	0x72, 0x61, 0x74, 0x65, 0x64, 0x55, 0x73, 0x62, 0x49, 0x64, 0x73, 0x1a, 0x87, 0x04, 0x0a, 0x06,
7922	0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x56, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66,
7923	0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x63, 0x68, 0x72, 0x6f,
7924	0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70,
7925	0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
7926	0x65, 0x73, 0x2e, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66,
7927	0x61, 0x63, 0x65, 0x52, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x4d,
7928	0x0a, 0x06, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35,
7929	0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
7930	0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46,
7931	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x43, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x2e, 0x46,
7932	0x61, 0x63, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x12, 0x5c, 0x0a,
7933	0x0b, 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01,
7934	0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
7935	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
7936	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x43, 0x61, 0x6d, 0x65,
7937	0x72, 0x61, 0x2e, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b,
7938	0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x66,
7939	0x6c, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x66, 0x6c, 0x61, 0x67,
7940	0x73, 0x12, 0x10, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03,
7941	0x69, 0x64, 0x73, 0x12, 0x56, 0x0a, 0x0e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x63, 0x79, 0x5f, 0x73,
7942	0x77, 0x69, 0x74, 0x63, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68,
7943	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
7944	0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74,
7945	0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x0d, 0x70, 0x72,
7946	0x69, 0x76, 0x61, 0x63, 0x79, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x12, 0x58, 0x0a, 0x10, 0x6d,
7947	0x69, 0x63, 0x72, 0x6f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
7948	0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
7949	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61,
7950	0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x43,
7951	0x6f, 0x75, 0x6e, 0x74, 0x52, 0x0f, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x70, 0x68, 0x6f, 0x6e, 0x65,
7952	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x63, 0x68, 0x61,
7953	0x62, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x63,
7954	0x68, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x49, 0x0a, 0x09, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61,
7955	0x63, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x46, 0x41, 0x43, 0x45, 0x5f,
7956	0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x49, 0x4e, 0x54,
7957	0x45, 0x52, 0x46, 0x41, 0x43, 0x45, 0x5f, 0x55, 0x53, 0x42, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e,
7958	0x49, 0x4e, 0x54, 0x45, 0x52, 0x46, 0x41, 0x43, 0x45, 0x5f, 0x4d, 0x49, 0x50, 0x49, 0x10, 0x02,
7959	0x22, 0x3f, 0x0a, 0x06, 0x46, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x12, 0x12, 0x0a, 0x0e, 0x46, 0x41,
7960	0x43, 0x49, 0x4e, 0x47, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x10,
7961	0x0a, 0x0c, 0x46, 0x41, 0x43, 0x49, 0x4e, 0x47, 0x5f, 0x46, 0x52, 0x4f, 0x4e, 0x54, 0x10, 0x01,
7962	0x12, 0x0f, 0x0a, 0x0b, 0x46, 0x41, 0x43, 0x49, 0x4e, 0x47, 0x5f, 0x42, 0x41, 0x43, 0x4b, 0x10,
7963	0x02, 0x22, 0x77, 0x0a, 0x0b, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
7964	0x12, 0x17, 0x0a, 0x13, 0x4f, 0x52, 0x49, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
7965	0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x52, 0x49,
7966	0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x30, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e,
7967	0x4f, 0x52, 0x49, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x39, 0x30, 0x10, 0x02,
7968	0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x52, 0x49, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
7969	0x31, 0x38, 0x30, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x52, 0x49, 0x45, 0x4e, 0x54, 0x41,
7970	0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x32, 0x37, 0x30, 0x10, 0x04, 0x22, 0x4d, 0x0a, 0x05, 0x46, 0x6c,
7971	0x61, 0x67, 0x73, 0x12, 0x0e, 0x0a, 0x0a, 0x46, 0x4c, 0x41, 0x47, 0x53, 0x5f, 0x4e, 0x4f, 0x4e,
7972	0x45, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x46, 0x4c, 0x41, 0x47, 0x53, 0x5f, 0x53, 0x55, 0x50,
7973	0x50, 0x4f, 0x52, 0x54, 0x5f, 0x31, 0x30, 0x38, 0x30, 0x50, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17,
7974	0x46, 0x4c, 0x41, 0x47, 0x53, 0x5f, 0x53, 0x55, 0x50, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x41, 0x55,
7975	0x54, 0x4f, 0x46, 0x4f, 0x43, 0x55, 0x53, 0x10, 0x02, 0x1a, 0xcd, 0x01, 0x0a, 0x0d, 0x41, 0x63,
7976	0x63, 0x65, 0x6c, 0x65, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x5c, 0x0a, 0x11, 0x6c,
7977	0x69, 0x64, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72,
7978	0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
7979	0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48,
7980	0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e,
7981	0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x10, 0x6c, 0x69, 0x64, 0x41, 0x63, 0x63, 0x65,
7982	0x6c, 0x65, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x5e, 0x0a, 0x12, 0x62, 0x61, 0x73,
7983	0x65, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18,
7984	0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
7985	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61,
7986	0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50,
7987	0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x11, 0x62, 0x61, 0x73, 0x65, 0x41, 0x63, 0x63, 0x65,
7988	0x6c, 0x65, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x1a, 0xb9, 0x01, 0x0a, 0x09, 0x47, 0x79,
7989	0x72, 0x6f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x54, 0x0a, 0x0d, 0x6c, 0x69, 0x64, 0x5f, 0x67,
7990	0x79, 0x72, 0x6f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f,
7991	0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
7992	0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46,
7993	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52,
7994	0x0c, 0x6c, 0x69, 0x64, 0x47, 0x79, 0x72, 0x6f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x56, 0x0a,
7995	0x0e, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x67, 0x79, 0x72, 0x6f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x18,
7996	0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
7997	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61,
7998	0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50,
7999	0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x0d, 0x62, 0x61, 0x73, 0x65, 0x47, 0x79, 0x72, 0x6f,
8000	0x73, 0x63, 0x6f, 0x70, 0x65, 0x1a, 0xc8, 0x01, 0x0a, 0x0c, 0x4d, 0x61, 0x67, 0x6e, 0x65, 0x74,
8001	0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x5a, 0x0a, 0x10, 0x6c, 0x69, 0x64, 0x5f, 0x6d, 0x61,
8002	0x67, 0x6e, 0x65, 0x74, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
8003	0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f,
8004	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72,
8005	0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e,
8006	0x74, 0x52, 0x0f, 0x6c, 0x69, 0x64, 0x4d, 0x61, 0x67, 0x6e, 0x65, 0x74, 0x6f, 0x6d, 0x65, 0x74,
8007	0x65, 0x72, 0x12, 0x5c, 0x0a, 0x11, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x61, 0x67, 0x6e, 0x65,
8008	0x74, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e,
8009	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8010	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
8011	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x10,
8012	0x62, 0x61, 0x73, 0x65, 0x4d, 0x61, 0x67, 0x6e, 0x65, 0x74, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72,
8013	0x1a, 0xa3, 0x02, 0x0a, 0x0b, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x53, 0x65, 0x6e, 0x73, 0x6f, 0x72,
8014	0x12, 0x58, 0x0a, 0x0f, 0x6c, 0x69, 0x64, 0x5f, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x73, 0x65, 0x6e,
8015	0x73, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f,
8016	0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70,
8017	0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
8018	0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x0e, 0x6c, 0x69, 0x64, 0x4c,
8019	0x69, 0x67, 0x68, 0x74, 0x73, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x12, 0x5a, 0x0a, 0x10, 0x62, 0x61,
8020	0x73, 0x65, 0x5f, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x73, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x18, 0x02,
8021	0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
8022	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72,
8023	0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72,
8024	0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x0f, 0x62, 0x61, 0x73, 0x65, 0x4c, 0x69, 0x67, 0x68, 0x74,
8025	0x73, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x12, 0x5e, 0x0a, 0x12, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61,
8026	0x5f, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x73, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01,
8027	0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
8028	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
8029	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73,
8030	0x65, 0x6e, 0x74, 0x52, 0x11, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x4c, 0x69, 0x67, 0x68, 0x74,
8031	0x73, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x1a, 0xf7, 0x02, 0x0a, 0x06, 0x53, 0x63, 0x72, 0x65, 0x65,
8032	0x6e, 0x12, 0x63, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x5f, 0x74,
8033	0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x63, 0x68, 0x72, 0x6f,
8034	0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70,
8035	0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
8036	0x65, 0x73, 0x2e, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
8037	0x74, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
8038	0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x63, 0x0a, 0x10, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x5f,
8039	0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
8040	0x32, 0x38, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f,
8041	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65,
8042	0x6e, 0x74, 0x2e, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x50, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
8043	0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x52, 0x0f, 0x70, 0x61, 0x6e, 0x65,
8044	0x6c, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x54, 0x0a, 0x0d, 0x74,
8045	0x6f, 0x75, 0x63, 0x68, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01,
8046	0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
8047	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
8048	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73,
8049	0x65, 0x6e, 0x74, 0x52, 0x0c, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72,
8050	0x74, 0x22, 0x47, 0x0a, 0x0d, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x54, 0x79,
8051	0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x4f, 0x52, 0x5f,
8052	0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
8053	0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x4f, 0x52, 0x5f,
8054	0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x44, 0x50, 0x10, 0x01, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02,
8055	0x1a, 0x9f, 0x04, 0x0a, 0x0a, 0x46, 0x6f, 0x72, 0x6d, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12,
8056	0x62, 0x0a, 0x0b, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x01,
8057	0x20, 0x01, 0x28, 0x0e, 0x32, 0x41, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
8058	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72,
8059	0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x46, 0x6f,
8060	0x72, 0x6d, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x46, 0x61, 0x63,
8061	0x74, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x66, 0x6f, 0x72, 0x6d, 0x46, 0x61, 0x63,
8062	0x74, 0x6f, 0x72, 0x12, 0x6b, 0x0a, 0x0e, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f,
8063	0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x44, 0x2e, 0x63, 0x68,
8064	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
8065	0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74,
8066	0x75, 0x72, 0x65, 0x73, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x2e,
8067	0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x54, 0x79, 0x70,
8068	0x65, 0x52, 0x0d, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x70, 0x75, 0x74,
8069	0x12, 0x3f, 0x0a, 0x0d, 0x64, 0x65, 0x74, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x75,
8070	0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
8071	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61,
8072	0x6c, 0x75, 0x65, 0x52, 0x0c, 0x64, 0x65, 0x74, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x55,
8073	0x69, 0x22, 0x98, 0x01, 0x0a, 0x0e, 0x46, 0x6f, 0x72, 0x6d, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72,
8074	0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x46, 0x41, 0x43,
8075	0x54, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0d, 0x0a,
8076	0x09, 0x43, 0x4c, 0x41, 0x4d, 0x53, 0x48, 0x45, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b,
8077	0x43, 0x4f, 0x4e, 0x56, 0x45, 0x52, 0x54, 0x49, 0x42, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x0e, 0x0a,
8078	0x0a, 0x44, 0x45, 0x54, 0x41, 0x43, 0x48, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x03, 0x12, 0x0e, 0x0a,
8079	0x0a, 0x43, 0x48, 0x52, 0x4f, 0x4d, 0x45, 0x42, 0x41, 0x53, 0x45, 0x10, 0x04, 0x12, 0x0d, 0x0a,
8080	0x09, 0x43, 0x48, 0x52, 0x4f, 0x4d, 0x45, 0x42, 0x4f, 0x58, 0x10, 0x05, 0x12, 0x0d, 0x0a, 0x09,
8081	0x43, 0x48, 0x52, 0x4f, 0x4d, 0x45, 0x42, 0x49, 0x54, 0x10, 0x06, 0x12, 0x0f, 0x0a, 0x0b, 0x43,
8082	0x48, 0x52, 0x4f, 0x4d, 0x45, 0x53, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x07, 0x22, 0x64, 0x0a, 0x11,
8083	0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x54, 0x79, 0x70,
8084	0x65, 0x12, 0x1a, 0x0a, 0x16, 0x52, 0x45, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x49, 0x4e,
8085	0x50, 0x55, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0c, 0x0a,
8086	0x08, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x50,
8087	0x4f, 0x57, 0x45, 0x52, 0x5f, 0x42, 0x55, 0x54, 0x54, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x13, 0x0a,
8088	0x0f, 0x52, 0x45, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x42, 0x55, 0x54, 0x54, 0x4f, 0x4e,
8089	0x10, 0x03, 0x1a, 0xa3, 0x01, 0x0a, 0x06, 0x53, 0x74, 0x79, 0x6c, 0x75, 0x73, 0x12, 0x51, 0x0a,
8090	0x06, 0x73, 0x74, 0x79, 0x6c, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e,
8091	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8092	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
8093	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x53, 0x74, 0x79, 0x6c, 0x75, 0x73, 0x2e, 0x53, 0x74,
8094	0x79, 0x6c, 0x75, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x73, 0x74, 0x79, 0x6c, 0x75, 0x73,
8095	0x22, 0x46, 0x0a, 0x0a, 0x53, 0x74, 0x79, 0x6c, 0x75, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12,
8096	0x0a, 0x0e, 0x53, 0x54, 0x59, 0x4c, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e,
8097	0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08,
8098	0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x45, 0x58,
8099	0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x03, 0x1a, 0x8e, 0x0c, 0x0a, 0x08, 0x4b, 0x65, 0x79,
8100	0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x62, 0x0a, 0x0d, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72,
8101	0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3d, 0x2e, 0x63,
8102	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
8103	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61,
8104	0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x4b,
8105	0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x6b, 0x65, 0x79,
8106	0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x4d, 0x0a, 0x09, 0x62, 0x61, 0x63,
8107	0x6b, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63,
8108	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
8109	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61,
8110	0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x09, 0x62,
8111	0x61, 0x63, 0x6b, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x12, 0x52, 0x0a, 0x0c, 0x70, 0x6f, 0x77, 0x65,
8112	0x72, 0x5f, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f,
8113	0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
8114	0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46,
8115	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52,
8116	0x0b, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x50, 0x0a, 0x0b,
8117	0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x70, 0x61, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,
8118	0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63,
8119	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61,
8120	0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65,
8121	0x6e, 0x74, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x50, 0x61, 0x64, 0x12, 0x5b,
8122	0x0a, 0x08, 0x6d, 0x63, 0x75, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e,
8123	0x32, 0x40, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f,
8124	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72,
8125	0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61,
8126	0x72, 0x64, 0x2e, 0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x4d, 0x63, 0x75, 0x54, 0x79,
8127	0x70, 0x65, 0x52, 0x07, 0x6d, 0x63, 0x75, 0x54, 0x79, 0x70, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x62,
8128	0x61, 0x63, 0x6b, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x74,
8129	0x65, 0x70, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x01, 0x52, 0x12, 0x62, 0x61, 0x63, 0x6b, 0x6c,
8130	0x69, 0x67, 0x68, 0x74, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x73, 0x12, 0x4e, 0x0a,
8131	0x09, 0x61, 0x6c, 0x73, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b,
8132	0x32, 0x31, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f,
8133	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72,
8134	0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x4b, 0x62, 0x41, 0x6c, 0x73, 0x53,
8135	0x74, 0x65, 0x70, 0x52, 0x08, 0x61, 0x6c, 0x73, 0x53, 0x74, 0x65, 0x70, 0x73, 0x12, 0x2a, 0x0a,
8136	0x11, 0x6e, 0x6f, 0x5f, 0x61, 0x6c, 0x73, 0x5f, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65,
8137	0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0f, 0x6e, 0x6f, 0x41, 0x6c, 0x73, 0x42,
8138	0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x12, 0x77, 0x0a, 0x12, 0x62, 0x6f, 0x74,
8139	0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x18,
8140	0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x49, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
8141	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61,
8142	0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x4b,
8143	0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64,
8144	0x42, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x4c, 0x65, 0x66, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74,
8145	0x52, 0x10, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x4c, 0x65, 0x66, 0x74, 0x4c, 0x61, 0x79, 0x6f,
8146	0x75, 0x74, 0x12, 0x7a, 0x0a, 0x13, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x69, 0x67,
8147	0x68, 0x74, 0x5f, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32,
8148	0x4a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
8149	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
8150	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72,
8151	0x64, 0x2e, 0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x42, 0x6f, 0x74, 0x74, 0x6f, 0x6d,
8152	0x52, 0x69, 0x67, 0x68, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x11, 0x62, 0x6f, 0x74,
8153	0x74, 0x6f, 0x6d, 0x52, 0x69, 0x67, 0x68, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x6f,
8154	0x0a, 0x12, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x70, 0x61, 0x64, 0x5f, 0x6c, 0x61,
8155	0x79, 0x6f, 0x75, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x41, 0x2e, 0x63, 0x68, 0x72,
8156	0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61,
8157	0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75,
8158	0x72, 0x65, 0x73, 0x2e, 0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x4e, 0x75, 0x6d,
8159	0x65, 0x72, 0x69, 0x63, 0x50, 0x61, 0x64, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x10, 0x6e,
8160	0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x50, 0x61, 0x64, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x22,
8161	0x51, 0x0a, 0x0c, 0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12,
8162	0x19, 0x0a, 0x15, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x5f, 0x54, 0x59, 0x50, 0x45,
8163	0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4e,
8164	0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45,
8165	0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, 0x54, 0x41, 0x43, 0x48, 0x41, 0x42, 0x4c, 0x45,
8166	0x10, 0x03, 0x22, 0x47, 0x0a, 0x0f, 0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x4d, 0x63,
8167	0x75, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52,
8168	0x44, 0x5f, 0x4d, 0x43, 0x55, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x45, 0x53, 0x45, 0x4e,
8169	0x54, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x5f,
8170	0x4d, 0x43, 0x55, 0x5f, 0x50, 0x52, 0x49, 0x53, 0x4d, 0x10, 0x01, 0x22, 0x85, 0x01, 0x0a, 0x18,
8171	0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x42, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x4c, 0x65,
8172	0x66, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x27, 0x0a, 0x23, 0x4b, 0x45, 0x59, 0x42,
8173	0x4f, 0x41, 0x52, 0x44, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x4c, 0x45, 0x46, 0x54,
8174	0x5f, 0x4c, 0x41, 0x59, 0x4f, 0x55, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10,
8175	0x00, 0x12, 0x1f, 0x0a, 0x1b, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x5f, 0x42, 0x4f,
8176	0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x33, 0x5f, 0x4b, 0x45, 0x59, 0x53,
8177	0x10, 0x01, 0x12, 0x1f, 0x0a, 0x1b, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x5f, 0x42,
8178	0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x34, 0x5f, 0x4b, 0x45, 0x59,
8179	0x53, 0x10, 0x02, 0x22, 0xab, 0x01, 0x0a, 0x19, 0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64,
8180	0x42, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x52, 0x69, 0x67, 0x68, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75,
8181	0x74, 0x12, 0x28, 0x0a, 0x24, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x5f, 0x42, 0x4f,
8182	0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x4c, 0x41, 0x59, 0x4f, 0x55,
8183	0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x4b,
8184	0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x52,
8185	0x49, 0x47, 0x48, 0x54, 0x5f, 0x32, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x10, 0x01, 0x12, 0x20, 0x0a,
8186	0x1c, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d,
8187	0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x33, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x10, 0x02, 0x12,
8188	0x20, 0x0a, 0x1c, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x5f, 0x42, 0x4f, 0x54, 0x54,
8189	0x4f, 0x4d, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x34, 0x5f, 0x4b, 0x45, 0x59, 0x53, 0x10,
8190	0x03, 0x22, 0x66, 0x0a, 0x10, 0x4e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x50, 0x61, 0x64, 0x4c,
8191	0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x1e, 0x0a, 0x1a, 0x4e, 0x55, 0x4d, 0x45, 0x52, 0x49, 0x43,
8192	0x5f, 0x50, 0x41, 0x44, 0x5f, 0x4c, 0x41, 0x59, 0x4f, 0x55, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e,
8193	0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x4e, 0x55, 0x4d, 0x45, 0x52, 0x49, 0x43,
8194	0x5f, 0x50, 0x41, 0x44, 0x5f, 0x33, 0x5f, 0x43, 0x4f, 0x4c, 0x55, 0x4d, 0x4e, 0x10, 0x01, 0x12,
8195	0x18, 0x0a, 0x14, 0x4e, 0x55, 0x4d, 0x45, 0x52, 0x49, 0x43, 0x5f, 0x50, 0x41, 0x44, 0x5f, 0x34,
8196	0x5f, 0x43, 0x4f, 0x4c, 0x55, 0x4d, 0x4e, 0x10, 0x02, 0x1a, 0x53, 0x0a, 0x06, 0x4d, 0x65, 0x6d,
8197	0x6f, 0x72, 0x79, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01,
8198	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
8199	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6d,
8200	0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x2e, 0x50, 0x72,
8201	0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x1a, 0xd3,
8202	0x0b, 0x0a, 0x0b, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x12, 0x58,
8203	0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
8204	0x32, 0x3c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f,
8205	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72,
8206	0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72,
8207	0x70, 0x72, 0x69, 0x6e, 0x74, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08,
8208	0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x6f, 0x61, 0x72,
8209	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x12, 0x1d,
8210	0x0a, 0x0a, 0x72, 0x6f, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01,
8211	0x28, 0x09, 0x52, 0x09, 0x72, 0x6f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x6e, 0x0a,
8212	0x10, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x5f, 0x64, 0x69, 0x61,
8213	0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
8214	0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e,
8215	0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
8216	0x2e, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x2e, 0x46, 0x69, 0x6e,
8217	0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x44, 0x69, 0x61, 0x67, 0x52, 0x0f, 0x66, 0x69,
8218	0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x44, 0x69, 0x61, 0x67, 0x12, 0x18, 0x0a,
8219	0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
8220	0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x1a, 0xd0, 0x07, 0x0a, 0x0f, 0x46, 0x69, 0x6e, 0x67,
8221	0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x44, 0x69, 0x61, 0x67, 0x12, 0x25, 0x0a, 0x0e, 0x72,
8222	0x6f, 0x75, 0x74, 0x69, 0x6e, 0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20,
8223	0x01, 0x28, 0x08, 0x52, 0x0d, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x65, 0x45, 0x6e, 0x61, 0x62,
8224	0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x5f,
8225	0x64, 0x65, 0x76, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x50, 0x69,
8226	0x78, 0x65, 0x6c, 0x44, 0x65, 0x76, 0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x65,
8227	0x61, 0x64, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52,
8228	0x0d, 0x6d, 0x61, 0x78, 0x44, 0x65, 0x61, 0x64, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x12, 0x72,
8229	0x0a, 0x0c, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x5f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x6e, 0x18, 0x04,
8230	0x20, 0x01, 0x28, 0x0b, 0x32, 0x4f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
8231	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72,
8232	0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x46, 0x69,
8233	0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x2e, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72,
8234	0x70, 0x72, 0x69, 0x6e, 0x74, 0x44, 0x69, 0x61, 0x67, 0x2e, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x4d,
8235	0x65, 0x64, 0x69, 0x61, 0x6e, 0x52, 0x0b, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x4d, 0x65, 0x64, 0x69,
8236	0x61, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x75, 0x6d, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74,
8237	0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6e, 0x75, 0x6d,
8238	0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x71, 0x0a, 0x0c, 0x64, 0x65,
8239	0x74, 0x65, 0x63, 0x74, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b,
8240	0x32, 0x4e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f,
8241	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72,
8242	0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72,
8243	0x70, 0x72, 0x69, 0x6e, 0x74, 0x2e, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e,
8244	0x74, 0x44, 0x69, 0x61, 0x67, 0x2e, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x5a, 0x6f, 0x6e, 0x65,
8245	0x52, 0x0b, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x5a, 0x6f, 0x6e, 0x65, 0x73, 0x12, 0x41, 0x0a,
8246	0x1e, 0x6d, 0x61, 0x78, 0x5f, 0x64, 0x65, 0x61, 0x64, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73,
8247	0x5f, 0x69, 0x6e, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18,
8248	0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x6d, 0x61, 0x78, 0x44, 0x65, 0x61, 0x64, 0x50, 0x69,
8249	0x78, 0x65, 0x6c, 0x73, 0x49, 0x6e, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x5a, 0x6f, 0x6e, 0x65,
8250	0x12, 0x2d, 0x0a, 0x13, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x70, 0x69,
8251	0x78, 0x65, 0x6c, 0x5f, 0x64, 0x65, 0x76, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6d,
8252	0x61, 0x78, 0x52, 0x65, 0x73, 0x65, 0x74, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x44, 0x65, 0x76, 0x12,
8253	0x33, 0x0a, 0x16, 0x6d, 0x61, 0x78, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x73,
8254	0x65, 0x74, 0x5f, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52,
8255	0x13, 0x6d, 0x61, 0x78, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x65, 0x74, 0x50, 0x69,
8256	0x78, 0x65, 0x6c, 0x73, 0x1a, 0xc5, 0x02, 0x0a, 0x0b, 0x50, 0x69, 0x78, 0x65, 0x6c, 0x4d, 0x65,
8257	0x64, 0x69, 0x61, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x31,
8258	0x5f, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x62,
8259	0x54, 0x79, 0x70, 0x65, 0x31, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x62,
8260	0x5f, 0x74, 0x79, 0x70, 0x65, 0x31, 0x5f, 0x75, 0x70, 0x70, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01,
8261	0x28, 0x0d, 0x52, 0x0c, 0x63, 0x62, 0x54, 0x79, 0x70, 0x65, 0x31, 0x55, 0x70, 0x70, 0x65, 0x72,
8262	0x12, 0x24, 0x0a, 0x0e, 0x63, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x32, 0x5f, 0x6c, 0x6f, 0x77,
8263	0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x62, 0x54, 0x79, 0x70, 0x65,
8264	0x32, 0x4c, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x62, 0x5f, 0x74, 0x79, 0x70,
8265	0x65, 0x32, 0x5f, 0x75, 0x70, 0x70, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c,
8266	0x63, 0x62, 0x54, 0x79, 0x70, 0x65, 0x32, 0x55, 0x70, 0x70, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f,
8267	0x69, 0x63, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x31, 0x5f, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x18,
8268	0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69, 0x63, 0x62, 0x54, 0x79, 0x70, 0x65, 0x31, 0x4c,
8269	0x6f, 0x77, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x63, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65,
8270	0x31, 0x5f, 0x75, 0x70, 0x70, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69,
8271	0x63, 0x62, 0x54, 0x79, 0x70, 0x65, 0x31, 0x55, 0x70, 0x70, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f,
8272	0x69, 0x63, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x32, 0x5f, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x18,
8273	0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69, 0x63, 0x62, 0x54, 0x79, 0x70, 0x65, 0x32, 0x4c,
8274	0x6f, 0x77, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x63, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65,
8275	0x32, 0x5f, 0x75, 0x70, 0x70, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x69,
8276	0x63, 0x62, 0x54, 0x79, 0x70, 0x65, 0x32, 0x55, 0x70, 0x70, 0x65, 0x72, 0x1a, 0x4c, 0x0a, 0x0a,
8277	0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x78, 0x31,
8278	0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x78, 0x31, 0x12, 0x0e, 0x0a, 0x02, 0x79, 0x31,
8279	0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x79, 0x31, 0x12, 0x0e, 0x0a, 0x02, 0x78, 0x32,
8280	0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x78, 0x32, 0x12, 0x0e, 0x0a, 0x02, 0x79, 0x32,
8281	0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x79, 0x32, 0x22, 0xd7, 0x01, 0x0a, 0x08, 0x4c,
8282	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x10, 0x4c, 0x4f, 0x43, 0x41, 0x54,
8283	0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x19, 0x0a,
8284	0x15, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x42, 0x55, 0x54, 0x54, 0x4f, 0x4e, 0x5f, 0x54, 0x4f,
8285	0x50, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x4b, 0x45, 0x59, 0x42,
8286	0x4f, 0x41, 0x52, 0x44, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x4c, 0x45, 0x46, 0x54,
8287	0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x5f, 0x42,
8288	0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x03, 0x12, 0x16, 0x0a,
8289	0x12, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x5f, 0x54, 0x4f, 0x50, 0x5f, 0x52, 0x49,
8290	0x47, 0x48, 0x54, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x53,
8291	0x49, 0x44, 0x45, 0x10, 0x06, 0x12, 0x0d, 0x0a, 0x09, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x53, 0x49,
8292	0x44, 0x45, 0x10, 0x07, 0x12, 0x22, 0x0a, 0x1e, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x4f, 0x46, 0x5f,
8293	0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x42, 0x55, 0x54, 0x54, 0x4f, 0x4e, 0x5f, 0x54, 0x4f, 0x50,
8294	0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x09, 0x22, 0x04, 0x08, 0x05, 0x10, 0x05, 0x22, 0x04,
8295	0x08, 0x08, 0x10, 0x08, 0x1a, 0x7b, 0x0a, 0x07, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12,
8296	0x57, 0x0a, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
8297	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
8298	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6f,
8299	0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e,
8300	0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x73, 0x74, 0x6f,
8301	0x72, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x73, 0x69, 0x7a, 0x65,
8302	0x5f, 0x67, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x69, 0x7a, 0x65, 0x47,
8303	0x62, 0x1a, 0xa0, 0x01, 0x0a, 0x09, 0x42, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x12,
8304	0x48, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
8305	0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
8306	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f,
8307	0x6e, 0x65, 0x6e, 0x74, 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x52, 0x09,
8308	0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72, 0x65,
8309	0x73, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72,
8310	0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61,
8311	0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75,
8312	0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x72, 0x65,
8313	0x73, 0x65, 0x6e, 0x74, 0x1a, 0x57, 0x0a, 0x0a, 0x42, 0x61, 0x72, 0x72, 0x65, 0x6c, 0x4a, 0x61,
8314	0x63, 0x6b, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
8315	0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73,
8316	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64,
8317	0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65,
8318	0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x1a, 0x80, 0x03,
8319	0x0a, 0x04, 0x57, 0x69, 0x66, 0x69, 0x12, 0x6c, 0x0a, 0x18, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72,
8320	0x74, 0x65, 0x64, 0x5f, 0x77, 0x6c, 0x61, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
8321	0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
8322	0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69,
8323	0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x2e, 0x57, 0x69, 0x66, 0x69, 0x2e,
8324	0x57, 0x4c, 0x41, 0x4e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x52, 0x16, 0x73, 0x75,
8325	0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x57, 0x6c, 0x61, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f,
8326	0x63, 0x6f, 0x6c, 0x73, 0x12, 0x54, 0x0a, 0x0a, 0x77, 0x69, 0x66, 0x69, 0x5f, 0x63, 0x68, 0x69,
8327	0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
8328	0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69,
8329	0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
8330	0x73, 0x2e, 0x57, 0x69, 0x66, 0x69, 0x2e, 0x57, 0x69, 0x66, 0x69, 0x43, 0x68, 0x69, 0x70, 0x52,
8331	0x09, 0x77, 0x69, 0x66, 0x69, 0x43, 0x68, 0x69, 0x70, 0x73, 0x12, 0x42, 0x0a, 0x0b, 0x77, 0x69,
8332	0x66, 0x69, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
8333	0x21, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
8334	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x57, 0x69, 0x66, 0x69, 0x43, 0x6f, 0x6e, 0x66,
8335	0x69, 0x67, 0x52, 0x0a, 0x77, 0x69, 0x66, 0x69, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x20,
8336	0x0a, 0x0c, 0x77, 0x69, 0x66, 0x69, 0x5f, 0x76, 0x70, 0x64, 0x5f, 0x73, 0x61, 0x72, 0x18, 0x04,
8337	0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x77, 0x69, 0x66, 0x69, 0x56, 0x70, 0x64, 0x53, 0x61, 0x72,
8338	0x22, 0x4e, 0x0a, 0x08, 0x57, 0x69, 0x66, 0x69, 0x43, 0x68, 0x69, 0x70, 0x12, 0x15, 0x0a, 0x11,
8339	0x57, 0x49, 0x46, 0x49, 0x5f, 0x43, 0x48, 0x49, 0x50, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57,
8340	0x4e, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x57, 0x49, 0x52, 0x45, 0x4c, 0x45, 0x53, 0x53, 0x5f,
8341	0x38, 0x36, 0x45, 0x44, 0x38, 0x30, 0x31, 0x44, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x57, 0x49,
8342	0x52, 0x45, 0x4c, 0x45, 0x53, 0x53, 0x5f, 0x52, 0x45, 0x41, 0x4c, 0x54, 0x45, 0x4b, 0x10, 0x02,
8343	0x1a, 0xb8, 0x02, 0x0a, 0x06, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x4d, 0x0a, 0x06, 0x72,
8344	0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x63, 0x68,
8345	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
8346	0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74,
8347	0x75, 0x72, 0x65, 0x73, 0x2e, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x67, 0x69,
8348	0x6f, 0x6e, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x47, 0x0a, 0x04, 0x65, 0x64,
8349	0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
8350	0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69,
8351	0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
8352	0x73, 0x2e, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x2e, 0x45, 0x64, 0x67, 0x65, 0x52, 0x04, 0x65,
8353	0x64, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18,
8354	0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22,
8355	0x36, 0x0a, 0x06, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x45, 0x47,
8356	0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, 0x0a,
8357	0x06, 0x53, 0x43, 0x52, 0x45, 0x45, 0x4e, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x4b, 0x45, 0x59,
8358	0x42, 0x4f, 0x41, 0x52, 0x44, 0x10, 0x02, 0x22, 0x42, 0x0a, 0x04, 0x45, 0x64, 0x67, 0x65, 0x12,
8359	0x10, 0x0a, 0x0c, 0x45, 0x44, 0x47, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10,
8360	0x00, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x52,
8361	0x49, 0x47, 0x48, 0x54, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x4f, 0x50, 0x10, 0x03, 0x12,
8362	0x0a, 0x0a, 0x06, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x10, 0x04, 0x1a, 0xb3, 0x0a, 0x0a, 0x12,
8363	0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c,
8364	0x65, 0x72, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
8365	0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73,
8366	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64,
8367	0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65,
8368	0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x12, 0x6a, 0x0a,
8369	0x07, 0x65, 0x63, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x51,
8370	0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
8371	0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46,
8372	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64,
8373	0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64,
8374	0x64, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x54, 0x79, 0x70,
8375	0x65, 0x52, 0x06, 0x65, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x47, 0x0a, 0x04, 0x70, 0x61, 0x72,
8376	0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
8377	0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e,
8378	0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64,
8379	0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x52, 0x04, 0x70, 0x61,
8380	0x72, 0x74, 0x12, 0x5b, 0x0a, 0x11, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x74, 0x79,
8381	0x70, 0x65, 0x63, 0x5f, 0x63, 0x6d, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e,
8382	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8383	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
8384	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x0f,
8385	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x54, 0x79, 0x70, 0x65, 0x63, 0x43, 0x6d, 0x64, 0x12,
8386	0x41, 0x0a, 0x03, 0x63, 0x62, 0x69, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63,
8387	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
8388	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61,
8389	0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x03, 0x63,
8390	0x62, 0x69, 0x12, 0x58, 0x0a, 0x0f, 0x64, 0x65, 0x74, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65,
8391	0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68,
8392	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
8393	0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74,
8394	0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x0e, 0x64, 0x65,
8395	0x74, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x6a, 0x0a, 0x19,
8396	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x5f, 0x63,
8397	0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x76, 0x32, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32,
8398	0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
8399	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
8400	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74,
8401	0x52, 0x16, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x43,
8402	0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x56, 0x32, 0x12, 0x63, 0x0a, 0x15, 0x66, 0x65, 0x61, 0x74,
8403	0x75, 0x72, 0x65, 0x5f, 0x61, 0x73, 0x73, 0x65, 0x72, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x6e, 0x69,
8404	0x63, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
8405	0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e,
8406	0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
8407	0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x13, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
8408	0x65, 0x41, 0x73, 0x73, 0x65, 0x72, 0x74, 0x73, 0x50, 0x61, 0x6e, 0x69, 0x63, 0x12, 0x68, 0x0a,
8409	0x18, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f,
8410	0x73, 0x61, 0x66, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32,
8411	0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
8412	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
8413	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74,
8414	0x52, 0x15, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x53,
8415	0x61, 0x66, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x70, 0x0a, 0x1c, 0x66, 0x65, 0x61, 0x74, 0x75,
8416	0x72, 0x65, 0x5f, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x64, 0x75, 0x6d, 0x70, 0x5f, 0x63,
8417	0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e,
8418	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8419	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
8420	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x19,
8421	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x44, 0x75, 0x6d,
8422	0x70, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x12, 0x6e, 0x0a, 0x0c, 0x62, 0x75, 0x69,
8423	0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32,
8424	0x4b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
8425	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
8426	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65,
8427	0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x42, 0x75, 0x69, 0x6c,
8428	0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x62, 0x75,
8429	0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x49, 0x0a, 0x12, 0x6d, 0x61, 0x78,
8430	0x5f, 0x73, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x5f, 0x6f, 0x64, 0x72, 0x5f, 0x6d, 0x68, 0x7a, 0x18,
8431	0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
8432	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61,
8433	0x6c, 0x75, 0x65, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x4f, 0x64,
8434	0x72, 0x4d, 0x68, 0x7a, 0x1a, 0x6f, 0x0a, 0x10, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e,
8435	0x66, 0x69, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
8436	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x45, 0x0a, 0x05, 0x76, 0x61,
8437	0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f,
8438	0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70,
8439	0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
8440	0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
8441	0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x4a, 0x0a, 0x16, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65,
8442	0x64, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12,
8443	0x13, 0x0a, 0x0f, 0x45, 0x43, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f,
8444	0x57, 0x4e, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x45, 0x43, 0x5f, 0x43, 0x48, 0x52, 0x4f, 0x4d,
8445	0x45, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x45, 0x43, 0x5f, 0x57, 0x49, 0x4c, 0x43, 0x4f, 0x10,
8446	0x02, 0x1a, 0x8e, 0x07, 0x0a, 0x15, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61,
8447	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x12, 0x72, 0x0a, 0x08, 0x74,
8448	0x70, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x57, 0x2e,
8449	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8450	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
8451	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x50, 0x6c,
8452	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x54, 0x72, 0x75,
8453	0x73, 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x6f, 0x64, 0x75,
8454	0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x74, 0x70, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12,
8455	0x60, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x77,
8456	0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e,
8457	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8458	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
8459	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x11,
8460	0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x77, 0x4b, 0x65, 0x79, 0x49,
8461	0x64, 0x12, 0x7f, 0x0a, 0x13, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x70, 0x6d,
8462	0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x4f,
8463	0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
8464	0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46,
8465	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x50,
8466	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x52, 0x75,
8467	0x6e, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x70, 0x6d, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52,
8468	0x11, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x70, 0x6d, 0x56, 0x65, 0x72, 0x73, 0x69,
8469	0x6f, 0x6e, 0x12, 0x6d, 0x0a, 0x0b, 0x67, 0x73, 0x63, 0x5f, 0x66, 0x77, 0x5f, 0x6e, 0x61, 0x6d,
8470	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x4d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
8471	0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e,
8472	0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
8473	0x2e, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
8474	0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x47, 0x73, 0x63, 0x46, 0x69, 0x72, 0x6d, 0x77, 0x61,
8475	0x72, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x09, 0x67, 0x73, 0x63, 0x46, 0x77, 0x4e, 0x61, 0x6d,
8476	0x65, 0x12, 0x6b, 0x0a, 0x19, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x5f,
8477	0x72, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x05,
8478	0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
8479	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72,
8480	0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72,
8481	0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x17, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x69, 0x73,
8482	0x65, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x53, 0x70, 0x61, 0x63, 0x65, 0x12, 0x4e,
8483	0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x61, 0x64, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01,
8484	0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e,
8485	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77,
8486	0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73,
8487	0x65, 0x6e, 0x74, 0x52, 0x09, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x41, 0x64, 0x69, 0x64, 0x22, 0x5c,
8488	0x0a, 0x19, 0x54, 0x72, 0x75, 0x73, 0x74, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
8489	0x6d, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x54,
8490	0x50, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10,
8491	0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x48, 0x49, 0x52, 0x44, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x59,
8492	0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x47, 0x53, 0x43, 0x5f, 0x48, 0x31, 0x42, 0x10, 0x02, 0x12,
8493	0x0b, 0x0a, 0x07, 0x47, 0x53, 0x43, 0x5f, 0x48, 0x31, 0x44, 0x10, 0x03, 0x22, 0x57, 0x0a, 0x11,
8494	0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x70, 0x6d, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
8495	0x6e, 0x12, 0x18, 0x0a, 0x14, 0x54, 0x50, 0x4d, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e,
8496	0x5f, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x54,
8497	0x50, 0x4d, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x56, 0x31, 0x5f, 0x32, 0x10,
8498	0x01, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x50, 0x4d, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e,
8499	0x5f, 0x56, 0x32, 0x10, 0x02, 0x22, 0x3b, 0x0a, 0x0f, 0x47, 0x73, 0x63, 0x46, 0x69, 0x72, 0x6d,
8500	0x77, 0x61, 0x72, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x47, 0x53, 0x43, 0x5f,
8501	0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x47, 0x53, 0x43, 0x5f, 0x43, 0x52,
8502	0x35, 0x30, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x47, 0x53, 0x43, 0x5f, 0x54, 0x49, 0x35, 0x30,
8503	0x10, 0x02, 0x1a, 0x57, 0x0a, 0x0a, 0x48, 0x6f, 0x74, 0x77, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67,
8504	0x12, 0x49, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
8505	0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63,
8506	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61,
8507	0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65,
8508	0x6e, 0x74, 0x52, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x1a, 0xaf, 0x01, 0x0a, 0x07,
8509	0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x48, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,
8510	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
8511	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61,
8512	0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x44,
8513	0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70,
8514	0x65, 0x22, 0x5a, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50,
8515	0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x54,
8516	0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x11,
8517	0x0a, 0x0d, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10,
8518	0x02, 0x12, 0x1a, 0x0a, 0x16, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e,
8519	0x41, 0x4c, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x03, 0x1a, 0x83, 0x02,
8520	0x0a, 0x08, 0x54, 0x6f, 0x75, 0x63, 0x68, 0x70, 0x61, 0x64, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72,
8521	0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68,
8522	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
8523	0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74,
8524	0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x72,
8525	0x65, 0x73, 0x65, 0x6e, 0x74, 0x12, 0x62, 0x0a, 0x0d, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x70, 0x61,
8526	0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3d, 0x2e, 0x63,
8527	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
8528	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61,
8529	0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x54, 0x6f, 0x75, 0x63, 0x68, 0x70, 0x61, 0x64, 0x2e, 0x54,
8530	0x6f, 0x75, 0x63, 0x68, 0x70, 0x61, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x74, 0x6f, 0x75,
8531	0x63, 0x68, 0x70, 0x61, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x48, 0x0a, 0x0c, 0x54, 0x6f, 0x75,
8532	0x63, 0x68, 0x70, 0x61, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50,
8533	0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x49,
8534	0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e,
8535	0x45, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, 0x54, 0x41, 0x43, 0x48, 0x41, 0x42, 0x4c,
8536	0x45, 0x10, 0x03, 0x1a, 0x61, 0x0a, 0x14, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x70, 0x68, 0x6f, 0x6e,
8537	0x65, 0x4d, 0x75, 0x74, 0x65, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x12, 0x49, 0x0a, 0x07, 0x70,
8538	0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63,
8539	0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
8540	0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61,
8541	0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70,
8542	0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x1a, 0xf4, 0x06, 0x0a, 0x07, 0x42, 0x61, 0x74, 0x74, 0x65,
8543	0x72, 0x79, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
8544	0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73,
8545	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64,
8546	0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65,
8547	0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x12, 0x54, 0x0a,
8548	0x08, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
8549	0x38, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
8550	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
8551	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79,
8552	0x2e, 0x4c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x08, 0x6c, 0x69, 0x66, 0x65, 0x74,
8553	0x69, 0x6d, 0x65, 0x12, 0x54, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x67, 0x18,
8554	0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
8555	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61,
8556	0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x42,
8557	0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x2e, 0x43, 0x68, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x67, 0x52,
8558	0x08, 0x63, 0x68, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x39, 0x0a, 0x19, 0x6e, 0x6f, 0x5f,
8559	0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x5f, 0x62, 0x6f, 0x6f, 0x74, 0x5f, 0x73, 0x75, 0x70,
8560	0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x6e, 0x6f,
8561	0x42, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x42, 0x6f, 0x6f, 0x74, 0x53, 0x75, 0x70, 0x70, 0x6f,
8562	0x72, 0x74, 0x65, 0x64, 0x1a, 0xe0, 0x02, 0x0a, 0x08, 0x4c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d,
8563	0x65, 0x12, 0x42, 0x0a, 0x0c, 0x73, 0x68, 0x69, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x69,
8564	0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
8565	0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e,
8566	0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x73, 0x68, 0x69, 0x70, 0x70, 0x69,
8567	0x6e, 0x67, 0x4d, 0x69, 0x6e, 0x12, 0x45, 0x0a, 0x0e, 0x64, 0x65, 0x65, 0x70, 0x5f, 0x73, 0x6c,
8568	0x65, 0x65, 0x70, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e,
8569	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8570	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c,
8571	0x64, 0x65, 0x65, 0x70, 0x53, 0x6c, 0x65, 0x65, 0x70, 0x4d, 0x69, 0x6e, 0x12, 0x40, 0x0a, 0x0b,
8572	0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
8573	0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63,
8574	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69,
8575	0x6f, 0x6e, 0x52, 0x0a, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x4d, 0x69, 0x6e, 0x12, 0x47,
8576	0x0a, 0x0f, 0x6c, 0x75, 0x63, 0x69, 0x64, 0x5f, 0x73, 0x6c, 0x65, 0x65, 0x70, 0x5f, 0x6d, 0x69,
8577	0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
8578	0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e,
8579	0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x6c, 0x75, 0x63, 0x69, 0x64, 0x53,
8580	0x6c, 0x65, 0x65, 0x70, 0x4d, 0x69, 0x6e, 0x12, 0x3e, 0x0a, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76,
8581	0x65, 0x5f, 0x6d, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x68,
8582	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
8583	0x61, 0x70, 0x69, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x61, 0x63,
8584	0x74, 0x69, 0x76, 0x65, 0x4d, 0x69, 0x6e, 0x1a, 0xd3, 0x01, 0x0a, 0x08, 0x43, 0x68, 0x61, 0x72,
8585	0x67, 0x69, 0x6e, 0x67, 0x12, 0x3e, 0x0a, 0x0a, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x6d,
8586	0x61, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
8587	0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69,
8588	0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x61, 0x63, 0x74, 0x69, 0x76,
8589	0x65, 0x4d, 0x61, 0x78, 0x12, 0x40, 0x0a, 0x0b, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x5f,
8590	0x6d, 0x61, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x68, 0x72, 0x6f,
8591	0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70,
8592	0x69, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x73, 0x75, 0x73, 0x70,
8593	0x65, 0x6e, 0x64, 0x4d, 0x61, 0x78, 0x12, 0x45, 0x0a, 0x0e, 0x64, 0x65, 0x65, 0x70, 0x5f, 0x73,
8594	0x6c, 0x65, 0x65, 0x70, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f,
8595	0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
8596	0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
8597	0x0c, 0x64, 0x65, 0x65, 0x70, 0x53, 0x6c, 0x65, 0x65, 0x70, 0x4d, 0x61, 0x78, 0x1a, 0x5a, 0x0a,
8598	0x0d, 0x50, 0x72, 0x69, 0x76, 0x61, 0x63, 0x79, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x12, 0x49,
8599	0x0a, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
8600	0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
8601	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
8602	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74,
8603	0x52, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x1a, 0x88, 0x03, 0x0a, 0x03, 0x53, 0x6f,
8604	0x63, 0x12, 0x48, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x01, 0x20,
8605	0x03, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73,
8606	0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6d, 0x70,
8607	0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x6f, 0x63, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
8608	0x65, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x5c, 0x0a, 0x0f, 0x76,
8609	0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02,
8610	0x20, 0x03, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
8611	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6d,
8612	0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x6f, 0x63, 0x2e, 0x56, 0x75, 0x6c, 0x6e, 0x65,
8613	0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0f, 0x76, 0x75, 0x6c, 0x6e, 0x65, 0x72,
8614	0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x17, 0x61, 0x72, 0x63,
8615	0x5f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x73, 0x5f, 0x73, 0x75,
8616	0x66, 0x66, 0x69, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x61, 0x72, 0x63, 0x4d,
8617	0x65, 0x64, 0x69, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x63, 0x73, 0x53, 0x75, 0x66, 0x66, 0x69, 0x78,
8618	0x12, 0x52, 0x0a, 0x0c, 0x68, 0x65, 0x76, 0x63, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74,
8619	0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
8620	0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48,
8621	0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e,
8622	0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x68, 0x65, 0x76, 0x63, 0x53, 0x75, 0x70,
8623	0x70, 0x6f, 0x72, 0x74, 0x12, 0x4e, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
8624	0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e,
8625	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8626	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f,
8627	0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f,
8628	0x6e, 0x66, 0x69, 0x67, 0x1a, 0x6d, 0x0a, 0x14, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x50,
8629	0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x65, 0x72, 0x12, 0x55, 0x0a, 0x0a,
8630	0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
8631	0x32, 0x35, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f,
8632	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65,
8633	0x6e, 0x74, 0x2e, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x50, 0x6f, 0x72, 0x74, 0x43, 0x6f,
8634	0x6e, 0x76, 0x65, 0x72, 0x74, 0x65, 0x72, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74,
8635	0x65, 0x72, 0x73, 0x1a, 0x50, 0x0a, 0x03, 0x48, 0x70, 0x73, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72,
8636	0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68,
8637	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
8638	0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74,
8639	0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x72,
8640	0x65, 0x73, 0x65, 0x6e, 0x74, 0x1a, 0x50, 0x0a, 0x03, 0x50, 0x6f, 0x45, 0x12, 0x49, 0x0a, 0x07,
8641	0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e,
8642	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8643	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
8644	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07,
8645	0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x1a, 0x87, 0x01, 0x0a, 0x0b, 0x50, 0x6f, 0x77, 0x65,
8646	0x72, 0x53, 0x75, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x4f, 0x0a, 0x0a, 0x62, 0x61, 0x72, 0x72, 0x65,
8647	0x6c, 0x6a, 0x61, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68,
8648	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
8649	0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74,
8650	0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x0a, 0x62, 0x61,
8651	0x72, 0x72, 0x65, 0x6c, 0x6a, 0x61, 0x63, 0x6b, 0x12, 0x27, 0x0a, 0x10, 0x75, 0x73, 0x62, 0x5f,
8652	0x6d, 0x69, 0x6e, 0x5f, 0x61, 0x63, 0x5f, 0x77, 0x61, 0x74, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01,
8653	0x28, 0x05, 0x52, 0x0d, 0x75, 0x73, 0x62, 0x4d, 0x69, 0x6e, 0x41, 0x63, 0x57, 0x61, 0x74, 0x74,
8654	0x73, 0x1a, 0x4d, 0x0a, 0x09, 0x50, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x69, 0x74, 0x79, 0x12, 0x40,
8655	0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
8656	0x26, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
8657	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x69, 0x74,
8658	0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
8659	0x1a, 0x55, 0x0a, 0x05, 0x54, 0x6f, 0x75, 0x63, 0x68, 0x12, 0x4c, 0x0a, 0x13, 0x74, 0x6f, 0x75,
8660	0x63, 0x68, 0x5f, 0x73, 0x6c, 0x6f, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
8661	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
8662	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56,
8663	0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x53, 0x6c, 0x6f, 0x70, 0x44,
8664	0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x1a, 0x37, 0x0a, 0x07, 0x54, 0x68, 0x65, 0x72, 0x6d,
8665	0x61, 0x6c, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x70, 0x61, 0x74,
8666	0x68, 0x5f, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10,
8667	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x61, 0x74, 0x68, 0x53, 0x75, 0x66, 0x66, 0x69, 0x78,
8668	0x1a, 0xca, 0x01, 0x0a, 0x12, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x50, 0x72, 0x6f, 0x62,
8669	0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65,
8670	0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
8671	0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69,
8672	0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
8673	0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65,
8674	0x6e, 0x74, 0x12, 0x69, 0x0a, 0x18, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x5f,
8675	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x02,
8676	0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
8677	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72,
8678	0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72,
8679	0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x16, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64,
8680	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x1a, 0xe5, 0x01,
8681	0x0a, 0x04, 0x44, 0x67, 0x70, 0x75, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e,
8682	0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69,
8683	0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e,
8684	0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73,
8685	0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e,
8686	0x74, 0x12, 0x52, 0x0a, 0x09, 0x64, 0x67, 0x70, 0x75, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02,
8687	0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
8688	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72,
8689	0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x44, 0x67,
8690	0x70, 0x75, 0x2e, 0x44, 0x67, 0x70, 0x75, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x67, 0x70,
8691	0x75, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3e, 0x0a, 0x08, 0x44, 0x67, 0x70, 0x75, 0x54, 0x79, 0x70,
8692	0x65, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x47, 0x50, 0x55, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57,
8693	0x4e, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x47, 0x50, 0x55, 0x5f, 0x4e, 0x56, 0x33, 0x30,
8694	0x35, 0x30, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x47, 0x50, 0x55, 0x5f, 0x4e, 0x56, 0x34,
8695	0x30, 0x35, 0x30, 0x10, 0x02, 0x1a, 0x50, 0x0a, 0x03, 0x55, 0x77, 0x62, 0x12, 0x49, 0x0a, 0x07,
8696	0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e,
8697	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8698	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
8699	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07,
8700	0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x1a, 0x9d, 0x01, 0x0a, 0x0d, 0x48, 0x61, 0x72, 0x64,
8701	0x77, 0x61, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x70, 0x75,
8702	0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67,
8703	0x70, 0x75, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x70, 0x75, 0x5f,
8704	0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x70,
8705	0x75, 0x56, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x70, 0x75, 0x5f, 0x73,
8706	0x6f, 0x63, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
8707	0x0c, 0x63, 0x70, 0x75, 0x53, 0x6f, 0x63, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x12, 0x28, 0x0a,
8708	0x10, 0x64, 0x6d, 0x69, 0x5f, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x6e, 0x61, 0x6d,
8709	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x64, 0x6d, 0x69, 0x50, 0x72, 0x6f, 0x64,
8710	0x75, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x8c, 0x01, 0x0a, 0x09, 0x4b, 0x62, 0x41, 0x6c,
8711	0x73, 0x53, 0x74, 0x65, 0x70, 0x12, 0x2b, 0x0a, 0x11, 0x62, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x67,
8712	0x68, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01,
8713	0x52, 0x10, 0x62, 0x61, 0x63, 0x6b, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x50, 0x65, 0x72, 0x63, 0x65,
8714	0x6e, 0x74, 0x12, 0x52, 0x0a, 0x0d, 0x6c, 0x75, 0x78, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68,
8715	0x6f, 0x6c, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x68, 0x72, 0x6f,
8716	0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70,
8717	0x69, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x2e, 0x4c, 0x75, 0x78, 0x54,
8718	0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x52, 0x0c, 0x6c, 0x75, 0x78, 0x54, 0x68, 0x72,
8719	0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x1a, 0xd0, 0x01, 0x0a, 0x0e, 0x44, 0x65, 0x74, 0x61, 0x63,
8720	0x68, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x65, 0x63, 0x5f,
8721	0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
8722	0x52, 0x0b, 0x65, 0x63, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a,
8723	0x0a, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
8724	0x0d, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10,
8725	0x74, 0x6f, 0x75, 0x63, 0x68, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
8726	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x49, 0x6d, 0x61,
8727	0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x75, 0x73, 0x62, 0x5f, 0x70, 0x61,
8728	0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x75, 0x73, 0x62, 0x50, 0x61, 0x74,
8729	0x68, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x05,
8730	0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x49, 0x64, 0x12, 0x19,
8731	0x0a, 0x08, 0x69, 0x32, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
8732	0x52, 0x07, 0x69, 0x32, 0x63, 0x50, 0x61, 0x74, 0x68, 0x1a, 0xb9, 0x01, 0x0a, 0x07, 0x53, 0x75,
8733	0x73, 0x70, 0x65, 0x6e, 0x64, 0x12, 0x55, 0x0a, 0x0e, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64,
8734	0x5f, 0x74, 0x6f, 0x5f, 0x6d, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e,
8735	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8736	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
8737	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x0c,
8738	0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x4d, 0x65, 0x6d, 0x12, 0x57, 0x0a, 0x0f,
8739	0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x69, 0x64, 0x6c, 0x65, 0x18,
8740	0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
8741	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61,
8742	0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50,
8743	0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x0d, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x54,
8744	0x6f, 0x49, 0x64, 0x6c, 0x65, 0x1a, 0x50, 0x0a, 0x03, 0x56, 0x72, 0x72, 0x12, 0x49, 0x0a, 0x07,
8745	0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e,
8746	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8747	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
8748	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07,
8749	0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x1a, 0x55, 0x0a, 0x08, 0x53, 0x64, 0x52, 0x65, 0x61,
8750	0x64, 0x65, 0x72, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01,
8751	0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f,
8752	0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72,
8753	0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72,
8754	0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x1a, 0x1d,
8755	0x0a, 0x07, 0x4f, 0x45, 0x4d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
8756	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x40, 0x0a,
8757	0x03, 0x46, 0x61, 0x6e, 0x12, 0x39, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e,
8758	0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
8759	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32,
8760	0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x66, 0x61, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a,
8761	0x6b, 0x0a, 0x17, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x72, 0x75, 0x70, 0x74, 0x43, 0x6f, 0x6e, 0x74,
8762	0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x50, 0x0a, 0x0b, 0x6e, 0x6d,
8763	0x69, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
8764	0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e,
8765	0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
8766	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74,
8767	0x52, 0x0a, 0x6e, 0x6d, 0x69, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x1a, 0x59, 0x0a, 0x0c,
8768	0x54, 0x69, 0x6c, 0x65, 0x64, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x49, 0x0a, 0x07,
8769	0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e,
8770	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69,
8771	0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65,
8772	0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07,
8773	0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x1a, 0xbe, 0x01, 0x0a, 0x07, 0x43, 0x70, 0x75, 0x49,
8774	0x6e, 0x66, 0x6f, 0x12, 0x5b, 0x0a, 0x0b, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x69, 0x6e,
8775	0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
8776	0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69,
8777	0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
8778	0x73, 0x2e, 0x43, 0x70, 0x75, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x56, 0x65, 0x6e, 0x64, 0x6f, 0x72,
8779	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f,
8780	0x1a, 0x56, 0x0a, 0x0a, 0x56, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24,
8781	0x0a, 0x0e, 0x63, 0x70, 0x75, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x5f, 0x6e, 0x75, 0x6d,
8782	0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x63, 0x70, 0x75, 0x46, 0x61, 0x6d, 0x69, 0x6c,
8783	0x79, 0x4e, 0x75, 0x6d, 0x12, 0x22, 0x0a, 0x0d, 0x63, 0x70, 0x75, 0x5f, 0x6d, 0x6f, 0x64, 0x65,
8784	0x6c, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x70, 0x75,
8785	0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x75, 0x6d, 0x1a, 0x55, 0x0a, 0x08, 0x50, 0x65, 0x6e, 0x64,
8786	0x72, 0x69, 0x76, 0x65, 0x12, 0x49, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18,
8787	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
8788	0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x61,
8789	0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2e, 0x50,
8790	0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x22,
8791	0x3c, 0x0a, 0x07, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x52,
8792	0x45, 0x53, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12,
8793	0x0b, 0x0a, 0x07, 0x50, 0x52, 0x45, 0x53, 0x45, 0x4e, 0x54, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b,
8794	0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x45, 0x53, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x22, 0xa4, 0x01,
8795	0x0a, 0x0c, 0x50, 0x6f, 0x72, 0x74, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0b,
8796	0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x4c,
8797	0x45, 0x46, 0x54, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x02,
8798	0x12, 0x08, 0x0a, 0x04, 0x42, 0x41, 0x43, 0x4b, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x46, 0x52,
8799	0x4f, 0x4e, 0x54, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x46, 0x52,
8800	0x4f, 0x4e, 0x54, 0x10, 0x05, 0x12, 0x0d, 0x0a, 0x09, 0x4c, 0x45, 0x46, 0x54, 0x5f, 0x42, 0x41,
8801	0x43, 0x4b, 0x10, 0x06, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x46, 0x52,
8802	0x4f, 0x4e, 0x54, 0x10, 0x07, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x49, 0x47, 0x48, 0x54, 0x5f, 0x42,
8803	0x41, 0x43, 0x4b, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, 0x42, 0x41, 0x43, 0x4b, 0x5f, 0x4c, 0x45,
8804	0x46, 0x54, 0x10, 0x09, 0x12, 0x0e, 0x0a, 0x0a, 0x42, 0x41, 0x43, 0x4b, 0x5f, 0x52, 0x49, 0x47,
8805	0x48, 0x54, 0x10, 0x0a, 0x42, 0x2a, 0x5a, 0x28, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
8806	0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d,
8807	0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x67, 0x6f, 0x2f, 0x61, 0x70, 0x69,
8808	0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
8809}
8810
8811var (
8812	file_chromiumos_config_api_topology_proto_rawDescOnce sync.Once
8813	file_chromiumos_config_api_topology_proto_rawDescData = file_chromiumos_config_api_topology_proto_rawDesc
8814)
8815
8816func file_chromiumos_config_api_topology_proto_rawDescGZIP() []byte {
8817	file_chromiumos_config_api_topology_proto_rawDescOnce.Do(func() {
8818		file_chromiumos_config_api_topology_proto_rawDescData = protoimpl.X.CompressGZIP(file_chromiumos_config_api_topology_proto_rawDescData)
8819	})
8820	return file_chromiumos_config_api_topology_proto_rawDescData
8821}
8822
8823var file_chromiumos_config_api_topology_proto_enumTypes = make([]protoimpl.EnumInfo, 33)
8824var file_chromiumos_config_api_topology_proto_msgTypes = make([]protoimpl.MessageInfo, 73)
8825var file_chromiumos_config_api_topology_proto_goTypes = []interface{}{
8826	(Topology_Type)(0),                                                    // 0: chromiumos.config.api.Topology.Type
8827	(Duration_Type)(0),                                                    // 1: chromiumos.config.api.Duration.Type
8828	(HardwareFeatures_Present)(0),                                         // 2: chromiumos.config.api.HardwareFeatures.Present
8829	(HardwareFeatures_PortPosition)(0),                                    // 3: chromiumos.config.api.HardwareFeatures.PortPosition
8830	(HardwareFeatures_Cellular_CellularType)(0),                           // 4: chromiumos.config.api.HardwareFeatures.Cellular.CellularType
8831	(HardwareFeatures_Cellular_ModemType)(0),                              // 5: chromiumos.config.api.HardwareFeatures.Cellular.ModemType
8832	(HardwareFeatures_Audio_AudioCodec)(0),                                // 6: chromiumos.config.api.HardwareFeatures.Audio.AudioCodec
8833	(HardwareFeatures_Audio_Amplifier)(0),                                 // 7: chromiumos.config.api.HardwareFeatures.Audio.Amplifier
8834	(HardwareFeatures_Audio_AudioConfigStructure)(0),                      // 8: chromiumos.config.api.HardwareFeatures.Audio.AudioConfigStructure
8835	(HardwareFeatures_Camera_Interface)(0),                                // 9: chromiumos.config.api.HardwareFeatures.Camera.Interface
8836	(HardwareFeatures_Camera_Facing)(0),                                   // 10: chromiumos.config.api.HardwareFeatures.Camera.Facing
8837	(HardwareFeatures_Camera_Orientation)(0),                              // 11: chromiumos.config.api.HardwareFeatures.Camera.Orientation
8838	(HardwareFeatures_Camera_Flags)(0),                                    // 12: chromiumos.config.api.HardwareFeatures.Camera.Flags
8839	(HardwareFeatures_Screen_ConnectorType)(0),                            // 13: chromiumos.config.api.HardwareFeatures.Screen.ConnectorType
8840	(HardwareFeatures_FormFactor_FormFactorType)(0),                       // 14: chromiumos.config.api.HardwareFeatures.FormFactor.FormFactorType
8841	(HardwareFeatures_FormFactor_RecoveryInputType)(0),                    // 15: chromiumos.config.api.HardwareFeatures.FormFactor.RecoveryInputType
8842	(HardwareFeatures_Stylus_StylusType)(0),                               // 16: chromiumos.config.api.HardwareFeatures.Stylus.StylusType
8843	(HardwareFeatures_Keyboard_KeyboardType)(0),                           // 17: chromiumos.config.api.HardwareFeatures.Keyboard.KeyboardType
8844	(HardwareFeatures_Keyboard_KeyboardMcuType)(0),                        // 18: chromiumos.config.api.HardwareFeatures.Keyboard.KeyboardMcuType
8845	(HardwareFeatures_Keyboard_KeyboardBottomLeftLayout)(0),               // 19: chromiumos.config.api.HardwareFeatures.Keyboard.KeyboardBottomLeftLayout
8846	(HardwareFeatures_Keyboard_KeyboardBottomRightLayout)(0),              // 20: chromiumos.config.api.HardwareFeatures.Keyboard.KeyboardBottomRightLayout
8847	(HardwareFeatures_Keyboard_NumericPadLayout)(0),                       // 21: chromiumos.config.api.HardwareFeatures.Keyboard.NumericPadLayout
8848	(HardwareFeatures_Fingerprint_Location)(0),                            // 22: chromiumos.config.api.HardwareFeatures.Fingerprint.Location
8849	(HardwareFeatures_Wifi_WifiChip)(0),                                   // 23: chromiumos.config.api.HardwareFeatures.Wifi.WifiChip
8850	(HardwareFeatures_Button_Region)(0),                                   // 24: chromiumos.config.api.HardwareFeatures.Button.Region
8851	(HardwareFeatures_Button_Edge)(0),                                     // 25: chromiumos.config.api.HardwareFeatures.Button.Edge
8852	(HardwareFeatures_EmbeddedController_EmbeddedControllerType)(0),       // 26: chromiumos.config.api.HardwareFeatures.EmbeddedController.EmbeddedControllerType
8853	(HardwareFeatures_TrustedPlatformModule_TrustedPlatformModuleType)(0), // 27: chromiumos.config.api.HardwareFeatures.TrustedPlatformModule.TrustedPlatformModuleType
8854	(HardwareFeatures_TrustedPlatformModule_RuntimeTpmVersion)(0),         // 28: chromiumos.config.api.HardwareFeatures.TrustedPlatformModule.RuntimeTpmVersion
8855	(HardwareFeatures_TrustedPlatformModule_GscFirmwareName)(0),           // 29: chromiumos.config.api.HardwareFeatures.TrustedPlatformModule.GscFirmwareName
8856	(HardwareFeatures_Display_Type)(0),                                    // 30: chromiumos.config.api.HardwareFeatures.Display.Type
8857	(HardwareFeatures_Touchpad_TouchpadType)(0),                           // 31: chromiumos.config.api.HardwareFeatures.Touchpad.TouchpadType
8858	(HardwareFeatures_Dgpu_DgpuType)(0),                                   // 32: chromiumos.config.api.HardwareFeatures.Dgpu.DgpuType
8859	(*Topology)(nil),                                                      // 33: chromiumos.config.api.Topology
8860	(*Duration)(nil),                                                      // 34: chromiumos.config.api.Duration
8861	(*HardwareFeatures)(nil),                                              // 35: chromiumos.config.api.HardwareFeatures
8862	nil,                                                                   // 36: chromiumos.config.api.Topology.DescriptionEntry
8863	(*HardwareFeatures_Count)(nil),                                        // 37: chromiumos.config.api.HardwareFeatures.Count
8864	(*HardwareFeatures_UsbC)(nil),                                         // 38: chromiumos.config.api.HardwareFeatures.UsbC
8865	(*HardwareFeatures_UsbA)(nil),                                         // 39: chromiumos.config.api.HardwareFeatures.UsbA
8866	(*HardwareFeatures_Cellular)(nil),                                     // 40: chromiumos.config.api.HardwareFeatures.Cellular
8867	(*HardwareFeatures_Hdmi)(nil),                                         // 41: chromiumos.config.api.HardwareFeatures.Hdmi
8868	(*HardwareFeatures_FirmwareConfiguration)(nil),                        // 42: chromiumos.config.api.HardwareFeatures.FirmwareConfiguration
8869	(*HardwareFeatures_Audio)(nil),                                        // 43: chromiumos.config.api.HardwareFeatures.Audio
8870	(*HardwareFeatures_Camera)(nil),                                       // 44: chromiumos.config.api.HardwareFeatures.Camera
8871	(*HardwareFeatures_Accelerometer)(nil),                                // 45: chromiumos.config.api.HardwareFeatures.Accelerometer
8872	(*HardwareFeatures_Gyroscope)(nil),                                    // 46: chromiumos.config.api.HardwareFeatures.Gyroscope
8873	(*HardwareFeatures_Magnetometer)(nil),                                 // 47: chromiumos.config.api.HardwareFeatures.Magnetometer
8874	(*HardwareFeatures_LightSensor)(nil),                                  // 48: chromiumos.config.api.HardwareFeatures.LightSensor
8875	(*HardwareFeatures_Screen)(nil),                                       // 49: chromiumos.config.api.HardwareFeatures.Screen
8876	(*HardwareFeatures_FormFactor)(nil),                                   // 50: chromiumos.config.api.HardwareFeatures.FormFactor
8877	(*HardwareFeatures_Stylus)(nil),                                       // 51: chromiumos.config.api.HardwareFeatures.Stylus
8878	(*HardwareFeatures_Keyboard)(nil),                                     // 52: chromiumos.config.api.HardwareFeatures.Keyboard
8879	(*HardwareFeatures_Memory)(nil),                                       // 53: chromiumos.config.api.HardwareFeatures.Memory
8880	(*HardwareFeatures_Fingerprint)(nil),                                  // 54: chromiumos.config.api.HardwareFeatures.Fingerprint
8881	(*HardwareFeatures_Storage)(nil),                                      // 55: chromiumos.config.api.HardwareFeatures.Storage
8882	(*HardwareFeatures_Bluetooth)(nil),                                    // 56: chromiumos.config.api.HardwareFeatures.Bluetooth
8883	(*HardwareFeatures_BarrelJack)(nil),                                   // 57: chromiumos.config.api.HardwareFeatures.BarrelJack
8884	(*HardwareFeatures_Wifi)(nil),                                         // 58: chromiumos.config.api.HardwareFeatures.Wifi
8885	(*HardwareFeatures_Button)(nil),                                       // 59: chromiumos.config.api.HardwareFeatures.Button
8886	(*HardwareFeatures_EmbeddedController)(nil),                           // 60: chromiumos.config.api.HardwareFeatures.EmbeddedController
8887	(*HardwareFeatures_TrustedPlatformModule)(nil),                        // 61: chromiumos.config.api.HardwareFeatures.TrustedPlatformModule
8888	(*HardwareFeatures_Hotwording)(nil),                                   // 62: chromiumos.config.api.HardwareFeatures.Hotwording
8889	(*HardwareFeatures_Display)(nil),                                      // 63: chromiumos.config.api.HardwareFeatures.Display
8890	(*HardwareFeatures_Touchpad)(nil),                                     // 64: chromiumos.config.api.HardwareFeatures.Touchpad
8891	(*HardwareFeatures_MicrophoneMuteSwitch)(nil),                         // 65: chromiumos.config.api.HardwareFeatures.MicrophoneMuteSwitch
8892	(*HardwareFeatures_Battery)(nil),                                      // 66: chromiumos.config.api.HardwareFeatures.Battery
8893	(*HardwareFeatures_PrivacyScreen)(nil),                                // 67: chromiumos.config.api.HardwareFeatures.PrivacyScreen
8894	(*HardwareFeatures_Soc)(nil),                                          // 68: chromiumos.config.api.HardwareFeatures.Soc
8895	(*HardwareFeatures_DisplayPortConverter)(nil),                         // 69: chromiumos.config.api.HardwareFeatures.DisplayPortConverter
8896	(*HardwareFeatures_Hps)(nil),                                          // 70: chromiumos.config.api.HardwareFeatures.Hps
8897	(*HardwareFeatures_PoE)(nil),                                          // 71: chromiumos.config.api.HardwareFeatures.PoE
8898	(*HardwareFeatures_PowerSupply)(nil),                                  // 72: chromiumos.config.api.HardwareFeatures.PowerSupply
8899	(*HardwareFeatures_Proximity)(nil),                                    // 73: chromiumos.config.api.HardwareFeatures.Proximity
8900	(*HardwareFeatures_Touch)(nil),                                        // 74: chromiumos.config.api.HardwareFeatures.Touch
8901	(*HardwareFeatures_Thermal)(nil),                                      // 75: chromiumos.config.api.HardwareFeatures.Thermal
8902	(*HardwareFeatures_RuntimeProbeConfig)(nil),                           // 76: chromiumos.config.api.HardwareFeatures.RuntimeProbeConfig
8903	(*HardwareFeatures_Dgpu)(nil),                                         // 77: chromiumos.config.api.HardwareFeatures.Dgpu
8904	(*HardwareFeatures_Uwb)(nil),                                          // 78: chromiumos.config.api.HardwareFeatures.Uwb
8905	(*HardwareFeatures_HardwareProbe)(nil),                                // 79: chromiumos.config.api.HardwareFeatures.HardwareProbe
8906	(*HardwareFeatures_KbAlsStep)(nil),                                    // 80: chromiumos.config.api.HardwareFeatures.KbAlsStep
8907	(*HardwareFeatures_DetachableBase)(nil),                               // 81: chromiumos.config.api.HardwareFeatures.DetachableBase
8908	(*HardwareFeatures_Suspend)(nil),                                      // 82: chromiumos.config.api.HardwareFeatures.Suspend
8909	(*HardwareFeatures_Vrr)(nil),                                          // 83: chromiumos.config.api.HardwareFeatures.Vrr
8910	(*HardwareFeatures_SdReader)(nil),                                     // 84: chromiumos.config.api.HardwareFeatures.SdReader
8911	(*HardwareFeatures_OEMInfo)(nil),                                      // 85: chromiumos.config.api.HardwareFeatures.OEMInfo
8912	(*HardwareFeatures_Fan)(nil),                                          // 86: chromiumos.config.api.HardwareFeatures.Fan
8913	(*HardwareFeatures_InterruptControllerInfo)(nil),                      // 87: chromiumos.config.api.HardwareFeatures.InterruptControllerInfo
8914	(*HardwareFeatures_TiledDisplay)(nil),                                 // 88: chromiumos.config.api.HardwareFeatures.TiledDisplay
8915	(*HardwareFeatures_CpuInfo)(nil),                                      // 89: chromiumos.config.api.HardwareFeatures.CpuInfo
8916	(*HardwareFeatures_Pendrive)(nil),                                     // 90: chromiumos.config.api.HardwareFeatures.Pendrive
8917	(*HardwareFeatures_UsbC_Port)(nil),                                    // 91: chromiumos.config.api.HardwareFeatures.UsbC.Port
8918	(*HardwareFeatures_Cellular_DynamicPowerReductionConfig)(nil),         // 92: chromiumos.config.api.HardwareFeatures.Cellular.DynamicPowerReductionConfig
8919	nil,                               // 93: chromiumos.config.api.HardwareFeatures.Cellular.DynamicPowerReductionConfig.PowerLevelMappingEntry
8920	nil,                               // 94: chromiumos.config.api.HardwareFeatures.Cellular.DynamicPowerReductionConfig.RegulatoryDomainMappingEntry
8921	(*HardwareFeatures_Hdmi_Cec)(nil), // 95: chromiumos.config.api.HardwareFeatures.Hdmi.Cec
8922	(*HardwareFeatures_FirmwareConfiguration_SemVer)(nil),            // 96: chromiumos.config.api.HardwareFeatures.FirmwareConfiguration.SemVer
8923	(*HardwareFeatures_Audio_CardConfig)(nil),                        // 97: chromiumos.config.api.HardwareFeatures.Audio.CardConfig
8924	(*HardwareFeatures_Camera_Device)(nil),                           // 98: chromiumos.config.api.HardwareFeatures.Camera.Device
8925	(*HardwareFeatures_Fingerprint_FingerprintDiag)(nil),             // 99: chromiumos.config.api.HardwareFeatures.Fingerprint.FingerprintDiag
8926	(*HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian)(nil), // 100: chromiumos.config.api.HardwareFeatures.Fingerprint.FingerprintDiag.PixelMedian
8927	(*HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone)(nil),  // 101: chromiumos.config.api.HardwareFeatures.Fingerprint.FingerprintDiag.DetectZone
8928	nil, // 102: chromiumos.config.api.HardwareFeatures.EmbeddedController.BuildConfigEntry
8929	(*HardwareFeatures_Battery_Lifetime)(nil),   // 103: chromiumos.config.api.HardwareFeatures.Battery.Lifetime
8930	(*HardwareFeatures_Battery_Charging)(nil),   // 104: chromiumos.config.api.HardwareFeatures.Battery.Charging
8931	(*HardwareFeatures_CpuInfo_VendorInfo)(nil), // 105: chromiumos.config.api.HardwareFeatures.CpuInfo.VendorInfo
8932	(*Component_Amplifier)(nil),                 // 106: chromiumos.config.api.Component.Amplifier
8933	(*Component_DisplayPanel_Properties)(nil),   // 107: chromiumos.config.api.Component.DisplayPanel.Properties
8934	(*wrapperspb.BoolValue)(nil),                // 108: google.protobuf.BoolValue
8935	(*Component_Memory_Profile)(nil),            // 109: chromiumos.config.api.Component.Memory.Profile
8936	(Component_Storage_StorageType)(0),          // 110: chromiumos.config.api.Component.Storage.StorageType
8937	(*Component_Bluetooth)(nil),                 // 111: chromiumos.config.api.Component.Bluetooth
8938	(Component_Wifi_WLANProtocol)(0),            // 112: chromiumos.config.api.Component.Wifi.WLANProtocol
8939	(*WifiConfig)(nil),                          // 113: chromiumos.config.api.WifiConfig
8940	(*Component_EmbeddedController)(nil),        // 114: chromiumos.config.api.Component.EmbeddedController
8941	(*wrapperspb.UInt32Value)(nil),              // 115: google.protobuf.UInt32Value
8942	(Component_Soc_Feature)(0),                  // 116: chromiumos.config.api.Component.Soc.Feature
8943	(Component_Soc_Vulnerability)(0),            // 117: chromiumos.config.api.Component.Soc.Vulnerability
8944	(*ResourceConfig)(nil),                      // 118: chromiumos.config.api.ResourceConfig
8945	(*Component_DisplayPortConverter)(nil),      // 119: chromiumos.config.api.Component.DisplayPortConverter
8946	(*ProximityConfig)(nil),                     // 120: chromiumos.config.api.ProximityConfig
8947	(*Component_LuxThreshold)(nil),              // 121: chromiumos.config.api.Component.LuxThreshold
8948	(*wrapperspb.StringValue)(nil),              // 122: google.protobuf.StringValue
8949}
8950var file_chromiumos_config_api_topology_proto_depIdxs = []int32{
8951	0,   // 0: chromiumos.config.api.Topology.type:type_name -> chromiumos.config.api.Topology.Type
8952	36,  // 1: chromiumos.config.api.Topology.description:type_name -> chromiumos.config.api.Topology.DescriptionEntry
8953	35,  // 2: chromiumos.config.api.Topology.hardware_feature:type_name -> chromiumos.config.api.HardwareFeatures
8954	1,   // 3: chromiumos.config.api.Duration.type:type_name -> chromiumos.config.api.Duration.Type
8955	38,  // 4: chromiumos.config.api.HardwareFeatures.usb_c:type_name -> chromiumos.config.api.HardwareFeatures.UsbC
8956	39,  // 5: chromiumos.config.api.HardwareFeatures.usb_a:type_name -> chromiumos.config.api.HardwareFeatures.UsbA
8957	40,  // 6: chromiumos.config.api.HardwareFeatures.cellular:type_name -> chromiumos.config.api.HardwareFeatures.Cellular
8958	41,  // 7: chromiumos.config.api.HardwareFeatures.hdmi:type_name -> chromiumos.config.api.HardwareFeatures.Hdmi
8959	42,  // 8: chromiumos.config.api.HardwareFeatures.fw_config:type_name -> chromiumos.config.api.HardwareFeatures.FirmwareConfiguration
8960	43,  // 9: chromiumos.config.api.HardwareFeatures.audio:type_name -> chromiumos.config.api.HardwareFeatures.Audio
8961	44,  // 10: chromiumos.config.api.HardwareFeatures.camera:type_name -> chromiumos.config.api.HardwareFeatures.Camera
8962	45,  // 11: chromiumos.config.api.HardwareFeatures.accelerometer:type_name -> chromiumos.config.api.HardwareFeatures.Accelerometer
8963	46,  // 12: chromiumos.config.api.HardwareFeatures.gyroscope:type_name -> chromiumos.config.api.HardwareFeatures.Gyroscope
8964	47,  // 13: chromiumos.config.api.HardwareFeatures.magnetometer:type_name -> chromiumos.config.api.HardwareFeatures.Magnetometer
8965	48,  // 14: chromiumos.config.api.HardwareFeatures.light_sensor:type_name -> chromiumos.config.api.HardwareFeatures.LightSensor
8966	49,  // 15: chromiumos.config.api.HardwareFeatures.screen:type_name -> chromiumos.config.api.HardwareFeatures.Screen
8967	50,  // 16: chromiumos.config.api.HardwareFeatures.form_factor:type_name -> chromiumos.config.api.HardwareFeatures.FormFactor
8968	51,  // 17: chromiumos.config.api.HardwareFeatures.stylus:type_name -> chromiumos.config.api.HardwareFeatures.Stylus
8969	52,  // 18: chromiumos.config.api.HardwareFeatures.keyboard:type_name -> chromiumos.config.api.HardwareFeatures.Keyboard
8970	53,  // 19: chromiumos.config.api.HardwareFeatures.memory:type_name -> chromiumos.config.api.HardwareFeatures.Memory
8971	54,  // 20: chromiumos.config.api.HardwareFeatures.fingerprint:type_name -> chromiumos.config.api.HardwareFeatures.Fingerprint
8972	55,  // 21: chromiumos.config.api.HardwareFeatures.storage:type_name -> chromiumos.config.api.HardwareFeatures.Storage
8973	56,  // 22: chromiumos.config.api.HardwareFeatures.bluetooth:type_name -> chromiumos.config.api.HardwareFeatures.Bluetooth
8974	57,  // 23: chromiumos.config.api.HardwareFeatures.barreljack:type_name -> chromiumos.config.api.HardwareFeatures.BarrelJack
8975	58,  // 24: chromiumos.config.api.HardwareFeatures.wifi:type_name -> chromiumos.config.api.HardwareFeatures.Wifi
8976	59,  // 25: chromiumos.config.api.HardwareFeatures.power_button:type_name -> chromiumos.config.api.HardwareFeatures.Button
8977	59,  // 26: chromiumos.config.api.HardwareFeatures.volume_button:type_name -> chromiumos.config.api.HardwareFeatures.Button
8978	60,  // 27: chromiumos.config.api.HardwareFeatures.embedded_controller:type_name -> chromiumos.config.api.HardwareFeatures.EmbeddedController
8979	61,  // 28: chromiumos.config.api.HardwareFeatures.trusted_platform_module:type_name -> chromiumos.config.api.HardwareFeatures.TrustedPlatformModule
8980	62,  // 29: chromiumos.config.api.HardwareFeatures.hotwording:type_name -> chromiumos.config.api.HardwareFeatures.Hotwording
8981	63,  // 30: chromiumos.config.api.HardwareFeatures.display:type_name -> chromiumos.config.api.HardwareFeatures.Display
8982	64,  // 31: chromiumos.config.api.HardwareFeatures.touchpad:type_name -> chromiumos.config.api.HardwareFeatures.Touchpad
8983	65,  // 32: chromiumos.config.api.HardwareFeatures.microphone_mute_switch:type_name -> chromiumos.config.api.HardwareFeatures.MicrophoneMuteSwitch
8984	66,  // 33: chromiumos.config.api.HardwareFeatures.battery:type_name -> chromiumos.config.api.HardwareFeatures.Battery
8985	67,  // 34: chromiumos.config.api.HardwareFeatures.privacy_screen:type_name -> chromiumos.config.api.HardwareFeatures.PrivacyScreen
8986	68,  // 35: chromiumos.config.api.HardwareFeatures.soc:type_name -> chromiumos.config.api.HardwareFeatures.Soc
8987	69,  // 36: chromiumos.config.api.HardwareFeatures.dp_converter:type_name -> chromiumos.config.api.HardwareFeatures.DisplayPortConverter
8988	70,  // 37: chromiumos.config.api.HardwareFeatures.hps:type_name -> chromiumos.config.api.HardwareFeatures.Hps
8989	71,  // 38: chromiumos.config.api.HardwareFeatures.poe:type_name -> chromiumos.config.api.HardwareFeatures.PoE
8990	72,  // 39: chromiumos.config.api.HardwareFeatures.power_supply:type_name -> chromiumos.config.api.HardwareFeatures.PowerSupply
8991	73,  // 40: chromiumos.config.api.HardwareFeatures.proximity:type_name -> chromiumos.config.api.HardwareFeatures.Proximity
8992	74,  // 41: chromiumos.config.api.HardwareFeatures.touch:type_name -> chromiumos.config.api.HardwareFeatures.Touch
8993	75,  // 42: chromiumos.config.api.HardwareFeatures.thermal:type_name -> chromiumos.config.api.HardwareFeatures.Thermal
8994	76,  // 43: chromiumos.config.api.HardwareFeatures.runtime_probe_config:type_name -> chromiumos.config.api.HardwareFeatures.RuntimeProbeConfig
8995	77,  // 44: chromiumos.config.api.HardwareFeatures.dgpu_config:type_name -> chromiumos.config.api.HardwareFeatures.Dgpu
8996	78,  // 45: chromiumos.config.api.HardwareFeatures.uwb_config:type_name -> chromiumos.config.api.HardwareFeatures.Uwb
8997	79,  // 46: chromiumos.config.api.HardwareFeatures.hardware_probe_config:type_name -> chromiumos.config.api.HardwareFeatures.HardwareProbe
8998	81,  // 47: chromiumos.config.api.HardwareFeatures.detachable_base:type_name -> chromiumos.config.api.HardwareFeatures.DetachableBase
8999	82,  // 48: chromiumos.config.api.HardwareFeatures.suspend:type_name -> chromiumos.config.api.HardwareFeatures.Suspend
9000	83,  // 49: chromiumos.config.api.HardwareFeatures.vrr:type_name -> chromiumos.config.api.HardwareFeatures.Vrr
9001	84,  // 50: chromiumos.config.api.HardwareFeatures.sd_reader:type_name -> chromiumos.config.api.HardwareFeatures.SdReader
9002	85,  // 51: chromiumos.config.api.HardwareFeatures.oem_info:type_name -> chromiumos.config.api.HardwareFeatures.OEMInfo
9003	86,  // 52: chromiumos.config.api.HardwareFeatures.fan:type_name -> chromiumos.config.api.HardwareFeatures.Fan
9004	87,  // 53: chromiumos.config.api.HardwareFeatures.interrupt_controller_info:type_name -> chromiumos.config.api.HardwareFeatures.InterruptControllerInfo
9005	88,  // 54: chromiumos.config.api.HardwareFeatures.tiled_display:type_name -> chromiumos.config.api.HardwareFeatures.TiledDisplay
9006	89,  // 55: chromiumos.config.api.HardwareFeatures.cpu_info:type_name -> chromiumos.config.api.HardwareFeatures.CpuInfo
9007	90,  // 56: chromiumos.config.api.HardwareFeatures.pendrive:type_name -> chromiumos.config.api.HardwareFeatures.Pendrive
9008	37,  // 57: chromiumos.config.api.HardwareFeatures.UsbC.count:type_name -> chromiumos.config.api.HardwareFeatures.Count
9009	91,  // 58: chromiumos.config.api.HardwareFeatures.UsbC.ports:type_name -> chromiumos.config.api.HardwareFeatures.UsbC.Port
9010	37,  // 59: chromiumos.config.api.HardwareFeatures.UsbA.count:type_name -> chromiumos.config.api.HardwareFeatures.Count
9011	2,   // 60: chromiumos.config.api.HardwareFeatures.Cellular.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9012	4,   // 61: chromiumos.config.api.HardwareFeatures.Cellular.type:type_name -> chromiumos.config.api.HardwareFeatures.Cellular.CellularType
9013	92,  // 62: chromiumos.config.api.HardwareFeatures.Cellular.dynamic_power_reduction_config:type_name -> chromiumos.config.api.HardwareFeatures.Cellular.DynamicPowerReductionConfig
9014	5,   // 63: chromiumos.config.api.HardwareFeatures.Cellular.modem_type:type_name -> chromiumos.config.api.HardwareFeatures.Cellular.ModemType
9015	2,   // 64: chromiumos.config.api.HardwareFeatures.Hdmi.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9016	95,  // 65: chromiumos.config.api.HardwareFeatures.Hdmi.cec:type_name -> chromiumos.config.api.HardwareFeatures.Hdmi.Cec
9017	2,   // 66: chromiumos.config.api.HardwareFeatures.FirmwareConfiguration.vboot_cbfs_integration:type_name -> chromiumos.config.api.HardwareFeatures.Present
9018	96,  // 67: chromiumos.config.api.HardwareFeatures.FirmwareConfiguration.fw_ro_version:type_name -> chromiumos.config.api.HardwareFeatures.FirmwareConfiguration.SemVer
9019	2,   // 68: chromiumos.config.api.HardwareFeatures.FirmwareConfiguration.intel_ish:type_name -> chromiumos.config.api.HardwareFeatures.Present
9020	96,  // 69: chromiumos.config.api.HardwareFeatures.FirmwareConfiguration.fw_rw_version:type_name -> chromiumos.config.api.HardwareFeatures.FirmwareConfiguration.SemVer
9021	2,   // 70: chromiumos.config.api.HardwareFeatures.FirmwareConfiguration.bmp_logo:type_name -> chromiumos.config.api.HardwareFeatures.Present
9022	2,   // 71: chromiumos.config.api.HardwareFeatures.FirmwareConfiguration.fw_splash_screen:type_name -> chromiumos.config.api.HardwareFeatures.Present
9023	2,   // 72: chromiumos.config.api.HardwareFeatures.FirmwareConfiguration.late_cse_sync:type_name -> chromiumos.config.api.HardwareFeatures.Present
9024	2,   // 73: chromiumos.config.api.HardwareFeatures.FirmwareConfiguration.has_recovery_mrc_cache:type_name -> chromiumos.config.api.HardwareFeatures.Present
9025	2,   // 74: chromiumos.config.api.HardwareFeatures.FirmwareConfiguration.mainboard_has_early_sign_of_life:type_name -> chromiumos.config.api.HardwareFeatures.Present
9026	6,   // 75: chromiumos.config.api.HardwareFeatures.Audio.audio_codec:type_name -> chromiumos.config.api.HardwareFeatures.Audio.AudioCodec
9027	7,   // 76: chromiumos.config.api.HardwareFeatures.Audio.speaker_amp:type_name -> chromiumos.config.api.HardwareFeatures.Audio.Amplifier
9028	6,   // 77: chromiumos.config.api.HardwareFeatures.Audio.headphone_codec:type_name -> chromiumos.config.api.HardwareFeatures.Audio.AudioCodec
9029	37,  // 78: chromiumos.config.api.HardwareFeatures.Audio.lid_microphone:type_name -> chromiumos.config.api.HardwareFeatures.Count
9030	37,  // 79: chromiumos.config.api.HardwareFeatures.Audio.base_microphone:type_name -> chromiumos.config.api.HardwareFeatures.Count
9031	106, // 80: chromiumos.config.api.HardwareFeatures.Audio.speaker_amplifier:type_name -> chromiumos.config.api.Component.Amplifier
9032	97,  // 81: chromiumos.config.api.HardwareFeatures.Audio.card_configs:type_name -> chromiumos.config.api.HardwareFeatures.Audio.CardConfig
9033	8,   // 82: chromiumos.config.api.HardwareFeatures.Audio.cras_config:type_name -> chromiumos.config.api.HardwareFeatures.Audio.AudioConfigStructure
9034	2,   // 83: chromiumos.config.api.HardwareFeatures.Audio.sof_audio_dsp:type_name -> chromiumos.config.api.HardwareFeatures.Present
9035	98,  // 84: chromiumos.config.api.HardwareFeatures.Camera.devices:type_name -> chromiumos.config.api.HardwareFeatures.Camera.Device
9036	2,   // 85: chromiumos.config.api.HardwareFeatures.Accelerometer.lid_accelerometer:type_name -> chromiumos.config.api.HardwareFeatures.Present
9037	2,   // 86: chromiumos.config.api.HardwareFeatures.Accelerometer.base_accelerometer:type_name -> chromiumos.config.api.HardwareFeatures.Present
9038	2,   // 87: chromiumos.config.api.HardwareFeatures.Gyroscope.lid_gyroscope:type_name -> chromiumos.config.api.HardwareFeatures.Present
9039	2,   // 88: chromiumos.config.api.HardwareFeatures.Gyroscope.base_gyroscope:type_name -> chromiumos.config.api.HardwareFeatures.Present
9040	2,   // 89: chromiumos.config.api.HardwareFeatures.Magnetometer.lid_magnetometer:type_name -> chromiumos.config.api.HardwareFeatures.Present
9041	2,   // 90: chromiumos.config.api.HardwareFeatures.Magnetometer.base_magnetometer:type_name -> chromiumos.config.api.HardwareFeatures.Present
9042	2,   // 91: chromiumos.config.api.HardwareFeatures.LightSensor.lid_lightsensor:type_name -> chromiumos.config.api.HardwareFeatures.Present
9043	2,   // 92: chromiumos.config.api.HardwareFeatures.LightSensor.base_lightsensor:type_name -> chromiumos.config.api.HardwareFeatures.Present
9044	2,   // 93: chromiumos.config.api.HardwareFeatures.LightSensor.camera_lightsensor:type_name -> chromiumos.config.api.HardwareFeatures.Present
9045	13,  // 94: chromiumos.config.api.HardwareFeatures.Screen.connector_type:type_name -> chromiumos.config.api.HardwareFeatures.Screen.ConnectorType
9046	107, // 95: chromiumos.config.api.HardwareFeatures.Screen.panel_properties:type_name -> chromiumos.config.api.Component.DisplayPanel.Properties
9047	2,   // 96: chromiumos.config.api.HardwareFeatures.Screen.touch_support:type_name -> chromiumos.config.api.HardwareFeatures.Present
9048	14,  // 97: chromiumos.config.api.HardwareFeatures.FormFactor.form_factor:type_name -> chromiumos.config.api.HardwareFeatures.FormFactor.FormFactorType
9049	15,  // 98: chromiumos.config.api.HardwareFeatures.FormFactor.recovery_input:type_name -> chromiumos.config.api.HardwareFeatures.FormFactor.RecoveryInputType
9050	108, // 99: chromiumos.config.api.HardwareFeatures.FormFactor.detachable_ui:type_name -> google.protobuf.BoolValue
9051	16,  // 100: chromiumos.config.api.HardwareFeatures.Stylus.stylus:type_name -> chromiumos.config.api.HardwareFeatures.Stylus.StylusType
9052	17,  // 101: chromiumos.config.api.HardwareFeatures.Keyboard.keyboard_type:type_name -> chromiumos.config.api.HardwareFeatures.Keyboard.KeyboardType
9053	2,   // 102: chromiumos.config.api.HardwareFeatures.Keyboard.backlight:type_name -> chromiumos.config.api.HardwareFeatures.Present
9054	2,   // 103: chromiumos.config.api.HardwareFeatures.Keyboard.power_button:type_name -> chromiumos.config.api.HardwareFeatures.Present
9055	2,   // 104: chromiumos.config.api.HardwareFeatures.Keyboard.numeric_pad:type_name -> chromiumos.config.api.HardwareFeatures.Present
9056	18,  // 105: chromiumos.config.api.HardwareFeatures.Keyboard.mcu_type:type_name -> chromiumos.config.api.HardwareFeatures.Keyboard.KeyboardMcuType
9057	80,  // 106: chromiumos.config.api.HardwareFeatures.Keyboard.als_steps:type_name -> chromiumos.config.api.HardwareFeatures.KbAlsStep
9058	19,  // 107: chromiumos.config.api.HardwareFeatures.Keyboard.bottom_left_layout:type_name -> chromiumos.config.api.HardwareFeatures.Keyboard.KeyboardBottomLeftLayout
9059	20,  // 108: chromiumos.config.api.HardwareFeatures.Keyboard.bottom_right_layout:type_name -> chromiumos.config.api.HardwareFeatures.Keyboard.KeyboardBottomRightLayout
9060	21,  // 109: chromiumos.config.api.HardwareFeatures.Keyboard.numeric_pad_layout:type_name -> chromiumos.config.api.HardwareFeatures.Keyboard.NumericPadLayout
9061	109, // 110: chromiumos.config.api.HardwareFeatures.Memory.profile:type_name -> chromiumos.config.api.Component.Memory.Profile
9062	22,  // 111: chromiumos.config.api.HardwareFeatures.Fingerprint.location:type_name -> chromiumos.config.api.HardwareFeatures.Fingerprint.Location
9063	99,  // 112: chromiumos.config.api.HardwareFeatures.Fingerprint.fingerprint_diag:type_name -> chromiumos.config.api.HardwareFeatures.Fingerprint.FingerprintDiag
9064	110, // 113: chromiumos.config.api.HardwareFeatures.Storage.storage_type:type_name -> chromiumos.config.api.Component.Storage.StorageType
9065	111, // 114: chromiumos.config.api.HardwareFeatures.Bluetooth.component:type_name -> chromiumos.config.api.Component.Bluetooth
9066	2,   // 115: chromiumos.config.api.HardwareFeatures.Bluetooth.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9067	2,   // 116: chromiumos.config.api.HardwareFeatures.BarrelJack.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9068	112, // 117: chromiumos.config.api.HardwareFeatures.Wifi.supported_wlan_protocols:type_name -> chromiumos.config.api.Component.Wifi.WLANProtocol
9069	23,  // 118: chromiumos.config.api.HardwareFeatures.Wifi.wifi_chips:type_name -> chromiumos.config.api.HardwareFeatures.Wifi.WifiChip
9070	113, // 119: chromiumos.config.api.HardwareFeatures.Wifi.wifi_config:type_name -> chromiumos.config.api.WifiConfig
9071	24,  // 120: chromiumos.config.api.HardwareFeatures.Button.region:type_name -> chromiumos.config.api.HardwareFeatures.Button.Region
9072	25,  // 121: chromiumos.config.api.HardwareFeatures.Button.edge:type_name -> chromiumos.config.api.HardwareFeatures.Button.Edge
9073	2,   // 122: chromiumos.config.api.HardwareFeatures.EmbeddedController.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9074	26,  // 123: chromiumos.config.api.HardwareFeatures.EmbeddedController.ec_type:type_name -> chromiumos.config.api.HardwareFeatures.EmbeddedController.EmbeddedControllerType
9075	114, // 124: chromiumos.config.api.HardwareFeatures.EmbeddedController.part:type_name -> chromiumos.config.api.Component.EmbeddedController
9076	2,   // 125: chromiumos.config.api.HardwareFeatures.EmbeddedController.feature_typec_cmd:type_name -> chromiumos.config.api.HardwareFeatures.Present
9077	2,   // 126: chromiumos.config.api.HardwareFeatures.EmbeddedController.cbi:type_name -> chromiumos.config.api.HardwareFeatures.Present
9078	2,   // 127: chromiumos.config.api.HardwareFeatures.EmbeddedController.detachable_base:type_name -> chromiumos.config.api.HardwareFeatures.Present
9079	2,   // 128: chromiumos.config.api.HardwareFeatures.EmbeddedController.feature_charge_control_v2:type_name -> chromiumos.config.api.HardwareFeatures.Present
9080	2,   // 129: chromiumos.config.api.HardwareFeatures.EmbeddedController.feature_asserts_panic:type_name -> chromiumos.config.api.HardwareFeatures.Present
9081	2,   // 130: chromiumos.config.api.HardwareFeatures.EmbeddedController.feature_system_safe_mode:type_name -> chromiumos.config.api.HardwareFeatures.Present
9082	2,   // 131: chromiumos.config.api.HardwareFeatures.EmbeddedController.feature_memory_dump_commands:type_name -> chromiumos.config.api.HardwareFeatures.Present
9083	102, // 132: chromiumos.config.api.HardwareFeatures.EmbeddedController.build_config:type_name -> chromiumos.config.api.HardwareFeatures.EmbeddedController.BuildConfigEntry
9084	115, // 133: chromiumos.config.api.HardwareFeatures.EmbeddedController.max_sensor_odr_mhz:type_name -> google.protobuf.UInt32Value
9085	27,  // 134: chromiumos.config.api.HardwareFeatures.TrustedPlatformModule.tpm_type:type_name -> chromiumos.config.api.HardwareFeatures.TrustedPlatformModule.TrustedPlatformModuleType
9086	2,   // 135: chromiumos.config.api.HardwareFeatures.TrustedPlatformModule.production_rw_key_id:type_name -> chromiumos.config.api.HardwareFeatures.Present
9087	28,  // 136: chromiumos.config.api.HardwareFeatures.TrustedPlatformModule.runtime_tpm_version:type_name -> chromiumos.config.api.HardwareFeatures.TrustedPlatformModule.RuntimeTpmVersion
9088	29,  // 137: chromiumos.config.api.HardwareFeatures.TrustedPlatformModule.gsc_fw_name:type_name -> chromiumos.config.api.HardwareFeatures.TrustedPlatformModule.GscFirmwareName
9089	2,   // 138: chromiumos.config.api.HardwareFeatures.TrustedPlatformModule.enterprise_rollback_space:type_name -> chromiumos.config.api.HardwareFeatures.Present
9090	2,   // 139: chromiumos.config.api.HardwareFeatures.TrustedPlatformModule.valid_adid:type_name -> chromiumos.config.api.HardwareFeatures.Present
9091	2,   // 140: chromiumos.config.api.HardwareFeatures.Hotwording.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9092	30,  // 141: chromiumos.config.api.HardwareFeatures.Display.type:type_name -> chromiumos.config.api.HardwareFeatures.Display.Type
9093	2,   // 142: chromiumos.config.api.HardwareFeatures.Touchpad.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9094	31,  // 143: chromiumos.config.api.HardwareFeatures.Touchpad.touchpad_type:type_name -> chromiumos.config.api.HardwareFeatures.Touchpad.TouchpadType
9095	2,   // 144: chromiumos.config.api.HardwareFeatures.MicrophoneMuteSwitch.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9096	2,   // 145: chromiumos.config.api.HardwareFeatures.Battery.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9097	103, // 146: chromiumos.config.api.HardwareFeatures.Battery.lifetime:type_name -> chromiumos.config.api.HardwareFeatures.Battery.Lifetime
9098	104, // 147: chromiumos.config.api.HardwareFeatures.Battery.charging:type_name -> chromiumos.config.api.HardwareFeatures.Battery.Charging
9099	2,   // 148: chromiumos.config.api.HardwareFeatures.PrivacyScreen.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9100	116, // 149: chromiumos.config.api.HardwareFeatures.Soc.features:type_name -> chromiumos.config.api.Component.Soc.Feature
9101	117, // 150: chromiumos.config.api.HardwareFeatures.Soc.vulnerabilities:type_name -> chromiumos.config.api.Component.Soc.Vulnerability
9102	2,   // 151: chromiumos.config.api.HardwareFeatures.Soc.hevc_support:type_name -> chromiumos.config.api.HardwareFeatures.Present
9103	118, // 152: chromiumos.config.api.HardwareFeatures.Soc.resource_config:type_name -> chromiumos.config.api.ResourceConfig
9104	119, // 153: chromiumos.config.api.HardwareFeatures.DisplayPortConverter.converters:type_name -> chromiumos.config.api.Component.DisplayPortConverter
9105	2,   // 154: chromiumos.config.api.HardwareFeatures.Hps.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9106	2,   // 155: chromiumos.config.api.HardwareFeatures.PoE.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9107	2,   // 156: chromiumos.config.api.HardwareFeatures.PowerSupply.barreljack:type_name -> chromiumos.config.api.HardwareFeatures.Present
9108	120, // 157: chromiumos.config.api.HardwareFeatures.Proximity.configs:type_name -> chromiumos.config.api.ProximityConfig
9109	115, // 158: chromiumos.config.api.HardwareFeatures.Touch.touch_slop_distance:type_name -> google.protobuf.UInt32Value
9110	2,   // 159: chromiumos.config.api.HardwareFeatures.RuntimeProbeConfig.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9111	2,   // 160: chromiumos.config.api.HardwareFeatures.RuntimeProbeConfig.encrypted_config_present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9112	2,   // 161: chromiumos.config.api.HardwareFeatures.Dgpu.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9113	32,  // 162: chromiumos.config.api.HardwareFeatures.Dgpu.dgpu_type:type_name -> chromiumos.config.api.HardwareFeatures.Dgpu.DgpuType
9114	2,   // 163: chromiumos.config.api.HardwareFeatures.Uwb.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9115	121, // 164: chromiumos.config.api.HardwareFeatures.KbAlsStep.lux_threshold:type_name -> chromiumos.config.api.Component.LuxThreshold
9116	2,   // 165: chromiumos.config.api.HardwareFeatures.Suspend.suspend_to_mem:type_name -> chromiumos.config.api.HardwareFeatures.Present
9117	2,   // 166: chromiumos.config.api.HardwareFeatures.Suspend.suspend_to_idle:type_name -> chromiumos.config.api.HardwareFeatures.Present
9118	2,   // 167: chromiumos.config.api.HardwareFeatures.Vrr.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9119	2,   // 168: chromiumos.config.api.HardwareFeatures.SdReader.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9120	115, // 169: chromiumos.config.api.HardwareFeatures.Fan.fan_count:type_name -> google.protobuf.UInt32Value
9121	2,   // 170: chromiumos.config.api.HardwareFeatures.InterruptControllerInfo.nmi_support:type_name -> chromiumos.config.api.HardwareFeatures.Present
9122	2,   // 171: chromiumos.config.api.HardwareFeatures.TiledDisplay.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9123	105, // 172: chromiumos.config.api.HardwareFeatures.CpuInfo.vendor_info:type_name -> chromiumos.config.api.HardwareFeatures.CpuInfo.VendorInfo
9124	2,   // 173: chromiumos.config.api.HardwareFeatures.Pendrive.present:type_name -> chromiumos.config.api.HardwareFeatures.Present
9125	3,   // 174: chromiumos.config.api.HardwareFeatures.UsbC.Port.position:type_name -> chromiumos.config.api.HardwareFeatures.PortPosition
9126	115, // 175: chromiumos.config.api.HardwareFeatures.UsbC.Port.index_override:type_name -> google.protobuf.UInt32Value
9127	93,  // 176: chromiumos.config.api.HardwareFeatures.Cellular.DynamicPowerReductionConfig.power_level_mapping:type_name -> chromiumos.config.api.HardwareFeatures.Cellular.DynamicPowerReductionConfig.PowerLevelMappingEntry
9128	94,  // 177: chromiumos.config.api.HardwareFeatures.Cellular.DynamicPowerReductionConfig.regulatory_domain_mapping:type_name -> chromiumos.config.api.HardwareFeatures.Cellular.DynamicPowerReductionConfig.RegulatoryDomainMappingEntry
9129	122, // 178: chromiumos.config.api.HardwareFeatures.Audio.CardConfig.ucm_suffix:type_name -> google.protobuf.StringValue
9130	8,   // 179: chromiumos.config.api.HardwareFeatures.Audio.CardConfig.ucm_config:type_name -> chromiumos.config.api.HardwareFeatures.Audio.AudioConfigStructure
9131	8,   // 180: chromiumos.config.api.HardwareFeatures.Audio.CardConfig.cras_config:type_name -> chromiumos.config.api.HardwareFeatures.Audio.AudioConfigStructure
9132	8,   // 181: chromiumos.config.api.HardwareFeatures.Audio.CardConfig.sound_card_init_config:type_name -> chromiumos.config.api.HardwareFeatures.Audio.AudioConfigStructure
9133	122, // 182: chromiumos.config.api.HardwareFeatures.Audio.CardConfig.cras_suffix:type_name -> google.protobuf.StringValue
9134	9,   // 183: chromiumos.config.api.HardwareFeatures.Camera.Device.interface:type_name -> chromiumos.config.api.HardwareFeatures.Camera.Interface
9135	10,  // 184: chromiumos.config.api.HardwareFeatures.Camera.Device.facing:type_name -> chromiumos.config.api.HardwareFeatures.Camera.Facing
9136	11,  // 185: chromiumos.config.api.HardwareFeatures.Camera.Device.orientation:type_name -> chromiumos.config.api.HardwareFeatures.Camera.Orientation
9137	2,   // 186: chromiumos.config.api.HardwareFeatures.Camera.Device.privacy_switch:type_name -> chromiumos.config.api.HardwareFeatures.Present
9138	37,  // 187: chromiumos.config.api.HardwareFeatures.Camera.Device.microphone_count:type_name -> chromiumos.config.api.HardwareFeatures.Count
9139	100, // 188: chromiumos.config.api.HardwareFeatures.Fingerprint.FingerprintDiag.pixel_median:type_name -> chromiumos.config.api.HardwareFeatures.Fingerprint.FingerprintDiag.PixelMedian
9140	101, // 189: chromiumos.config.api.HardwareFeatures.Fingerprint.FingerprintDiag.detect_zones:type_name -> chromiumos.config.api.HardwareFeatures.Fingerprint.FingerprintDiag.DetectZone
9141	2,   // 190: chromiumos.config.api.HardwareFeatures.EmbeddedController.BuildConfigEntry.value:type_name -> chromiumos.config.api.HardwareFeatures.Present
9142	34,  // 191: chromiumos.config.api.HardwareFeatures.Battery.Lifetime.shipping_min:type_name -> chromiumos.config.api.Duration
9143	34,  // 192: chromiumos.config.api.HardwareFeatures.Battery.Lifetime.deep_sleep_min:type_name -> chromiumos.config.api.Duration
9144	34,  // 193: chromiumos.config.api.HardwareFeatures.Battery.Lifetime.suspend_min:type_name -> chromiumos.config.api.Duration
9145	34,  // 194: chromiumos.config.api.HardwareFeatures.Battery.Lifetime.lucid_sleep_min:type_name -> chromiumos.config.api.Duration
9146	34,  // 195: chromiumos.config.api.HardwareFeatures.Battery.Lifetime.active_min:type_name -> chromiumos.config.api.Duration
9147	34,  // 196: chromiumos.config.api.HardwareFeatures.Battery.Charging.active_max:type_name -> chromiumos.config.api.Duration
9148	34,  // 197: chromiumos.config.api.HardwareFeatures.Battery.Charging.suspend_max:type_name -> chromiumos.config.api.Duration
9149	34,  // 198: chromiumos.config.api.HardwareFeatures.Battery.Charging.deep_sleep_max:type_name -> chromiumos.config.api.Duration
9150	199, // [199:199] is the sub-list for method output_type
9151	199, // [199:199] is the sub-list for method input_type
9152	199, // [199:199] is the sub-list for extension type_name
9153	199, // [199:199] is the sub-list for extension extendee
9154	0,   // [0:199] is the sub-list for field type_name
9155}
9156
9157func init() { file_chromiumos_config_api_topology_proto_init() }
9158func file_chromiumos_config_api_topology_proto_init() {
9159	if File_chromiumos_config_api_topology_proto != nil {
9160		return
9161	}
9162	file_chromiumos_config_api_component_proto_init()
9163	file_chromiumos_config_api_proximity_config_proto_init()
9164	file_chromiumos_config_api_resource_config_proto_init()
9165	file_chromiumos_config_api_wifi_config_proto_init()
9166	if !protoimpl.UnsafeEnabled {
9167		file_chromiumos_config_api_topology_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
9168			switch v := v.(*Topology); i {
9169			case 0:
9170				return &v.state
9171			case 1:
9172				return &v.sizeCache
9173			case 2:
9174				return &v.unknownFields
9175			default:
9176				return nil
9177			}
9178		}
9179		file_chromiumos_config_api_topology_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
9180			switch v := v.(*Duration); i {
9181			case 0:
9182				return &v.state
9183			case 1:
9184				return &v.sizeCache
9185			case 2:
9186				return &v.unknownFields
9187			default:
9188				return nil
9189			}
9190		}
9191		file_chromiumos_config_api_topology_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
9192			switch v := v.(*HardwareFeatures); i {
9193			case 0:
9194				return &v.state
9195			case 1:
9196				return &v.sizeCache
9197			case 2:
9198				return &v.unknownFields
9199			default:
9200				return nil
9201			}
9202		}
9203		file_chromiumos_config_api_topology_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
9204			switch v := v.(*HardwareFeatures_Count); i {
9205			case 0:
9206				return &v.state
9207			case 1:
9208				return &v.sizeCache
9209			case 2:
9210				return &v.unknownFields
9211			default:
9212				return nil
9213			}
9214		}
9215		file_chromiumos_config_api_topology_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
9216			switch v := v.(*HardwareFeatures_UsbC); i {
9217			case 0:
9218				return &v.state
9219			case 1:
9220				return &v.sizeCache
9221			case 2:
9222				return &v.unknownFields
9223			default:
9224				return nil
9225			}
9226		}
9227		file_chromiumos_config_api_topology_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
9228			switch v := v.(*HardwareFeatures_UsbA); i {
9229			case 0:
9230				return &v.state
9231			case 1:
9232				return &v.sizeCache
9233			case 2:
9234				return &v.unknownFields
9235			default:
9236				return nil
9237			}
9238		}
9239		file_chromiumos_config_api_topology_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
9240			switch v := v.(*HardwareFeatures_Cellular); i {
9241			case 0:
9242				return &v.state
9243			case 1:
9244				return &v.sizeCache
9245			case 2:
9246				return &v.unknownFields
9247			default:
9248				return nil
9249			}
9250		}
9251		file_chromiumos_config_api_topology_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
9252			switch v := v.(*HardwareFeatures_Hdmi); i {
9253			case 0:
9254				return &v.state
9255			case 1:
9256				return &v.sizeCache
9257			case 2:
9258				return &v.unknownFields
9259			default:
9260				return nil
9261			}
9262		}
9263		file_chromiumos_config_api_topology_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
9264			switch v := v.(*HardwareFeatures_FirmwareConfiguration); i {
9265			case 0:
9266				return &v.state
9267			case 1:
9268				return &v.sizeCache
9269			case 2:
9270				return &v.unknownFields
9271			default:
9272				return nil
9273			}
9274		}
9275		file_chromiumos_config_api_topology_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
9276			switch v := v.(*HardwareFeatures_Audio); i {
9277			case 0:
9278				return &v.state
9279			case 1:
9280				return &v.sizeCache
9281			case 2:
9282				return &v.unknownFields
9283			default:
9284				return nil
9285			}
9286		}
9287		file_chromiumos_config_api_topology_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
9288			switch v := v.(*HardwareFeatures_Camera); i {
9289			case 0:
9290				return &v.state
9291			case 1:
9292				return &v.sizeCache
9293			case 2:
9294				return &v.unknownFields
9295			default:
9296				return nil
9297			}
9298		}
9299		file_chromiumos_config_api_topology_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
9300			switch v := v.(*HardwareFeatures_Accelerometer); i {
9301			case 0:
9302				return &v.state
9303			case 1:
9304				return &v.sizeCache
9305			case 2:
9306				return &v.unknownFields
9307			default:
9308				return nil
9309			}
9310		}
9311		file_chromiumos_config_api_topology_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
9312			switch v := v.(*HardwareFeatures_Gyroscope); i {
9313			case 0:
9314				return &v.state
9315			case 1:
9316				return &v.sizeCache
9317			case 2:
9318				return &v.unknownFields
9319			default:
9320				return nil
9321			}
9322		}
9323		file_chromiumos_config_api_topology_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
9324			switch v := v.(*HardwareFeatures_Magnetometer); i {
9325			case 0:
9326				return &v.state
9327			case 1:
9328				return &v.sizeCache
9329			case 2:
9330				return &v.unknownFields
9331			default:
9332				return nil
9333			}
9334		}
9335		file_chromiumos_config_api_topology_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
9336			switch v := v.(*HardwareFeatures_LightSensor); i {
9337			case 0:
9338				return &v.state
9339			case 1:
9340				return &v.sizeCache
9341			case 2:
9342				return &v.unknownFields
9343			default:
9344				return nil
9345			}
9346		}
9347		file_chromiumos_config_api_topology_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
9348			switch v := v.(*HardwareFeatures_Screen); i {
9349			case 0:
9350				return &v.state
9351			case 1:
9352				return &v.sizeCache
9353			case 2:
9354				return &v.unknownFields
9355			default:
9356				return nil
9357			}
9358		}
9359		file_chromiumos_config_api_topology_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
9360			switch v := v.(*HardwareFeatures_FormFactor); i {
9361			case 0:
9362				return &v.state
9363			case 1:
9364				return &v.sizeCache
9365			case 2:
9366				return &v.unknownFields
9367			default:
9368				return nil
9369			}
9370		}
9371		file_chromiumos_config_api_topology_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
9372			switch v := v.(*HardwareFeatures_Stylus); i {
9373			case 0:
9374				return &v.state
9375			case 1:
9376				return &v.sizeCache
9377			case 2:
9378				return &v.unknownFields
9379			default:
9380				return nil
9381			}
9382		}
9383		file_chromiumos_config_api_topology_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
9384			switch v := v.(*HardwareFeatures_Keyboard); i {
9385			case 0:
9386				return &v.state
9387			case 1:
9388				return &v.sizeCache
9389			case 2:
9390				return &v.unknownFields
9391			default:
9392				return nil
9393			}
9394		}
9395		file_chromiumos_config_api_topology_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
9396			switch v := v.(*HardwareFeatures_Memory); i {
9397			case 0:
9398				return &v.state
9399			case 1:
9400				return &v.sizeCache
9401			case 2:
9402				return &v.unknownFields
9403			default:
9404				return nil
9405			}
9406		}
9407		file_chromiumos_config_api_topology_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
9408			switch v := v.(*HardwareFeatures_Fingerprint); i {
9409			case 0:
9410				return &v.state
9411			case 1:
9412				return &v.sizeCache
9413			case 2:
9414				return &v.unknownFields
9415			default:
9416				return nil
9417			}
9418		}
9419		file_chromiumos_config_api_topology_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
9420			switch v := v.(*HardwareFeatures_Storage); i {
9421			case 0:
9422				return &v.state
9423			case 1:
9424				return &v.sizeCache
9425			case 2:
9426				return &v.unknownFields
9427			default:
9428				return nil
9429			}
9430		}
9431		file_chromiumos_config_api_topology_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
9432			switch v := v.(*HardwareFeatures_Bluetooth); i {
9433			case 0:
9434				return &v.state
9435			case 1:
9436				return &v.sizeCache
9437			case 2:
9438				return &v.unknownFields
9439			default:
9440				return nil
9441			}
9442		}
9443		file_chromiumos_config_api_topology_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
9444			switch v := v.(*HardwareFeatures_BarrelJack); i {
9445			case 0:
9446				return &v.state
9447			case 1:
9448				return &v.sizeCache
9449			case 2:
9450				return &v.unknownFields
9451			default:
9452				return nil
9453			}
9454		}
9455		file_chromiumos_config_api_topology_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
9456			switch v := v.(*HardwareFeatures_Wifi); i {
9457			case 0:
9458				return &v.state
9459			case 1:
9460				return &v.sizeCache
9461			case 2:
9462				return &v.unknownFields
9463			default:
9464				return nil
9465			}
9466		}
9467		file_chromiumos_config_api_topology_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
9468			switch v := v.(*HardwareFeatures_Button); i {
9469			case 0:
9470				return &v.state
9471			case 1:
9472				return &v.sizeCache
9473			case 2:
9474				return &v.unknownFields
9475			default:
9476				return nil
9477			}
9478		}
9479		file_chromiumos_config_api_topology_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
9480			switch v := v.(*HardwareFeatures_EmbeddedController); i {
9481			case 0:
9482				return &v.state
9483			case 1:
9484				return &v.sizeCache
9485			case 2:
9486				return &v.unknownFields
9487			default:
9488				return nil
9489			}
9490		}
9491		file_chromiumos_config_api_topology_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
9492			switch v := v.(*HardwareFeatures_TrustedPlatformModule); i {
9493			case 0:
9494				return &v.state
9495			case 1:
9496				return &v.sizeCache
9497			case 2:
9498				return &v.unknownFields
9499			default:
9500				return nil
9501			}
9502		}
9503		file_chromiumos_config_api_topology_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
9504			switch v := v.(*HardwareFeatures_Hotwording); i {
9505			case 0:
9506				return &v.state
9507			case 1:
9508				return &v.sizeCache
9509			case 2:
9510				return &v.unknownFields
9511			default:
9512				return nil
9513			}
9514		}
9515		file_chromiumos_config_api_topology_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
9516			switch v := v.(*HardwareFeatures_Display); i {
9517			case 0:
9518				return &v.state
9519			case 1:
9520				return &v.sizeCache
9521			case 2:
9522				return &v.unknownFields
9523			default:
9524				return nil
9525			}
9526		}
9527		file_chromiumos_config_api_topology_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
9528			switch v := v.(*HardwareFeatures_Touchpad); i {
9529			case 0:
9530				return &v.state
9531			case 1:
9532				return &v.sizeCache
9533			case 2:
9534				return &v.unknownFields
9535			default:
9536				return nil
9537			}
9538		}
9539		file_chromiumos_config_api_topology_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
9540			switch v := v.(*HardwareFeatures_MicrophoneMuteSwitch); i {
9541			case 0:
9542				return &v.state
9543			case 1:
9544				return &v.sizeCache
9545			case 2:
9546				return &v.unknownFields
9547			default:
9548				return nil
9549			}
9550		}
9551		file_chromiumos_config_api_topology_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
9552			switch v := v.(*HardwareFeatures_Battery); i {
9553			case 0:
9554				return &v.state
9555			case 1:
9556				return &v.sizeCache
9557			case 2:
9558				return &v.unknownFields
9559			default:
9560				return nil
9561			}
9562		}
9563		file_chromiumos_config_api_topology_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
9564			switch v := v.(*HardwareFeatures_PrivacyScreen); i {
9565			case 0:
9566				return &v.state
9567			case 1:
9568				return &v.sizeCache
9569			case 2:
9570				return &v.unknownFields
9571			default:
9572				return nil
9573			}
9574		}
9575		file_chromiumos_config_api_topology_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
9576			switch v := v.(*HardwareFeatures_Soc); i {
9577			case 0:
9578				return &v.state
9579			case 1:
9580				return &v.sizeCache
9581			case 2:
9582				return &v.unknownFields
9583			default:
9584				return nil
9585			}
9586		}
9587		file_chromiumos_config_api_topology_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
9588			switch v := v.(*HardwareFeatures_DisplayPortConverter); i {
9589			case 0:
9590				return &v.state
9591			case 1:
9592				return &v.sizeCache
9593			case 2:
9594				return &v.unknownFields
9595			default:
9596				return nil
9597			}
9598		}
9599		file_chromiumos_config_api_topology_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
9600			switch v := v.(*HardwareFeatures_Hps); i {
9601			case 0:
9602				return &v.state
9603			case 1:
9604				return &v.sizeCache
9605			case 2:
9606				return &v.unknownFields
9607			default:
9608				return nil
9609			}
9610		}
9611		file_chromiumos_config_api_topology_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
9612			switch v := v.(*HardwareFeatures_PoE); i {
9613			case 0:
9614				return &v.state
9615			case 1:
9616				return &v.sizeCache
9617			case 2:
9618				return &v.unknownFields
9619			default:
9620				return nil
9621			}
9622		}
9623		file_chromiumos_config_api_topology_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
9624			switch v := v.(*HardwareFeatures_PowerSupply); i {
9625			case 0:
9626				return &v.state
9627			case 1:
9628				return &v.sizeCache
9629			case 2:
9630				return &v.unknownFields
9631			default:
9632				return nil
9633			}
9634		}
9635		file_chromiumos_config_api_topology_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
9636			switch v := v.(*HardwareFeatures_Proximity); i {
9637			case 0:
9638				return &v.state
9639			case 1:
9640				return &v.sizeCache
9641			case 2:
9642				return &v.unknownFields
9643			default:
9644				return nil
9645			}
9646		}
9647		file_chromiumos_config_api_topology_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
9648			switch v := v.(*HardwareFeatures_Touch); i {
9649			case 0:
9650				return &v.state
9651			case 1:
9652				return &v.sizeCache
9653			case 2:
9654				return &v.unknownFields
9655			default:
9656				return nil
9657			}
9658		}
9659		file_chromiumos_config_api_topology_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
9660			switch v := v.(*HardwareFeatures_Thermal); i {
9661			case 0:
9662				return &v.state
9663			case 1:
9664				return &v.sizeCache
9665			case 2:
9666				return &v.unknownFields
9667			default:
9668				return nil
9669			}
9670		}
9671		file_chromiumos_config_api_topology_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
9672			switch v := v.(*HardwareFeatures_RuntimeProbeConfig); i {
9673			case 0:
9674				return &v.state
9675			case 1:
9676				return &v.sizeCache
9677			case 2:
9678				return &v.unknownFields
9679			default:
9680				return nil
9681			}
9682		}
9683		file_chromiumos_config_api_topology_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
9684			switch v := v.(*HardwareFeatures_Dgpu); i {
9685			case 0:
9686				return &v.state
9687			case 1:
9688				return &v.sizeCache
9689			case 2:
9690				return &v.unknownFields
9691			default:
9692				return nil
9693			}
9694		}
9695		file_chromiumos_config_api_topology_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
9696			switch v := v.(*HardwareFeatures_Uwb); i {
9697			case 0:
9698				return &v.state
9699			case 1:
9700				return &v.sizeCache
9701			case 2:
9702				return &v.unknownFields
9703			default:
9704				return nil
9705			}
9706		}
9707		file_chromiumos_config_api_topology_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
9708			switch v := v.(*HardwareFeatures_HardwareProbe); i {
9709			case 0:
9710				return &v.state
9711			case 1:
9712				return &v.sizeCache
9713			case 2:
9714				return &v.unknownFields
9715			default:
9716				return nil
9717			}
9718		}
9719		file_chromiumos_config_api_topology_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
9720			switch v := v.(*HardwareFeatures_KbAlsStep); i {
9721			case 0:
9722				return &v.state
9723			case 1:
9724				return &v.sizeCache
9725			case 2:
9726				return &v.unknownFields
9727			default:
9728				return nil
9729			}
9730		}
9731		file_chromiumos_config_api_topology_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
9732			switch v := v.(*HardwareFeatures_DetachableBase); i {
9733			case 0:
9734				return &v.state
9735			case 1:
9736				return &v.sizeCache
9737			case 2:
9738				return &v.unknownFields
9739			default:
9740				return nil
9741			}
9742		}
9743		file_chromiumos_config_api_topology_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
9744			switch v := v.(*HardwareFeatures_Suspend); i {
9745			case 0:
9746				return &v.state
9747			case 1:
9748				return &v.sizeCache
9749			case 2:
9750				return &v.unknownFields
9751			default:
9752				return nil
9753			}
9754		}
9755		file_chromiumos_config_api_topology_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
9756			switch v := v.(*HardwareFeatures_Vrr); i {
9757			case 0:
9758				return &v.state
9759			case 1:
9760				return &v.sizeCache
9761			case 2:
9762				return &v.unknownFields
9763			default:
9764				return nil
9765			}
9766		}
9767		file_chromiumos_config_api_topology_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
9768			switch v := v.(*HardwareFeatures_SdReader); i {
9769			case 0:
9770				return &v.state
9771			case 1:
9772				return &v.sizeCache
9773			case 2:
9774				return &v.unknownFields
9775			default:
9776				return nil
9777			}
9778		}
9779		file_chromiumos_config_api_topology_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
9780			switch v := v.(*HardwareFeatures_OEMInfo); i {
9781			case 0:
9782				return &v.state
9783			case 1:
9784				return &v.sizeCache
9785			case 2:
9786				return &v.unknownFields
9787			default:
9788				return nil
9789			}
9790		}
9791		file_chromiumos_config_api_topology_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
9792			switch v := v.(*HardwareFeatures_Fan); i {
9793			case 0:
9794				return &v.state
9795			case 1:
9796				return &v.sizeCache
9797			case 2:
9798				return &v.unknownFields
9799			default:
9800				return nil
9801			}
9802		}
9803		file_chromiumos_config_api_topology_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
9804			switch v := v.(*HardwareFeatures_InterruptControllerInfo); i {
9805			case 0:
9806				return &v.state
9807			case 1:
9808				return &v.sizeCache
9809			case 2:
9810				return &v.unknownFields
9811			default:
9812				return nil
9813			}
9814		}
9815		file_chromiumos_config_api_topology_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
9816			switch v := v.(*HardwareFeatures_TiledDisplay); i {
9817			case 0:
9818				return &v.state
9819			case 1:
9820				return &v.sizeCache
9821			case 2:
9822				return &v.unknownFields
9823			default:
9824				return nil
9825			}
9826		}
9827		file_chromiumos_config_api_topology_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
9828			switch v := v.(*HardwareFeatures_CpuInfo); i {
9829			case 0:
9830				return &v.state
9831			case 1:
9832				return &v.sizeCache
9833			case 2:
9834				return &v.unknownFields
9835			default:
9836				return nil
9837			}
9838		}
9839		file_chromiumos_config_api_topology_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
9840			switch v := v.(*HardwareFeatures_Pendrive); i {
9841			case 0:
9842				return &v.state
9843			case 1:
9844				return &v.sizeCache
9845			case 2:
9846				return &v.unknownFields
9847			default:
9848				return nil
9849			}
9850		}
9851		file_chromiumos_config_api_topology_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
9852			switch v := v.(*HardwareFeatures_UsbC_Port); i {
9853			case 0:
9854				return &v.state
9855			case 1:
9856				return &v.sizeCache
9857			case 2:
9858				return &v.unknownFields
9859			default:
9860				return nil
9861			}
9862		}
9863		file_chromiumos_config_api_topology_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
9864			switch v := v.(*HardwareFeatures_Cellular_DynamicPowerReductionConfig); i {
9865			case 0:
9866				return &v.state
9867			case 1:
9868				return &v.sizeCache
9869			case 2:
9870				return &v.unknownFields
9871			default:
9872				return nil
9873			}
9874		}
9875		file_chromiumos_config_api_topology_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
9876			switch v := v.(*HardwareFeatures_Hdmi_Cec); i {
9877			case 0:
9878				return &v.state
9879			case 1:
9880				return &v.sizeCache
9881			case 2:
9882				return &v.unknownFields
9883			default:
9884				return nil
9885			}
9886		}
9887		file_chromiumos_config_api_topology_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
9888			switch v := v.(*HardwareFeatures_FirmwareConfiguration_SemVer); i {
9889			case 0:
9890				return &v.state
9891			case 1:
9892				return &v.sizeCache
9893			case 2:
9894				return &v.unknownFields
9895			default:
9896				return nil
9897			}
9898		}
9899		file_chromiumos_config_api_topology_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
9900			switch v := v.(*HardwareFeatures_Audio_CardConfig); i {
9901			case 0:
9902				return &v.state
9903			case 1:
9904				return &v.sizeCache
9905			case 2:
9906				return &v.unknownFields
9907			default:
9908				return nil
9909			}
9910		}
9911		file_chromiumos_config_api_topology_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} {
9912			switch v := v.(*HardwareFeatures_Camera_Device); i {
9913			case 0:
9914				return &v.state
9915			case 1:
9916				return &v.sizeCache
9917			case 2:
9918				return &v.unknownFields
9919			default:
9920				return nil
9921			}
9922		}
9923		file_chromiumos_config_api_topology_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
9924			switch v := v.(*HardwareFeatures_Fingerprint_FingerprintDiag); i {
9925			case 0:
9926				return &v.state
9927			case 1:
9928				return &v.sizeCache
9929			case 2:
9930				return &v.unknownFields
9931			default:
9932				return nil
9933			}
9934		}
9935		file_chromiumos_config_api_topology_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} {
9936			switch v := v.(*HardwareFeatures_Fingerprint_FingerprintDiag_PixelMedian); i {
9937			case 0:
9938				return &v.state
9939			case 1:
9940				return &v.sizeCache
9941			case 2:
9942				return &v.unknownFields
9943			default:
9944				return nil
9945			}
9946		}
9947		file_chromiumos_config_api_topology_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
9948			switch v := v.(*HardwareFeatures_Fingerprint_FingerprintDiag_DetectZone); i {
9949			case 0:
9950				return &v.state
9951			case 1:
9952				return &v.sizeCache
9953			case 2:
9954				return &v.unknownFields
9955			default:
9956				return nil
9957			}
9958		}
9959		file_chromiumos_config_api_topology_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} {
9960			switch v := v.(*HardwareFeatures_Battery_Lifetime); i {
9961			case 0:
9962				return &v.state
9963			case 1:
9964				return &v.sizeCache
9965			case 2:
9966				return &v.unknownFields
9967			default:
9968				return nil
9969			}
9970		}
9971		file_chromiumos_config_api_topology_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} {
9972			switch v := v.(*HardwareFeatures_Battery_Charging); i {
9973			case 0:
9974				return &v.state
9975			case 1:
9976				return &v.sizeCache
9977			case 2:
9978				return &v.unknownFields
9979			default:
9980				return nil
9981			}
9982		}
9983		file_chromiumos_config_api_topology_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
9984			switch v := v.(*HardwareFeatures_CpuInfo_VendorInfo); i {
9985			case 0:
9986				return &v.state
9987			case 1:
9988				return &v.sizeCache
9989			case 2:
9990				return &v.unknownFields
9991			default:
9992				return nil
9993			}
9994		}
9995	}
9996	file_chromiumos_config_api_topology_proto_msgTypes[59].OneofWrappers = []interface{}{
9997		(*HardwareFeatures_Cellular_DynamicPowerReductionConfig_Gpio)(nil),
9998		(*HardwareFeatures_Cellular_DynamicPowerReductionConfig_ModemManager)(nil),
9999	}
10000	type x struct{}
10001	out := protoimpl.TypeBuilder{
10002		File: protoimpl.DescBuilder{
10003			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
10004			RawDescriptor: file_chromiumos_config_api_topology_proto_rawDesc,
10005			NumEnums:      33,
10006			NumMessages:   73,
10007			NumExtensions: 0,
10008			NumServices:   0,
10009		},
10010		GoTypes:           file_chromiumos_config_api_topology_proto_goTypes,
10011		DependencyIndexes: file_chromiumos_config_api_topology_proto_depIdxs,
10012		EnumInfos:         file_chromiumos_config_api_topology_proto_enumTypes,
10013		MessageInfos:      file_chromiumos_config_api_topology_proto_msgTypes,
10014	}.Build()
10015	File_chromiumos_config_api_topology_proto = out.File
10016	file_chromiumos_config_api_topology_proto_rawDesc = nil
10017	file_chromiumos_config_api_topology_proto_goTypes = nil
10018	file_chromiumos_config_api_topology_proto_depIdxs = nil
10019}
10020