1 // This file is generated by rust-protobuf 2.27.1. Do not edit
2 // @generated
3 // Generate steps:
4 // 1. protoc --rust_out . ../keymaster/keymaster_attributes.proto
5 
6 // https://github.com/rust-lang/rust-clippy/issues/702
7 #![allow(unknown_lints)]
8 #![allow(clippy::all)]
9 
10 #![allow(unused_attributes)]
11 #![cfg_attr(rustfmt, rustfmt::skip)]
12 
13 #![allow(box_pointers)]
14 #![allow(dead_code)]
15 #![allow(missing_docs)]
16 #![allow(non_camel_case_types)]
17 #![allow(non_snake_case)]
18 #![allow(non_upper_case_globals)]
19 #![allow(trivial_casts)]
20 #![allow(unused_imports)]
21 #![allow(unused_results)]
22 //! Generated file from `keymaster_attributes.proto`
23 
24 /// Generated files are compatible only with the same version
25 /// of protobuf runtime.
26 // const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_2_27_1;
27 
28 #[derive(PartialEq,Clone,Default)]
29 pub struct KeymasterAttributes {
30     // message fields
31     uuid: ::protobuf::SingularField<::std::vec::Vec<u8>>,
32     product_id: ::protobuf::SingularField<::std::vec::Vec<u8>>,
33     // special fields
34     pub unknown_fields: ::protobuf::UnknownFields,
35     pub cached_size: ::protobuf::CachedSize,
36 }
37 
38 impl<'a> ::std::default::Default for &'a KeymasterAttributes {
default() -> &'a KeymasterAttributes39     fn default() -> &'a KeymasterAttributes {
40         <KeymasterAttributes as ::protobuf::Message>::default_instance()
41     }
42 }
43 
44 impl KeymasterAttributes {
new() -> KeymasterAttributes45     pub fn new() -> KeymasterAttributes {
46         ::std::default::Default::default()
47     }
48 
49     // optional bytes uuid = 1;
50 
51 
get_uuid(&self) -> &[u8]52     pub fn get_uuid(&self) -> &[u8] {
53         match self.uuid.as_ref() {
54             Some(v) => &v,
55             None => &[],
56         }
57     }
clear_uuid(&mut self)58     pub fn clear_uuid(&mut self) {
59         self.uuid.clear();
60     }
61 
has_uuid(&self) -> bool62     pub fn has_uuid(&self) -> bool {
63         self.uuid.is_some()
64     }
65 
66     // Param is passed by value, moved
set_uuid(&mut self, v: ::std::vec::Vec<u8>)67     pub fn set_uuid(&mut self, v: ::std::vec::Vec<u8>) {
68         self.uuid = ::protobuf::SingularField::some(v);
69     }
70 
71     // Mutable pointer to the field.
72     // If field is not initialized, it is initialized with default value first.
mut_uuid(&mut self) -> &mut ::std::vec::Vec<u8>73     pub fn mut_uuid(&mut self) -> &mut ::std::vec::Vec<u8> {
74         if self.uuid.is_none() {
75             self.uuid.set_default();
76         }
77         self.uuid.as_mut().unwrap()
78     }
79 
80     // Take field
take_uuid(&mut self) -> ::std::vec::Vec<u8>81     pub fn take_uuid(&mut self) -> ::std::vec::Vec<u8> {
82         self.uuid.take().unwrap_or_else(|| ::std::vec::Vec::new())
83     }
84 
85     // optional bytes product_id = 2;
86 
87 
get_product_id(&self) -> &[u8]88     pub fn get_product_id(&self) -> &[u8] {
89         match self.product_id.as_ref() {
90             Some(v) => &v,
91             None => &[],
92         }
93     }
clear_product_id(&mut self)94     pub fn clear_product_id(&mut self) {
95         self.product_id.clear();
96     }
97 
has_product_id(&self) -> bool98     pub fn has_product_id(&self) -> bool {
99         self.product_id.is_some()
100     }
101 
102     // Param is passed by value, moved
set_product_id(&mut self, v: ::std::vec::Vec<u8>)103     pub fn set_product_id(&mut self, v: ::std::vec::Vec<u8>) {
104         self.product_id = ::protobuf::SingularField::some(v);
105     }
106 
107     // Mutable pointer to the field.
108     // If field is not initialized, it is initialized with default value first.
mut_product_id(&mut self) -> &mut ::std::vec::Vec<u8>109     pub fn mut_product_id(&mut self) -> &mut ::std::vec::Vec<u8> {
110         if self.product_id.is_none() {
111             self.product_id.set_default();
112         }
113         self.product_id.as_mut().unwrap()
114     }
115 
116     // Take field
take_product_id(&mut self) -> ::std::vec::Vec<u8>117     pub fn take_product_id(&mut self) -> ::std::vec::Vec<u8> {
118         self.product_id.take().unwrap_or_else(|| ::std::vec::Vec::new())
119     }
120 }
121 
122 impl ::protobuf::Message for KeymasterAttributes {
is_initialized(&self) -> bool123     fn is_initialized(&self) -> bool {
124         true
125     }
126 
merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()>127     fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
128         while !is.eof()? {
129             let (field_number, wire_type) = is.read_tag_unpack()?;
130             match field_number {
131                 1 => {
132                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.uuid)?;
133                 },
134                 2 => {
135                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.product_id)?;
136                 },
137                 _ => {
138                     ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
139                 },
140             };
141         }
142         ::std::result::Result::Ok(())
143     }
144 
145     // Compute sizes of nested messages
146     #[allow(unused_variables)]
compute_size(&self) -> u32147     fn compute_size(&self) -> u32 {
148         let mut my_size = 0;
149         if let Some(ref v) = self.uuid.as_ref() {
150             my_size += ::protobuf::rt::bytes_size(1, &v);
151         }
152         if let Some(ref v) = self.product_id.as_ref() {
153             my_size += ::protobuf::rt::bytes_size(2, &v);
154         }
155         my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
156         self.cached_size.set(my_size);
157         my_size
158     }
159 
write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()>160     fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
161         if let Some(ref v) = self.uuid.as_ref() {
162             os.write_bytes(1, &v)?;
163         }
164         if let Some(ref v) = self.product_id.as_ref() {
165             os.write_bytes(2, &v)?;
166         }
167         os.write_unknown_fields(self.get_unknown_fields())?;
168         ::std::result::Result::Ok(())
169     }
170 
get_cached_size(&self) -> u32171     fn get_cached_size(&self) -> u32 {
172         self.cached_size.get()
173     }
174 
get_unknown_fields(&self) -> &::protobuf::UnknownFields175     fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
176         &self.unknown_fields
177     }
178 
mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields179     fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
180         &mut self.unknown_fields
181     }
182 
as_any(&self) -> &dyn (::std::any::Any)183     fn as_any(&self) -> &dyn (::std::any::Any) {
184         self as &dyn (::std::any::Any)
185     }
as_any_mut(&mut self) -> &mut dyn (::std::any::Any)186     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
187         self as &mut dyn (::std::any::Any)
188     }
into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)>189     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
190         self
191     }
192 
descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor193     fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
194         Self::descriptor_static()
195     }
196 
new() -> KeymasterAttributes197     fn new() -> KeymasterAttributes {
198         KeymasterAttributes::new()
199     }
200 
descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor201     fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
202         static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
203         descriptor.get(|| {
204             let mut fields = ::std::vec::Vec::new();
205             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
206                 "uuid",
207                 |m: &KeymasterAttributes| { &m.uuid },
208                 |m: &mut KeymasterAttributes| { &mut m.uuid },
209             ));
210             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
211                 "product_id",
212                 |m: &KeymasterAttributes| { &m.product_id },
213                 |m: &mut KeymasterAttributes| { &mut m.product_id },
214             ));
215             ::protobuf::reflect::MessageDescriptor::new_pb_name::<KeymasterAttributes>(
216                 "KeymasterAttributes",
217                 fields,
218                 file_descriptor_proto()
219             )
220         })
221     }
222 
default_instance() -> &'static KeymasterAttributes223     fn default_instance() -> &'static KeymasterAttributes {
224         static instance: ::protobuf::rt::LazyV2<KeymasterAttributes> = ::protobuf::rt::LazyV2::INIT;
225         instance.get(KeymasterAttributes::new)
226     }
227 }
228 
229 impl ::protobuf::Clear for KeymasterAttributes {
clear(&mut self)230     fn clear(&mut self) {
231         self.uuid.clear();
232         self.product_id.clear();
233         self.unknown_fields.clear();
234     }
235 }
236 
237 impl ::std::fmt::Debug for KeymasterAttributes {
fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result238     fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
239         ::protobuf::text_format::fmt(self, f)
240     }
241 }
242 
243 impl ::protobuf::reflect::ProtobufValue for KeymasterAttributes {
as_ref(&self) -> ::protobuf::reflect::ReflectValueRef244     fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
245         ::protobuf::reflect::ReflectValueRef::Message(self)
246     }
247 }
248 
249 #[derive(PartialEq,Clone,Default)]
250 pub struct AttestationIds {
251     // message fields
252     brand: ::protobuf::SingularField<::std::vec::Vec<u8>>,
253     device: ::protobuf::SingularField<::std::vec::Vec<u8>>,
254     product: ::protobuf::SingularField<::std::vec::Vec<u8>>,
255     serial: ::protobuf::SingularField<::std::vec::Vec<u8>>,
256     imei: ::protobuf::SingularField<::std::vec::Vec<u8>>,
257     meid: ::protobuf::SingularField<::std::vec::Vec<u8>>,
258     manufacturer: ::protobuf::SingularField<::std::vec::Vec<u8>>,
259     model: ::protobuf::SingularField<::std::vec::Vec<u8>>,
260     second_imei: ::protobuf::SingularField<::std::vec::Vec<u8>>,
261     // special fields
262     pub unknown_fields: ::protobuf::UnknownFields,
263     pub cached_size: ::protobuf::CachedSize,
264 }
265 
266 impl<'a> ::std::default::Default for &'a AttestationIds {
default() -> &'a AttestationIds267     fn default() -> &'a AttestationIds {
268         <AttestationIds as ::protobuf::Message>::default_instance()
269     }
270 }
271 
272 impl AttestationIds {
new() -> AttestationIds273     pub fn new() -> AttestationIds {
274         ::std::default::Default::default()
275     }
276 
277     // optional bytes brand = 1;
278 
279 
get_brand(&self) -> &[u8]280     pub fn get_brand(&self) -> &[u8] {
281         match self.brand.as_ref() {
282             Some(v) => &v,
283             None => &[],
284         }
285     }
clear_brand(&mut self)286     pub fn clear_brand(&mut self) {
287         self.brand.clear();
288     }
289 
has_brand(&self) -> bool290     pub fn has_brand(&self) -> bool {
291         self.brand.is_some()
292     }
293 
294     // Param is passed by value, moved
set_brand(&mut self, v: ::std::vec::Vec<u8>)295     pub fn set_brand(&mut self, v: ::std::vec::Vec<u8>) {
296         self.brand = ::protobuf::SingularField::some(v);
297     }
298 
299     // Mutable pointer to the field.
300     // If field is not initialized, it is initialized with default value first.
mut_brand(&mut self) -> &mut ::std::vec::Vec<u8>301     pub fn mut_brand(&mut self) -> &mut ::std::vec::Vec<u8> {
302         if self.brand.is_none() {
303             self.brand.set_default();
304         }
305         self.brand.as_mut().unwrap()
306     }
307 
308     // Take field
take_brand(&mut self) -> ::std::vec::Vec<u8>309     pub fn take_brand(&mut self) -> ::std::vec::Vec<u8> {
310         self.brand.take().unwrap_or_else(|| ::std::vec::Vec::new())
311     }
312 
313     // optional bytes device = 2;
314 
315 
get_device(&self) -> &[u8]316     pub fn get_device(&self) -> &[u8] {
317         match self.device.as_ref() {
318             Some(v) => &v,
319             None => &[],
320         }
321     }
clear_device(&mut self)322     pub fn clear_device(&mut self) {
323         self.device.clear();
324     }
325 
has_device(&self) -> bool326     pub fn has_device(&self) -> bool {
327         self.device.is_some()
328     }
329 
330     // Param is passed by value, moved
set_device(&mut self, v: ::std::vec::Vec<u8>)331     pub fn set_device(&mut self, v: ::std::vec::Vec<u8>) {
332         self.device = ::protobuf::SingularField::some(v);
333     }
334 
335     // Mutable pointer to the field.
336     // If field is not initialized, it is initialized with default value first.
mut_device(&mut self) -> &mut ::std::vec::Vec<u8>337     pub fn mut_device(&mut self) -> &mut ::std::vec::Vec<u8> {
338         if self.device.is_none() {
339             self.device.set_default();
340         }
341         self.device.as_mut().unwrap()
342     }
343 
344     // Take field
take_device(&mut self) -> ::std::vec::Vec<u8>345     pub fn take_device(&mut self) -> ::std::vec::Vec<u8> {
346         self.device.take().unwrap_or_else(|| ::std::vec::Vec::new())
347     }
348 
349     // optional bytes product = 3;
350 
351 
get_product(&self) -> &[u8]352     pub fn get_product(&self) -> &[u8] {
353         match self.product.as_ref() {
354             Some(v) => &v,
355             None => &[],
356         }
357     }
clear_product(&mut self)358     pub fn clear_product(&mut self) {
359         self.product.clear();
360     }
361 
has_product(&self) -> bool362     pub fn has_product(&self) -> bool {
363         self.product.is_some()
364     }
365 
366     // Param is passed by value, moved
set_product(&mut self, v: ::std::vec::Vec<u8>)367     pub fn set_product(&mut self, v: ::std::vec::Vec<u8>) {
368         self.product = ::protobuf::SingularField::some(v);
369     }
370 
371     // Mutable pointer to the field.
372     // If field is not initialized, it is initialized with default value first.
mut_product(&mut self) -> &mut ::std::vec::Vec<u8>373     pub fn mut_product(&mut self) -> &mut ::std::vec::Vec<u8> {
374         if self.product.is_none() {
375             self.product.set_default();
376         }
377         self.product.as_mut().unwrap()
378     }
379 
380     // Take field
take_product(&mut self) -> ::std::vec::Vec<u8>381     pub fn take_product(&mut self) -> ::std::vec::Vec<u8> {
382         self.product.take().unwrap_or_else(|| ::std::vec::Vec::new())
383     }
384 
385     // optional bytes serial = 4;
386 
387 
get_serial(&self) -> &[u8]388     pub fn get_serial(&self) -> &[u8] {
389         match self.serial.as_ref() {
390             Some(v) => &v,
391             None => &[],
392         }
393     }
clear_serial(&mut self)394     pub fn clear_serial(&mut self) {
395         self.serial.clear();
396     }
397 
has_serial(&self) -> bool398     pub fn has_serial(&self) -> bool {
399         self.serial.is_some()
400     }
401 
402     // Param is passed by value, moved
set_serial(&mut self, v: ::std::vec::Vec<u8>)403     pub fn set_serial(&mut self, v: ::std::vec::Vec<u8>) {
404         self.serial = ::protobuf::SingularField::some(v);
405     }
406 
407     // Mutable pointer to the field.
408     // If field is not initialized, it is initialized with default value first.
mut_serial(&mut self) -> &mut ::std::vec::Vec<u8>409     pub fn mut_serial(&mut self) -> &mut ::std::vec::Vec<u8> {
410         if self.serial.is_none() {
411             self.serial.set_default();
412         }
413         self.serial.as_mut().unwrap()
414     }
415 
416     // Take field
take_serial(&mut self) -> ::std::vec::Vec<u8>417     pub fn take_serial(&mut self) -> ::std::vec::Vec<u8> {
418         self.serial.take().unwrap_or_else(|| ::std::vec::Vec::new())
419     }
420 
421     // optional bytes imei = 5;
422 
423 
get_imei(&self) -> &[u8]424     pub fn get_imei(&self) -> &[u8] {
425         match self.imei.as_ref() {
426             Some(v) => &v,
427             None => &[],
428         }
429     }
clear_imei(&mut self)430     pub fn clear_imei(&mut self) {
431         self.imei.clear();
432     }
433 
has_imei(&self) -> bool434     pub fn has_imei(&self) -> bool {
435         self.imei.is_some()
436     }
437 
438     // Param is passed by value, moved
set_imei(&mut self, v: ::std::vec::Vec<u8>)439     pub fn set_imei(&mut self, v: ::std::vec::Vec<u8>) {
440         self.imei = ::protobuf::SingularField::some(v);
441     }
442 
443     // Mutable pointer to the field.
444     // If field is not initialized, it is initialized with default value first.
mut_imei(&mut self) -> &mut ::std::vec::Vec<u8>445     pub fn mut_imei(&mut self) -> &mut ::std::vec::Vec<u8> {
446         if self.imei.is_none() {
447             self.imei.set_default();
448         }
449         self.imei.as_mut().unwrap()
450     }
451 
452     // Take field
take_imei(&mut self) -> ::std::vec::Vec<u8>453     pub fn take_imei(&mut self) -> ::std::vec::Vec<u8> {
454         self.imei.take().unwrap_or_else(|| ::std::vec::Vec::new())
455     }
456 
457     // optional bytes meid = 6;
458 
459 
get_meid(&self) -> &[u8]460     pub fn get_meid(&self) -> &[u8] {
461         match self.meid.as_ref() {
462             Some(v) => &v,
463             None => &[],
464         }
465     }
clear_meid(&mut self)466     pub fn clear_meid(&mut self) {
467         self.meid.clear();
468     }
469 
has_meid(&self) -> bool470     pub fn has_meid(&self) -> bool {
471         self.meid.is_some()
472     }
473 
474     // Param is passed by value, moved
set_meid(&mut self, v: ::std::vec::Vec<u8>)475     pub fn set_meid(&mut self, v: ::std::vec::Vec<u8>) {
476         self.meid = ::protobuf::SingularField::some(v);
477     }
478 
479     // Mutable pointer to the field.
480     // If field is not initialized, it is initialized with default value first.
mut_meid(&mut self) -> &mut ::std::vec::Vec<u8>481     pub fn mut_meid(&mut self) -> &mut ::std::vec::Vec<u8> {
482         if self.meid.is_none() {
483             self.meid.set_default();
484         }
485         self.meid.as_mut().unwrap()
486     }
487 
488     // Take field
take_meid(&mut self) -> ::std::vec::Vec<u8>489     pub fn take_meid(&mut self) -> ::std::vec::Vec<u8> {
490         self.meid.take().unwrap_or_else(|| ::std::vec::Vec::new())
491     }
492 
493     // optional bytes manufacturer = 7;
494 
495 
get_manufacturer(&self) -> &[u8]496     pub fn get_manufacturer(&self) -> &[u8] {
497         match self.manufacturer.as_ref() {
498             Some(v) => &v,
499             None => &[],
500         }
501     }
clear_manufacturer(&mut self)502     pub fn clear_manufacturer(&mut self) {
503         self.manufacturer.clear();
504     }
505 
has_manufacturer(&self) -> bool506     pub fn has_manufacturer(&self) -> bool {
507         self.manufacturer.is_some()
508     }
509 
510     // Param is passed by value, moved
set_manufacturer(&mut self, v: ::std::vec::Vec<u8>)511     pub fn set_manufacturer(&mut self, v: ::std::vec::Vec<u8>) {
512         self.manufacturer = ::protobuf::SingularField::some(v);
513     }
514 
515     // Mutable pointer to the field.
516     // If field is not initialized, it is initialized with default value first.
mut_manufacturer(&mut self) -> &mut ::std::vec::Vec<u8>517     pub fn mut_manufacturer(&mut self) -> &mut ::std::vec::Vec<u8> {
518         if self.manufacturer.is_none() {
519             self.manufacturer.set_default();
520         }
521         self.manufacturer.as_mut().unwrap()
522     }
523 
524     // Take field
take_manufacturer(&mut self) -> ::std::vec::Vec<u8>525     pub fn take_manufacturer(&mut self) -> ::std::vec::Vec<u8> {
526         self.manufacturer.take().unwrap_or_else(|| ::std::vec::Vec::new())
527     }
528 
529     // optional bytes model = 8;
530 
531 
get_model(&self) -> &[u8]532     pub fn get_model(&self) -> &[u8] {
533         match self.model.as_ref() {
534             Some(v) => &v,
535             None => &[],
536         }
537     }
clear_model(&mut self)538     pub fn clear_model(&mut self) {
539         self.model.clear();
540     }
541 
has_model(&self) -> bool542     pub fn has_model(&self) -> bool {
543         self.model.is_some()
544     }
545 
546     // Param is passed by value, moved
set_model(&mut self, v: ::std::vec::Vec<u8>)547     pub fn set_model(&mut self, v: ::std::vec::Vec<u8>) {
548         self.model = ::protobuf::SingularField::some(v);
549     }
550 
551     // Mutable pointer to the field.
552     // If field is not initialized, it is initialized with default value first.
mut_model(&mut self) -> &mut ::std::vec::Vec<u8>553     pub fn mut_model(&mut self) -> &mut ::std::vec::Vec<u8> {
554         if self.model.is_none() {
555             self.model.set_default();
556         }
557         self.model.as_mut().unwrap()
558     }
559 
560     // Take field
take_model(&mut self) -> ::std::vec::Vec<u8>561     pub fn take_model(&mut self) -> ::std::vec::Vec<u8> {
562         self.model.take().unwrap_or_else(|| ::std::vec::Vec::new())
563     }
564 
565     // optional bytes second_imei = 9;
566 
567 
get_second_imei(&self) -> &[u8]568     pub fn get_second_imei(&self) -> &[u8] {
569         match self.second_imei.as_ref() {
570             Some(v) => &v,
571             None => &[],
572         }
573     }
clear_second_imei(&mut self)574     pub fn clear_second_imei(&mut self) {
575         self.second_imei.clear();
576     }
577 
has_second_imei(&self) -> bool578     pub fn has_second_imei(&self) -> bool {
579         self.second_imei.is_some()
580     }
581 
582     // Param is passed by value, moved
set_second_imei(&mut self, v: ::std::vec::Vec<u8>)583     pub fn set_second_imei(&mut self, v: ::std::vec::Vec<u8>) {
584         self.second_imei = ::protobuf::SingularField::some(v);
585     }
586 
587     // Mutable pointer to the field.
588     // If field is not initialized, it is initialized with default value first.
mut_second_imei(&mut self) -> &mut ::std::vec::Vec<u8>589     pub fn mut_second_imei(&mut self) -> &mut ::std::vec::Vec<u8> {
590         if self.second_imei.is_none() {
591             self.second_imei.set_default();
592         }
593         self.second_imei.as_mut().unwrap()
594     }
595 
596     // Take field
take_second_imei(&mut self) -> ::std::vec::Vec<u8>597     pub fn take_second_imei(&mut self) -> ::std::vec::Vec<u8> {
598         self.second_imei.take().unwrap_or_else(|| ::std::vec::Vec::new())
599     }
600 }
601 
602 impl ::protobuf::Message for AttestationIds {
is_initialized(&self) -> bool603     fn is_initialized(&self) -> bool {
604         true
605     }
606 
merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()>607     fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
608         while !is.eof()? {
609             let (field_number, wire_type) = is.read_tag_unpack()?;
610             match field_number {
611                 1 => {
612                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.brand)?;
613                 },
614                 2 => {
615                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.device)?;
616                 },
617                 3 => {
618                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.product)?;
619                 },
620                 4 => {
621                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.serial)?;
622                 },
623                 5 => {
624                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.imei)?;
625                 },
626                 6 => {
627                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.meid)?;
628                 },
629                 7 => {
630                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.manufacturer)?;
631                 },
632                 8 => {
633                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.model)?;
634                 },
635                 9 => {
636                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.second_imei)?;
637                 },
638                 _ => {
639                     ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
640                 },
641             };
642         }
643         ::std::result::Result::Ok(())
644     }
645 
646     // Compute sizes of nested messages
647     #[allow(unused_variables)]
compute_size(&self) -> u32648     fn compute_size(&self) -> u32 {
649         let mut my_size = 0;
650         if let Some(ref v) = self.brand.as_ref() {
651             my_size += ::protobuf::rt::bytes_size(1, &v);
652         }
653         if let Some(ref v) = self.device.as_ref() {
654             my_size += ::protobuf::rt::bytes_size(2, &v);
655         }
656         if let Some(ref v) = self.product.as_ref() {
657             my_size += ::protobuf::rt::bytes_size(3, &v);
658         }
659         if let Some(ref v) = self.serial.as_ref() {
660             my_size += ::protobuf::rt::bytes_size(4, &v);
661         }
662         if let Some(ref v) = self.imei.as_ref() {
663             my_size += ::protobuf::rt::bytes_size(5, &v);
664         }
665         if let Some(ref v) = self.meid.as_ref() {
666             my_size += ::protobuf::rt::bytes_size(6, &v);
667         }
668         if let Some(ref v) = self.manufacturer.as_ref() {
669             my_size += ::protobuf::rt::bytes_size(7, &v);
670         }
671         if let Some(ref v) = self.model.as_ref() {
672             my_size += ::protobuf::rt::bytes_size(8, &v);
673         }
674         if let Some(ref v) = self.second_imei.as_ref() {
675             my_size += ::protobuf::rt::bytes_size(9, &v);
676         }
677         my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
678         self.cached_size.set(my_size);
679         my_size
680     }
681 
write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()>682     fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
683         if let Some(ref v) = self.brand.as_ref() {
684             os.write_bytes(1, &v)?;
685         }
686         if let Some(ref v) = self.device.as_ref() {
687             os.write_bytes(2, &v)?;
688         }
689         if let Some(ref v) = self.product.as_ref() {
690             os.write_bytes(3, &v)?;
691         }
692         if let Some(ref v) = self.serial.as_ref() {
693             os.write_bytes(4, &v)?;
694         }
695         if let Some(ref v) = self.imei.as_ref() {
696             os.write_bytes(5, &v)?;
697         }
698         if let Some(ref v) = self.meid.as_ref() {
699             os.write_bytes(6, &v)?;
700         }
701         if let Some(ref v) = self.manufacturer.as_ref() {
702             os.write_bytes(7, &v)?;
703         }
704         if let Some(ref v) = self.model.as_ref() {
705             os.write_bytes(8, &v)?;
706         }
707         if let Some(ref v) = self.second_imei.as_ref() {
708             os.write_bytes(9, &v)?;
709         }
710         os.write_unknown_fields(self.get_unknown_fields())?;
711         ::std::result::Result::Ok(())
712     }
713 
get_cached_size(&self) -> u32714     fn get_cached_size(&self) -> u32 {
715         self.cached_size.get()
716     }
717 
get_unknown_fields(&self) -> &::protobuf::UnknownFields718     fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
719         &self.unknown_fields
720     }
721 
mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields722     fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
723         &mut self.unknown_fields
724     }
725 
as_any(&self) -> &dyn (::std::any::Any)726     fn as_any(&self) -> &dyn (::std::any::Any) {
727         self as &dyn (::std::any::Any)
728     }
as_any_mut(&mut self) -> &mut dyn (::std::any::Any)729     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
730         self as &mut dyn (::std::any::Any)
731     }
into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)>732     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
733         self
734     }
735 
descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor736     fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
737         Self::descriptor_static()
738     }
739 
new() -> AttestationIds740     fn new() -> AttestationIds {
741         AttestationIds::new()
742     }
743 
descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor744     fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
745         static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
746         descriptor.get(|| {
747             let mut fields = ::std::vec::Vec::new();
748             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
749                 "brand",
750                 |m: &AttestationIds| { &m.brand },
751                 |m: &mut AttestationIds| { &mut m.brand },
752             ));
753             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
754                 "device",
755                 |m: &AttestationIds| { &m.device },
756                 |m: &mut AttestationIds| { &mut m.device },
757             ));
758             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
759                 "product",
760                 |m: &AttestationIds| { &m.product },
761                 |m: &mut AttestationIds| { &mut m.product },
762             ));
763             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
764                 "serial",
765                 |m: &AttestationIds| { &m.serial },
766                 |m: &mut AttestationIds| { &mut m.serial },
767             ));
768             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
769                 "imei",
770                 |m: &AttestationIds| { &m.imei },
771                 |m: &mut AttestationIds| { &mut m.imei },
772             ));
773             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
774                 "meid",
775                 |m: &AttestationIds| { &m.meid },
776                 |m: &mut AttestationIds| { &mut m.meid },
777             ));
778             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
779                 "manufacturer",
780                 |m: &AttestationIds| { &m.manufacturer },
781                 |m: &mut AttestationIds| { &mut m.manufacturer },
782             ));
783             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
784                 "model",
785                 |m: &AttestationIds| { &m.model },
786                 |m: &mut AttestationIds| { &mut m.model },
787             ));
788             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
789                 "second_imei",
790                 |m: &AttestationIds| { &m.second_imei },
791                 |m: &mut AttestationIds| { &mut m.second_imei },
792             ));
793             ::protobuf::reflect::MessageDescriptor::new_pb_name::<AttestationIds>(
794                 "AttestationIds",
795                 fields,
796                 file_descriptor_proto()
797             )
798         })
799     }
800 
default_instance() -> &'static AttestationIds801     fn default_instance() -> &'static AttestationIds {
802         static instance: ::protobuf::rt::LazyV2<AttestationIds> = ::protobuf::rt::LazyV2::INIT;
803         instance.get(AttestationIds::new)
804     }
805 }
806 
807 impl ::protobuf::Clear for AttestationIds {
clear(&mut self)808     fn clear(&mut self) {
809         self.brand.clear();
810         self.device.clear();
811         self.product.clear();
812         self.serial.clear();
813         self.imei.clear();
814         self.meid.clear();
815         self.manufacturer.clear();
816         self.model.clear();
817         self.second_imei.clear();
818         self.unknown_fields.clear();
819     }
820 }
821 
822 impl ::std::fmt::Debug for AttestationIds {
fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result823     fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
824         ::protobuf::text_format::fmt(self, f)
825     }
826 }
827 
828 impl ::protobuf::reflect::ProtobufValue for AttestationIds {
as_ref(&self) -> ::protobuf::reflect::ReflectValueRef829     fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
830         ::protobuf::reflect::ReflectValueRef::Message(self)
831     }
832 }
833 
834 #[derive(PartialEq,Clone,Default)]
835 pub struct AttestationKey {
836     // message fields
837     key: ::protobuf::SingularField<::std::vec::Vec<u8>>,
838     pub certs: ::protobuf::RepeatedField<AttestationCert>,
839     // special fields
840     pub unknown_fields: ::protobuf::UnknownFields,
841     pub cached_size: ::protobuf::CachedSize,
842 }
843 
844 impl<'a> ::std::default::Default for &'a AttestationKey {
default() -> &'a AttestationKey845     fn default() -> &'a AttestationKey {
846         <AttestationKey as ::protobuf::Message>::default_instance()
847     }
848 }
849 
850 impl AttestationKey {
new() -> AttestationKey851     pub fn new() -> AttestationKey {
852         ::std::default::Default::default()
853     }
854 
855     // optional bytes key = 1;
856 
857 
get_key(&self) -> &[u8]858     pub fn get_key(&self) -> &[u8] {
859         match self.key.as_ref() {
860             Some(v) => &v,
861             None => &[],
862         }
863     }
clear_key(&mut self)864     pub fn clear_key(&mut self) {
865         self.key.clear();
866     }
867 
has_key(&self) -> bool868     pub fn has_key(&self) -> bool {
869         self.key.is_some()
870     }
871 
872     // Param is passed by value, moved
set_key(&mut self, v: ::std::vec::Vec<u8>)873     pub fn set_key(&mut self, v: ::std::vec::Vec<u8>) {
874         self.key = ::protobuf::SingularField::some(v);
875     }
876 
877     // Mutable pointer to the field.
878     // If field is not initialized, it is initialized with default value first.
mut_key(&mut self) -> &mut ::std::vec::Vec<u8>879     pub fn mut_key(&mut self) -> &mut ::std::vec::Vec<u8> {
880         if self.key.is_none() {
881             self.key.set_default();
882         }
883         self.key.as_mut().unwrap()
884     }
885 
886     // Take field
take_key(&mut self) -> ::std::vec::Vec<u8>887     pub fn take_key(&mut self) -> ::std::vec::Vec<u8> {
888         self.key.take().unwrap_or_else(|| ::std::vec::Vec::new())
889     }
890 
891     // repeated .AttestationCert certs = 2;
892 
893 
get_certs(&self) -> &[AttestationCert]894     pub fn get_certs(&self) -> &[AttestationCert] {
895         &self.certs
896     }
clear_certs(&mut self)897     pub fn clear_certs(&mut self) {
898         self.certs.clear();
899     }
900 
901     // Param is passed by value, moved
set_certs(&mut self, v: ::protobuf::RepeatedField<AttestationCert>)902     pub fn set_certs(&mut self, v: ::protobuf::RepeatedField<AttestationCert>) {
903         self.certs = v;
904     }
905 
906     // Mutable pointer to the field.
mut_certs(&mut self) -> &mut ::protobuf::RepeatedField<AttestationCert>907     pub fn mut_certs(&mut self) -> &mut ::protobuf::RepeatedField<AttestationCert> {
908         &mut self.certs
909     }
910 
911     // Take field
take_certs(&mut self) -> ::protobuf::RepeatedField<AttestationCert>912     pub fn take_certs(&mut self) -> ::protobuf::RepeatedField<AttestationCert> {
913         ::std::mem::replace(&mut self.certs, ::protobuf::RepeatedField::new())
914     }
915 }
916 
917 impl ::protobuf::Message for AttestationKey {
is_initialized(&self) -> bool918     fn is_initialized(&self) -> bool {
919         for v in &self.certs {
920             if !v.is_initialized() {
921                 return false;
922             }
923         };
924         true
925     }
926 
merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()>927     fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
928         while !is.eof()? {
929             let (field_number, wire_type) = is.read_tag_unpack()?;
930             match field_number {
931                 1 => {
932                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.key)?;
933                 },
934                 2 => {
935                     ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.certs)?;
936                 },
937                 _ => {
938                     ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
939                 },
940             };
941         }
942         ::std::result::Result::Ok(())
943     }
944 
945     // Compute sizes of nested messages
946     #[allow(unused_variables)]
compute_size(&self) -> u32947     fn compute_size(&self) -> u32 {
948         let mut my_size = 0;
949         if let Some(ref v) = self.key.as_ref() {
950             my_size += ::protobuf::rt::bytes_size(1, &v);
951         }
952         for value in &self.certs {
953             let len = value.compute_size();
954             my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
955         };
956         my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
957         self.cached_size.set(my_size);
958         my_size
959     }
960 
write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()>961     fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
962         if let Some(ref v) = self.key.as_ref() {
963             os.write_bytes(1, &v)?;
964         }
965         for v in &self.certs {
966             os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
967             os.write_raw_varint32(v.get_cached_size())?;
968             v.write_to_with_cached_sizes(os)?;
969         };
970         os.write_unknown_fields(self.get_unknown_fields())?;
971         ::std::result::Result::Ok(())
972     }
973 
get_cached_size(&self) -> u32974     fn get_cached_size(&self) -> u32 {
975         self.cached_size.get()
976     }
977 
get_unknown_fields(&self) -> &::protobuf::UnknownFields978     fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
979         &self.unknown_fields
980     }
981 
mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields982     fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
983         &mut self.unknown_fields
984     }
985 
as_any(&self) -> &dyn (::std::any::Any)986     fn as_any(&self) -> &dyn (::std::any::Any) {
987         self as &dyn (::std::any::Any)
988     }
as_any_mut(&mut self) -> &mut dyn (::std::any::Any)989     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
990         self as &mut dyn (::std::any::Any)
991     }
into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)>992     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
993         self
994     }
995 
descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor996     fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
997         Self::descriptor_static()
998     }
999 
new() -> AttestationKey1000     fn new() -> AttestationKey {
1001         AttestationKey::new()
1002     }
1003 
descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor1004     fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1005         static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1006         descriptor.get(|| {
1007             let mut fields = ::std::vec::Vec::new();
1008             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
1009                 "key",
1010                 |m: &AttestationKey| { &m.key },
1011                 |m: &mut AttestationKey| { &mut m.key },
1012             ));
1013             fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<AttestationCert>>(
1014                 "certs",
1015                 |m: &AttestationKey| { &m.certs },
1016                 |m: &mut AttestationKey| { &mut m.certs },
1017             ));
1018             ::protobuf::reflect::MessageDescriptor::new_pb_name::<AttestationKey>(
1019                 "AttestationKey",
1020                 fields,
1021                 file_descriptor_proto()
1022             )
1023         })
1024     }
1025 
default_instance() -> &'static AttestationKey1026     fn default_instance() -> &'static AttestationKey {
1027         static instance: ::protobuf::rt::LazyV2<AttestationKey> = ::protobuf::rt::LazyV2::INIT;
1028         instance.get(AttestationKey::new)
1029     }
1030 }
1031 
1032 impl ::protobuf::Clear for AttestationKey {
clear(&mut self)1033     fn clear(&mut self) {
1034         self.key.clear();
1035         self.certs.clear();
1036         self.unknown_fields.clear();
1037     }
1038 }
1039 
1040 impl ::std::fmt::Debug for AttestationKey {
fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1041     fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1042         ::protobuf::text_format::fmt(self, f)
1043     }
1044 }
1045 
1046 impl ::protobuf::reflect::ProtobufValue for AttestationKey {
as_ref(&self) -> ::protobuf::reflect::ReflectValueRef1047     fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1048         ::protobuf::reflect::ReflectValueRef::Message(self)
1049     }
1050 }
1051 
1052 #[derive(PartialEq,Clone,Default)]
1053 pub struct AttestationCert {
1054     // message fields
1055     content: ::protobuf::SingularField<::std::vec::Vec<u8>>,
1056     // special fields
1057     pub unknown_fields: ::protobuf::UnknownFields,
1058     pub cached_size: ::protobuf::CachedSize,
1059 }
1060 
1061 impl<'a> ::std::default::Default for &'a AttestationCert {
default() -> &'a AttestationCert1062     fn default() -> &'a AttestationCert {
1063         <AttestationCert as ::protobuf::Message>::default_instance()
1064     }
1065 }
1066 
1067 impl AttestationCert {
new() -> AttestationCert1068     pub fn new() -> AttestationCert {
1069         ::std::default::Default::default()
1070     }
1071 
1072     // required bytes content = 1;
1073 
1074 
get_content(&self) -> &[u8]1075     pub fn get_content(&self) -> &[u8] {
1076         match self.content.as_ref() {
1077             Some(v) => &v,
1078             None => &[],
1079         }
1080     }
clear_content(&mut self)1081     pub fn clear_content(&mut self) {
1082         self.content.clear();
1083     }
1084 
has_content(&self) -> bool1085     pub fn has_content(&self) -> bool {
1086         self.content.is_some()
1087     }
1088 
1089     // Param is passed by value, moved
set_content(&mut self, v: ::std::vec::Vec<u8>)1090     pub fn set_content(&mut self, v: ::std::vec::Vec<u8>) {
1091         self.content = ::protobuf::SingularField::some(v);
1092     }
1093 
1094     // Mutable pointer to the field.
1095     // If field is not initialized, it is initialized with default value first.
mut_content(&mut self) -> &mut ::std::vec::Vec<u8>1096     pub fn mut_content(&mut self) -> &mut ::std::vec::Vec<u8> {
1097         if self.content.is_none() {
1098             self.content.set_default();
1099         }
1100         self.content.as_mut().unwrap()
1101     }
1102 
1103     // Take field
take_content(&mut self) -> ::std::vec::Vec<u8>1104     pub fn take_content(&mut self) -> ::std::vec::Vec<u8> {
1105         self.content.take().unwrap_or_else(|| ::std::vec::Vec::new())
1106     }
1107 }
1108 
1109 impl ::protobuf::Message for AttestationCert {
is_initialized(&self) -> bool1110     fn is_initialized(&self) -> bool {
1111         if self.content.is_none() {
1112             return false;
1113         }
1114         true
1115     }
1116 
merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()>1117     fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1118         while !is.eof()? {
1119             let (field_number, wire_type) = is.read_tag_unpack()?;
1120             match field_number {
1121                 1 => {
1122                     ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.content)?;
1123                 },
1124                 _ => {
1125                     ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1126                 },
1127             };
1128         }
1129         ::std::result::Result::Ok(())
1130     }
1131 
1132     // Compute sizes of nested messages
1133     #[allow(unused_variables)]
compute_size(&self) -> u321134     fn compute_size(&self) -> u32 {
1135         let mut my_size = 0;
1136         if let Some(ref v) = self.content.as_ref() {
1137             my_size += ::protobuf::rt::bytes_size(1, &v);
1138         }
1139         my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1140         self.cached_size.set(my_size);
1141         my_size
1142     }
1143 
write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()>1144     fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1145         if let Some(ref v) = self.content.as_ref() {
1146             os.write_bytes(1, &v)?;
1147         }
1148         os.write_unknown_fields(self.get_unknown_fields())?;
1149         ::std::result::Result::Ok(())
1150     }
1151 
get_cached_size(&self) -> u321152     fn get_cached_size(&self) -> u32 {
1153         self.cached_size.get()
1154     }
1155 
get_unknown_fields(&self) -> &::protobuf::UnknownFields1156     fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1157         &self.unknown_fields
1158     }
1159 
mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields1160     fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1161         &mut self.unknown_fields
1162     }
1163 
as_any(&self) -> &dyn (::std::any::Any)1164     fn as_any(&self) -> &dyn (::std::any::Any) {
1165         self as &dyn (::std::any::Any)
1166     }
as_any_mut(&mut self) -> &mut dyn (::std::any::Any)1167     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1168         self as &mut dyn (::std::any::Any)
1169     }
into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)>1170     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1171         self
1172     }
1173 
descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor1174     fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1175         Self::descriptor_static()
1176     }
1177 
new() -> AttestationCert1178     fn new() -> AttestationCert {
1179         AttestationCert::new()
1180     }
1181 
descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor1182     fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1183         static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1184         descriptor.get(|| {
1185             let mut fields = ::std::vec::Vec::new();
1186             fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
1187                 "content",
1188                 |m: &AttestationCert| { &m.content },
1189                 |m: &mut AttestationCert| { &mut m.content },
1190             ));
1191             ::protobuf::reflect::MessageDescriptor::new_pb_name::<AttestationCert>(
1192                 "AttestationCert",
1193                 fields,
1194                 file_descriptor_proto()
1195             )
1196         })
1197     }
1198 
default_instance() -> &'static AttestationCert1199     fn default_instance() -> &'static AttestationCert {
1200         static instance: ::protobuf::rt::LazyV2<AttestationCert> = ::protobuf::rt::LazyV2::INIT;
1201         instance.get(AttestationCert::new)
1202     }
1203 }
1204 
1205 impl ::protobuf::Clear for AttestationCert {
clear(&mut self)1206     fn clear(&mut self) {
1207         self.content.clear();
1208         self.unknown_fields.clear();
1209     }
1210 }
1211 
1212 impl ::std::fmt::Debug for AttestationCert {
fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1213     fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1214         ::protobuf::text_format::fmt(self, f)
1215     }
1216 }
1217 
1218 impl ::protobuf::reflect::ProtobufValue for AttestationCert {
as_ref(&self) -> ::protobuf::reflect::ReflectValueRef1219     fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1220         ::protobuf::reflect::ReflectValueRef::Message(self)
1221     }
1222 }
1223 
1224 #[derive(PartialEq,Clone,Default)]
1225 pub struct UdsCerts {
1226     // message fields
1227     pub certs: ::protobuf::RepeatedField<AttestationCert>,
1228     // special fields
1229     pub unknown_fields: ::protobuf::UnknownFields,
1230     pub cached_size: ::protobuf::CachedSize,
1231 }
1232 
1233 impl<'a> ::std::default::Default for &'a UdsCerts {
default() -> &'a UdsCerts1234     fn default() -> &'a UdsCerts {
1235         <UdsCerts as ::protobuf::Message>::default_instance()
1236     }
1237 }
1238 
1239 impl UdsCerts {
new() -> UdsCerts1240     pub fn new() -> UdsCerts {
1241         ::std::default::Default::default()
1242     }
1243 
1244     // repeated .AttestationCert certs = 1;
1245 
1246 
get_certs(&self) -> &[AttestationCert]1247     pub fn get_certs(&self) -> &[AttestationCert] {
1248         &self.certs
1249     }
clear_certs(&mut self)1250     pub fn clear_certs(&mut self) {
1251         self.certs.clear();
1252     }
1253 
1254     // Param is passed by value, moved
set_certs(&mut self, v: ::protobuf::RepeatedField<AttestationCert>)1255     pub fn set_certs(&mut self, v: ::protobuf::RepeatedField<AttestationCert>) {
1256         self.certs = v;
1257     }
1258 
1259     // Mutable pointer to the field.
mut_certs(&mut self) -> &mut ::protobuf::RepeatedField<AttestationCert>1260     pub fn mut_certs(&mut self) -> &mut ::protobuf::RepeatedField<AttestationCert> {
1261         &mut self.certs
1262     }
1263 
1264     // Take field
take_certs(&mut self) -> ::protobuf::RepeatedField<AttestationCert>1265     pub fn take_certs(&mut self) -> ::protobuf::RepeatedField<AttestationCert> {
1266         ::std::mem::replace(&mut self.certs, ::protobuf::RepeatedField::new())
1267     }
1268 }
1269 
1270 impl ::protobuf::Message for UdsCerts {
is_initialized(&self) -> bool1271     fn is_initialized(&self) -> bool {
1272         for v in &self.certs {
1273             if !v.is_initialized() {
1274                 return false;
1275             }
1276         };
1277         true
1278     }
1279 
merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()>1280     fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1281         while !is.eof()? {
1282             let (field_number, wire_type) = is.read_tag_unpack()?;
1283             match field_number {
1284                 1 => {
1285                     ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.certs)?;
1286                 },
1287                 _ => {
1288                     ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
1289                 },
1290             };
1291         }
1292         ::std::result::Result::Ok(())
1293     }
1294 
1295     // Compute sizes of nested messages
1296     #[allow(unused_variables)]
compute_size(&self) -> u321297     fn compute_size(&self) -> u32 {
1298         let mut my_size = 0;
1299         for value in &self.certs {
1300             let len = value.compute_size();
1301             my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
1302         };
1303         my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
1304         self.cached_size.set(my_size);
1305         my_size
1306     }
1307 
write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()>1308     fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
1309         for v in &self.certs {
1310             os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
1311             os.write_raw_varint32(v.get_cached_size())?;
1312             v.write_to_with_cached_sizes(os)?;
1313         };
1314         os.write_unknown_fields(self.get_unknown_fields())?;
1315         ::std::result::Result::Ok(())
1316     }
1317 
get_cached_size(&self) -> u321318     fn get_cached_size(&self) -> u32 {
1319         self.cached_size.get()
1320     }
1321 
get_unknown_fields(&self) -> &::protobuf::UnknownFields1322     fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
1323         &self.unknown_fields
1324     }
1325 
mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields1326     fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
1327         &mut self.unknown_fields
1328     }
1329 
as_any(&self) -> &dyn (::std::any::Any)1330     fn as_any(&self) -> &dyn (::std::any::Any) {
1331         self as &dyn (::std::any::Any)
1332     }
as_any_mut(&mut self) -> &mut dyn (::std::any::Any)1333     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
1334         self as &mut dyn (::std::any::Any)
1335     }
into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)>1336     fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
1337         self
1338     }
1339 
descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor1340     fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
1341         Self::descriptor_static()
1342     }
1343 
new() -> UdsCerts1344     fn new() -> UdsCerts {
1345         UdsCerts::new()
1346     }
1347 
descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor1348     fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
1349         static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
1350         descriptor.get(|| {
1351             let mut fields = ::std::vec::Vec::new();
1352             fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<AttestationCert>>(
1353                 "certs",
1354                 |m: &UdsCerts| { &m.certs },
1355                 |m: &mut UdsCerts| { &mut m.certs },
1356             ));
1357             ::protobuf::reflect::MessageDescriptor::new_pb_name::<UdsCerts>(
1358                 "UdsCerts",
1359                 fields,
1360                 file_descriptor_proto()
1361             )
1362         })
1363     }
1364 
default_instance() -> &'static UdsCerts1365     fn default_instance() -> &'static UdsCerts {
1366         static instance: ::protobuf::rt::LazyV2<UdsCerts> = ::protobuf::rt::LazyV2::INIT;
1367         instance.get(UdsCerts::new)
1368     }
1369 }
1370 
1371 impl ::protobuf::Clear for UdsCerts {
clear(&mut self)1372     fn clear(&mut self) {
1373         self.certs.clear();
1374         self.unknown_fields.clear();
1375     }
1376 }
1377 
1378 impl ::std::fmt::Debug for UdsCerts {
fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result1379     fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1380         ::protobuf::text_format::fmt(self, f)
1381     }
1382 }
1383 
1384 impl ::protobuf::reflect::ProtobufValue for UdsCerts {
as_ref(&self) -> ::protobuf::reflect::ReflectValueRef1385     fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
1386         ::protobuf::reflect::ReflectValueRef::Message(self)
1387     }
1388 }
1389 
1390 static file_descriptor_proto_data: &'static [u8] = b"\
1391     \n\x1akeymaster_attributes.proto\x1a\x0cnanopb.proto\"V\n\x13KeymasterAt\
1392     tributes\x12\x19\n\x04uuid\x18\x01\x20\x01(\x0cR\x04uuidB\x05\x92?\x02\
1393     \x08\x20\x12$\n\nproduct_id\x18\x02\x20\x01(\x0cR\tproductIdB\x05\x92?\
1394     \x02\x08\x10\"\xb2\x02\n\x0eAttestationIds\x12\x1b\n\x05brand\x18\x01\
1395     \x20\x01(\x0cR\x05brandB\x05\x92?\x02\x08@\x12\x1d\n\x06device\x18\x02\
1396     \x20\x01(\x0cR\x06deviceB\x05\x92?\x02\x08@\x12\x1f\n\x07product\x18\x03\
1397     \x20\x01(\x0cR\x07productB\x05\x92?\x02\x08@\x12\x1d\n\x06serial\x18\x04\
1398     \x20\x01(\x0cR\x06serialB\x05\x92?\x02\x08@\x12\x19\n\x04imei\x18\x05\
1399     \x20\x01(\x0cR\x04imeiB\x05\x92?\x02\x08@\x12\x19\n\x04meid\x18\x06\x20\
1400     \x01(\x0cR\x04meidB\x05\x92?\x02\x08@\x12)\n\x0cmanufacturer\x18\x07\x20\
1401     \x01(\x0cR\x0cmanufacturerB\x05\x92?\x02\x08@\x12\x1b\n\x05model\x18\x08\
1402     \x20\x01(\x0cR\x05modelB\x05\x92?\x02\x08@\x12&\n\x0bsecond_imei\x18\t\
1403     \x20\x01(\x0cR\nsecondImeiB\x05\x92?\x02\x08@\"Y\n\x0eAttestationKey\x12\
1404     \x18\n\x03key\x18\x01\x20\x01(\x0cR\x03keyB\x06\x92?\x03\x08\x80\x10\x12\
1405     -\n\x05certs\x18\x02\x20\x03(\x0b2\x10.AttestationCertR\x05certsB\x05\
1406     \x92?\x02\x10\x03\"3\n\x0fAttestationCert\x12\x20\n\x07content\x18\x01\
1407     \x20\x02(\x0cR\x07contentB\x06\x92?\x03\x08\x80\x10\"9\n\x08UdsCerts\x12\
1408     -\n\x05certs\x18\x01\x20\x03(\x0b2\x10.AttestationCertR\x05certsB\x05\
1409     \x92?\x02\x10\x03J\x90\x19\n\x06\x12\x04%\0E\x02\n\xa6\x0c\n\x01\x0c\x12\
1410     \x03%\0\x122\xcc\x04\n\x20Copyright\x20(C)\x202018\x20The\x20Android\x20\
1411     Open\x20Source\x20Project\n\n\x20Licensed\x20under\x20the\x20Apache\x20L\
1412     icense,\x20Version\x202.0\x20(the\x20\"License\");\n\x20you\x20may\x20no\
1413     t\x20use\x20this\x20file\x20except\x20in\x20compliance\x20with\x20the\
1414     \x20License.\n\x20You\x20may\x20obtain\x20a\x20copy\x20of\x20the\x20Lice\
1415     nse\x20at\n\n\x20\x20\x20\x20\x20\x20http://www.apache.org/licenses/LICE\
1416     NSE-2.0\n\n\x20Unless\x20required\x20by\x20applicable\x20law\x20or\x20ag\
1417     reed\x20to\x20in\x20writing,\x20software\n\x20distributed\x20under\x20th\
1418     e\x20License\x20is\x20distributed\x20on\x20an\x20\"AS\x20IS\"\x20BASIS,\
1419     \n\x20WITHOUT\x20WARRANTIES\x20OR\x20CONDITIONS\x20OF\x20ANY\x20KIND,\
1420     \x20either\x20express\x20or\x20implied.\n\x20See\x20the\x20License\x20fo\
1421     r\x20the\x20specific\x20language\x20governing\x20permissions\x20and\n\
1422     \x20limitations\x20under\x20the\x20License.\n2\xcc\x07\x20We\x20check\
1423     \x20in\x20the\x20prebuilt\x20nanopb\x20protobuf\x20file\x20under\x20the\
1424     \x20current\x20folder\n\x20because\x20the\x20compile\x20tool\x20chain\
1425     \x20using\x20trusty/user/base/make/compile_proto.mk\n\x20might\x20not\
1426     \x20work\x20under\x20certain\x20environment\x20with\x20lower\x20version\
1427     \x20of\x20python\n\x20protobuf\x20installed.\x20You\x20need\x20to\x20gen\
1428     erate\x20and\x20check\x20in\x20the\x20new\x20protobuf\x20file\n\x20if\
1429     \x20you\x20change\x20this\x20file\x20in\x20order\x20for\x20the\x20change\
1430     \x20to\x20take\x20effect!\n\n\x20To\x20generate\x20the\x20file\x20using\
1431     \x20the\x20tool\x20chain\x20in\x20trusty\x20tree,\x20add\x20the\x20follo\
1432     wing\n\x20command\x20to\x20rules.mk:\n\n\x20PB_GEN_DIR\x20:=\x20[Your\
1433     \x20generation\x20folder]\n\x20include\x20trusty/user/base/make/compile_\
1434     proto.mk\n\x20$(eval\x20$(call\x20compile_proto,$(KEYMASTER_DIR)/keymast\
1435     er_attributes.proto,$(PB_GEN_DIR)))\n\n\x20The\x20generated\x20.pb.c\x20\
1436     and\x20.pb.h\x20file\x20would\x20be\x20under\x20PB_GEN_DIR,\x20include\
1437     \x20them\n\x20to\x20the\x20source\x20path.\n\n\x20To\x20generate\x20the\
1438     \x20file\x20using\x20your\x20own\x20tool\x20chain,\x20please\x20follow\
1439     \x20the\x20guide\x20at\n\x20https://github.com/nanopb/nanopb.\n\x20Pleas\
1440     e\x20check\x20the\x20nanopb\x20version\x20in\x20trusty\x20tree\x20at\x20\
1441     external/nanopb-c\x20to\x20make\n\x20sure\x20you\x20are\x20using\x20the\
1442     \x20same\x20nanopb\x20version.\n\n\t\n\x02\x03\0\x12\x03'\0\x16\n\n\n\
1443     \x02\x04\0\x12\x04)\0,\x01\n\n\n\x03\x04\0\x01\x12\x03)\x08\x1b\n\x0b\n\
1444     \x04\x04\0\x02\0\x12\x03*\x021\n\x0c\n\x05\x04\0\x02\0\x04\x12\x03*\x02\
1445     \n\n\x0c\n\x05\x04\0\x02\0\x05\x12\x03*\x0b\x10\n\x0c\n\x05\x04\0\x02\0\
1446     \x01\x12\x03*\x11\x15\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03*\x18\x19\n\x0c\
1447     \n\x05\x04\0\x02\0\x08\x12\x03*\x1a0\n\x0f\n\x08\x04\0\x02\0\x08\xf2\x07\
1448     \x01\x12\x03*\x1b/\n\x0b\n\x04\x04\0\x02\x01\x12\x03+\x027\n\x0c\n\x05\
1449     \x04\0\x02\x01\x04\x12\x03+\x02\n\n\x0c\n\x05\x04\0\x02\x01\x05\x12\x03+\
1450     \x0b\x10\n\x0c\n\x05\x04\0\x02\x01\x01\x12\x03+\x11\x1b\n\x0c\n\x05\x04\
1451     \0\x02\x01\x03\x12\x03+\x1e\x1f\n\x0c\n\x05\x04\0\x02\x01\x08\x12\x03+\
1452     \x206\n\x0f\n\x08\x04\0\x02\x01\x08\xf2\x07\x01\x12\x03+!5\n\n\n\x02\x04\
1453     \x01\x12\x04.\08\x01\n\n\n\x03\x04\x01\x01\x12\x03.\x08\x16\n\x0b\n\x04\
1454     \x04\x01\x02\0\x12\x03/\x044\n\x0c\n\x05\x04\x01\x02\0\x04\x12\x03/\x04\
1455     \x0c\n\x0c\n\x05\x04\x01\x02\0\x05\x12\x03/\r\x12\n\x0c\n\x05\x04\x01\
1456     \x02\0\x01\x12\x03/\x13\x18\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x03/\x1b\
1457     \x1c\n\x0c\n\x05\x04\x01\x02\0\x08\x12\x03/\x1d3\n\x0f\n\x08\x04\x01\x02\
1458     \0\x08\xf2\x07\x01\x12\x03/\x1e2\n\x0b\n\x04\x04\x01\x02\x01\x12\x030\
1459     \x045\n\x0c\n\x05\x04\x01\x02\x01\x04\x12\x030\x04\x0c\n\x0c\n\x05\x04\
1460     \x01\x02\x01\x05\x12\x030\r\x12\n\x0c\n\x05\x04\x01\x02\x01\x01\x12\x030\
1461     \x13\x19\n\x0c\n\x05\x04\x01\x02\x01\x03\x12\x030\x1c\x1d\n\x0c\n\x05\
1462     \x04\x01\x02\x01\x08\x12\x030\x1e4\n\x0f\n\x08\x04\x01\x02\x01\x08\xf2\
1463     \x07\x01\x12\x030\x1f3\n\x0b\n\x04\x04\x01\x02\x02\x12\x031\x046\n\x0c\n\
1464     \x05\x04\x01\x02\x02\x04\x12\x031\x04\x0c\n\x0c\n\x05\x04\x01\x02\x02\
1465     \x05\x12\x031\r\x12\n\x0c\n\x05\x04\x01\x02\x02\x01\x12\x031\x13\x1a\n\
1466     \x0c\n\x05\x04\x01\x02\x02\x03\x12\x031\x1d\x1e\n\x0c\n\x05\x04\x01\x02\
1467     \x02\x08\x12\x031\x1f5\n\x0f\n\x08\x04\x01\x02\x02\x08\xf2\x07\x01\x12\
1468     \x031\x204\n\x0b\n\x04\x04\x01\x02\x03\x12\x032\x045\n\x0c\n\x05\x04\x01\
1469     \x02\x03\x04\x12\x032\x04\x0c\n\x0c\n\x05\x04\x01\x02\x03\x05\x12\x032\r\
1470     \x12\n\x0c\n\x05\x04\x01\x02\x03\x01\x12\x032\x13\x19\n\x0c\n\x05\x04\
1471     \x01\x02\x03\x03\x12\x032\x1c\x1d\n\x0c\n\x05\x04\x01\x02\x03\x08\x12\
1472     \x032\x1e4\n\x0f\n\x08\x04\x01\x02\x03\x08\xf2\x07\x01\x12\x032\x1f3\n\
1473     \x0b\n\x04\x04\x01\x02\x04\x12\x033\x043\n\x0c\n\x05\x04\x01\x02\x04\x04\
1474     \x12\x033\x04\x0c\n\x0c\n\x05\x04\x01\x02\x04\x05\x12\x033\r\x12\n\x0c\n\
1475     \x05\x04\x01\x02\x04\x01\x12\x033\x13\x17\n\x0c\n\x05\x04\x01\x02\x04\
1476     \x03\x12\x033\x1a\x1b\n\x0c\n\x05\x04\x01\x02\x04\x08\x12\x033\x1c2\n\
1477     \x0f\n\x08\x04\x01\x02\x04\x08\xf2\x07\x01\x12\x033\x1d1\n\x0b\n\x04\x04\
1478     \x01\x02\x05\x12\x034\x043\n\x0c\n\x05\x04\x01\x02\x05\x04\x12\x034\x04\
1479     \x0c\n\x0c\n\x05\x04\x01\x02\x05\x05\x12\x034\r\x12\n\x0c\n\x05\x04\x01\
1480     \x02\x05\x01\x12\x034\x13\x17\n\x0c\n\x05\x04\x01\x02\x05\x03\x12\x034\
1481     \x1a\x1b\n\x0c\n\x05\x04\x01\x02\x05\x08\x12\x034\x1c2\n\x0f\n\x08\x04\
1482     \x01\x02\x05\x08\xf2\x07\x01\x12\x034\x1d1\n\x0b\n\x04\x04\x01\x02\x06\
1483     \x12\x035\x04;\n\x0c\n\x05\x04\x01\x02\x06\x04\x12\x035\x04\x0c\n\x0c\n\
1484     \x05\x04\x01\x02\x06\x05\x12\x035\r\x12\n\x0c\n\x05\x04\x01\x02\x06\x01\
1485     \x12\x035\x13\x1f\n\x0c\n\x05\x04\x01\x02\x06\x03\x12\x035\"#\n\x0c\n\
1486     \x05\x04\x01\x02\x06\x08\x12\x035$:\n\x0f\n\x08\x04\x01\x02\x06\x08\xf2\
1487     \x07\x01\x12\x035%9\n\x0b\n\x04\x04\x01\x02\x07\x12\x036\x044\n\x0c\n\
1488     \x05\x04\x01\x02\x07\x04\x12\x036\x04\x0c\n\x0c\n\x05\x04\x01\x02\x07\
1489     \x05\x12\x036\r\x12\n\x0c\n\x05\x04\x01\x02\x07\x01\x12\x036\x13\x18\n\
1490     \x0c\n\x05\x04\x01\x02\x07\x03\x12\x036\x1b\x1c\n\x0c\n\x05\x04\x01\x02\
1491     \x07\x08\x12\x036\x1d3\n\x0f\n\x08\x04\x01\x02\x07\x08\xf2\x07\x01\x12\
1492     \x036\x1e2\n\x0b\n\x04\x04\x01\x02\x08\x12\x037\x04:\n\x0c\n\x05\x04\x01\
1493     \x02\x08\x04\x12\x037\x04\x0c\n\x0c\n\x05\x04\x01\x02\x08\x05\x12\x037\r\
1494     \x12\n\x0c\n\x05\x04\x01\x02\x08\x01\x12\x037\x13\x1e\n\x0c\n\x05\x04\
1495     \x01\x02\x08\x03\x12\x037!\"\n\x0c\n\x05\x04\x01\x02\x08\x08\x12\x037#9\
1496     \n\x0f\n\x08\x04\x01\x02\x08\x08\xf2\x07\x01\x12\x037$8\n\n\n\x02\x04\
1497     \x02\x12\x04:\0=\x01\n\n\n\x03\x04\x02\x01\x12\x03:\x08\x16\n\x0b\n\x04\
1498     \x04\x02\x02\0\x12\x03;\x022\n\x0c\n\x05\x04\x02\x02\0\x04\x12\x03;\x02\
1499     \n\n\x0c\n\x05\x04\x02\x02\0\x05\x12\x03;\x0b\x10\n\x0c\n\x05\x04\x02\
1500     \x02\0\x01\x12\x03;\x11\x14\n\x0c\n\x05\x04\x02\x02\0\x03\x12\x03;\x17\
1501     \x18\n\x0c\n\x05\x04\x02\x02\0\x08\x12\x03;\x191\n\x0f\n\x08\x04\x02\x02\
1502     \0\x08\xf2\x07\x01\x12\x03;\x1a0\n\x0b\n\x04\x04\x02\x02\x01\x12\x03<\
1503     \x02<\n\x0c\n\x05\x04\x02\x02\x01\x04\x12\x03<\x02\n\n\x0c\n\x05\x04\x02\
1504     \x02\x01\x06\x12\x03<\x0b\x1a\n\x0c\n\x05\x04\x02\x02\x01\x01\x12\x03<\
1505     \x1b\x20\n\x0c\n\x05\x04\x02\x02\x01\x03\x12\x03<#$\n\x0c\n\x05\x04\x02\
1506     \x02\x01\x08\x12\x03<%;\n\x0f\n\x08\x04\x02\x02\x01\x08\xf2\x07\x02\x12\
1507     \x03<&:\n\n\n\x02\x04\x03\x12\x04?\0A\x01\n\n\n\x03\x04\x03\x01\x12\x03?\
1508     \x08\x17\n\x0b\n\x04\x04\x03\x02\0\x12\x03@\x026\n\x0c\n\x05\x04\x03\x02\
1509     \0\x04\x12\x03@\x02\n\n\x0c\n\x05\x04\x03\x02\0\x05\x12\x03@\x0b\x10\n\
1510     \x0c\n\x05\x04\x03\x02\0\x01\x12\x03@\x11\x18\n\x0c\n\x05\x04\x03\x02\0\
1511     \x03\x12\x03@\x1b\x1c\n\x0c\n\x05\x04\x03\x02\0\x08\x12\x03@\x1d5\n\x0f\
1512     \n\x08\x04\x03\x02\0\x08\xf2\x07\x01\x12\x03@\x1e4\n\n\n\x02\x04\x04\x12\
1513     \x04C\0E\x01\n\n\n\x03\x04\x04\x01\x12\x03C\x08\x10\n\x0b\n\x04\x04\x04\
1514     \x02\0\x12\x03D\x02<\n\x0c\n\x05\x04\x04\x02\0\x04\x12\x03D\x02\n\n\x0c\
1515     \n\x05\x04\x04\x02\0\x06\x12\x03D\x0b\x1a\n\x0c\n\x05\x04\x04\x02\0\x01\
1516     \x12\x03D\x1b\x20\n\x0c\n\x05\x04\x04\x02\0\x03\x12\x03D#$\n\x0c\n\x05\
1517     \x04\x04\x02\0\x08\x12\x03D%;\n\x0f\n\x08\x04\x04\x02\0\x08\xf2\x07\x02\
1518     \x12\x03D&:\
1519 ";
1520 
1521 static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT;
1522 
parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto1523 fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
1524     ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
1525 }
1526 
file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto1527 pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
1528     file_descriptor_proto_lazy.get(|| {
1529         parse_descriptor_proto()
1530     })
1531 }
1532