gf_metadata/
languages_public.rs

1// This file is generated by rust-protobuf 3.7.2. Do not edit
2// .proto file is parsed by protoc --rs_out=...
3// @generated
4
5// https://github.com/rust-lang/rust-clippy/issues/702
6#![allow(unknown_lints)]
7#![allow(clippy::all)]
8
9#![allow(unused_attributes)]
10#![cfg_attr(rustfmt, rustfmt::skip)]
11
12#![allow(dead_code)]
13#![allow(missing_docs)]
14#![allow(non_camel_case_types)]
15#![allow(non_snake_case)]
16#![allow(non_upper_case_globals)]
17#![allow(trivial_casts)]
18#![allow(unused_results)]
19#![allow(unused_mut)]
20
21//! Generated file from `languages_public.proto`
22
23/// Generated files are compatible only with the same version
24/// of protobuf runtime.
25const _PROTOBUF_VERSION_CHECK: () = ::protobuf::VERSION_3_7_2;
26
27///  A region or territory as defined in the CLDR
28// @@protoc_insertion_point(message:google.languages_public.RegionProto)
29#[derive(PartialEq,Clone,Default,Debug)]
30pub struct RegionProto {
31    // message fields
32    // @@protoc_insertion_point(field:google.languages_public.RegionProto.id)
33    pub id: ::std::option::Option<::std::string::String>,
34    // @@protoc_insertion_point(field:google.languages_public.RegionProto.name)
35    pub name: ::std::option::Option<::std::string::String>,
36    // @@protoc_insertion_point(field:google.languages_public.RegionProto.population)
37    pub population: ::std::option::Option<i32>,
38    // @@protoc_insertion_point(field:google.languages_public.RegionProto.region_group)
39    pub region_group: ::std::vec::Vec<::std::string::String>,
40    // special fields
41    // @@protoc_insertion_point(special_field:google.languages_public.RegionProto.special_fields)
42    pub special_fields: ::protobuf::SpecialFields,
43}
44
45impl<'a> ::std::default::Default for &'a RegionProto {
46    fn default() -> &'a RegionProto {
47        <RegionProto as ::protobuf::Message>::default_instance()
48    }
49}
50
51impl RegionProto {
52    pub fn new() -> RegionProto {
53        ::std::default::Default::default()
54    }
55
56    // optional string id = 1;
57
58    pub fn id(&self) -> &str {
59        match self.id.as_ref() {
60            Some(v) => v,
61            None => "",
62        }
63    }
64
65    pub fn clear_id(&mut self) {
66        self.id = ::std::option::Option::None;
67    }
68
69    pub fn has_id(&self) -> bool {
70        self.id.is_some()
71    }
72
73    // Param is passed by value, moved
74    pub fn set_id(&mut self, v: ::std::string::String) {
75        self.id = ::std::option::Option::Some(v);
76    }
77
78    // Mutable pointer to the field.
79    // If field is not initialized, it is initialized with default value first.
80    pub fn mut_id(&mut self) -> &mut ::std::string::String {
81        if self.id.is_none() {
82            self.id = ::std::option::Option::Some(::std::string::String::new());
83        }
84        self.id.as_mut().unwrap()
85    }
86
87    // Take field
88    pub fn take_id(&mut self) -> ::std::string::String {
89        self.id.take().unwrap_or_else(|| ::std::string::String::new())
90    }
91
92    // optional string name = 2;
93
94    pub fn name(&self) -> &str {
95        match self.name.as_ref() {
96            Some(v) => v,
97            None => "",
98        }
99    }
100
101    pub fn clear_name(&mut self) {
102        self.name = ::std::option::Option::None;
103    }
104
105    pub fn has_name(&self) -> bool {
106        self.name.is_some()
107    }
108
109    // Param is passed by value, moved
110    pub fn set_name(&mut self, v: ::std::string::String) {
111        self.name = ::std::option::Option::Some(v);
112    }
113
114    // Mutable pointer to the field.
115    // If field is not initialized, it is initialized with default value first.
116    pub fn mut_name(&mut self) -> &mut ::std::string::String {
117        if self.name.is_none() {
118            self.name = ::std::option::Option::Some(::std::string::String::new());
119        }
120        self.name.as_mut().unwrap()
121    }
122
123    // Take field
124    pub fn take_name(&mut self) -> ::std::string::String {
125        self.name.take().unwrap_or_else(|| ::std::string::String::new())
126    }
127
128    // optional int32 population = 3;
129
130    pub fn population(&self) -> i32 {
131        self.population.unwrap_or(0)
132    }
133
134    pub fn clear_population(&mut self) {
135        self.population = ::std::option::Option::None;
136    }
137
138    pub fn has_population(&self) -> bool {
139        self.population.is_some()
140    }
141
142    // Param is passed by value, moved
143    pub fn set_population(&mut self, v: i32) {
144        self.population = ::std::option::Option::Some(v);
145    }
146
147    fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
148        let mut fields = ::std::vec::Vec::with_capacity(4);
149        let mut oneofs = ::std::vec::Vec::with_capacity(0);
150        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
151            "id",
152            |m: &RegionProto| { &m.id },
153            |m: &mut RegionProto| { &mut m.id },
154        ));
155        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
156            "name",
157            |m: &RegionProto| { &m.name },
158            |m: &mut RegionProto| { &mut m.name },
159        ));
160        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
161            "population",
162            |m: &RegionProto| { &m.population },
163            |m: &mut RegionProto| { &mut m.population },
164        ));
165        fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
166            "region_group",
167            |m: &RegionProto| { &m.region_group },
168            |m: &mut RegionProto| { &mut m.region_group },
169        ));
170        ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<RegionProto>(
171            "RegionProto",
172            fields,
173            oneofs,
174        )
175    }
176}
177
178impl ::protobuf::Message for RegionProto {
179    const NAME: &'static str = "RegionProto";
180
181    fn is_initialized(&self) -> bool {
182        true
183    }
184
185    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
186        while let Some(tag) = is.read_raw_tag_or_eof()? {
187            match tag {
188                10 => {
189                    self.id = ::std::option::Option::Some(is.read_string()?);
190                },
191                18 => {
192                    self.name = ::std::option::Option::Some(is.read_string()?);
193                },
194                24 => {
195                    self.population = ::std::option::Option::Some(is.read_int32()?);
196                },
197                34 => {
198                    self.region_group.push(is.read_string()?);
199                },
200                tag => {
201                    ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
202                },
203            };
204        }
205        ::std::result::Result::Ok(())
206    }
207
208    // Compute sizes of nested messages
209    #[allow(unused_variables)]
210    fn compute_size(&self) -> u64 {
211        let mut my_size = 0;
212        if let Some(v) = self.id.as_ref() {
213            my_size += ::protobuf::rt::string_size(1, &v);
214        }
215        if let Some(v) = self.name.as_ref() {
216            my_size += ::protobuf::rt::string_size(2, &v);
217        }
218        if let Some(v) = self.population {
219            my_size += ::protobuf::rt::int32_size(3, v);
220        }
221        for value in &self.region_group {
222            my_size += ::protobuf::rt::string_size(4, &value);
223        };
224        my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
225        self.special_fields.cached_size().set(my_size as u32);
226        my_size
227    }
228
229    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
230        if let Some(v) = self.id.as_ref() {
231            os.write_string(1, v)?;
232        }
233        if let Some(v) = self.name.as_ref() {
234            os.write_string(2, v)?;
235        }
236        if let Some(v) = self.population {
237            os.write_int32(3, v)?;
238        }
239        for v in &self.region_group {
240            os.write_string(4, &v)?;
241        };
242        os.write_unknown_fields(self.special_fields.unknown_fields())?;
243        ::std::result::Result::Ok(())
244    }
245
246    fn special_fields(&self) -> &::protobuf::SpecialFields {
247        &self.special_fields
248    }
249
250    fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
251        &mut self.special_fields
252    }
253
254    fn new() -> RegionProto {
255        RegionProto::new()
256    }
257
258    fn clear(&mut self) {
259        self.id = ::std::option::Option::None;
260        self.name = ::std::option::Option::None;
261        self.population = ::std::option::Option::None;
262        self.region_group.clear();
263        self.special_fields.clear();
264    }
265
266    fn default_instance() -> &'static RegionProto {
267        static instance: RegionProto = RegionProto {
268            id: ::std::option::Option::None,
269            name: ::std::option::Option::None,
270            population: ::std::option::Option::None,
271            region_group: ::std::vec::Vec::new(),
272            special_fields: ::protobuf::SpecialFields::new(),
273        };
274        &instance
275    }
276}
277
278impl ::protobuf::MessageFull for RegionProto {
279    fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
280        static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
281        descriptor.get(|| file_descriptor().message_by_package_relative_name("RegionProto").unwrap()).clone()
282    }
283}
284
285impl ::std::fmt::Display for RegionProto {
286    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
287        ::protobuf::text_format::fmt(self, f)
288    }
289}
290
291impl ::protobuf::reflect::ProtobufValue for RegionProto {
292    type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
293}
294
295// @@protoc_insertion_point(message:google.languages_public.ScriptProto)
296#[derive(PartialEq,Clone,Default,Debug)]
297pub struct ScriptProto {
298    // message fields
299    // @@protoc_insertion_point(field:google.languages_public.ScriptProto.id)
300    pub id: ::std::option::Option<::std::string::String>,
301    // @@protoc_insertion_point(field:google.languages_public.ScriptProto.name)
302    pub name: ::std::option::Option<::std::string::String>,
303    // @@protoc_insertion_point(field:google.languages_public.ScriptProto.historical)
304    pub historical: ::std::option::Option<bool>,
305    // @@protoc_insertion_point(field:google.languages_public.ScriptProto.fictional)
306    pub fictional: ::std::option::Option<bool>,
307    // @@protoc_insertion_point(field:google.languages_public.ScriptProto.family)
308    pub family: ::std::option::Option<::std::string::String>,
309    // @@protoc_insertion_point(field:google.languages_public.ScriptProto.summary)
310    pub summary: ::std::option::Option<::std::string::String>,
311    // special fields
312    // @@protoc_insertion_point(special_field:google.languages_public.ScriptProto.special_fields)
313    pub special_fields: ::protobuf::SpecialFields,
314}
315
316impl<'a> ::std::default::Default for &'a ScriptProto {
317    fn default() -> &'a ScriptProto {
318        <ScriptProto as ::protobuf::Message>::default_instance()
319    }
320}
321
322impl ScriptProto {
323    pub fn new() -> ScriptProto {
324        ::std::default::Default::default()
325    }
326
327    // optional string id = 1;
328
329    pub fn id(&self) -> &str {
330        match self.id.as_ref() {
331            Some(v) => v,
332            None => "",
333        }
334    }
335
336    pub fn clear_id(&mut self) {
337        self.id = ::std::option::Option::None;
338    }
339
340    pub fn has_id(&self) -> bool {
341        self.id.is_some()
342    }
343
344    // Param is passed by value, moved
345    pub fn set_id(&mut self, v: ::std::string::String) {
346        self.id = ::std::option::Option::Some(v);
347    }
348
349    // Mutable pointer to the field.
350    // If field is not initialized, it is initialized with default value first.
351    pub fn mut_id(&mut self) -> &mut ::std::string::String {
352        if self.id.is_none() {
353            self.id = ::std::option::Option::Some(::std::string::String::new());
354        }
355        self.id.as_mut().unwrap()
356    }
357
358    // Take field
359    pub fn take_id(&mut self) -> ::std::string::String {
360        self.id.take().unwrap_or_else(|| ::std::string::String::new())
361    }
362
363    // optional string name = 2;
364
365    pub fn name(&self) -> &str {
366        match self.name.as_ref() {
367            Some(v) => v,
368            None => "",
369        }
370    }
371
372    pub fn clear_name(&mut self) {
373        self.name = ::std::option::Option::None;
374    }
375
376    pub fn has_name(&self) -> bool {
377        self.name.is_some()
378    }
379
380    // Param is passed by value, moved
381    pub fn set_name(&mut self, v: ::std::string::String) {
382        self.name = ::std::option::Option::Some(v);
383    }
384
385    // Mutable pointer to the field.
386    // If field is not initialized, it is initialized with default value first.
387    pub fn mut_name(&mut self) -> &mut ::std::string::String {
388        if self.name.is_none() {
389            self.name = ::std::option::Option::Some(::std::string::String::new());
390        }
391        self.name.as_mut().unwrap()
392    }
393
394    // Take field
395    pub fn take_name(&mut self) -> ::std::string::String {
396        self.name.take().unwrap_or_else(|| ::std::string::String::new())
397    }
398
399    // optional bool historical = 3;
400
401    pub fn historical(&self) -> bool {
402        self.historical.unwrap_or(false)
403    }
404
405    pub fn clear_historical(&mut self) {
406        self.historical = ::std::option::Option::None;
407    }
408
409    pub fn has_historical(&self) -> bool {
410        self.historical.is_some()
411    }
412
413    // Param is passed by value, moved
414    pub fn set_historical(&mut self, v: bool) {
415        self.historical = ::std::option::Option::Some(v);
416    }
417
418    // optional bool fictional = 4;
419
420    pub fn fictional(&self) -> bool {
421        self.fictional.unwrap_or(false)
422    }
423
424    pub fn clear_fictional(&mut self) {
425        self.fictional = ::std::option::Option::None;
426    }
427
428    pub fn has_fictional(&self) -> bool {
429        self.fictional.is_some()
430    }
431
432    // Param is passed by value, moved
433    pub fn set_fictional(&mut self, v: bool) {
434        self.fictional = ::std::option::Option::Some(v);
435    }
436
437    // optional string family = 5;
438
439    pub fn family(&self) -> &str {
440        match self.family.as_ref() {
441            Some(v) => v,
442            None => "",
443        }
444    }
445
446    pub fn clear_family(&mut self) {
447        self.family = ::std::option::Option::None;
448    }
449
450    pub fn has_family(&self) -> bool {
451        self.family.is_some()
452    }
453
454    // Param is passed by value, moved
455    pub fn set_family(&mut self, v: ::std::string::String) {
456        self.family = ::std::option::Option::Some(v);
457    }
458
459    // Mutable pointer to the field.
460    // If field is not initialized, it is initialized with default value first.
461    pub fn mut_family(&mut self) -> &mut ::std::string::String {
462        if self.family.is_none() {
463            self.family = ::std::option::Option::Some(::std::string::String::new());
464        }
465        self.family.as_mut().unwrap()
466    }
467
468    // Take field
469    pub fn take_family(&mut self) -> ::std::string::String {
470        self.family.take().unwrap_or_else(|| ::std::string::String::new())
471    }
472
473    // optional string summary = 6;
474
475    pub fn summary(&self) -> &str {
476        match self.summary.as_ref() {
477            Some(v) => v,
478            None => "",
479        }
480    }
481
482    pub fn clear_summary(&mut self) {
483        self.summary = ::std::option::Option::None;
484    }
485
486    pub fn has_summary(&self) -> bool {
487        self.summary.is_some()
488    }
489
490    // Param is passed by value, moved
491    pub fn set_summary(&mut self, v: ::std::string::String) {
492        self.summary = ::std::option::Option::Some(v);
493    }
494
495    // Mutable pointer to the field.
496    // If field is not initialized, it is initialized with default value first.
497    pub fn mut_summary(&mut self) -> &mut ::std::string::String {
498        if self.summary.is_none() {
499            self.summary = ::std::option::Option::Some(::std::string::String::new());
500        }
501        self.summary.as_mut().unwrap()
502    }
503
504    // Take field
505    pub fn take_summary(&mut self) -> ::std::string::String {
506        self.summary.take().unwrap_or_else(|| ::std::string::String::new())
507    }
508
509    fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
510        let mut fields = ::std::vec::Vec::with_capacity(6);
511        let mut oneofs = ::std::vec::Vec::with_capacity(0);
512        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
513            "id",
514            |m: &ScriptProto| { &m.id },
515            |m: &mut ScriptProto| { &mut m.id },
516        ));
517        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
518            "name",
519            |m: &ScriptProto| { &m.name },
520            |m: &mut ScriptProto| { &mut m.name },
521        ));
522        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
523            "historical",
524            |m: &ScriptProto| { &m.historical },
525            |m: &mut ScriptProto| { &mut m.historical },
526        ));
527        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
528            "fictional",
529            |m: &ScriptProto| { &m.fictional },
530            |m: &mut ScriptProto| { &mut m.fictional },
531        ));
532        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
533            "family",
534            |m: &ScriptProto| { &m.family },
535            |m: &mut ScriptProto| { &mut m.family },
536        ));
537        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
538            "summary",
539            |m: &ScriptProto| { &m.summary },
540            |m: &mut ScriptProto| { &mut m.summary },
541        ));
542        ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ScriptProto>(
543            "ScriptProto",
544            fields,
545            oneofs,
546        )
547    }
548}
549
550impl ::protobuf::Message for ScriptProto {
551    const NAME: &'static str = "ScriptProto";
552
553    fn is_initialized(&self) -> bool {
554        true
555    }
556
557    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
558        while let Some(tag) = is.read_raw_tag_or_eof()? {
559            match tag {
560                10 => {
561                    self.id = ::std::option::Option::Some(is.read_string()?);
562                },
563                18 => {
564                    self.name = ::std::option::Option::Some(is.read_string()?);
565                },
566                24 => {
567                    self.historical = ::std::option::Option::Some(is.read_bool()?);
568                },
569                32 => {
570                    self.fictional = ::std::option::Option::Some(is.read_bool()?);
571                },
572                42 => {
573                    self.family = ::std::option::Option::Some(is.read_string()?);
574                },
575                50 => {
576                    self.summary = ::std::option::Option::Some(is.read_string()?);
577                },
578                tag => {
579                    ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
580                },
581            };
582        }
583        ::std::result::Result::Ok(())
584    }
585
586    // Compute sizes of nested messages
587    #[allow(unused_variables)]
588    fn compute_size(&self) -> u64 {
589        let mut my_size = 0;
590        if let Some(v) = self.id.as_ref() {
591            my_size += ::protobuf::rt::string_size(1, &v);
592        }
593        if let Some(v) = self.name.as_ref() {
594            my_size += ::protobuf::rt::string_size(2, &v);
595        }
596        if let Some(v) = self.historical {
597            my_size += 1 + 1;
598        }
599        if let Some(v) = self.fictional {
600            my_size += 1 + 1;
601        }
602        if let Some(v) = self.family.as_ref() {
603            my_size += ::protobuf::rt::string_size(5, &v);
604        }
605        if let Some(v) = self.summary.as_ref() {
606            my_size += ::protobuf::rt::string_size(6, &v);
607        }
608        my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
609        self.special_fields.cached_size().set(my_size as u32);
610        my_size
611    }
612
613    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
614        if let Some(v) = self.id.as_ref() {
615            os.write_string(1, v)?;
616        }
617        if let Some(v) = self.name.as_ref() {
618            os.write_string(2, v)?;
619        }
620        if let Some(v) = self.historical {
621            os.write_bool(3, v)?;
622        }
623        if let Some(v) = self.fictional {
624            os.write_bool(4, v)?;
625        }
626        if let Some(v) = self.family.as_ref() {
627            os.write_string(5, v)?;
628        }
629        if let Some(v) = self.summary.as_ref() {
630            os.write_string(6, v)?;
631        }
632        os.write_unknown_fields(self.special_fields.unknown_fields())?;
633        ::std::result::Result::Ok(())
634    }
635
636    fn special_fields(&self) -> &::protobuf::SpecialFields {
637        &self.special_fields
638    }
639
640    fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
641        &mut self.special_fields
642    }
643
644    fn new() -> ScriptProto {
645        ScriptProto::new()
646    }
647
648    fn clear(&mut self) {
649        self.id = ::std::option::Option::None;
650        self.name = ::std::option::Option::None;
651        self.historical = ::std::option::Option::None;
652        self.fictional = ::std::option::Option::None;
653        self.family = ::std::option::Option::None;
654        self.summary = ::std::option::Option::None;
655        self.special_fields.clear();
656    }
657
658    fn default_instance() -> &'static ScriptProto {
659        static instance: ScriptProto = ScriptProto {
660            id: ::std::option::Option::None,
661            name: ::std::option::Option::None,
662            historical: ::std::option::Option::None,
663            fictional: ::std::option::Option::None,
664            family: ::std::option::Option::None,
665            summary: ::std::option::Option::None,
666            special_fields: ::protobuf::SpecialFields::new(),
667        };
668        &instance
669    }
670}
671
672impl ::protobuf::MessageFull for ScriptProto {
673    fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
674        static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
675        descriptor.get(|| file_descriptor().message_by_package_relative_name("ScriptProto").unwrap()).clone()
676    }
677}
678
679impl ::std::fmt::Display for ScriptProto {
680    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
681        ::protobuf::text_format::fmt(self, f)
682    }
683}
684
685impl ::protobuf::reflect::ProtobufValue for ScriptProto {
686    type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
687}
688
689// @@protoc_insertion_point(message:google.languages_public.LanguageProto)
690#[derive(PartialEq,Clone,Default,Debug)]
691pub struct LanguageProto {
692    // message fields
693    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.id)
694    pub id: ::std::option::Option<::std::string::String>,
695    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.language)
696    pub language: ::std::option::Option<::std::string::String>,
697    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.script)
698    pub script: ::std::option::Option<::std::string::String>,
699    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.name)
700    pub name: ::std::option::Option<::std::string::String>,
701    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.preferred_name)
702    pub preferred_name: ::std::option::Option<::std::string::String>,
703    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.autonym)
704    pub autonym: ::std::option::Option<::std::string::String>,
705    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.population)
706    pub population: ::std::option::Option<i32>,
707    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.region)
708    pub region: ::std::vec::Vec<::std::string::String>,
709    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.exemplar_chars)
710    pub exemplar_chars: ::protobuf::MessageField<ExemplarCharsProto>,
711    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.sample_text)
712    pub sample_text: ::protobuf::MessageField<SampleTextProto>,
713    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.historical)
714    pub historical: ::std::option::Option<bool>,
715    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.source)
716    pub source: ::std::vec::Vec<::std::string::String>,
717    // @@protoc_insertion_point(field:google.languages_public.LanguageProto.note)
718    pub note: ::std::option::Option<::std::string::String>,
719    // special fields
720    // @@protoc_insertion_point(special_field:google.languages_public.LanguageProto.special_fields)
721    pub special_fields: ::protobuf::SpecialFields,
722}
723
724impl<'a> ::std::default::Default for &'a LanguageProto {
725    fn default() -> &'a LanguageProto {
726        <LanguageProto as ::protobuf::Message>::default_instance()
727    }
728}
729
730impl LanguageProto {
731    pub fn new() -> LanguageProto {
732        ::std::default::Default::default()
733    }
734
735    // optional string id = 1;
736
737    pub fn id(&self) -> &str {
738        match self.id.as_ref() {
739            Some(v) => v,
740            None => "",
741        }
742    }
743
744    pub fn clear_id(&mut self) {
745        self.id = ::std::option::Option::None;
746    }
747
748    pub fn has_id(&self) -> bool {
749        self.id.is_some()
750    }
751
752    // Param is passed by value, moved
753    pub fn set_id(&mut self, v: ::std::string::String) {
754        self.id = ::std::option::Option::Some(v);
755    }
756
757    // Mutable pointer to the field.
758    // If field is not initialized, it is initialized with default value first.
759    pub fn mut_id(&mut self) -> &mut ::std::string::String {
760        if self.id.is_none() {
761            self.id = ::std::option::Option::Some(::std::string::String::new());
762        }
763        self.id.as_mut().unwrap()
764    }
765
766    // Take field
767    pub fn take_id(&mut self) -> ::std::string::String {
768        self.id.take().unwrap_or_else(|| ::std::string::String::new())
769    }
770
771    // optional string language = 2;
772
773    pub fn language(&self) -> &str {
774        match self.language.as_ref() {
775            Some(v) => v,
776            None => "",
777        }
778    }
779
780    pub fn clear_language(&mut self) {
781        self.language = ::std::option::Option::None;
782    }
783
784    pub fn has_language(&self) -> bool {
785        self.language.is_some()
786    }
787
788    // Param is passed by value, moved
789    pub fn set_language(&mut self, v: ::std::string::String) {
790        self.language = ::std::option::Option::Some(v);
791    }
792
793    // Mutable pointer to the field.
794    // If field is not initialized, it is initialized with default value first.
795    pub fn mut_language(&mut self) -> &mut ::std::string::String {
796        if self.language.is_none() {
797            self.language = ::std::option::Option::Some(::std::string::String::new());
798        }
799        self.language.as_mut().unwrap()
800    }
801
802    // Take field
803    pub fn take_language(&mut self) -> ::std::string::String {
804        self.language.take().unwrap_or_else(|| ::std::string::String::new())
805    }
806
807    // optional string script = 3;
808
809    pub fn script(&self) -> &str {
810        match self.script.as_ref() {
811            Some(v) => v,
812            None => "",
813        }
814    }
815
816    pub fn clear_script(&mut self) {
817        self.script = ::std::option::Option::None;
818    }
819
820    pub fn has_script(&self) -> bool {
821        self.script.is_some()
822    }
823
824    // Param is passed by value, moved
825    pub fn set_script(&mut self, v: ::std::string::String) {
826        self.script = ::std::option::Option::Some(v);
827    }
828
829    // Mutable pointer to the field.
830    // If field is not initialized, it is initialized with default value first.
831    pub fn mut_script(&mut self) -> &mut ::std::string::String {
832        if self.script.is_none() {
833            self.script = ::std::option::Option::Some(::std::string::String::new());
834        }
835        self.script.as_mut().unwrap()
836    }
837
838    // Take field
839    pub fn take_script(&mut self) -> ::std::string::String {
840        self.script.take().unwrap_or_else(|| ::std::string::String::new())
841    }
842
843    // optional string name = 4;
844
845    pub fn name(&self) -> &str {
846        match self.name.as_ref() {
847            Some(v) => v,
848            None => "",
849        }
850    }
851
852    pub fn clear_name(&mut self) {
853        self.name = ::std::option::Option::None;
854    }
855
856    pub fn has_name(&self) -> bool {
857        self.name.is_some()
858    }
859
860    // Param is passed by value, moved
861    pub fn set_name(&mut self, v: ::std::string::String) {
862        self.name = ::std::option::Option::Some(v);
863    }
864
865    // Mutable pointer to the field.
866    // If field is not initialized, it is initialized with default value first.
867    pub fn mut_name(&mut self) -> &mut ::std::string::String {
868        if self.name.is_none() {
869            self.name = ::std::option::Option::Some(::std::string::String::new());
870        }
871        self.name.as_mut().unwrap()
872    }
873
874    // Take field
875    pub fn take_name(&mut self) -> ::std::string::String {
876        self.name.take().unwrap_or_else(|| ::std::string::String::new())
877    }
878
879    // optional string preferred_name = 5;
880
881    pub fn preferred_name(&self) -> &str {
882        match self.preferred_name.as_ref() {
883            Some(v) => v,
884            None => "",
885        }
886    }
887
888    pub fn clear_preferred_name(&mut self) {
889        self.preferred_name = ::std::option::Option::None;
890    }
891
892    pub fn has_preferred_name(&self) -> bool {
893        self.preferred_name.is_some()
894    }
895
896    // Param is passed by value, moved
897    pub fn set_preferred_name(&mut self, v: ::std::string::String) {
898        self.preferred_name = ::std::option::Option::Some(v);
899    }
900
901    // Mutable pointer to the field.
902    // If field is not initialized, it is initialized with default value first.
903    pub fn mut_preferred_name(&mut self) -> &mut ::std::string::String {
904        if self.preferred_name.is_none() {
905            self.preferred_name = ::std::option::Option::Some(::std::string::String::new());
906        }
907        self.preferred_name.as_mut().unwrap()
908    }
909
910    // Take field
911    pub fn take_preferred_name(&mut self) -> ::std::string::String {
912        self.preferred_name.take().unwrap_or_else(|| ::std::string::String::new())
913    }
914
915    // optional string autonym = 6;
916
917    pub fn autonym(&self) -> &str {
918        match self.autonym.as_ref() {
919            Some(v) => v,
920            None => "",
921        }
922    }
923
924    pub fn clear_autonym(&mut self) {
925        self.autonym = ::std::option::Option::None;
926    }
927
928    pub fn has_autonym(&self) -> bool {
929        self.autonym.is_some()
930    }
931
932    // Param is passed by value, moved
933    pub fn set_autonym(&mut self, v: ::std::string::String) {
934        self.autonym = ::std::option::Option::Some(v);
935    }
936
937    // Mutable pointer to the field.
938    // If field is not initialized, it is initialized with default value first.
939    pub fn mut_autonym(&mut self) -> &mut ::std::string::String {
940        if self.autonym.is_none() {
941            self.autonym = ::std::option::Option::Some(::std::string::String::new());
942        }
943        self.autonym.as_mut().unwrap()
944    }
945
946    // Take field
947    pub fn take_autonym(&mut self) -> ::std::string::String {
948        self.autonym.take().unwrap_or_else(|| ::std::string::String::new())
949    }
950
951    // optional int32 population = 7;
952
953    pub fn population(&self) -> i32 {
954        self.population.unwrap_or(0)
955    }
956
957    pub fn clear_population(&mut self) {
958        self.population = ::std::option::Option::None;
959    }
960
961    pub fn has_population(&self) -> bool {
962        self.population.is_some()
963    }
964
965    // Param is passed by value, moved
966    pub fn set_population(&mut self, v: i32) {
967        self.population = ::std::option::Option::Some(v);
968    }
969
970    // optional bool historical = 11;
971
972    pub fn historical(&self) -> bool {
973        self.historical.unwrap_or(false)
974    }
975
976    pub fn clear_historical(&mut self) {
977        self.historical = ::std::option::Option::None;
978    }
979
980    pub fn has_historical(&self) -> bool {
981        self.historical.is_some()
982    }
983
984    // Param is passed by value, moved
985    pub fn set_historical(&mut self, v: bool) {
986        self.historical = ::std::option::Option::Some(v);
987    }
988
989    // optional string note = 13;
990
991    pub fn note(&self) -> &str {
992        match self.note.as_ref() {
993            Some(v) => v,
994            None => "",
995        }
996    }
997
998    pub fn clear_note(&mut self) {
999        self.note = ::std::option::Option::None;
1000    }
1001
1002    pub fn has_note(&self) -> bool {
1003        self.note.is_some()
1004    }
1005
1006    // Param is passed by value, moved
1007    pub fn set_note(&mut self, v: ::std::string::String) {
1008        self.note = ::std::option::Option::Some(v);
1009    }
1010
1011    // Mutable pointer to the field.
1012    // If field is not initialized, it is initialized with default value first.
1013    pub fn mut_note(&mut self) -> &mut ::std::string::String {
1014        if self.note.is_none() {
1015            self.note = ::std::option::Option::Some(::std::string::String::new());
1016        }
1017        self.note.as_mut().unwrap()
1018    }
1019
1020    // Take field
1021    pub fn take_note(&mut self) -> ::std::string::String {
1022        self.note.take().unwrap_or_else(|| ::std::string::String::new())
1023    }
1024
1025    fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
1026        let mut fields = ::std::vec::Vec::with_capacity(13);
1027        let mut oneofs = ::std::vec::Vec::with_capacity(0);
1028        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1029            "id",
1030            |m: &LanguageProto| { &m.id },
1031            |m: &mut LanguageProto| { &mut m.id },
1032        ));
1033        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1034            "language",
1035            |m: &LanguageProto| { &m.language },
1036            |m: &mut LanguageProto| { &mut m.language },
1037        ));
1038        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1039            "script",
1040            |m: &LanguageProto| { &m.script },
1041            |m: &mut LanguageProto| { &mut m.script },
1042        ));
1043        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1044            "name",
1045            |m: &LanguageProto| { &m.name },
1046            |m: &mut LanguageProto| { &mut m.name },
1047        ));
1048        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1049            "preferred_name",
1050            |m: &LanguageProto| { &m.preferred_name },
1051            |m: &mut LanguageProto| { &mut m.preferred_name },
1052        ));
1053        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1054            "autonym",
1055            |m: &LanguageProto| { &m.autonym },
1056            |m: &mut LanguageProto| { &mut m.autonym },
1057        ));
1058        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1059            "population",
1060            |m: &LanguageProto| { &m.population },
1061            |m: &mut LanguageProto| { &mut m.population },
1062        ));
1063        fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
1064            "region",
1065            |m: &LanguageProto| { &m.region },
1066            |m: &mut LanguageProto| { &mut m.region },
1067        ));
1068        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, ExemplarCharsProto>(
1069            "exemplar_chars",
1070            |m: &LanguageProto| { &m.exemplar_chars },
1071            |m: &mut LanguageProto| { &mut m.exemplar_chars },
1072        ));
1073        fields.push(::protobuf::reflect::rt::v2::make_message_field_accessor::<_, SampleTextProto>(
1074            "sample_text",
1075            |m: &LanguageProto| { &m.sample_text },
1076            |m: &mut LanguageProto| { &mut m.sample_text },
1077        ));
1078        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1079            "historical",
1080            |m: &LanguageProto| { &m.historical },
1081            |m: &mut LanguageProto| { &mut m.historical },
1082        ));
1083        fields.push(::protobuf::reflect::rt::v2::make_vec_simpler_accessor::<_, _>(
1084            "source",
1085            |m: &LanguageProto| { &m.source },
1086            |m: &mut LanguageProto| { &mut m.source },
1087        ));
1088        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1089            "note",
1090            |m: &LanguageProto| { &m.note },
1091            |m: &mut LanguageProto| { &mut m.note },
1092        ));
1093        ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<LanguageProto>(
1094            "LanguageProto",
1095            fields,
1096            oneofs,
1097        )
1098    }
1099}
1100
1101impl ::protobuf::Message for LanguageProto {
1102    const NAME: &'static str = "LanguageProto";
1103
1104    fn is_initialized(&self) -> bool {
1105        true
1106    }
1107
1108    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
1109        while let Some(tag) = is.read_raw_tag_or_eof()? {
1110            match tag {
1111                10 => {
1112                    self.id = ::std::option::Option::Some(is.read_string()?);
1113                },
1114                18 => {
1115                    self.language = ::std::option::Option::Some(is.read_string()?);
1116                },
1117                26 => {
1118                    self.script = ::std::option::Option::Some(is.read_string()?);
1119                },
1120                34 => {
1121                    self.name = ::std::option::Option::Some(is.read_string()?);
1122                },
1123                42 => {
1124                    self.preferred_name = ::std::option::Option::Some(is.read_string()?);
1125                },
1126                50 => {
1127                    self.autonym = ::std::option::Option::Some(is.read_string()?);
1128                },
1129                56 => {
1130                    self.population = ::std::option::Option::Some(is.read_int32()?);
1131                },
1132                66 => {
1133                    self.region.push(is.read_string()?);
1134                },
1135                74 => {
1136                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.exemplar_chars)?;
1137                },
1138                82 => {
1139                    ::protobuf::rt::read_singular_message_into_field(is, &mut self.sample_text)?;
1140                },
1141                88 => {
1142                    self.historical = ::std::option::Option::Some(is.read_bool()?);
1143                },
1144                98 => {
1145                    self.source.push(is.read_string()?);
1146                },
1147                106 => {
1148                    self.note = ::std::option::Option::Some(is.read_string()?);
1149                },
1150                tag => {
1151                    ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
1152                },
1153            };
1154        }
1155        ::std::result::Result::Ok(())
1156    }
1157
1158    // Compute sizes of nested messages
1159    #[allow(unused_variables)]
1160    fn compute_size(&self) -> u64 {
1161        let mut my_size = 0;
1162        if let Some(v) = self.id.as_ref() {
1163            my_size += ::protobuf::rt::string_size(1, &v);
1164        }
1165        if let Some(v) = self.language.as_ref() {
1166            my_size += ::protobuf::rt::string_size(2, &v);
1167        }
1168        if let Some(v) = self.script.as_ref() {
1169            my_size += ::protobuf::rt::string_size(3, &v);
1170        }
1171        if let Some(v) = self.name.as_ref() {
1172            my_size += ::protobuf::rt::string_size(4, &v);
1173        }
1174        if let Some(v) = self.preferred_name.as_ref() {
1175            my_size += ::protobuf::rt::string_size(5, &v);
1176        }
1177        if let Some(v) = self.autonym.as_ref() {
1178            my_size += ::protobuf::rt::string_size(6, &v);
1179        }
1180        if let Some(v) = self.population {
1181            my_size += ::protobuf::rt::int32_size(7, v);
1182        }
1183        for value in &self.region {
1184            my_size += ::protobuf::rt::string_size(8, &value);
1185        };
1186        if let Some(v) = self.exemplar_chars.as_ref() {
1187            let len = v.compute_size();
1188            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
1189        }
1190        if let Some(v) = self.sample_text.as_ref() {
1191            let len = v.compute_size();
1192            my_size += 1 + ::protobuf::rt::compute_raw_varint64_size(len) + len;
1193        }
1194        if let Some(v) = self.historical {
1195            my_size += 1 + 1;
1196        }
1197        for value in &self.source {
1198            my_size += ::protobuf::rt::string_size(12, &value);
1199        };
1200        if let Some(v) = self.note.as_ref() {
1201            my_size += ::protobuf::rt::string_size(13, &v);
1202        }
1203        my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
1204        self.special_fields.cached_size().set(my_size as u32);
1205        my_size
1206    }
1207
1208    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
1209        if let Some(v) = self.id.as_ref() {
1210            os.write_string(1, v)?;
1211        }
1212        if let Some(v) = self.language.as_ref() {
1213            os.write_string(2, v)?;
1214        }
1215        if let Some(v) = self.script.as_ref() {
1216            os.write_string(3, v)?;
1217        }
1218        if let Some(v) = self.name.as_ref() {
1219            os.write_string(4, v)?;
1220        }
1221        if let Some(v) = self.preferred_name.as_ref() {
1222            os.write_string(5, v)?;
1223        }
1224        if let Some(v) = self.autonym.as_ref() {
1225            os.write_string(6, v)?;
1226        }
1227        if let Some(v) = self.population {
1228            os.write_int32(7, v)?;
1229        }
1230        for v in &self.region {
1231            os.write_string(8, &v)?;
1232        };
1233        if let Some(v) = self.exemplar_chars.as_ref() {
1234            ::protobuf::rt::write_message_field_with_cached_size(9, v, os)?;
1235        }
1236        if let Some(v) = self.sample_text.as_ref() {
1237            ::protobuf::rt::write_message_field_with_cached_size(10, v, os)?;
1238        }
1239        if let Some(v) = self.historical {
1240            os.write_bool(11, v)?;
1241        }
1242        for v in &self.source {
1243            os.write_string(12, &v)?;
1244        };
1245        if let Some(v) = self.note.as_ref() {
1246            os.write_string(13, v)?;
1247        }
1248        os.write_unknown_fields(self.special_fields.unknown_fields())?;
1249        ::std::result::Result::Ok(())
1250    }
1251
1252    fn special_fields(&self) -> &::protobuf::SpecialFields {
1253        &self.special_fields
1254    }
1255
1256    fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
1257        &mut self.special_fields
1258    }
1259
1260    fn new() -> LanguageProto {
1261        LanguageProto::new()
1262    }
1263
1264    fn clear(&mut self) {
1265        self.id = ::std::option::Option::None;
1266        self.language = ::std::option::Option::None;
1267        self.script = ::std::option::Option::None;
1268        self.name = ::std::option::Option::None;
1269        self.preferred_name = ::std::option::Option::None;
1270        self.autonym = ::std::option::Option::None;
1271        self.population = ::std::option::Option::None;
1272        self.region.clear();
1273        self.exemplar_chars.clear();
1274        self.sample_text.clear();
1275        self.historical = ::std::option::Option::None;
1276        self.source.clear();
1277        self.note = ::std::option::Option::None;
1278        self.special_fields.clear();
1279    }
1280
1281    fn default_instance() -> &'static LanguageProto {
1282        static instance: LanguageProto = LanguageProto {
1283            id: ::std::option::Option::None,
1284            language: ::std::option::Option::None,
1285            script: ::std::option::Option::None,
1286            name: ::std::option::Option::None,
1287            preferred_name: ::std::option::Option::None,
1288            autonym: ::std::option::Option::None,
1289            population: ::std::option::Option::None,
1290            region: ::std::vec::Vec::new(),
1291            exemplar_chars: ::protobuf::MessageField::none(),
1292            sample_text: ::protobuf::MessageField::none(),
1293            historical: ::std::option::Option::None,
1294            source: ::std::vec::Vec::new(),
1295            note: ::std::option::Option::None,
1296            special_fields: ::protobuf::SpecialFields::new(),
1297        };
1298        &instance
1299    }
1300}
1301
1302impl ::protobuf::MessageFull for LanguageProto {
1303    fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
1304        static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
1305        descriptor.get(|| file_descriptor().message_by_package_relative_name("LanguageProto").unwrap()).clone()
1306    }
1307}
1308
1309impl ::std::fmt::Display for LanguageProto {
1310    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1311        ::protobuf::text_format::fmt(self, f)
1312    }
1313}
1314
1315impl ::protobuf::reflect::ProtobufValue for LanguageProto {
1316    type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
1317}
1318
1319///  Space-separated lists of characters representative of a given language.
1320// @@protoc_insertion_point(message:google.languages_public.ExemplarCharsProto)
1321#[derive(PartialEq,Clone,Default,Debug)]
1322pub struct ExemplarCharsProto {
1323    // message fields
1324    // @@protoc_insertion_point(field:google.languages_public.ExemplarCharsProto.base)
1325    pub base: ::std::option::Option<::std::string::String>,
1326    // @@protoc_insertion_point(field:google.languages_public.ExemplarCharsProto.auxiliary)
1327    pub auxiliary: ::std::option::Option<::std::string::String>,
1328    // @@protoc_insertion_point(field:google.languages_public.ExemplarCharsProto.marks)
1329    pub marks: ::std::option::Option<::std::string::String>,
1330    // @@protoc_insertion_point(field:google.languages_public.ExemplarCharsProto.numerals)
1331    pub numerals: ::std::option::Option<::std::string::String>,
1332    // @@protoc_insertion_point(field:google.languages_public.ExemplarCharsProto.punctuation)
1333    pub punctuation: ::std::option::Option<::std::string::String>,
1334    // @@protoc_insertion_point(field:google.languages_public.ExemplarCharsProto.index)
1335    pub index: ::std::option::Option<::std::string::String>,
1336    // @@protoc_insertion_point(field:google.languages_public.ExemplarCharsProto.not_required)
1337    pub not_required: ::std::option::Option<::std::string::String>,
1338    // special fields
1339    // @@protoc_insertion_point(special_field:google.languages_public.ExemplarCharsProto.special_fields)
1340    pub special_fields: ::protobuf::SpecialFields,
1341}
1342
1343impl<'a> ::std::default::Default for &'a ExemplarCharsProto {
1344    fn default() -> &'a ExemplarCharsProto {
1345        <ExemplarCharsProto as ::protobuf::Message>::default_instance()
1346    }
1347}
1348
1349impl ExemplarCharsProto {
1350    pub fn new() -> ExemplarCharsProto {
1351        ::std::default::Default::default()
1352    }
1353
1354    // optional string base = 1;
1355
1356    pub fn base(&self) -> &str {
1357        match self.base.as_ref() {
1358            Some(v) => v,
1359            None => "",
1360        }
1361    }
1362
1363    pub fn clear_base(&mut self) {
1364        self.base = ::std::option::Option::None;
1365    }
1366
1367    pub fn has_base(&self) -> bool {
1368        self.base.is_some()
1369    }
1370
1371    // Param is passed by value, moved
1372    pub fn set_base(&mut self, v: ::std::string::String) {
1373        self.base = ::std::option::Option::Some(v);
1374    }
1375
1376    // Mutable pointer to the field.
1377    // If field is not initialized, it is initialized with default value first.
1378    pub fn mut_base(&mut self) -> &mut ::std::string::String {
1379        if self.base.is_none() {
1380            self.base = ::std::option::Option::Some(::std::string::String::new());
1381        }
1382        self.base.as_mut().unwrap()
1383    }
1384
1385    // Take field
1386    pub fn take_base(&mut self) -> ::std::string::String {
1387        self.base.take().unwrap_or_else(|| ::std::string::String::new())
1388    }
1389
1390    // optional string auxiliary = 2;
1391
1392    pub fn auxiliary(&self) -> &str {
1393        match self.auxiliary.as_ref() {
1394            Some(v) => v,
1395            None => "",
1396        }
1397    }
1398
1399    pub fn clear_auxiliary(&mut self) {
1400        self.auxiliary = ::std::option::Option::None;
1401    }
1402
1403    pub fn has_auxiliary(&self) -> bool {
1404        self.auxiliary.is_some()
1405    }
1406
1407    // Param is passed by value, moved
1408    pub fn set_auxiliary(&mut self, v: ::std::string::String) {
1409        self.auxiliary = ::std::option::Option::Some(v);
1410    }
1411
1412    // Mutable pointer to the field.
1413    // If field is not initialized, it is initialized with default value first.
1414    pub fn mut_auxiliary(&mut self) -> &mut ::std::string::String {
1415        if self.auxiliary.is_none() {
1416            self.auxiliary = ::std::option::Option::Some(::std::string::String::new());
1417        }
1418        self.auxiliary.as_mut().unwrap()
1419    }
1420
1421    // Take field
1422    pub fn take_auxiliary(&mut self) -> ::std::string::String {
1423        self.auxiliary.take().unwrap_or_else(|| ::std::string::String::new())
1424    }
1425
1426    // optional string marks = 3;
1427
1428    pub fn marks(&self) -> &str {
1429        match self.marks.as_ref() {
1430            Some(v) => v,
1431            None => "",
1432        }
1433    }
1434
1435    pub fn clear_marks(&mut self) {
1436        self.marks = ::std::option::Option::None;
1437    }
1438
1439    pub fn has_marks(&self) -> bool {
1440        self.marks.is_some()
1441    }
1442
1443    // Param is passed by value, moved
1444    pub fn set_marks(&mut self, v: ::std::string::String) {
1445        self.marks = ::std::option::Option::Some(v);
1446    }
1447
1448    // Mutable pointer to the field.
1449    // If field is not initialized, it is initialized with default value first.
1450    pub fn mut_marks(&mut self) -> &mut ::std::string::String {
1451        if self.marks.is_none() {
1452            self.marks = ::std::option::Option::Some(::std::string::String::new());
1453        }
1454        self.marks.as_mut().unwrap()
1455    }
1456
1457    // Take field
1458    pub fn take_marks(&mut self) -> ::std::string::String {
1459        self.marks.take().unwrap_or_else(|| ::std::string::String::new())
1460    }
1461
1462    // optional string numerals = 4;
1463
1464    pub fn numerals(&self) -> &str {
1465        match self.numerals.as_ref() {
1466            Some(v) => v,
1467            None => "",
1468        }
1469    }
1470
1471    pub fn clear_numerals(&mut self) {
1472        self.numerals = ::std::option::Option::None;
1473    }
1474
1475    pub fn has_numerals(&self) -> bool {
1476        self.numerals.is_some()
1477    }
1478
1479    // Param is passed by value, moved
1480    pub fn set_numerals(&mut self, v: ::std::string::String) {
1481        self.numerals = ::std::option::Option::Some(v);
1482    }
1483
1484    // Mutable pointer to the field.
1485    // If field is not initialized, it is initialized with default value first.
1486    pub fn mut_numerals(&mut self) -> &mut ::std::string::String {
1487        if self.numerals.is_none() {
1488            self.numerals = ::std::option::Option::Some(::std::string::String::new());
1489        }
1490        self.numerals.as_mut().unwrap()
1491    }
1492
1493    // Take field
1494    pub fn take_numerals(&mut self) -> ::std::string::String {
1495        self.numerals.take().unwrap_or_else(|| ::std::string::String::new())
1496    }
1497
1498    // optional string punctuation = 5;
1499
1500    pub fn punctuation(&self) -> &str {
1501        match self.punctuation.as_ref() {
1502            Some(v) => v,
1503            None => "",
1504        }
1505    }
1506
1507    pub fn clear_punctuation(&mut self) {
1508        self.punctuation = ::std::option::Option::None;
1509    }
1510
1511    pub fn has_punctuation(&self) -> bool {
1512        self.punctuation.is_some()
1513    }
1514
1515    // Param is passed by value, moved
1516    pub fn set_punctuation(&mut self, v: ::std::string::String) {
1517        self.punctuation = ::std::option::Option::Some(v);
1518    }
1519
1520    // Mutable pointer to the field.
1521    // If field is not initialized, it is initialized with default value first.
1522    pub fn mut_punctuation(&mut self) -> &mut ::std::string::String {
1523        if self.punctuation.is_none() {
1524            self.punctuation = ::std::option::Option::Some(::std::string::String::new());
1525        }
1526        self.punctuation.as_mut().unwrap()
1527    }
1528
1529    // Take field
1530    pub fn take_punctuation(&mut self) -> ::std::string::String {
1531        self.punctuation.take().unwrap_or_else(|| ::std::string::String::new())
1532    }
1533
1534    // optional string index = 6;
1535
1536    pub fn index(&self) -> &str {
1537        match self.index.as_ref() {
1538            Some(v) => v,
1539            None => "",
1540        }
1541    }
1542
1543    pub fn clear_index(&mut self) {
1544        self.index = ::std::option::Option::None;
1545    }
1546
1547    pub fn has_index(&self) -> bool {
1548        self.index.is_some()
1549    }
1550
1551    // Param is passed by value, moved
1552    pub fn set_index(&mut self, v: ::std::string::String) {
1553        self.index = ::std::option::Option::Some(v);
1554    }
1555
1556    // Mutable pointer to the field.
1557    // If field is not initialized, it is initialized with default value first.
1558    pub fn mut_index(&mut self) -> &mut ::std::string::String {
1559        if self.index.is_none() {
1560            self.index = ::std::option::Option::Some(::std::string::String::new());
1561        }
1562        self.index.as_mut().unwrap()
1563    }
1564
1565    // Take field
1566    pub fn take_index(&mut self) -> ::std::string::String {
1567        self.index.take().unwrap_or_else(|| ::std::string::String::new())
1568    }
1569
1570    // optional string not_required = 7;
1571
1572    pub fn not_required(&self) -> &str {
1573        match self.not_required.as_ref() {
1574            Some(v) => v,
1575            None => "",
1576        }
1577    }
1578
1579    pub fn clear_not_required(&mut self) {
1580        self.not_required = ::std::option::Option::None;
1581    }
1582
1583    pub fn has_not_required(&self) -> bool {
1584        self.not_required.is_some()
1585    }
1586
1587    // Param is passed by value, moved
1588    pub fn set_not_required(&mut self, v: ::std::string::String) {
1589        self.not_required = ::std::option::Option::Some(v);
1590    }
1591
1592    // Mutable pointer to the field.
1593    // If field is not initialized, it is initialized with default value first.
1594    pub fn mut_not_required(&mut self) -> &mut ::std::string::String {
1595        if self.not_required.is_none() {
1596            self.not_required = ::std::option::Option::Some(::std::string::String::new());
1597        }
1598        self.not_required.as_mut().unwrap()
1599    }
1600
1601    // Take field
1602    pub fn take_not_required(&mut self) -> ::std::string::String {
1603        self.not_required.take().unwrap_or_else(|| ::std::string::String::new())
1604    }
1605
1606    fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
1607        let mut fields = ::std::vec::Vec::with_capacity(7);
1608        let mut oneofs = ::std::vec::Vec::with_capacity(0);
1609        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1610            "base",
1611            |m: &ExemplarCharsProto| { &m.base },
1612            |m: &mut ExemplarCharsProto| { &mut m.base },
1613        ));
1614        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1615            "auxiliary",
1616            |m: &ExemplarCharsProto| { &m.auxiliary },
1617            |m: &mut ExemplarCharsProto| { &mut m.auxiliary },
1618        ));
1619        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1620            "marks",
1621            |m: &ExemplarCharsProto| { &m.marks },
1622            |m: &mut ExemplarCharsProto| { &mut m.marks },
1623        ));
1624        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1625            "numerals",
1626            |m: &ExemplarCharsProto| { &m.numerals },
1627            |m: &mut ExemplarCharsProto| { &mut m.numerals },
1628        ));
1629        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1630            "punctuation",
1631            |m: &ExemplarCharsProto| { &m.punctuation },
1632            |m: &mut ExemplarCharsProto| { &mut m.punctuation },
1633        ));
1634        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1635            "index",
1636            |m: &ExemplarCharsProto| { &m.index },
1637            |m: &mut ExemplarCharsProto| { &mut m.index },
1638        ));
1639        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
1640            "not_required",
1641            |m: &ExemplarCharsProto| { &m.not_required },
1642            |m: &mut ExemplarCharsProto| { &mut m.not_required },
1643        ));
1644        ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<ExemplarCharsProto>(
1645            "ExemplarCharsProto",
1646            fields,
1647            oneofs,
1648        )
1649    }
1650}
1651
1652impl ::protobuf::Message for ExemplarCharsProto {
1653    const NAME: &'static str = "ExemplarCharsProto";
1654
1655    fn is_initialized(&self) -> bool {
1656        true
1657    }
1658
1659    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
1660        while let Some(tag) = is.read_raw_tag_or_eof()? {
1661            match tag {
1662                10 => {
1663                    self.base = ::std::option::Option::Some(is.read_string()?);
1664                },
1665                18 => {
1666                    self.auxiliary = ::std::option::Option::Some(is.read_string()?);
1667                },
1668                26 => {
1669                    self.marks = ::std::option::Option::Some(is.read_string()?);
1670                },
1671                34 => {
1672                    self.numerals = ::std::option::Option::Some(is.read_string()?);
1673                },
1674                42 => {
1675                    self.punctuation = ::std::option::Option::Some(is.read_string()?);
1676                },
1677                50 => {
1678                    self.index = ::std::option::Option::Some(is.read_string()?);
1679                },
1680                58 => {
1681                    self.not_required = ::std::option::Option::Some(is.read_string()?);
1682                },
1683                tag => {
1684                    ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
1685                },
1686            };
1687        }
1688        ::std::result::Result::Ok(())
1689    }
1690
1691    // Compute sizes of nested messages
1692    #[allow(unused_variables)]
1693    fn compute_size(&self) -> u64 {
1694        let mut my_size = 0;
1695        if let Some(v) = self.base.as_ref() {
1696            my_size += ::protobuf::rt::string_size(1, &v);
1697        }
1698        if let Some(v) = self.auxiliary.as_ref() {
1699            my_size += ::protobuf::rt::string_size(2, &v);
1700        }
1701        if let Some(v) = self.marks.as_ref() {
1702            my_size += ::protobuf::rt::string_size(3, &v);
1703        }
1704        if let Some(v) = self.numerals.as_ref() {
1705            my_size += ::protobuf::rt::string_size(4, &v);
1706        }
1707        if let Some(v) = self.punctuation.as_ref() {
1708            my_size += ::protobuf::rt::string_size(5, &v);
1709        }
1710        if let Some(v) = self.index.as_ref() {
1711            my_size += ::protobuf::rt::string_size(6, &v);
1712        }
1713        if let Some(v) = self.not_required.as_ref() {
1714            my_size += ::protobuf::rt::string_size(7, &v);
1715        }
1716        my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
1717        self.special_fields.cached_size().set(my_size as u32);
1718        my_size
1719    }
1720
1721    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
1722        if let Some(v) = self.base.as_ref() {
1723            os.write_string(1, v)?;
1724        }
1725        if let Some(v) = self.auxiliary.as_ref() {
1726            os.write_string(2, v)?;
1727        }
1728        if let Some(v) = self.marks.as_ref() {
1729            os.write_string(3, v)?;
1730        }
1731        if let Some(v) = self.numerals.as_ref() {
1732            os.write_string(4, v)?;
1733        }
1734        if let Some(v) = self.punctuation.as_ref() {
1735            os.write_string(5, v)?;
1736        }
1737        if let Some(v) = self.index.as_ref() {
1738            os.write_string(6, v)?;
1739        }
1740        if let Some(v) = self.not_required.as_ref() {
1741            os.write_string(7, v)?;
1742        }
1743        os.write_unknown_fields(self.special_fields.unknown_fields())?;
1744        ::std::result::Result::Ok(())
1745    }
1746
1747    fn special_fields(&self) -> &::protobuf::SpecialFields {
1748        &self.special_fields
1749    }
1750
1751    fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
1752        &mut self.special_fields
1753    }
1754
1755    fn new() -> ExemplarCharsProto {
1756        ExemplarCharsProto::new()
1757    }
1758
1759    fn clear(&mut self) {
1760        self.base = ::std::option::Option::None;
1761        self.auxiliary = ::std::option::Option::None;
1762        self.marks = ::std::option::Option::None;
1763        self.numerals = ::std::option::Option::None;
1764        self.punctuation = ::std::option::Option::None;
1765        self.index = ::std::option::Option::None;
1766        self.not_required = ::std::option::Option::None;
1767        self.special_fields.clear();
1768    }
1769
1770    fn default_instance() -> &'static ExemplarCharsProto {
1771        static instance: ExemplarCharsProto = ExemplarCharsProto {
1772            base: ::std::option::Option::None,
1773            auxiliary: ::std::option::Option::None,
1774            marks: ::std::option::Option::None,
1775            numerals: ::std::option::Option::None,
1776            punctuation: ::std::option::Option::None,
1777            index: ::std::option::Option::None,
1778            not_required: ::std::option::Option::None,
1779            special_fields: ::protobuf::SpecialFields::new(),
1780        };
1781        &instance
1782    }
1783}
1784
1785impl ::protobuf::MessageFull for ExemplarCharsProto {
1786    fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
1787        static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
1788        descriptor.get(|| file_descriptor().message_by_package_relative_name("ExemplarCharsProto").unwrap()).clone()
1789    }
1790}
1791
1792impl ::std::fmt::Display for ExemplarCharsProto {
1793    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
1794        ::protobuf::text_format::fmt(self, f)
1795    }
1796}
1797
1798impl ::protobuf::reflect::ProtobufValue for ExemplarCharsProto {
1799    type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
1800}
1801
1802// @@protoc_insertion_point(message:google.languages_public.SampleTextProto)
1803#[derive(PartialEq,Clone,Default,Debug)]
1804pub struct SampleTextProto {
1805    // message fields
1806    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.masthead_full)
1807    pub masthead_full: ::std::option::Option<::std::string::String>,
1808    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.masthead_partial)
1809    pub masthead_partial: ::std::option::Option<::std::string::String>,
1810    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.styles)
1811    pub styles: ::std::option::Option<::std::string::String>,
1812    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.tester)
1813    pub tester: ::std::option::Option<::std::string::String>,
1814    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.poster_sm)
1815    pub poster_sm: ::std::option::Option<::std::string::String>,
1816    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.poster_md)
1817    pub poster_md: ::std::option::Option<::std::string::String>,
1818    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.poster_lg)
1819    pub poster_lg: ::std::option::Option<::std::string::String>,
1820    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.specimen_48)
1821    pub specimen_48: ::std::option::Option<::std::string::String>,
1822    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.specimen_36)
1823    pub specimen_36: ::std::option::Option<::std::string::String>,
1824    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.specimen_32)
1825    pub specimen_32: ::std::option::Option<::std::string::String>,
1826    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.specimen_21)
1827    pub specimen_21: ::std::option::Option<::std::string::String>,
1828    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.specimen_16)
1829    pub specimen_16: ::std::option::Option<::std::string::String>,
1830    // @@protoc_insertion_point(field:google.languages_public.SampleTextProto.note)
1831    pub note: ::std::option::Option<::std::string::String>,
1832    // special fields
1833    // @@protoc_insertion_point(special_field:google.languages_public.SampleTextProto.special_fields)
1834    pub special_fields: ::protobuf::SpecialFields,
1835}
1836
1837impl<'a> ::std::default::Default for &'a SampleTextProto {
1838    fn default() -> &'a SampleTextProto {
1839        <SampleTextProto as ::protobuf::Message>::default_instance()
1840    }
1841}
1842
1843impl SampleTextProto {
1844    pub fn new() -> SampleTextProto {
1845        ::std::default::Default::default()
1846    }
1847
1848    // optional string masthead_full = 1;
1849
1850    pub fn masthead_full(&self) -> &str {
1851        match self.masthead_full.as_ref() {
1852            Some(v) => v,
1853            None => "",
1854        }
1855    }
1856
1857    pub fn clear_masthead_full(&mut self) {
1858        self.masthead_full = ::std::option::Option::None;
1859    }
1860
1861    pub fn has_masthead_full(&self) -> bool {
1862        self.masthead_full.is_some()
1863    }
1864
1865    // Param is passed by value, moved
1866    pub fn set_masthead_full(&mut self, v: ::std::string::String) {
1867        self.masthead_full = ::std::option::Option::Some(v);
1868    }
1869
1870    // Mutable pointer to the field.
1871    // If field is not initialized, it is initialized with default value first.
1872    pub fn mut_masthead_full(&mut self) -> &mut ::std::string::String {
1873        if self.masthead_full.is_none() {
1874            self.masthead_full = ::std::option::Option::Some(::std::string::String::new());
1875        }
1876        self.masthead_full.as_mut().unwrap()
1877    }
1878
1879    // Take field
1880    pub fn take_masthead_full(&mut self) -> ::std::string::String {
1881        self.masthead_full.take().unwrap_or_else(|| ::std::string::String::new())
1882    }
1883
1884    // optional string masthead_partial = 2;
1885
1886    pub fn masthead_partial(&self) -> &str {
1887        match self.masthead_partial.as_ref() {
1888            Some(v) => v,
1889            None => "",
1890        }
1891    }
1892
1893    pub fn clear_masthead_partial(&mut self) {
1894        self.masthead_partial = ::std::option::Option::None;
1895    }
1896
1897    pub fn has_masthead_partial(&self) -> bool {
1898        self.masthead_partial.is_some()
1899    }
1900
1901    // Param is passed by value, moved
1902    pub fn set_masthead_partial(&mut self, v: ::std::string::String) {
1903        self.masthead_partial = ::std::option::Option::Some(v);
1904    }
1905
1906    // Mutable pointer to the field.
1907    // If field is not initialized, it is initialized with default value first.
1908    pub fn mut_masthead_partial(&mut self) -> &mut ::std::string::String {
1909        if self.masthead_partial.is_none() {
1910            self.masthead_partial = ::std::option::Option::Some(::std::string::String::new());
1911        }
1912        self.masthead_partial.as_mut().unwrap()
1913    }
1914
1915    // Take field
1916    pub fn take_masthead_partial(&mut self) -> ::std::string::String {
1917        self.masthead_partial.take().unwrap_or_else(|| ::std::string::String::new())
1918    }
1919
1920    // optional string styles = 3;
1921
1922    pub fn styles(&self) -> &str {
1923        match self.styles.as_ref() {
1924            Some(v) => v,
1925            None => "",
1926        }
1927    }
1928
1929    pub fn clear_styles(&mut self) {
1930        self.styles = ::std::option::Option::None;
1931    }
1932
1933    pub fn has_styles(&self) -> bool {
1934        self.styles.is_some()
1935    }
1936
1937    // Param is passed by value, moved
1938    pub fn set_styles(&mut self, v: ::std::string::String) {
1939        self.styles = ::std::option::Option::Some(v);
1940    }
1941
1942    // Mutable pointer to the field.
1943    // If field is not initialized, it is initialized with default value first.
1944    pub fn mut_styles(&mut self) -> &mut ::std::string::String {
1945        if self.styles.is_none() {
1946            self.styles = ::std::option::Option::Some(::std::string::String::new());
1947        }
1948        self.styles.as_mut().unwrap()
1949    }
1950
1951    // Take field
1952    pub fn take_styles(&mut self) -> ::std::string::String {
1953        self.styles.take().unwrap_or_else(|| ::std::string::String::new())
1954    }
1955
1956    // optional string tester = 4;
1957
1958    pub fn tester(&self) -> &str {
1959        match self.tester.as_ref() {
1960            Some(v) => v,
1961            None => "",
1962        }
1963    }
1964
1965    pub fn clear_tester(&mut self) {
1966        self.tester = ::std::option::Option::None;
1967    }
1968
1969    pub fn has_tester(&self) -> bool {
1970        self.tester.is_some()
1971    }
1972
1973    // Param is passed by value, moved
1974    pub fn set_tester(&mut self, v: ::std::string::String) {
1975        self.tester = ::std::option::Option::Some(v);
1976    }
1977
1978    // Mutable pointer to the field.
1979    // If field is not initialized, it is initialized with default value first.
1980    pub fn mut_tester(&mut self) -> &mut ::std::string::String {
1981        if self.tester.is_none() {
1982            self.tester = ::std::option::Option::Some(::std::string::String::new());
1983        }
1984        self.tester.as_mut().unwrap()
1985    }
1986
1987    // Take field
1988    pub fn take_tester(&mut self) -> ::std::string::String {
1989        self.tester.take().unwrap_or_else(|| ::std::string::String::new())
1990    }
1991
1992    // optional string poster_sm = 5;
1993
1994    pub fn poster_sm(&self) -> &str {
1995        match self.poster_sm.as_ref() {
1996            Some(v) => v,
1997            None => "",
1998        }
1999    }
2000
2001    pub fn clear_poster_sm(&mut self) {
2002        self.poster_sm = ::std::option::Option::None;
2003    }
2004
2005    pub fn has_poster_sm(&self) -> bool {
2006        self.poster_sm.is_some()
2007    }
2008
2009    // Param is passed by value, moved
2010    pub fn set_poster_sm(&mut self, v: ::std::string::String) {
2011        self.poster_sm = ::std::option::Option::Some(v);
2012    }
2013
2014    // Mutable pointer to the field.
2015    // If field is not initialized, it is initialized with default value first.
2016    pub fn mut_poster_sm(&mut self) -> &mut ::std::string::String {
2017        if self.poster_sm.is_none() {
2018            self.poster_sm = ::std::option::Option::Some(::std::string::String::new());
2019        }
2020        self.poster_sm.as_mut().unwrap()
2021    }
2022
2023    // Take field
2024    pub fn take_poster_sm(&mut self) -> ::std::string::String {
2025        self.poster_sm.take().unwrap_or_else(|| ::std::string::String::new())
2026    }
2027
2028    // optional string poster_md = 6;
2029
2030    pub fn poster_md(&self) -> &str {
2031        match self.poster_md.as_ref() {
2032            Some(v) => v,
2033            None => "",
2034        }
2035    }
2036
2037    pub fn clear_poster_md(&mut self) {
2038        self.poster_md = ::std::option::Option::None;
2039    }
2040
2041    pub fn has_poster_md(&self) -> bool {
2042        self.poster_md.is_some()
2043    }
2044
2045    // Param is passed by value, moved
2046    pub fn set_poster_md(&mut self, v: ::std::string::String) {
2047        self.poster_md = ::std::option::Option::Some(v);
2048    }
2049
2050    // Mutable pointer to the field.
2051    // If field is not initialized, it is initialized with default value first.
2052    pub fn mut_poster_md(&mut self) -> &mut ::std::string::String {
2053        if self.poster_md.is_none() {
2054            self.poster_md = ::std::option::Option::Some(::std::string::String::new());
2055        }
2056        self.poster_md.as_mut().unwrap()
2057    }
2058
2059    // Take field
2060    pub fn take_poster_md(&mut self) -> ::std::string::String {
2061        self.poster_md.take().unwrap_or_else(|| ::std::string::String::new())
2062    }
2063
2064    // optional string poster_lg = 7;
2065
2066    pub fn poster_lg(&self) -> &str {
2067        match self.poster_lg.as_ref() {
2068            Some(v) => v,
2069            None => "",
2070        }
2071    }
2072
2073    pub fn clear_poster_lg(&mut self) {
2074        self.poster_lg = ::std::option::Option::None;
2075    }
2076
2077    pub fn has_poster_lg(&self) -> bool {
2078        self.poster_lg.is_some()
2079    }
2080
2081    // Param is passed by value, moved
2082    pub fn set_poster_lg(&mut self, v: ::std::string::String) {
2083        self.poster_lg = ::std::option::Option::Some(v);
2084    }
2085
2086    // Mutable pointer to the field.
2087    // If field is not initialized, it is initialized with default value first.
2088    pub fn mut_poster_lg(&mut self) -> &mut ::std::string::String {
2089        if self.poster_lg.is_none() {
2090            self.poster_lg = ::std::option::Option::Some(::std::string::String::new());
2091        }
2092        self.poster_lg.as_mut().unwrap()
2093    }
2094
2095    // Take field
2096    pub fn take_poster_lg(&mut self) -> ::std::string::String {
2097        self.poster_lg.take().unwrap_or_else(|| ::std::string::String::new())
2098    }
2099
2100    // optional string specimen_48 = 8;
2101
2102    pub fn specimen_48(&self) -> &str {
2103        match self.specimen_48.as_ref() {
2104            Some(v) => v,
2105            None => "",
2106        }
2107    }
2108
2109    pub fn clear_specimen_48(&mut self) {
2110        self.specimen_48 = ::std::option::Option::None;
2111    }
2112
2113    pub fn has_specimen_48(&self) -> bool {
2114        self.specimen_48.is_some()
2115    }
2116
2117    // Param is passed by value, moved
2118    pub fn set_specimen_48(&mut self, v: ::std::string::String) {
2119        self.specimen_48 = ::std::option::Option::Some(v);
2120    }
2121
2122    // Mutable pointer to the field.
2123    // If field is not initialized, it is initialized with default value first.
2124    pub fn mut_specimen_48(&mut self) -> &mut ::std::string::String {
2125        if self.specimen_48.is_none() {
2126            self.specimen_48 = ::std::option::Option::Some(::std::string::String::new());
2127        }
2128        self.specimen_48.as_mut().unwrap()
2129    }
2130
2131    // Take field
2132    pub fn take_specimen_48(&mut self) -> ::std::string::String {
2133        self.specimen_48.take().unwrap_or_else(|| ::std::string::String::new())
2134    }
2135
2136    // optional string specimen_36 = 9;
2137
2138    pub fn specimen_36(&self) -> &str {
2139        match self.specimen_36.as_ref() {
2140            Some(v) => v,
2141            None => "",
2142        }
2143    }
2144
2145    pub fn clear_specimen_36(&mut self) {
2146        self.specimen_36 = ::std::option::Option::None;
2147    }
2148
2149    pub fn has_specimen_36(&self) -> bool {
2150        self.specimen_36.is_some()
2151    }
2152
2153    // Param is passed by value, moved
2154    pub fn set_specimen_36(&mut self, v: ::std::string::String) {
2155        self.specimen_36 = ::std::option::Option::Some(v);
2156    }
2157
2158    // Mutable pointer to the field.
2159    // If field is not initialized, it is initialized with default value first.
2160    pub fn mut_specimen_36(&mut self) -> &mut ::std::string::String {
2161        if self.specimen_36.is_none() {
2162            self.specimen_36 = ::std::option::Option::Some(::std::string::String::new());
2163        }
2164        self.specimen_36.as_mut().unwrap()
2165    }
2166
2167    // Take field
2168    pub fn take_specimen_36(&mut self) -> ::std::string::String {
2169        self.specimen_36.take().unwrap_or_else(|| ::std::string::String::new())
2170    }
2171
2172    // optional string specimen_32 = 10;
2173
2174    pub fn specimen_32(&self) -> &str {
2175        match self.specimen_32.as_ref() {
2176            Some(v) => v,
2177            None => "",
2178        }
2179    }
2180
2181    pub fn clear_specimen_32(&mut self) {
2182        self.specimen_32 = ::std::option::Option::None;
2183    }
2184
2185    pub fn has_specimen_32(&self) -> bool {
2186        self.specimen_32.is_some()
2187    }
2188
2189    // Param is passed by value, moved
2190    pub fn set_specimen_32(&mut self, v: ::std::string::String) {
2191        self.specimen_32 = ::std::option::Option::Some(v);
2192    }
2193
2194    // Mutable pointer to the field.
2195    // If field is not initialized, it is initialized with default value first.
2196    pub fn mut_specimen_32(&mut self) -> &mut ::std::string::String {
2197        if self.specimen_32.is_none() {
2198            self.specimen_32 = ::std::option::Option::Some(::std::string::String::new());
2199        }
2200        self.specimen_32.as_mut().unwrap()
2201    }
2202
2203    // Take field
2204    pub fn take_specimen_32(&mut self) -> ::std::string::String {
2205        self.specimen_32.take().unwrap_or_else(|| ::std::string::String::new())
2206    }
2207
2208    // optional string specimen_21 = 11;
2209
2210    pub fn specimen_21(&self) -> &str {
2211        match self.specimen_21.as_ref() {
2212            Some(v) => v,
2213            None => "",
2214        }
2215    }
2216
2217    pub fn clear_specimen_21(&mut self) {
2218        self.specimen_21 = ::std::option::Option::None;
2219    }
2220
2221    pub fn has_specimen_21(&self) -> bool {
2222        self.specimen_21.is_some()
2223    }
2224
2225    // Param is passed by value, moved
2226    pub fn set_specimen_21(&mut self, v: ::std::string::String) {
2227        self.specimen_21 = ::std::option::Option::Some(v);
2228    }
2229
2230    // Mutable pointer to the field.
2231    // If field is not initialized, it is initialized with default value first.
2232    pub fn mut_specimen_21(&mut self) -> &mut ::std::string::String {
2233        if self.specimen_21.is_none() {
2234            self.specimen_21 = ::std::option::Option::Some(::std::string::String::new());
2235        }
2236        self.specimen_21.as_mut().unwrap()
2237    }
2238
2239    // Take field
2240    pub fn take_specimen_21(&mut self) -> ::std::string::String {
2241        self.specimen_21.take().unwrap_or_else(|| ::std::string::String::new())
2242    }
2243
2244    // optional string specimen_16 = 12;
2245
2246    pub fn specimen_16(&self) -> &str {
2247        match self.specimen_16.as_ref() {
2248            Some(v) => v,
2249            None => "",
2250        }
2251    }
2252
2253    pub fn clear_specimen_16(&mut self) {
2254        self.specimen_16 = ::std::option::Option::None;
2255    }
2256
2257    pub fn has_specimen_16(&self) -> bool {
2258        self.specimen_16.is_some()
2259    }
2260
2261    // Param is passed by value, moved
2262    pub fn set_specimen_16(&mut self, v: ::std::string::String) {
2263        self.specimen_16 = ::std::option::Option::Some(v);
2264    }
2265
2266    // Mutable pointer to the field.
2267    // If field is not initialized, it is initialized with default value first.
2268    pub fn mut_specimen_16(&mut self) -> &mut ::std::string::String {
2269        if self.specimen_16.is_none() {
2270            self.specimen_16 = ::std::option::Option::Some(::std::string::String::new());
2271        }
2272        self.specimen_16.as_mut().unwrap()
2273    }
2274
2275    // Take field
2276    pub fn take_specimen_16(&mut self) -> ::std::string::String {
2277        self.specimen_16.take().unwrap_or_else(|| ::std::string::String::new())
2278    }
2279
2280    // optional string note = 13;
2281
2282    pub fn note(&self) -> &str {
2283        match self.note.as_ref() {
2284            Some(v) => v,
2285            None => "",
2286        }
2287    }
2288
2289    pub fn clear_note(&mut self) {
2290        self.note = ::std::option::Option::None;
2291    }
2292
2293    pub fn has_note(&self) -> bool {
2294        self.note.is_some()
2295    }
2296
2297    // Param is passed by value, moved
2298    pub fn set_note(&mut self, v: ::std::string::String) {
2299        self.note = ::std::option::Option::Some(v);
2300    }
2301
2302    // Mutable pointer to the field.
2303    // If field is not initialized, it is initialized with default value first.
2304    pub fn mut_note(&mut self) -> &mut ::std::string::String {
2305        if self.note.is_none() {
2306            self.note = ::std::option::Option::Some(::std::string::String::new());
2307        }
2308        self.note.as_mut().unwrap()
2309    }
2310
2311    // Take field
2312    pub fn take_note(&mut self) -> ::std::string::String {
2313        self.note.take().unwrap_or_else(|| ::std::string::String::new())
2314    }
2315
2316    fn generated_message_descriptor_data() -> ::protobuf::reflect::GeneratedMessageDescriptorData {
2317        let mut fields = ::std::vec::Vec::with_capacity(13);
2318        let mut oneofs = ::std::vec::Vec::with_capacity(0);
2319        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2320            "masthead_full",
2321            |m: &SampleTextProto| { &m.masthead_full },
2322            |m: &mut SampleTextProto| { &mut m.masthead_full },
2323        ));
2324        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2325            "masthead_partial",
2326            |m: &SampleTextProto| { &m.masthead_partial },
2327            |m: &mut SampleTextProto| { &mut m.masthead_partial },
2328        ));
2329        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2330            "styles",
2331            |m: &SampleTextProto| { &m.styles },
2332            |m: &mut SampleTextProto| { &mut m.styles },
2333        ));
2334        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2335            "tester",
2336            |m: &SampleTextProto| { &m.tester },
2337            |m: &mut SampleTextProto| { &mut m.tester },
2338        ));
2339        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2340            "poster_sm",
2341            |m: &SampleTextProto| { &m.poster_sm },
2342            |m: &mut SampleTextProto| { &mut m.poster_sm },
2343        ));
2344        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2345            "poster_md",
2346            |m: &SampleTextProto| { &m.poster_md },
2347            |m: &mut SampleTextProto| { &mut m.poster_md },
2348        ));
2349        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2350            "poster_lg",
2351            |m: &SampleTextProto| { &m.poster_lg },
2352            |m: &mut SampleTextProto| { &mut m.poster_lg },
2353        ));
2354        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2355            "specimen_48",
2356            |m: &SampleTextProto| { &m.specimen_48 },
2357            |m: &mut SampleTextProto| { &mut m.specimen_48 },
2358        ));
2359        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2360            "specimen_36",
2361            |m: &SampleTextProto| { &m.specimen_36 },
2362            |m: &mut SampleTextProto| { &mut m.specimen_36 },
2363        ));
2364        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2365            "specimen_32",
2366            |m: &SampleTextProto| { &m.specimen_32 },
2367            |m: &mut SampleTextProto| { &mut m.specimen_32 },
2368        ));
2369        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2370            "specimen_21",
2371            |m: &SampleTextProto| { &m.specimen_21 },
2372            |m: &mut SampleTextProto| { &mut m.specimen_21 },
2373        ));
2374        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2375            "specimen_16",
2376            |m: &SampleTextProto| { &m.specimen_16 },
2377            |m: &mut SampleTextProto| { &mut m.specimen_16 },
2378        ));
2379        fields.push(::protobuf::reflect::rt::v2::make_option_accessor::<_, _>(
2380            "note",
2381            |m: &SampleTextProto| { &m.note },
2382            |m: &mut SampleTextProto| { &mut m.note },
2383        ));
2384        ::protobuf::reflect::GeneratedMessageDescriptorData::new_2::<SampleTextProto>(
2385            "SampleTextProto",
2386            fields,
2387            oneofs,
2388        )
2389    }
2390}
2391
2392impl ::protobuf::Message for SampleTextProto {
2393    const NAME: &'static str = "SampleTextProto";
2394
2395    fn is_initialized(&self) -> bool {
2396        true
2397    }
2398
2399    fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::Result<()> {
2400        while let Some(tag) = is.read_raw_tag_or_eof()? {
2401            match tag {
2402                10 => {
2403                    self.masthead_full = ::std::option::Option::Some(is.read_string()?);
2404                },
2405                18 => {
2406                    self.masthead_partial = ::std::option::Option::Some(is.read_string()?);
2407                },
2408                26 => {
2409                    self.styles = ::std::option::Option::Some(is.read_string()?);
2410                },
2411                34 => {
2412                    self.tester = ::std::option::Option::Some(is.read_string()?);
2413                },
2414                42 => {
2415                    self.poster_sm = ::std::option::Option::Some(is.read_string()?);
2416                },
2417                50 => {
2418                    self.poster_md = ::std::option::Option::Some(is.read_string()?);
2419                },
2420                58 => {
2421                    self.poster_lg = ::std::option::Option::Some(is.read_string()?);
2422                },
2423                66 => {
2424                    self.specimen_48 = ::std::option::Option::Some(is.read_string()?);
2425                },
2426                74 => {
2427                    self.specimen_36 = ::std::option::Option::Some(is.read_string()?);
2428                },
2429                82 => {
2430                    self.specimen_32 = ::std::option::Option::Some(is.read_string()?);
2431                },
2432                90 => {
2433                    self.specimen_21 = ::std::option::Option::Some(is.read_string()?);
2434                },
2435                98 => {
2436                    self.specimen_16 = ::std::option::Option::Some(is.read_string()?);
2437                },
2438                106 => {
2439                    self.note = ::std::option::Option::Some(is.read_string()?);
2440                },
2441                tag => {
2442                    ::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
2443                },
2444            };
2445        }
2446        ::std::result::Result::Ok(())
2447    }
2448
2449    // Compute sizes of nested messages
2450    #[allow(unused_variables)]
2451    fn compute_size(&self) -> u64 {
2452        let mut my_size = 0;
2453        if let Some(v) = self.masthead_full.as_ref() {
2454            my_size += ::protobuf::rt::string_size(1, &v);
2455        }
2456        if let Some(v) = self.masthead_partial.as_ref() {
2457            my_size += ::protobuf::rt::string_size(2, &v);
2458        }
2459        if let Some(v) = self.styles.as_ref() {
2460            my_size += ::protobuf::rt::string_size(3, &v);
2461        }
2462        if let Some(v) = self.tester.as_ref() {
2463            my_size += ::protobuf::rt::string_size(4, &v);
2464        }
2465        if let Some(v) = self.poster_sm.as_ref() {
2466            my_size += ::protobuf::rt::string_size(5, &v);
2467        }
2468        if let Some(v) = self.poster_md.as_ref() {
2469            my_size += ::protobuf::rt::string_size(6, &v);
2470        }
2471        if let Some(v) = self.poster_lg.as_ref() {
2472            my_size += ::protobuf::rt::string_size(7, &v);
2473        }
2474        if let Some(v) = self.specimen_48.as_ref() {
2475            my_size += ::protobuf::rt::string_size(8, &v);
2476        }
2477        if let Some(v) = self.specimen_36.as_ref() {
2478            my_size += ::protobuf::rt::string_size(9, &v);
2479        }
2480        if let Some(v) = self.specimen_32.as_ref() {
2481            my_size += ::protobuf::rt::string_size(10, &v);
2482        }
2483        if let Some(v) = self.specimen_21.as_ref() {
2484            my_size += ::protobuf::rt::string_size(11, &v);
2485        }
2486        if let Some(v) = self.specimen_16.as_ref() {
2487            my_size += ::protobuf::rt::string_size(12, &v);
2488        }
2489        if let Some(v) = self.note.as_ref() {
2490            my_size += ::protobuf::rt::string_size(13, &v);
2491        }
2492        my_size += ::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
2493        self.special_fields.cached_size().set(my_size as u32);
2494        my_size
2495    }
2496
2497    fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::Result<()> {
2498        if let Some(v) = self.masthead_full.as_ref() {
2499            os.write_string(1, v)?;
2500        }
2501        if let Some(v) = self.masthead_partial.as_ref() {
2502            os.write_string(2, v)?;
2503        }
2504        if let Some(v) = self.styles.as_ref() {
2505            os.write_string(3, v)?;
2506        }
2507        if let Some(v) = self.tester.as_ref() {
2508            os.write_string(4, v)?;
2509        }
2510        if let Some(v) = self.poster_sm.as_ref() {
2511            os.write_string(5, v)?;
2512        }
2513        if let Some(v) = self.poster_md.as_ref() {
2514            os.write_string(6, v)?;
2515        }
2516        if let Some(v) = self.poster_lg.as_ref() {
2517            os.write_string(7, v)?;
2518        }
2519        if let Some(v) = self.specimen_48.as_ref() {
2520            os.write_string(8, v)?;
2521        }
2522        if let Some(v) = self.specimen_36.as_ref() {
2523            os.write_string(9, v)?;
2524        }
2525        if let Some(v) = self.specimen_32.as_ref() {
2526            os.write_string(10, v)?;
2527        }
2528        if let Some(v) = self.specimen_21.as_ref() {
2529            os.write_string(11, v)?;
2530        }
2531        if let Some(v) = self.specimen_16.as_ref() {
2532            os.write_string(12, v)?;
2533        }
2534        if let Some(v) = self.note.as_ref() {
2535            os.write_string(13, v)?;
2536        }
2537        os.write_unknown_fields(self.special_fields.unknown_fields())?;
2538        ::std::result::Result::Ok(())
2539    }
2540
2541    fn special_fields(&self) -> &::protobuf::SpecialFields {
2542        &self.special_fields
2543    }
2544
2545    fn mut_special_fields(&mut self) -> &mut ::protobuf::SpecialFields {
2546        &mut self.special_fields
2547    }
2548
2549    fn new() -> SampleTextProto {
2550        SampleTextProto::new()
2551    }
2552
2553    fn clear(&mut self) {
2554        self.masthead_full = ::std::option::Option::None;
2555        self.masthead_partial = ::std::option::Option::None;
2556        self.styles = ::std::option::Option::None;
2557        self.tester = ::std::option::Option::None;
2558        self.poster_sm = ::std::option::Option::None;
2559        self.poster_md = ::std::option::Option::None;
2560        self.poster_lg = ::std::option::Option::None;
2561        self.specimen_48 = ::std::option::Option::None;
2562        self.specimen_36 = ::std::option::Option::None;
2563        self.specimen_32 = ::std::option::Option::None;
2564        self.specimen_21 = ::std::option::Option::None;
2565        self.specimen_16 = ::std::option::Option::None;
2566        self.note = ::std::option::Option::None;
2567        self.special_fields.clear();
2568    }
2569
2570    fn default_instance() -> &'static SampleTextProto {
2571        static instance: SampleTextProto = SampleTextProto {
2572            masthead_full: ::std::option::Option::None,
2573            masthead_partial: ::std::option::Option::None,
2574            styles: ::std::option::Option::None,
2575            tester: ::std::option::Option::None,
2576            poster_sm: ::std::option::Option::None,
2577            poster_md: ::std::option::Option::None,
2578            poster_lg: ::std::option::Option::None,
2579            specimen_48: ::std::option::Option::None,
2580            specimen_36: ::std::option::Option::None,
2581            specimen_32: ::std::option::Option::None,
2582            specimen_21: ::std::option::Option::None,
2583            specimen_16: ::std::option::Option::None,
2584            note: ::std::option::Option::None,
2585            special_fields: ::protobuf::SpecialFields::new(),
2586        };
2587        &instance
2588    }
2589}
2590
2591impl ::protobuf::MessageFull for SampleTextProto {
2592    fn descriptor() -> ::protobuf::reflect::MessageDescriptor {
2593        static descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::Lazy::new();
2594        descriptor.get(|| file_descriptor().message_by_package_relative_name("SampleTextProto").unwrap()).clone()
2595    }
2596}
2597
2598impl ::std::fmt::Display for SampleTextProto {
2599    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2600        ::protobuf::text_format::fmt(self, f)
2601    }
2602}
2603
2604impl ::protobuf::reflect::ProtobufValue for SampleTextProto {
2605    type RuntimeType = ::protobuf::reflect::rt::RuntimeTypeMessage<Self>;
2606}
2607
2608static file_descriptor_proto_data: &'static [u8] = b"\
2609    \n\x16languages_public.proto\x12\x17google.languages_public\"t\n\x0bRegi\
2610    onProto\x12\x0e\n\x02id\x18\x01\x20\x01(\tR\x02id\x12\x12\n\x04name\x18\
2611    \x02\x20\x01(\tR\x04name\x12\x1e\n\npopulation\x18\x03\x20\x01(\x05R\npo\
2612    pulation\x12!\n\x0cregion_group\x18\x04\x20\x03(\tR\x0bregionGroup\"\xa1\
2613    \x01\n\x0bScriptProto\x12\x0e\n\x02id\x18\x01\x20\x01(\tR\x02id\x12\x12\
2614    \n\x04name\x18\x02\x20\x01(\tR\x04name\x12\x1e\n\nhistorical\x18\x03\x20\
2615    \x01(\x08R\nhistorical\x12\x1c\n\tfictional\x18\x04\x20\x01(\x08R\tficti\
2616    onal\x12\x16\n\x06family\x18\x05\x20\x01(\tR\x06family\x12\x18\n\x07summ\
2617    ary\x18\x06\x20\x01(\tR\x07summary\"\xcb\x03\n\rLanguageProto\x12\x0e\n\
2618    \x02id\x18\x01\x20\x01(\tR\x02id\x12\x1a\n\x08language\x18\x02\x20\x01(\
2619    \tR\x08language\x12\x16\n\x06script\x18\x03\x20\x01(\tR\x06script\x12\
2620    \x12\n\x04name\x18\x04\x20\x01(\tR\x04name\x12%\n\x0epreferred_name\x18\
2621    \x05\x20\x01(\tR\rpreferredName\x12\x18\n\x07autonym\x18\x06\x20\x01(\tR\
2622    \x07autonym\x12\x1e\n\npopulation\x18\x07\x20\x01(\x05R\npopulation\x12\
2623    \x16\n\x06region\x18\x08\x20\x03(\tR\x06region\x12R\n\x0eexemplar_chars\
2624    \x18\t\x20\x01(\x0b2+.google.languages_public.ExemplarCharsProtoR\rexemp\
2625    larChars\x12I\n\x0bsample_text\x18\n\x20\x01(\x0b2(.google.languages_pub\
2626    lic.SampleTextProtoR\nsampleText\x12\x1e\n\nhistorical\x18\x0b\x20\x01(\
2627    \x08R\nhistorical\x12\x16\n\x06source\x18\x0c\x20\x03(\tR\x06source\x12\
2628    \x12\n\x04note\x18\r\x20\x01(\tR\x04note\"\xd3\x01\n\x12ExemplarCharsPro\
2629    to\x12\x12\n\x04base\x18\x01\x20\x01(\tR\x04base\x12\x1c\n\tauxiliary\
2630    \x18\x02\x20\x01(\tR\tauxiliary\x12\x14\n\x05marks\x18\x03\x20\x01(\tR\
2631    \x05marks\x12\x1a\n\x08numerals\x18\x04\x20\x01(\tR\x08numerals\x12\x20\
2632    \n\x0bpunctuation\x18\x05\x20\x01(\tR\x0bpunctuation\x12\x14\n\x05index\
2633    \x18\x06\x20\x01(\tR\x05index\x12!\n\x0cnot_required\x18\x07\x20\x01(\tR\
2634    \x0bnotRequired\"\xa1\x03\n\x0fSampleTextProto\x12#\n\rmasthead_full\x18\
2635    \x01\x20\x01(\tR\x0cmastheadFull\x12)\n\x10masthead_partial\x18\x02\x20\
2636    \x01(\tR\x0fmastheadPartial\x12\x16\n\x06styles\x18\x03\x20\x01(\tR\x06s\
2637    tyles\x12\x16\n\x06tester\x18\x04\x20\x01(\tR\x06tester\x12\x1b\n\tposte\
2638    r_sm\x18\x05\x20\x01(\tR\x08posterSm\x12\x1b\n\tposter_md\x18\x06\x20\
2639    \x01(\tR\x08posterMd\x12\x1b\n\tposter_lg\x18\x07\x20\x01(\tR\x08posterL\
2640    g\x12\x1f\n\x0bspecimen_48\x18\x08\x20\x01(\tR\nspecimen48\x12\x1f\n\x0b\
2641    specimen_36\x18\t\x20\x01(\tR\nspecimen36\x12\x1f\n\x0bspecimen_32\x18\n\
2642    \x20\x01(\tR\nspecimen32\x12\x1f\n\x0bspecimen_21\x18\x0b\x20\x01(\tR\ns\
2643    pecimen21\x12\x1f\n\x0bspecimen_16\x18\x0c\x20\x01(\tR\nspecimen16\x12\
2644    \x12\n\x04note\x18\r\x20\x01(\tR\x04noteJ\xcc\x1b\n\x06\x12\x04\0\0H\x01\
2645    \n\x08\n\x01\x0c\x12\x03\0\0\x12\n6\n\x01\x02\x12\x03\x05\0\x20\x1a,*\n\
2646    \x20languages/regions/scripts\x20proto\x20formats.\n\n:\n\x02\x04\0\x12\
2647    \x04\x08\0\x0f\x01\x1a.\x20A\x20region\x20or\x20territory\x20as\x20defin\
2648    ed\x20in\x20the\x20CLDR\n\n\n\n\x03\x04\0\x01\x12\x03\x08\x08\x13\n+\n\
2649    \x04\x04\0\x02\0\x12\x03\t\x02\x19\"\x1e\x20Region\x20codes\x20defined\
2650    \x20by\x20CLDR\n\n\x0c\n\x05\x04\0\x02\0\x04\x12\x03\t\x02\n\n\x0c\n\x05\
2651    \x04\0\x02\0\x05\x12\x03\t\x0b\x11\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03\t\
2652    \x12\x14\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03\t\x17\x18\n\x0b\n\x04\x04\0\
2653    \x02\x01\x12\x03\n\x02\x1b\n\x0c\n\x05\x04\0\x02\x01\x04\x12\x03\n\x02\n\
2654    \n\x0c\n\x05\x04\0\x02\x01\x05\x12\x03\n\x0b\x11\n\x0c\n\x05\x04\0\x02\
2655    \x01\x01\x12\x03\n\x12\x16\n\x0c\n\x05\x04\0\x02\x01\x03\x12\x03\n\x19\
2656    \x1a\n\x0b\n\x04\x04\0\x02\x02\x12\x03\x0b\x02\x20\n\x0c\n\x05\x04\0\x02\
2657    \x02\x04\x12\x03\x0b\x02\n\n\x0c\n\x05\x04\0\x02\x02\x05\x12\x03\x0b\x0b\
2658    \x10\n\x0c\n\x05\x04\0\x02\x02\x01\x12\x03\x0b\x11\x1b\n\x0c\n\x05\x04\0\
2659    \x02\x02\x03\x12\x03\x0b\x1e\x1f\n\x0b\n\x04\x04\0\x02\x03\x12\x03\x0c\
2660    \x02#\n\x0c\n\x05\x04\0\x02\x03\x04\x12\x03\x0c\x02\n\n\x0c\n\x05\x04\0\
2661    \x02\x03\x05\x12\x03\x0c\x0b\x11\n\x0c\n\x05\x04\0\x02\x03\x01\x12\x03\
2662    \x0c\x12\x1e\n\x0c\n\x05\x04\0\x02\x03\x03\x12\x03\x0c!\"\n\n\n\x02\x04\
2663    \x01\x12\x04\x11\0\x19\x01\n\n\n\x03\x04\x01\x01\x12\x03\x11\x08\x13\n+\
2664    \n\x04\x04\x01\x02\0\x12\x03\x12\x02\x19\"\x1e\x20Script\x20codes\x20def\
2665    ined\x20by\x20CLDR\n\n\x0c\n\x05\x04\x01\x02\0\x04\x12\x03\x12\x02\n\n\
2666    \x0c\n\x05\x04\x01\x02\0\x05\x12\x03\x12\x0b\x11\n\x0c\n\x05\x04\x01\x02\
2667    \0\x01\x12\x03\x12\x12\x14\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x03\x12\x17\
2668    \x18\n\x0b\n\x04\x04\x01\x02\x01\x12\x03\x13\x02\x1b\n\x0c\n\x05\x04\x01\
2669    \x02\x01\x04\x12\x03\x13\x02\n\n\x0c\n\x05\x04\x01\x02\x01\x05\x12\x03\
2670    \x13\x0b\x11\n\x0c\n\x05\x04\x01\x02\x01\x01\x12\x03\x13\x12\x16\n\x0c\n\
2671    \x05\x04\x01\x02\x01\x03\x12\x03\x13\x19\x1a\n\x0b\n\x04\x04\x01\x02\x02\
2672    \x12\x03\x14\x02\x1f\n\x0c\n\x05\x04\x01\x02\x02\x04\x12\x03\x14\x02\n\n\
2673    \x0c\n\x05\x04\x01\x02\x02\x05\x12\x03\x14\x0b\x0f\n\x0c\n\x05\x04\x01\
2674    \x02\x02\x01\x12\x03\x14\x10\x1a\n\x0c\n\x05\x04\x01\x02\x02\x03\x12\x03\
2675    \x14\x1d\x1e\n\x0b\n\x04\x04\x01\x02\x03\x12\x03\x15\x02\x1e\n\x0c\n\x05\
2676    \x04\x01\x02\x03\x04\x12\x03\x15\x02\n\n\x0c\n\x05\x04\x01\x02\x03\x05\
2677    \x12\x03\x15\x0b\x0f\n\x0c\n\x05\x04\x01\x02\x03\x01\x12\x03\x15\x10\x19\
2678    \n\x0c\n\x05\x04\x01\x02\x03\x03\x12\x03\x15\x1c\x1d\n\x0b\n\x04\x04\x01\
2679    \x02\x04\x12\x03\x16\x02\x1d\n\x0c\n\x05\x04\x01\x02\x04\x04\x12\x03\x16\
2680    \x02\n\n\x0c\n\x05\x04\x01\x02\x04\x05\x12\x03\x16\x0b\x11\n\x0c\n\x05\
2681    \x04\x01\x02\x04\x01\x12\x03\x16\x12\x18\n\x0c\n\x05\x04\x01\x02\x04\x03\
2682    \x12\x03\x16\x1b\x1c\n\x18\n\x04\x04\x01\x02\x05\x12\x03\x17\x02\x1e\"\
2683    \x0b\x20Next\x20=\x206;\n\n\x0c\n\x05\x04\x01\x02\x05\x04\x12\x03\x17\
2684    \x02\n\n\x0c\n\x05\x04\x01\x02\x05\x05\x12\x03\x17\x0b\x11\n\x0c\n\x05\
2685    \x04\x01\x02\x05\x01\x12\x03\x17\x12\x19\n\x0c\n\x05\x04\x01\x02\x05\x03\
2686    \x12\x03\x17\x1c\x1d\n\n\n\x02\x04\x02\x12\x04\x1b\0+\x01\n\n\n\x03\x04\
2687    \x02\x01\x12\x03\x1b\x08\x15\n2\n\x04\x04\x02\x02\0\x12\x03\x1c\x02\x19\
2688    \"%\x20Either\x20${lang}\x20or\x20${lang}_${script}\n\n\x0c\n\x05\x04\
2689    \x02\x02\0\x04\x12\x03\x1c\x02\n\n\x0c\n\x05\x04\x02\x02\0\x05\x12\x03\
2690    \x1c\x0b\x11\n\x0c\n\x05\x04\x02\x02\0\x01\x12\x03\x1c\x12\x14\n\x0c\n\
2691    \x05\x04\x02\x02\0\x03\x12\x03\x1c\x17\x18\n\x15\n\x04\x04\x02\x02\x01\
2692    \x12\x03\x1d\x02\x1f\"\x08\x20BCP\x2047\n\n\x0c\n\x05\x04\x02\x02\x01\
2693    \x04\x12\x03\x1d\x02\n\n\x0c\n\x05\x04\x02\x02\x01\x05\x12\x03\x1d\x0b\
2694    \x11\n\x0c\n\x05\x04\x02\x02\x01\x01\x12\x03\x1d\x12\x1a\n\x0c\n\x05\x04\
2695    \x02\x02\x01\x03\x12\x03\x1d\x1d\x1e\n\x0b\n\x04\x04\x02\x02\x02\x12\x03\
2696    \x1e\x02\x1d\n\x0c\n\x05\x04\x02\x02\x02\x04\x12\x03\x1e\x02\n\n\x0c\n\
2697    \x05\x04\x02\x02\x02\x05\x12\x03\x1e\x0b\x11\n\x0c\n\x05\x04\x02\x02\x02\
2698    \x01\x12\x03\x1e\x12\x18\n\x0c\n\x05\x04\x02\x02\x02\x03\x12\x03\x1e\x1b\
2699    \x1c\n\x0b\n\x04\x04\x02\x02\x03\x12\x03\x1f\x02\x1b\n\x0c\n\x05\x04\x02\
2700    \x02\x03\x04\x12\x03\x1f\x02\n\n\x0c\n\x05\x04\x02\x02\x03\x05\x12\x03\
2701    \x1f\x0b\x11\n\x0c\n\x05\x04\x02\x02\x03\x01\x12\x03\x1f\x12\x16\n\x0c\n\
2702    \x05\x04\x02\x02\x03\x03\x12\x03\x1f\x19\x1a\n\x0b\n\x04\x04\x02\x02\x04\
2703    \x12\x03\x20\x02%\n\x0c\n\x05\x04\x02\x02\x04\x04\x12\x03\x20\x02\n\n\
2704    \x0c\n\x05\x04\x02\x02\x04\x05\x12\x03\x20\x0b\x11\n\x0c\n\x05\x04\x02\
2705    \x02\x04\x01\x12\x03\x20\x12\x20\n\x0c\n\x05\x04\x02\x02\x04\x03\x12\x03\
2706    \x20#$\n;\n\x04\x04\x02\x02\x05\x12\x03!\x02\x1e\".\x20Name\x20of\x20lan\
2707    guage\x20as\x20written\x20in\x20that\x20language\n\n\x0c\n\x05\x04\x02\
2708    \x02\x05\x04\x12\x03!\x02\n\n\x0c\n\x05\x04\x02\x02\x05\x05\x12\x03!\x0b\
2709    \x11\n\x0c\n\x05\x04\x02\x02\x05\x01\x12\x03!\x12\x19\n\x0c\n\x05\x04\
2710    \x02\x02\x05\x03\x12\x03!\x1c\x1d\n\x0b\n\x04\x04\x02\x02\x06\x12\x03\"\
2711    \x02\x20\n\x0c\n\x05\x04\x02\x02\x06\x04\x12\x03\"\x02\n\n\x0c\n\x05\x04\
2712    \x02\x02\x06\x05\x12\x03\"\x0b\x10\n\x0c\n\x05\x04\x02\x02\x06\x01\x12\
2713    \x03\"\x11\x1b\n\x0c\n\x05\x04\x02\x02\x06\x03\x12\x03\"\x1e\x1f\n\x0b\n\
2714    \x04\x04\x02\x02\x07\x12\x03#\x02\x1d\n\x0c\n\x05\x04\x02\x02\x07\x04\
2715    \x12\x03#\x02\n\n\x0c\n\x05\x04\x02\x02\x07\x05\x12\x03#\x0b\x11\n\x0c\n\
2716    \x05\x04\x02\x02\x07\x01\x12\x03#\x12\x18\n\x0c\n\x05\x04\x02\x02\x07\
2717    \x03\x12\x03#\x1b\x1c\n\x0b\n\x04\x04\x02\x02\x08\x12\x03$\x021\n\x0c\n\
2718    \x05\x04\x02\x02\x08\x04\x12\x03$\x02\n\n\x0c\n\x05\x04\x02\x02\x08\x06\
2719    \x12\x03$\x0b\x1d\n\x0c\n\x05\x04\x02\x02\x08\x01\x12\x03$\x1e,\n\x0c\n\
2720    \x05\x04\x02\x02\x08\x03\x12\x03$/0\n\x0b\n\x04\x04\x02\x02\t\x12\x03%\
2721    \x02,\n\x0c\n\x05\x04\x02\x02\t\x04\x12\x03%\x02\n\n\x0c\n\x05\x04\x02\
2722    \x02\t\x06\x12\x03%\x0b\x1a\n\x0c\n\x05\x04\x02\x02\t\x01\x12\x03%\x1b&\
2723    \n\x0c\n\x05\x04\x02\x02\t\x03\x12\x03%)+\n\x0b\n\x04\x04\x02\x02\n\x12\
2724    \x03&\x02\x20\n\x0c\n\x05\x04\x02\x02\n\x04\x12\x03&\x02\n\n\x0c\n\x05\
2725    \x04\x02\x02\n\x05\x12\x03&\x0b\x0f\n\x0c\n\x05\x04\x02\x02\n\x01\x12\
2726    \x03&\x10\x1a\n\x0c\n\x05\x04\x02\x02\n\x03\x12\x03&\x1d\x1f\n\x0b\n\x04\
2727    \x04\x02\x02\x0b\x12\x03'\x02\x1e\n\x0c\n\x05\x04\x02\x02\x0b\x04\x12\
2728    \x03'\x02\n\n\x0c\n\x05\x04\x02\x02\x0b\x05\x12\x03'\x0b\x11\n\x0c\n\x05\
2729    \x04\x02\x02\x0b\x01\x12\x03'\x12\x18\n\x0c\n\x05\x04\x02\x02\x0b\x03\
2730    \x12\x03'\x1b\x1d\n\x0b\n\x04\x04\x02\x02\x0c\x12\x03(\x02\x1c\n\x0c\n\
2731    \x05\x04\x02\x02\x0c\x04\x12\x03(\x02\n\n\x0c\n\x05\x04\x02\x02\x0c\x05\
2732    \x12\x03(\x0b\x11\n\x0c\n\x05\x04\x02\x02\x0c\x01\x12\x03(\x12\x16\n\x0c\
2733    \n\x05\x04\x02\x02\x0c\x03\x12\x03(\x19\x1b\nU\n\x02\x04\x03\x12\x04.\08\
2734    \x01\x1aI\x20Space-separated\x20lists\x20of\x20characters\x20representat\
2735    ive\x20of\x20a\x20given\x20language.\n\n\n\n\x03\x04\x03\x01\x12\x03.\
2736    \x08\x1a\n\x0b\n\x04\x04\x03\x02\0\x12\x03/\x02\x1b\n\x0c\n\x05\x04\x03\
2737    \x02\0\x04\x12\x03/\x02\n\n\x0c\n\x05\x04\x03\x02\0\x05\x12\x03/\x0b\x11\
2738    \n\x0c\n\x05\x04\x03\x02\0\x01\x12\x03/\x12\x16\n\x0c\n\x05\x04\x03\x02\
2739    \0\x03\x12\x03/\x19\x1a\n\x0b\n\x04\x04\x03\x02\x01\x12\x030\x02\x20\n\
2740    \x0c\n\x05\x04\x03\x02\x01\x04\x12\x030\x02\n\n\x0c\n\x05\x04\x03\x02\
2741    \x01\x05\x12\x030\x0b\x11\n\x0c\n\x05\x04\x03\x02\x01\x01\x12\x030\x12\
2742    \x1b\n\x0c\n\x05\x04\x03\x02\x01\x03\x12\x030\x1e\x1f\n\x0b\n\x04\x04\
2743    \x03\x02\x02\x12\x031\x02\x1c\n\x0c\n\x05\x04\x03\x02\x02\x04\x12\x031\
2744    \x02\n\n\x0c\n\x05\x04\x03\x02\x02\x05\x12\x031\x0b\x11\n\x0c\n\x05\x04\
2745    \x03\x02\x02\x01\x12\x031\x12\x17\n\x0c\n\x05\x04\x03\x02\x02\x03\x12\
2746    \x031\x1a\x1b\n\x0b\n\x04\x04\x03\x02\x03\x12\x032\x02\x1f\n\x0c\n\x05\
2747    \x04\x03\x02\x03\x04\x12\x032\x02\n\n\x0c\n\x05\x04\x03\x02\x03\x05\x12\
2748    \x032\x0b\x11\n\x0c\n\x05\x04\x03\x02\x03\x01\x12\x032\x12\x1a\n\x0c\n\
2749    \x05\x04\x03\x02\x03\x03\x12\x032\x1d\x1e\n\x0b\n\x04\x04\x03\x02\x04\
2750    \x12\x033\x02\"\n\x0c\n\x05\x04\x03\x02\x04\x04\x12\x033\x02\n\n\x0c\n\
2751    \x05\x04\x03\x02\x04\x05\x12\x033\x0b\x11\n\x0c\n\x05\x04\x03\x02\x04\
2752    \x01\x12\x033\x12\x1d\n\x0c\n\x05\x04\x03\x02\x04\x03\x12\x033\x20!\n\
2753    \x0b\n\x04\x04\x03\x02\x05\x12\x034\x02\x1c\n\x0c\n\x05\x04\x03\x02\x05\
2754    \x04\x12\x034\x02\n\n\x0c\n\x05\x04\x03\x02\x05\x05\x12\x034\x0b\x11\n\
2755    \x0c\n\x05\x04\x03\x02\x05\x01\x12\x034\x12\x17\n\x0c\n\x05\x04\x03\x02\
2756    \x05\x03\x12\x034\x1a\x1b\nU\n\x04\x04\x03\x02\x06\x12\x035\x02#\"H\x20B\
2757    ase\x20characters\x20which\x20can\x20be\x20ignored\x20when\x20determinin\
2758    g\x20language\x20support\n\n\x0c\n\x05\x04\x03\x02\x06\x04\x12\x035\x02\
2759    \n\n\x0c\n\x05\x04\x03\x02\x06\x05\x12\x035\x0b\x11\n\x0c\n\x05\x04\x03\
2760    \x02\x06\x01\x12\x035\x12\x1e\n\x0c\n\x05\x04\x03\x02\x06\x03\x12\x035!\
2761    \"\n\n\n\x02\x04\x04\x12\x04:\0H\x01\n\n\n\x03\x04\x04\x01\x12\x03:\x08\
2762    \x17\n\x0b\n\x04\x04\x04\x02\0\x12\x03;\x02$\n\x0c\n\x05\x04\x04\x02\0\
2763    \x04\x12\x03;\x02\n\n\x0c\n\x05\x04\x04\x02\0\x05\x12\x03;\x0b\x11\n\x0c\
2764    \n\x05\x04\x04\x02\0\x01\x12\x03;\x12\x1f\n\x0c\n\x05\x04\x04\x02\0\x03\
2765    \x12\x03;\"#\n\x0b\n\x04\x04\x04\x02\x01\x12\x03<\x02'\n\x0c\n\x05\x04\
2766    \x04\x02\x01\x04\x12\x03<\x02\n\n\x0c\n\x05\x04\x04\x02\x01\x05\x12\x03<\
2767    \x0b\x11\n\x0c\n\x05\x04\x04\x02\x01\x01\x12\x03<\x12\"\n\x0c\n\x05\x04\
2768    \x04\x02\x01\x03\x12\x03<%&\n\x0b\n\x04\x04\x04\x02\x02\x12\x03=\x02\x1d\
2769    \n\x0c\n\x05\x04\x04\x02\x02\x04\x12\x03=\x02\n\n\x0c\n\x05\x04\x04\x02\
2770    \x02\x05\x12\x03=\x0b\x11\n\x0c\n\x05\x04\x04\x02\x02\x01\x12\x03=\x12\
2771    \x18\n\x0c\n\x05\x04\x04\x02\x02\x03\x12\x03=\x1b\x1c\n\x0b\n\x04\x04\
2772    \x04\x02\x03\x12\x03>\x02\x1d\n\x0c\n\x05\x04\x04\x02\x03\x04\x12\x03>\
2773    \x02\n\n\x0c\n\x05\x04\x04\x02\x03\x05\x12\x03>\x0b\x11\n\x0c\n\x05\x04\
2774    \x04\x02\x03\x01\x12\x03>\x12\x18\n\x0c\n\x05\x04\x04\x02\x03\x03\x12\
2775    \x03>\x1b\x1c\n\x0b\n\x04\x04\x04\x02\x04\x12\x03?\x02\x20\n\x0c\n\x05\
2776    \x04\x04\x02\x04\x04\x12\x03?\x02\n\n\x0c\n\x05\x04\x04\x02\x04\x05\x12\
2777    \x03?\x0b\x11\n\x0c\n\x05\x04\x04\x02\x04\x01\x12\x03?\x12\x1b\n\x0c\n\
2778    \x05\x04\x04\x02\x04\x03\x12\x03?\x1e\x1f\n\x0b\n\x04\x04\x04\x02\x05\
2779    \x12\x03@\x02\x20\n\x0c\n\x05\x04\x04\x02\x05\x04\x12\x03@\x02\n\n\x0c\n\
2780    \x05\x04\x04\x02\x05\x05\x12\x03@\x0b\x11\n\x0c\n\x05\x04\x04\x02\x05\
2781    \x01\x12\x03@\x12\x1b\n\x0c\n\x05\x04\x04\x02\x05\x03\x12\x03@\x1e\x1f\n\
2782    \x0b\n\x04\x04\x04\x02\x06\x12\x03A\x02\x20\n\x0c\n\x05\x04\x04\x02\x06\
2783    \x04\x12\x03A\x02\n\n\x0c\n\x05\x04\x04\x02\x06\x05\x12\x03A\x0b\x11\n\
2784    \x0c\n\x05\x04\x04\x02\x06\x01\x12\x03A\x12\x1b\n\x0c\n\x05\x04\x04\x02\
2785    \x06\x03\x12\x03A\x1e\x1f\n\x0b\n\x04\x04\x04\x02\x07\x12\x03B\x02\"\n\
2786    \x0c\n\x05\x04\x04\x02\x07\x04\x12\x03B\x02\n\n\x0c\n\x05\x04\x04\x02\
2787    \x07\x05\x12\x03B\x0b\x11\n\x0c\n\x05\x04\x04\x02\x07\x01\x12\x03B\x12\
2788    \x1d\n\x0c\n\x05\x04\x04\x02\x07\x03\x12\x03B\x20!\n\x0b\n\x04\x04\x04\
2789    \x02\x08\x12\x03C\x02\"\n\x0c\n\x05\x04\x04\x02\x08\x04\x12\x03C\x02\n\n\
2790    \x0c\n\x05\x04\x04\x02\x08\x05\x12\x03C\x0b\x11\n\x0c\n\x05\x04\x04\x02\
2791    \x08\x01\x12\x03C\x12\x1d\n\x0c\n\x05\x04\x04\x02\x08\x03\x12\x03C\x20!\
2792    \n\x0b\n\x04\x04\x04\x02\t\x12\x03D\x02#\n\x0c\n\x05\x04\x04\x02\t\x04\
2793    \x12\x03D\x02\n\n\x0c\n\x05\x04\x04\x02\t\x05\x12\x03D\x0b\x11\n\x0c\n\
2794    \x05\x04\x04\x02\t\x01\x12\x03D\x12\x1d\n\x0c\n\x05\x04\x04\x02\t\x03\
2795    \x12\x03D\x20\"\n\x0b\n\x04\x04\x04\x02\n\x12\x03E\x02#\n\x0c\n\x05\x04\
2796    \x04\x02\n\x04\x12\x03E\x02\n\n\x0c\n\x05\x04\x04\x02\n\x05\x12\x03E\x0b\
2797    \x11\n\x0c\n\x05\x04\x04\x02\n\x01\x12\x03E\x12\x1d\n\x0c\n\x05\x04\x04\
2798    \x02\n\x03\x12\x03E\x20\"\n\x0b\n\x04\x04\x04\x02\x0b\x12\x03F\x02#\n\
2799    \x0c\n\x05\x04\x04\x02\x0b\x04\x12\x03F\x02\n\n\x0c\n\x05\x04\x04\x02\
2800    \x0b\x05\x12\x03F\x0b\x11\n\x0c\n\x05\x04\x04\x02\x0b\x01\x12\x03F\x12\
2801    \x1d\n\x0c\n\x05\x04\x04\x02\x0b\x03\x12\x03F\x20\"\n\x0b\n\x04\x04\x04\
2802    \x02\x0c\x12\x03G\x02\x1c\n\x0c\n\x05\x04\x04\x02\x0c\x04\x12\x03G\x02\n\
2803    \n\x0c\n\x05\x04\x04\x02\x0c\x05\x12\x03G\x0b\x11\n\x0c\n\x05\x04\x04\
2804    \x02\x0c\x01\x12\x03G\x12\x16\n\x0c\n\x05\x04\x04\x02\x0c\x03\x12\x03G\
2805    \x19\x1b\
2806";
2807
2808/// `FileDescriptorProto` object which was a source for this generated file
2809fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
2810    static file_descriptor_proto_lazy: ::protobuf::rt::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::Lazy::new();
2811    file_descriptor_proto_lazy.get(|| {
2812        ::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
2813    })
2814}
2815
2816/// `FileDescriptor` object which allows dynamic access to files
2817pub fn file_descriptor() -> &'static ::protobuf::reflect::FileDescriptor {
2818    static generated_file_descriptor_lazy: ::protobuf::rt::Lazy<::protobuf::reflect::GeneratedFileDescriptor> = ::protobuf::rt::Lazy::new();
2819    static file_descriptor: ::protobuf::rt::Lazy<::protobuf::reflect::FileDescriptor> = ::protobuf::rt::Lazy::new();
2820    file_descriptor.get(|| {
2821        let generated_file_descriptor = generated_file_descriptor_lazy.get(|| {
2822            let mut deps = ::std::vec::Vec::with_capacity(0);
2823            let mut messages = ::std::vec::Vec::with_capacity(5);
2824            messages.push(RegionProto::generated_message_descriptor_data());
2825            messages.push(ScriptProto::generated_message_descriptor_data());
2826            messages.push(LanguageProto::generated_message_descriptor_data());
2827            messages.push(ExemplarCharsProto::generated_message_descriptor_data());
2828            messages.push(SampleTextProto::generated_message_descriptor_data());
2829            let mut enums = ::std::vec::Vec::with_capacity(0);
2830            ::protobuf::reflect::GeneratedFileDescriptor::new_generated(
2831                file_descriptor_proto(),
2832                deps,
2833                messages,
2834                enums,
2835            )
2836        });
2837        ::protobuf::reflect::FileDescriptor::new_generated_2(generated_file_descriptor)
2838    })
2839}