#![allow(dead_code)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(unused_imports)]
use protobuf::Message as Message_imported_for_functions;
use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions;
#[derive(Clone,Default)]
pub struct FileDescriptorSet {
file: ::protobuf::RepeatedField<FileDescriptorProto>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl FileDescriptorSet {
pub fn new() -> FileDescriptorSet {
::std::default::Default::default()
}
pub fn default_instance() -> &'static FileDescriptorSet {
static mut instance: ::protobuf::lazy::Lazy<FileDescriptorSet> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const FileDescriptorSet,
};
unsafe {
instance.get(|| {
FileDescriptorSet {
file: ::protobuf::RepeatedField::new(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_file(&mut self) {
self.file.clear();
}
pub fn set_file(&mut self, v: ::protobuf::RepeatedField<FileDescriptorProto>) {
self.file = v;
}
pub fn mut_file<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<FileDescriptorProto> {
&mut self.file
}
pub fn take_file(&mut self) -> ::protobuf::RepeatedField<FileDescriptorProto> {
::std::mem::replace(&mut self.file, ::protobuf::RepeatedField::new())
}
pub fn get_file<'a>(&'a self) -> &'a [FileDescriptorProto] {
&self.file
}
}
impl ::protobuf::Message for FileDescriptorSet {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.file));
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.file.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
for v in self.file.iter() {
try!(os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<FileDescriptorSet>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for FileDescriptorSet {
fn new() -> FileDescriptorSet {
FileDescriptorSet::new()
}
fn descriptor_static(_: ::std::option::Option<FileDescriptorSet>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"file",
FileDescriptorSet::get_file,
));
::protobuf::reflect::MessageDescriptor::new::<FileDescriptorSet>(
"FileDescriptorSet",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for FileDescriptorSet {
fn clear(&mut self) {
self.clear_file();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for FileDescriptorSet {
fn eq(&self, other: &FileDescriptorSet) -> bool {
self.file == other.file &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for FileDescriptorSet {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct FileDescriptorProto {
name: ::protobuf::SingularField<::std::string::String>,
package: ::protobuf::SingularField<::std::string::String>,
dependency: ::protobuf::RepeatedField<::std::string::String>,
public_dependency: ::std::vec::Vec<i32>,
weak_dependency: ::std::vec::Vec<i32>,
message_type: ::protobuf::RepeatedField<DescriptorProto>,
enum_type: ::protobuf::RepeatedField<EnumDescriptorProto>,
service: ::protobuf::RepeatedField<ServiceDescriptorProto>,
extension: ::protobuf::RepeatedField<FieldDescriptorProto>,
options: ::protobuf::SingularPtrField<FileOptions>,
source_code_info: ::protobuf::SingularPtrField<SourceCodeInfo>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl FileDescriptorProto {
pub fn new() -> FileDescriptorProto {
::std::default::Default::default()
}
pub fn default_instance() -> &'static FileDescriptorProto {
static mut instance: ::protobuf::lazy::Lazy<FileDescriptorProto> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const FileDescriptorProto,
};
unsafe {
instance.get(|| {
FileDescriptorProto {
name: ::protobuf::SingularField::none(),
package: ::protobuf::SingularField::none(),
dependency: ::protobuf::RepeatedField::new(),
public_dependency: ::std::vec::Vec::new(),
weak_dependency: ::std::vec::Vec::new(),
message_type: ::protobuf::RepeatedField::new(),
enum_type: ::protobuf::RepeatedField::new(),
service: ::protobuf::RepeatedField::new(),
extension: ::protobuf::RepeatedField::new(),
options: ::protobuf::SingularPtrField::none(),
source_code_info: ::protobuf::SingularPtrField::none(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_name(&mut self) {
self.name.clear();
}
pub fn has_name(&self) -> bool {
self.name.is_some()
}
pub fn set_name(&mut self, v: ::std::string::String) {
self.name = ::protobuf::SingularField::some(v);
}
pub fn mut_name<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.name.is_none() {
self.name.set_default();
};
self.name.as_mut().unwrap()
}
pub fn take_name(&mut self) -> ::std::string::String {
self.name.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_name<'a>(&'a self) -> &'a str {
match self.name.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_package(&mut self) {
self.package.clear();
}
pub fn has_package(&self) -> bool {
self.package.is_some()
}
pub fn set_package(&mut self, v: ::std::string::String) {
self.package = ::protobuf::SingularField::some(v);
}
pub fn mut_package<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.package.is_none() {
self.package.set_default();
};
self.package.as_mut().unwrap()
}
pub fn take_package(&mut self) -> ::std::string::String {
self.package.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_package<'a>(&'a self) -> &'a str {
match self.package.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_dependency(&mut self) {
self.dependency.clear();
}
pub fn set_dependency(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
self.dependency = v;
}
pub fn mut_dependency<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<::std::string::String> {
&mut self.dependency
}
pub fn take_dependency(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
::std::mem::replace(&mut self.dependency, ::protobuf::RepeatedField::new())
}
pub fn get_dependency<'a>(&'a self) -> &'a [::std::string::String] {
&self.dependency
}
pub fn clear_public_dependency(&mut self) {
self.public_dependency.clear();
}
pub fn set_public_dependency(&mut self, v: ::std::vec::Vec<i32>) {
self.public_dependency = v;
}
pub fn mut_public_dependency<'a>(&'a mut self) -> &'a mut ::std::vec::Vec<i32> {
&mut self.public_dependency
}
pub fn take_public_dependency(&mut self) -> ::std::vec::Vec<i32> {
::std::mem::replace(&mut self.public_dependency, ::std::vec::Vec::new())
}
pub fn get_public_dependency<'a>(&'a self) -> &'a [i32] {
&self.public_dependency
}
pub fn clear_weak_dependency(&mut self) {
self.weak_dependency.clear();
}
pub fn set_weak_dependency(&mut self, v: ::std::vec::Vec<i32>) {
self.weak_dependency = v;
}
pub fn mut_weak_dependency<'a>(&'a mut self) -> &'a mut ::std::vec::Vec<i32> {
&mut self.weak_dependency
}
pub fn take_weak_dependency(&mut self) -> ::std::vec::Vec<i32> {
::std::mem::replace(&mut self.weak_dependency, ::std::vec::Vec::new())
}
pub fn get_weak_dependency<'a>(&'a self) -> &'a [i32] {
&self.weak_dependency
}
pub fn clear_message_type(&mut self) {
self.message_type.clear();
}
pub fn set_message_type(&mut self, v: ::protobuf::RepeatedField<DescriptorProto>) {
self.message_type = v;
}
pub fn mut_message_type<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<DescriptorProto> {
&mut self.message_type
}
pub fn take_message_type(&mut self) -> ::protobuf::RepeatedField<DescriptorProto> {
::std::mem::replace(&mut self.message_type, ::protobuf::RepeatedField::new())
}
pub fn get_message_type<'a>(&'a self) -> &'a [DescriptorProto] {
&self.message_type
}
pub fn clear_enum_type(&mut self) {
self.enum_type.clear();
}
pub fn set_enum_type(&mut self, v: ::protobuf::RepeatedField<EnumDescriptorProto>) {
self.enum_type = v;
}
pub fn mut_enum_type<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<EnumDescriptorProto> {
&mut self.enum_type
}
pub fn take_enum_type(&mut self) -> ::protobuf::RepeatedField<EnumDescriptorProto> {
::std::mem::replace(&mut self.enum_type, ::protobuf::RepeatedField::new())
}
pub fn get_enum_type<'a>(&'a self) -> &'a [EnumDescriptorProto] {
&self.enum_type
}
pub fn clear_service(&mut self) {
self.service.clear();
}
pub fn set_service(&mut self, v: ::protobuf::RepeatedField<ServiceDescriptorProto>) {
self.service = v;
}
pub fn mut_service<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<ServiceDescriptorProto> {
&mut self.service
}
pub fn take_service(&mut self) -> ::protobuf::RepeatedField<ServiceDescriptorProto> {
::std::mem::replace(&mut self.service, ::protobuf::RepeatedField::new())
}
pub fn get_service<'a>(&'a self) -> &'a [ServiceDescriptorProto] {
&self.service
}
pub fn clear_extension(&mut self) {
self.extension.clear();
}
pub fn set_extension(&mut self, v: ::protobuf::RepeatedField<FieldDescriptorProto>) {
self.extension = v;
}
pub fn mut_extension<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<FieldDescriptorProto> {
&mut self.extension
}
pub fn take_extension(&mut self) -> ::protobuf::RepeatedField<FieldDescriptorProto> {
::std::mem::replace(&mut self.extension, ::protobuf::RepeatedField::new())
}
pub fn get_extension<'a>(&'a self) -> &'a [FieldDescriptorProto] {
&self.extension
}
pub fn clear_options(&mut self) {
self.options.clear();
}
pub fn has_options(&self) -> bool {
self.options.is_some()
}
pub fn set_options(&mut self, v: FileOptions) {
self.options = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_options<'a>(&'a mut self) -> &'a mut FileOptions {
if self.options.is_none() {
self.options.set_default();
};
self.options.as_mut().unwrap()
}
pub fn take_options(&mut self) -> FileOptions {
self.options.take().unwrap_or_else(|| FileOptions::new())
}
pub fn get_options<'a>(&'a self) -> &'a FileOptions {
self.options.as_ref().unwrap_or_else(|| FileOptions::default_instance())
}
pub fn clear_source_code_info(&mut self) {
self.source_code_info.clear();
}
pub fn has_source_code_info(&self) -> bool {
self.source_code_info.is_some()
}
pub fn set_source_code_info(&mut self, v: SourceCodeInfo) {
self.source_code_info = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_source_code_info<'a>(&'a mut self) -> &'a mut SourceCodeInfo {
if self.source_code_info.is_none() {
self.source_code_info.set_default();
};
self.source_code_info.as_mut().unwrap()
}
pub fn take_source_code_info(&mut self) -> SourceCodeInfo {
self.source_code_info.take().unwrap_or_else(|| SourceCodeInfo::new())
}
pub fn get_source_code_info<'a>(&'a self) -> &'a SourceCodeInfo {
self.source_code_info.as_ref().unwrap_or_else(|| SourceCodeInfo::default_instance())
}
}
impl ::protobuf::Message for FileDescriptorProto {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.name.set_default();
try!(is.read_string_into(tmp))
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.package.set_default();
try!(is.read_string_into(tmp))
},
3 => {
try!(::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.dependency));
},
10 => {
try!(::protobuf::rt::read_repeated_int32_into(wire_type, is, &mut self.public_dependency));
},
11 => {
try!(::protobuf::rt::read_repeated_int32_into(wire_type, is, &mut self.weak_dependency));
},
4 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.message_type));
},
5 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.enum_type));
},
6 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.service));
},
7 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.extension));
},
8 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.options.set_default();
try!(is.merge_message(tmp))
},
9 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.source_code_info.set_default();
try!(is.merge_message(tmp))
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.name.iter() {
my_size += ::protobuf::rt::string_size(1, &value);
};
for value in self.package.iter() {
my_size += ::protobuf::rt::string_size(2, &value);
};
for value in self.dependency.iter() {
my_size += ::protobuf::rt::string_size(3, &value);
};
for value in self.public_dependency.iter() {
my_size += ::protobuf::rt::value_size(10, *value, ::protobuf::wire_format::WireTypeVarint);
};
for value in self.weak_dependency.iter() {
my_size += ::protobuf::rt::value_size(11, *value, ::protobuf::wire_format::WireTypeVarint);
};
for value in self.message_type.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.enum_type.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.service.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.extension.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.options.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.source_code_info.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.name.as_ref() {
try!(os.write_string(1, &v));
};
if let Some(v) = self.package.as_ref() {
try!(os.write_string(2, &v));
};
for v in self.dependency.iter() {
try!(os.write_string(3, &v));
};
for v in self.public_dependency.iter() {
try!(os.write_int32(10, *v));
};
for v in self.weak_dependency.iter() {
try!(os.write_int32(11, *v));
};
for v in self.message_type.iter() {
try!(os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
for v in self.enum_type.iter() {
try!(os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
for v in self.service.iter() {
try!(os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
for v in self.extension.iter() {
try!(os.write_tag(7, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
if let Some(v) = self.options.as_ref() {
try!(os.write_tag(8, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
if let Some(v) = self.source_code_info.as_ref() {
try!(os.write_tag(9, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<FileDescriptorProto>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for FileDescriptorProto {
fn new() -> FileDescriptorProto {
FileDescriptorProto::new()
}
fn descriptor_static(_: ::std::option::Option<FileDescriptorProto>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"name",
FileDescriptorProto::has_name,
FileDescriptorProto::get_name,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"package",
FileDescriptorProto::has_package,
FileDescriptorProto::get_package,
));
fields.push(::protobuf::reflect::accessor::make_repeated_string_accessor(
"dependency",
FileDescriptorProto::get_dependency,
));
fields.push(::protobuf::reflect::accessor::make_repeated_i32_accessor(
"public_dependency",
FileDescriptorProto::get_public_dependency,
));
fields.push(::protobuf::reflect::accessor::make_repeated_i32_accessor(
"weak_dependency",
FileDescriptorProto::get_weak_dependency,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"message_type",
FileDescriptorProto::get_message_type,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"enum_type",
FileDescriptorProto::get_enum_type,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"service",
FileDescriptorProto::get_service,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"extension",
FileDescriptorProto::get_extension,
));
fields.push(::protobuf::reflect::accessor::make_singular_message_accessor(
"options",
FileDescriptorProto::has_options,
FileDescriptorProto::get_options,
));
fields.push(::protobuf::reflect::accessor::make_singular_message_accessor(
"source_code_info",
FileDescriptorProto::has_source_code_info,
FileDescriptorProto::get_source_code_info,
));
::protobuf::reflect::MessageDescriptor::new::<FileDescriptorProto>(
"FileDescriptorProto",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for FileDescriptorProto {
fn clear(&mut self) {
self.clear_name();
self.clear_package();
self.clear_dependency();
self.clear_public_dependency();
self.clear_weak_dependency();
self.clear_message_type();
self.clear_enum_type();
self.clear_service();
self.clear_extension();
self.clear_options();
self.clear_source_code_info();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for FileDescriptorProto {
fn eq(&self, other: &FileDescriptorProto) -> bool {
self.name == other.name &&
self.package == other.package &&
self.dependency == other.dependency &&
self.public_dependency == other.public_dependency &&
self.weak_dependency == other.weak_dependency &&
self.message_type == other.message_type &&
self.enum_type == other.enum_type &&
self.service == other.service &&
self.extension == other.extension &&
self.options == other.options &&
self.source_code_info == other.source_code_info &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for FileDescriptorProto {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct DescriptorProto {
name: ::protobuf::SingularField<::std::string::String>,
field: ::protobuf::RepeatedField<FieldDescriptorProto>,
extension: ::protobuf::RepeatedField<FieldDescriptorProto>,
nested_type: ::protobuf::RepeatedField<DescriptorProto>,
enum_type: ::protobuf::RepeatedField<EnumDescriptorProto>,
extension_range: ::protobuf::RepeatedField<DescriptorProto_ExtensionRange>,
oneof_decl: ::protobuf::RepeatedField<OneofDescriptorProto>,
options: ::protobuf::SingularPtrField<MessageOptions>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl DescriptorProto {
pub fn new() -> DescriptorProto {
::std::default::Default::default()
}
pub fn default_instance() -> &'static DescriptorProto {
static mut instance: ::protobuf::lazy::Lazy<DescriptorProto> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const DescriptorProto,
};
unsafe {
instance.get(|| {
DescriptorProto {
name: ::protobuf::SingularField::none(),
field: ::protobuf::RepeatedField::new(),
extension: ::protobuf::RepeatedField::new(),
nested_type: ::protobuf::RepeatedField::new(),
enum_type: ::protobuf::RepeatedField::new(),
extension_range: ::protobuf::RepeatedField::new(),
oneof_decl: ::protobuf::RepeatedField::new(),
options: ::protobuf::SingularPtrField::none(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_name(&mut self) {
self.name.clear();
}
pub fn has_name(&self) -> bool {
self.name.is_some()
}
pub fn set_name(&mut self, v: ::std::string::String) {
self.name = ::protobuf::SingularField::some(v);
}
pub fn mut_name<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.name.is_none() {
self.name.set_default();
};
self.name.as_mut().unwrap()
}
pub fn take_name(&mut self) -> ::std::string::String {
self.name.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_name<'a>(&'a self) -> &'a str {
match self.name.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_field(&mut self) {
self.field.clear();
}
pub fn set_field(&mut self, v: ::protobuf::RepeatedField<FieldDescriptorProto>) {
self.field = v;
}
pub fn mut_field<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<FieldDescriptorProto> {
&mut self.field
}
pub fn take_field(&mut self) -> ::protobuf::RepeatedField<FieldDescriptorProto> {
::std::mem::replace(&mut self.field, ::protobuf::RepeatedField::new())
}
pub fn get_field<'a>(&'a self) -> &'a [FieldDescriptorProto] {
&self.field
}
pub fn clear_extension(&mut self) {
self.extension.clear();
}
pub fn set_extension(&mut self, v: ::protobuf::RepeatedField<FieldDescriptorProto>) {
self.extension = v;
}
pub fn mut_extension<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<FieldDescriptorProto> {
&mut self.extension
}
pub fn take_extension(&mut self) -> ::protobuf::RepeatedField<FieldDescriptorProto> {
::std::mem::replace(&mut self.extension, ::protobuf::RepeatedField::new())
}
pub fn get_extension<'a>(&'a self) -> &'a [FieldDescriptorProto] {
&self.extension
}
pub fn clear_nested_type(&mut self) {
self.nested_type.clear();
}
pub fn set_nested_type(&mut self, v: ::protobuf::RepeatedField<DescriptorProto>) {
self.nested_type = v;
}
pub fn mut_nested_type<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<DescriptorProto> {
&mut self.nested_type
}
pub fn take_nested_type(&mut self) -> ::protobuf::RepeatedField<DescriptorProto> {
::std::mem::replace(&mut self.nested_type, ::protobuf::RepeatedField::new())
}
pub fn get_nested_type<'a>(&'a self) -> &'a [DescriptorProto] {
&self.nested_type
}
pub fn clear_enum_type(&mut self) {
self.enum_type.clear();
}
pub fn set_enum_type(&mut self, v: ::protobuf::RepeatedField<EnumDescriptorProto>) {
self.enum_type = v;
}
pub fn mut_enum_type<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<EnumDescriptorProto> {
&mut self.enum_type
}
pub fn take_enum_type(&mut self) -> ::protobuf::RepeatedField<EnumDescriptorProto> {
::std::mem::replace(&mut self.enum_type, ::protobuf::RepeatedField::new())
}
pub fn get_enum_type<'a>(&'a self) -> &'a [EnumDescriptorProto] {
&self.enum_type
}
pub fn clear_extension_range(&mut self) {
self.extension_range.clear();
}
pub fn set_extension_range(&mut self, v: ::protobuf::RepeatedField<DescriptorProto_ExtensionRange>) {
self.extension_range = v;
}
pub fn mut_extension_range<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<DescriptorProto_ExtensionRange> {
&mut self.extension_range
}
pub fn take_extension_range(&mut self) -> ::protobuf::RepeatedField<DescriptorProto_ExtensionRange> {
::std::mem::replace(&mut self.extension_range, ::protobuf::RepeatedField::new())
}
pub fn get_extension_range<'a>(&'a self) -> &'a [DescriptorProto_ExtensionRange] {
&self.extension_range
}
pub fn clear_oneof_decl(&mut self) {
self.oneof_decl.clear();
}
pub fn set_oneof_decl(&mut self, v: ::protobuf::RepeatedField<OneofDescriptorProto>) {
self.oneof_decl = v;
}
pub fn mut_oneof_decl<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<OneofDescriptorProto> {
&mut self.oneof_decl
}
pub fn take_oneof_decl(&mut self) -> ::protobuf::RepeatedField<OneofDescriptorProto> {
::std::mem::replace(&mut self.oneof_decl, ::protobuf::RepeatedField::new())
}
pub fn get_oneof_decl<'a>(&'a self) -> &'a [OneofDescriptorProto] {
&self.oneof_decl
}
pub fn clear_options(&mut self) {
self.options.clear();
}
pub fn has_options(&self) -> bool {
self.options.is_some()
}
pub fn set_options(&mut self, v: MessageOptions) {
self.options = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_options<'a>(&'a mut self) -> &'a mut MessageOptions {
if self.options.is_none() {
self.options.set_default();
};
self.options.as_mut().unwrap()
}
pub fn take_options(&mut self) -> MessageOptions {
self.options.take().unwrap_or_else(|| MessageOptions::new())
}
pub fn get_options<'a>(&'a self) -> &'a MessageOptions {
self.options.as_ref().unwrap_or_else(|| MessageOptions::default_instance())
}
}
impl ::protobuf::Message for DescriptorProto {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.name.set_default();
try!(is.read_string_into(tmp))
},
2 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.field));
},
6 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.extension));
},
3 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.nested_type));
},
4 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.enum_type));
},
5 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.extension_range));
},
8 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.oneof_decl));
},
7 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.options.set_default();
try!(is.merge_message(tmp))
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.name.iter() {
my_size += ::protobuf::rt::string_size(1, &value);
};
for value in self.field.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.extension.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.nested_type.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.enum_type.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.extension_range.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.oneof_decl.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.options.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.name.as_ref() {
try!(os.write_string(1, &v));
};
for v in self.field.iter() {
try!(os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
for v in self.extension.iter() {
try!(os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
for v in self.nested_type.iter() {
try!(os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
for v in self.enum_type.iter() {
try!(os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
for v in self.extension_range.iter() {
try!(os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
for v in self.oneof_decl.iter() {
try!(os.write_tag(8, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
if let Some(v) = self.options.as_ref() {
try!(os.write_tag(7, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<DescriptorProto>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for DescriptorProto {
fn new() -> DescriptorProto {
DescriptorProto::new()
}
fn descriptor_static(_: ::std::option::Option<DescriptorProto>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"name",
DescriptorProto::has_name,
DescriptorProto::get_name,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"field",
DescriptorProto::get_field,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"extension",
DescriptorProto::get_extension,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"nested_type",
DescriptorProto::get_nested_type,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"enum_type",
DescriptorProto::get_enum_type,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"extension_range",
DescriptorProto::get_extension_range,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"oneof_decl",
DescriptorProto::get_oneof_decl,
));
fields.push(::protobuf::reflect::accessor::make_singular_message_accessor(
"options",
DescriptorProto::has_options,
DescriptorProto::get_options,
));
::protobuf::reflect::MessageDescriptor::new::<DescriptorProto>(
"DescriptorProto",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for DescriptorProto {
fn clear(&mut self) {
self.clear_name();
self.clear_field();
self.clear_extension();
self.clear_nested_type();
self.clear_enum_type();
self.clear_extension_range();
self.clear_oneof_decl();
self.clear_options();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for DescriptorProto {
fn eq(&self, other: &DescriptorProto) -> bool {
self.name == other.name &&
self.field == other.field &&
self.extension == other.extension &&
self.nested_type == other.nested_type &&
self.enum_type == other.enum_type &&
self.extension_range == other.extension_range &&
self.oneof_decl == other.oneof_decl &&
self.options == other.options &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for DescriptorProto {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct DescriptorProto_ExtensionRange {
start: ::std::option::Option<i32>,
end: ::std::option::Option<i32>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl DescriptorProto_ExtensionRange {
pub fn new() -> DescriptorProto_ExtensionRange {
::std::default::Default::default()
}
pub fn default_instance() -> &'static DescriptorProto_ExtensionRange {
static mut instance: ::protobuf::lazy::Lazy<DescriptorProto_ExtensionRange> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const DescriptorProto_ExtensionRange,
};
unsafe {
instance.get(|| {
DescriptorProto_ExtensionRange {
start: ::std::option::Option::None,
end: ::std::option::Option::None,
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_start(&mut self) {
self.start = ::std::option::Option::None;
}
pub fn has_start(&self) -> bool {
self.start.is_some()
}
pub fn set_start(&mut self, v: i32) {
self.start = ::std::option::Option::Some(v);
}
pub fn get_start<'a>(&self) -> i32 {
self.start.unwrap_or(0)
}
pub fn clear_end(&mut self) {
self.end = ::std::option::Option::None;
}
pub fn has_end(&self) -> bool {
self.end.is_some()
}
pub fn set_end(&mut self, v: i32) {
self.end = ::std::option::Option::Some(v);
}
pub fn get_end<'a>(&self) -> i32 {
self.end.unwrap_or(0)
}
}
impl ::protobuf::Message for DescriptorProto_ExtensionRange {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_int32());
self.start = ::std::option::Option::Some(tmp);
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_int32());
self.end = ::std::option::Option::Some(tmp);
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.start.iter() {
my_size += ::protobuf::rt::value_size(1, *value, ::protobuf::wire_format::WireTypeVarint);
};
for value in self.end.iter() {
my_size += ::protobuf::rt::value_size(2, *value, ::protobuf::wire_format::WireTypeVarint);
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.start {
try!(os.write_int32(1, v));
};
if let Some(v) = self.end {
try!(os.write_int32(2, v));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<DescriptorProto_ExtensionRange>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for DescriptorProto_ExtensionRange {
fn new() -> DescriptorProto_ExtensionRange {
DescriptorProto_ExtensionRange::new()
}
fn descriptor_static(_: ::std::option::Option<DescriptorProto_ExtensionRange>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_i32_accessor(
"start",
DescriptorProto_ExtensionRange::has_start,
DescriptorProto_ExtensionRange::get_start,
));
fields.push(::protobuf::reflect::accessor::make_singular_i32_accessor(
"end",
DescriptorProto_ExtensionRange::has_end,
DescriptorProto_ExtensionRange::get_end,
));
::protobuf::reflect::MessageDescriptor::new::<DescriptorProto_ExtensionRange>(
"DescriptorProto_ExtensionRange",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for DescriptorProto_ExtensionRange {
fn clear(&mut self) {
self.clear_start();
self.clear_end();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for DescriptorProto_ExtensionRange {
fn eq(&self, other: &DescriptorProto_ExtensionRange) -> bool {
self.start == other.start &&
self.end == other.end &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for DescriptorProto_ExtensionRange {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct FieldDescriptorProto {
name: ::protobuf::SingularField<::std::string::String>,
number: ::std::option::Option<i32>,
label: ::std::option::Option<FieldDescriptorProto_Label>,
field_type: ::std::option::Option<FieldDescriptorProto_Type>,
type_name: ::protobuf::SingularField<::std::string::String>,
extendee: ::protobuf::SingularField<::std::string::String>,
default_value: ::protobuf::SingularField<::std::string::String>,
oneof_index: ::std::option::Option<i32>,
options: ::protobuf::SingularPtrField<FieldOptions>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl FieldDescriptorProto {
pub fn new() -> FieldDescriptorProto {
::std::default::Default::default()
}
pub fn default_instance() -> &'static FieldDescriptorProto {
static mut instance: ::protobuf::lazy::Lazy<FieldDescriptorProto> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const FieldDescriptorProto,
};
unsafe {
instance.get(|| {
FieldDescriptorProto {
name: ::protobuf::SingularField::none(),
number: ::std::option::Option::None,
label: ::std::option::Option::None,
field_type: ::std::option::Option::None,
type_name: ::protobuf::SingularField::none(),
extendee: ::protobuf::SingularField::none(),
default_value: ::protobuf::SingularField::none(),
oneof_index: ::std::option::Option::None,
options: ::protobuf::SingularPtrField::none(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_name(&mut self) {
self.name.clear();
}
pub fn has_name(&self) -> bool {
self.name.is_some()
}
pub fn set_name(&mut self, v: ::std::string::String) {
self.name = ::protobuf::SingularField::some(v);
}
pub fn mut_name<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.name.is_none() {
self.name.set_default();
};
self.name.as_mut().unwrap()
}
pub fn take_name(&mut self) -> ::std::string::String {
self.name.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_name<'a>(&'a self) -> &'a str {
match self.name.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_number(&mut self) {
self.number = ::std::option::Option::None;
}
pub fn has_number(&self) -> bool {
self.number.is_some()
}
pub fn set_number(&mut self, v: i32) {
self.number = ::std::option::Option::Some(v);
}
pub fn get_number<'a>(&self) -> i32 {
self.number.unwrap_or(0)
}
pub fn clear_label(&mut self) {
self.label = ::std::option::Option::None;
}
pub fn has_label(&self) -> bool {
self.label.is_some()
}
pub fn set_label(&mut self, v: FieldDescriptorProto_Label) {
self.label = ::std::option::Option::Some(v);
}
pub fn get_label<'a>(&self) -> FieldDescriptorProto_Label {
self.label.unwrap_or(FieldDescriptorProto_Label::LABEL_OPTIONAL)
}
pub fn clear_field_type(&mut self) {
self.field_type = ::std::option::Option::None;
}
pub fn has_field_type(&self) -> bool {
self.field_type.is_some()
}
pub fn set_field_type(&mut self, v: FieldDescriptorProto_Type) {
self.field_type = ::std::option::Option::Some(v);
}
pub fn get_field_type<'a>(&self) -> FieldDescriptorProto_Type {
self.field_type.unwrap_or(FieldDescriptorProto_Type::TYPE_DOUBLE)
}
pub fn clear_type_name(&mut self) {
self.type_name.clear();
}
pub fn has_type_name(&self) -> bool {
self.type_name.is_some()
}
pub fn set_type_name(&mut self, v: ::std::string::String) {
self.type_name = ::protobuf::SingularField::some(v);
}
pub fn mut_type_name<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.type_name.is_none() {
self.type_name.set_default();
};
self.type_name.as_mut().unwrap()
}
pub fn take_type_name(&mut self) -> ::std::string::String {
self.type_name.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_type_name<'a>(&'a self) -> &'a str {
match self.type_name.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_extendee(&mut self) {
self.extendee.clear();
}
pub fn has_extendee(&self) -> bool {
self.extendee.is_some()
}
pub fn set_extendee(&mut self, v: ::std::string::String) {
self.extendee = ::protobuf::SingularField::some(v);
}
pub fn mut_extendee<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.extendee.is_none() {
self.extendee.set_default();
};
self.extendee.as_mut().unwrap()
}
pub fn take_extendee(&mut self) -> ::std::string::String {
self.extendee.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_extendee<'a>(&'a self) -> &'a str {
match self.extendee.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_default_value(&mut self) {
self.default_value.clear();
}
pub fn has_default_value(&self) -> bool {
self.default_value.is_some()
}
pub fn set_default_value(&mut self, v: ::std::string::String) {
self.default_value = ::protobuf::SingularField::some(v);
}
pub fn mut_default_value<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.default_value.is_none() {
self.default_value.set_default();
};
self.default_value.as_mut().unwrap()
}
pub fn take_default_value(&mut self) -> ::std::string::String {
self.default_value.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_default_value<'a>(&'a self) -> &'a str {
match self.default_value.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_oneof_index(&mut self) {
self.oneof_index = ::std::option::Option::None;
}
pub fn has_oneof_index(&self) -> bool {
self.oneof_index.is_some()
}
pub fn set_oneof_index(&mut self, v: i32) {
self.oneof_index = ::std::option::Option::Some(v);
}
pub fn get_oneof_index<'a>(&self) -> i32 {
self.oneof_index.unwrap_or(0)
}
pub fn clear_options(&mut self) {
self.options.clear();
}
pub fn has_options(&self) -> bool {
self.options.is_some()
}
pub fn set_options(&mut self, v: FieldOptions) {
self.options = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_options<'a>(&'a mut self) -> &'a mut FieldOptions {
if self.options.is_none() {
self.options.set_default();
};
self.options.as_mut().unwrap()
}
pub fn take_options(&mut self) -> FieldOptions {
self.options.take().unwrap_or_else(|| FieldOptions::new())
}
pub fn get_options<'a>(&'a self) -> &'a FieldOptions {
self.options.as_ref().unwrap_or_else(|| FieldOptions::default_instance())
}
}
impl ::protobuf::Message for FieldDescriptorProto {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.name.set_default();
try!(is.read_string_into(tmp))
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_int32());
self.number = ::std::option::Option::Some(tmp);
},
4 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_enum());
self.label = ::std::option::Option::Some(tmp);
},
5 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_enum());
self.field_type = ::std::option::Option::Some(tmp);
},
6 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.type_name.set_default();
try!(is.read_string_into(tmp))
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.extendee.set_default();
try!(is.read_string_into(tmp))
},
7 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.default_value.set_default();
try!(is.read_string_into(tmp))
},
9 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_int32());
self.oneof_index = ::std::option::Option::Some(tmp);
},
8 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.options.set_default();
try!(is.merge_message(tmp))
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.name.iter() {
my_size += ::protobuf::rt::string_size(1, &value);
};
for value in self.number.iter() {
my_size += ::protobuf::rt::value_size(3, *value, ::protobuf::wire_format::WireTypeVarint);
};
for value in self.label.iter() {
my_size += ::protobuf::rt::enum_size(4, *value);
};
for value in self.field_type.iter() {
my_size += ::protobuf::rt::enum_size(5, *value);
};
for value in self.type_name.iter() {
my_size += ::protobuf::rt::string_size(6, &value);
};
for value in self.extendee.iter() {
my_size += ::protobuf::rt::string_size(2, &value);
};
for value in self.default_value.iter() {
my_size += ::protobuf::rt::string_size(7, &value);
};
for value in self.oneof_index.iter() {
my_size += ::protobuf::rt::value_size(9, *value, ::protobuf::wire_format::WireTypeVarint);
};
for value in self.options.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.name.as_ref() {
try!(os.write_string(1, &v));
};
if let Some(v) = self.number {
try!(os.write_int32(3, v));
};
if let Some(v) = self.label {
try!(os.write_enum(4, v as i32));
};
if let Some(v) = self.field_type {
try!(os.write_enum(5, v as i32));
};
if let Some(v) = self.type_name.as_ref() {
try!(os.write_string(6, &v));
};
if let Some(v) = self.extendee.as_ref() {
try!(os.write_string(2, &v));
};
if let Some(v) = self.default_value.as_ref() {
try!(os.write_string(7, &v));
};
if let Some(v) = self.oneof_index {
try!(os.write_int32(9, v));
};
if let Some(v) = self.options.as_ref() {
try!(os.write_tag(8, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<FieldDescriptorProto>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for FieldDescriptorProto {
fn new() -> FieldDescriptorProto {
FieldDescriptorProto::new()
}
fn descriptor_static(_: ::std::option::Option<FieldDescriptorProto>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"name",
FieldDescriptorProto::has_name,
FieldDescriptorProto::get_name,
));
fields.push(::protobuf::reflect::accessor::make_singular_i32_accessor(
"number",
FieldDescriptorProto::has_number,
FieldDescriptorProto::get_number,
));
fields.push(::protobuf::reflect::accessor::make_singular_enum_accessor(
"label",
FieldDescriptorProto::has_label,
FieldDescriptorProto::get_label,
));
fields.push(::protobuf::reflect::accessor::make_singular_enum_accessor(
"field_type",
FieldDescriptorProto::has_field_type,
FieldDescriptorProto::get_field_type,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"type_name",
FieldDescriptorProto::has_type_name,
FieldDescriptorProto::get_type_name,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"extendee",
FieldDescriptorProto::has_extendee,
FieldDescriptorProto::get_extendee,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"default_value",
FieldDescriptorProto::has_default_value,
FieldDescriptorProto::get_default_value,
));
fields.push(::protobuf::reflect::accessor::make_singular_i32_accessor(
"oneof_index",
FieldDescriptorProto::has_oneof_index,
FieldDescriptorProto::get_oneof_index,
));
fields.push(::protobuf::reflect::accessor::make_singular_message_accessor(
"options",
FieldDescriptorProto::has_options,
FieldDescriptorProto::get_options,
));
::protobuf::reflect::MessageDescriptor::new::<FieldDescriptorProto>(
"FieldDescriptorProto",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for FieldDescriptorProto {
fn clear(&mut self) {
self.clear_name();
self.clear_number();
self.clear_label();
self.clear_field_type();
self.clear_type_name();
self.clear_extendee();
self.clear_default_value();
self.clear_oneof_index();
self.clear_options();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for FieldDescriptorProto {
fn eq(&self, other: &FieldDescriptorProto) -> bool {
self.name == other.name &&
self.number == other.number &&
self.label == other.label &&
self.field_type == other.field_type &&
self.type_name == other.type_name &&
self.extendee == other.extendee &&
self.default_value == other.default_value &&
self.oneof_index == other.oneof_index &&
self.options == other.options &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for FieldDescriptorProto {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum FieldDescriptorProto_Type {
TYPE_DOUBLE = 1,
TYPE_FLOAT = 2,
TYPE_INT64 = 3,
TYPE_UINT64 = 4,
TYPE_INT32 = 5,
TYPE_FIXED64 = 6,
TYPE_FIXED32 = 7,
TYPE_BOOL = 8,
TYPE_STRING = 9,
TYPE_GROUP = 10,
TYPE_MESSAGE = 11,
TYPE_BYTES = 12,
TYPE_UINT32 = 13,
TYPE_ENUM = 14,
TYPE_SFIXED32 = 15,
TYPE_SFIXED64 = 16,
TYPE_SINT32 = 17,
TYPE_SINT64 = 18,
}
impl ::protobuf::ProtobufEnum for FieldDescriptorProto_Type {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<FieldDescriptorProto_Type> {
match value {
1 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_DOUBLE),
2 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_FLOAT),
3 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_INT64),
4 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_UINT64),
5 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_INT32),
6 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_FIXED64),
7 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_FIXED32),
8 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_BOOL),
9 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_STRING),
10 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_GROUP),
11 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_MESSAGE),
12 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_BYTES),
13 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_UINT32),
14 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_ENUM),
15 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_SFIXED32),
16 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_SFIXED64),
17 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_SINT32),
18 => ::std::option::Option::Some(FieldDescriptorProto_Type::TYPE_SINT64),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [FieldDescriptorProto_Type] = &[
FieldDescriptorProto_Type::TYPE_DOUBLE,
FieldDescriptorProto_Type::TYPE_FLOAT,
FieldDescriptorProto_Type::TYPE_INT64,
FieldDescriptorProto_Type::TYPE_UINT64,
FieldDescriptorProto_Type::TYPE_INT32,
FieldDescriptorProto_Type::TYPE_FIXED64,
FieldDescriptorProto_Type::TYPE_FIXED32,
FieldDescriptorProto_Type::TYPE_BOOL,
FieldDescriptorProto_Type::TYPE_STRING,
FieldDescriptorProto_Type::TYPE_GROUP,
FieldDescriptorProto_Type::TYPE_MESSAGE,
FieldDescriptorProto_Type::TYPE_BYTES,
FieldDescriptorProto_Type::TYPE_UINT32,
FieldDescriptorProto_Type::TYPE_ENUM,
FieldDescriptorProto_Type::TYPE_SFIXED32,
FieldDescriptorProto_Type::TYPE_SFIXED64,
FieldDescriptorProto_Type::TYPE_SINT32,
FieldDescriptorProto_Type::TYPE_SINT64,
];
values
}
fn enum_descriptor_static(_: Option<FieldDescriptorProto_Type>) -> &'static ::protobuf::reflect::EnumDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::EnumDescriptor,
};
unsafe {
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new("FieldDescriptorProto_Type", file_descriptor_proto())
})
}
}
}
impl ::std::marker::Copy for FieldDescriptorProto_Type {
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum FieldDescriptorProto_Label {
LABEL_OPTIONAL = 1,
LABEL_REQUIRED = 2,
LABEL_REPEATED = 3,
}
impl ::protobuf::ProtobufEnum for FieldDescriptorProto_Label {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<FieldDescriptorProto_Label> {
match value {
1 => ::std::option::Option::Some(FieldDescriptorProto_Label::LABEL_OPTIONAL),
2 => ::std::option::Option::Some(FieldDescriptorProto_Label::LABEL_REQUIRED),
3 => ::std::option::Option::Some(FieldDescriptorProto_Label::LABEL_REPEATED),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [FieldDescriptorProto_Label] = &[
FieldDescriptorProto_Label::LABEL_OPTIONAL,
FieldDescriptorProto_Label::LABEL_REQUIRED,
FieldDescriptorProto_Label::LABEL_REPEATED,
];
values
}
fn enum_descriptor_static(_: Option<FieldDescriptorProto_Label>) -> &'static ::protobuf::reflect::EnumDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::EnumDescriptor,
};
unsafe {
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new("FieldDescriptorProto_Label", file_descriptor_proto())
})
}
}
}
impl ::std::marker::Copy for FieldDescriptorProto_Label {
}
#[derive(Clone,Default)]
pub struct OneofDescriptorProto {
name: ::protobuf::SingularField<::std::string::String>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl OneofDescriptorProto {
pub fn new() -> OneofDescriptorProto {
::std::default::Default::default()
}
pub fn default_instance() -> &'static OneofDescriptorProto {
static mut instance: ::protobuf::lazy::Lazy<OneofDescriptorProto> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const OneofDescriptorProto,
};
unsafe {
instance.get(|| {
OneofDescriptorProto {
name: ::protobuf::SingularField::none(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_name(&mut self) {
self.name.clear();
}
pub fn has_name(&self) -> bool {
self.name.is_some()
}
pub fn set_name(&mut self, v: ::std::string::String) {
self.name = ::protobuf::SingularField::some(v);
}
pub fn mut_name<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.name.is_none() {
self.name.set_default();
};
self.name.as_mut().unwrap()
}
pub fn take_name(&mut self) -> ::std::string::String {
self.name.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_name<'a>(&'a self) -> &'a str {
match self.name.as_ref() {
Some(v) => &v,
None => "",
}
}
}
impl ::protobuf::Message for OneofDescriptorProto {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.name.set_default();
try!(is.read_string_into(tmp))
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.name.iter() {
my_size += ::protobuf::rt::string_size(1, &value);
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.name.as_ref() {
try!(os.write_string(1, &v));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<OneofDescriptorProto>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for OneofDescriptorProto {
fn new() -> OneofDescriptorProto {
OneofDescriptorProto::new()
}
fn descriptor_static(_: ::std::option::Option<OneofDescriptorProto>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"name",
OneofDescriptorProto::has_name,
OneofDescriptorProto::get_name,
));
::protobuf::reflect::MessageDescriptor::new::<OneofDescriptorProto>(
"OneofDescriptorProto",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for OneofDescriptorProto {
fn clear(&mut self) {
self.clear_name();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for OneofDescriptorProto {
fn eq(&self, other: &OneofDescriptorProto) -> bool {
self.name == other.name &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for OneofDescriptorProto {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct EnumDescriptorProto {
name: ::protobuf::SingularField<::std::string::String>,
value: ::protobuf::RepeatedField<EnumValueDescriptorProto>,
options: ::protobuf::SingularPtrField<EnumOptions>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl EnumDescriptorProto {
pub fn new() -> EnumDescriptorProto {
::std::default::Default::default()
}
pub fn default_instance() -> &'static EnumDescriptorProto {
static mut instance: ::protobuf::lazy::Lazy<EnumDescriptorProto> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const EnumDescriptorProto,
};
unsafe {
instance.get(|| {
EnumDescriptorProto {
name: ::protobuf::SingularField::none(),
value: ::protobuf::RepeatedField::new(),
options: ::protobuf::SingularPtrField::none(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_name(&mut self) {
self.name.clear();
}
pub fn has_name(&self) -> bool {
self.name.is_some()
}
pub fn set_name(&mut self, v: ::std::string::String) {
self.name = ::protobuf::SingularField::some(v);
}
pub fn mut_name<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.name.is_none() {
self.name.set_default();
};
self.name.as_mut().unwrap()
}
pub fn take_name(&mut self) -> ::std::string::String {
self.name.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_name<'a>(&'a self) -> &'a str {
match self.name.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_value(&mut self) {
self.value.clear();
}
pub fn set_value(&mut self, v: ::protobuf::RepeatedField<EnumValueDescriptorProto>) {
self.value = v;
}
pub fn mut_value<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<EnumValueDescriptorProto> {
&mut self.value
}
pub fn take_value(&mut self) -> ::protobuf::RepeatedField<EnumValueDescriptorProto> {
::std::mem::replace(&mut self.value, ::protobuf::RepeatedField::new())
}
pub fn get_value<'a>(&'a self) -> &'a [EnumValueDescriptorProto] {
&self.value
}
pub fn clear_options(&mut self) {
self.options.clear();
}
pub fn has_options(&self) -> bool {
self.options.is_some()
}
pub fn set_options(&mut self, v: EnumOptions) {
self.options = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_options<'a>(&'a mut self) -> &'a mut EnumOptions {
if self.options.is_none() {
self.options.set_default();
};
self.options.as_mut().unwrap()
}
pub fn take_options(&mut self) -> EnumOptions {
self.options.take().unwrap_or_else(|| EnumOptions::new())
}
pub fn get_options<'a>(&'a self) -> &'a EnumOptions {
self.options.as_ref().unwrap_or_else(|| EnumOptions::default_instance())
}
}
impl ::protobuf::Message for EnumDescriptorProto {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.name.set_default();
try!(is.read_string_into(tmp))
},
2 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.value));
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.options.set_default();
try!(is.merge_message(tmp))
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.name.iter() {
my_size += ::protobuf::rt::string_size(1, &value);
};
for value in self.value.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.options.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.name.as_ref() {
try!(os.write_string(1, &v));
};
for v in self.value.iter() {
try!(os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
if let Some(v) = self.options.as_ref() {
try!(os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<EnumDescriptorProto>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for EnumDescriptorProto {
fn new() -> EnumDescriptorProto {
EnumDescriptorProto::new()
}
fn descriptor_static(_: ::std::option::Option<EnumDescriptorProto>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"name",
EnumDescriptorProto::has_name,
EnumDescriptorProto::get_name,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"value",
EnumDescriptorProto::get_value,
));
fields.push(::protobuf::reflect::accessor::make_singular_message_accessor(
"options",
EnumDescriptorProto::has_options,
EnumDescriptorProto::get_options,
));
::protobuf::reflect::MessageDescriptor::new::<EnumDescriptorProto>(
"EnumDescriptorProto",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for EnumDescriptorProto {
fn clear(&mut self) {
self.clear_name();
self.clear_value();
self.clear_options();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for EnumDescriptorProto {
fn eq(&self, other: &EnumDescriptorProto) -> bool {
self.name == other.name &&
self.value == other.value &&
self.options == other.options &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for EnumDescriptorProto {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct EnumValueDescriptorProto {
name: ::protobuf::SingularField<::std::string::String>,
number: ::std::option::Option<i32>,
options: ::protobuf::SingularPtrField<EnumValueOptions>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl EnumValueDescriptorProto {
pub fn new() -> EnumValueDescriptorProto {
::std::default::Default::default()
}
pub fn default_instance() -> &'static EnumValueDescriptorProto {
static mut instance: ::protobuf::lazy::Lazy<EnumValueDescriptorProto> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const EnumValueDescriptorProto,
};
unsafe {
instance.get(|| {
EnumValueDescriptorProto {
name: ::protobuf::SingularField::none(),
number: ::std::option::Option::None,
options: ::protobuf::SingularPtrField::none(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_name(&mut self) {
self.name.clear();
}
pub fn has_name(&self) -> bool {
self.name.is_some()
}
pub fn set_name(&mut self, v: ::std::string::String) {
self.name = ::protobuf::SingularField::some(v);
}
pub fn mut_name<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.name.is_none() {
self.name.set_default();
};
self.name.as_mut().unwrap()
}
pub fn take_name(&mut self) -> ::std::string::String {
self.name.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_name<'a>(&'a self) -> &'a str {
match self.name.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_number(&mut self) {
self.number = ::std::option::Option::None;
}
pub fn has_number(&self) -> bool {
self.number.is_some()
}
pub fn set_number(&mut self, v: i32) {
self.number = ::std::option::Option::Some(v);
}
pub fn get_number<'a>(&self) -> i32 {
self.number.unwrap_or(0)
}
pub fn clear_options(&mut self) {
self.options.clear();
}
pub fn has_options(&self) -> bool {
self.options.is_some()
}
pub fn set_options(&mut self, v: EnumValueOptions) {
self.options = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_options<'a>(&'a mut self) -> &'a mut EnumValueOptions {
if self.options.is_none() {
self.options.set_default();
};
self.options.as_mut().unwrap()
}
pub fn take_options(&mut self) -> EnumValueOptions {
self.options.take().unwrap_or_else(|| EnumValueOptions::new())
}
pub fn get_options<'a>(&'a self) -> &'a EnumValueOptions {
self.options.as_ref().unwrap_or_else(|| EnumValueOptions::default_instance())
}
}
impl ::protobuf::Message for EnumValueDescriptorProto {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.name.set_default();
try!(is.read_string_into(tmp))
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_int32());
self.number = ::std::option::Option::Some(tmp);
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.options.set_default();
try!(is.merge_message(tmp))
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.name.iter() {
my_size += ::protobuf::rt::string_size(1, &value);
};
for value in self.number.iter() {
my_size += ::protobuf::rt::value_size(2, *value, ::protobuf::wire_format::WireTypeVarint);
};
for value in self.options.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.name.as_ref() {
try!(os.write_string(1, &v));
};
if let Some(v) = self.number {
try!(os.write_int32(2, v));
};
if let Some(v) = self.options.as_ref() {
try!(os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<EnumValueDescriptorProto>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for EnumValueDescriptorProto {
fn new() -> EnumValueDescriptorProto {
EnumValueDescriptorProto::new()
}
fn descriptor_static(_: ::std::option::Option<EnumValueDescriptorProto>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"name",
EnumValueDescriptorProto::has_name,
EnumValueDescriptorProto::get_name,
));
fields.push(::protobuf::reflect::accessor::make_singular_i32_accessor(
"number",
EnumValueDescriptorProto::has_number,
EnumValueDescriptorProto::get_number,
));
fields.push(::protobuf::reflect::accessor::make_singular_message_accessor(
"options",
EnumValueDescriptorProto::has_options,
EnumValueDescriptorProto::get_options,
));
::protobuf::reflect::MessageDescriptor::new::<EnumValueDescriptorProto>(
"EnumValueDescriptorProto",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for EnumValueDescriptorProto {
fn clear(&mut self) {
self.clear_name();
self.clear_number();
self.clear_options();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for EnumValueDescriptorProto {
fn eq(&self, other: &EnumValueDescriptorProto) -> bool {
self.name == other.name &&
self.number == other.number &&
self.options == other.options &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for EnumValueDescriptorProto {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct ServiceDescriptorProto {
name: ::protobuf::SingularField<::std::string::String>,
method: ::protobuf::RepeatedField<MethodDescriptorProto>,
options: ::protobuf::SingularPtrField<ServiceOptions>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl ServiceDescriptorProto {
pub fn new() -> ServiceDescriptorProto {
::std::default::Default::default()
}
pub fn default_instance() -> &'static ServiceDescriptorProto {
static mut instance: ::protobuf::lazy::Lazy<ServiceDescriptorProto> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ServiceDescriptorProto,
};
unsafe {
instance.get(|| {
ServiceDescriptorProto {
name: ::protobuf::SingularField::none(),
method: ::protobuf::RepeatedField::new(),
options: ::protobuf::SingularPtrField::none(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_name(&mut self) {
self.name.clear();
}
pub fn has_name(&self) -> bool {
self.name.is_some()
}
pub fn set_name(&mut self, v: ::std::string::String) {
self.name = ::protobuf::SingularField::some(v);
}
pub fn mut_name<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.name.is_none() {
self.name.set_default();
};
self.name.as_mut().unwrap()
}
pub fn take_name(&mut self) -> ::std::string::String {
self.name.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_name<'a>(&'a self) -> &'a str {
match self.name.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_method(&mut self) {
self.method.clear();
}
pub fn set_method(&mut self, v: ::protobuf::RepeatedField<MethodDescriptorProto>) {
self.method = v;
}
pub fn mut_method<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<MethodDescriptorProto> {
&mut self.method
}
pub fn take_method(&mut self) -> ::protobuf::RepeatedField<MethodDescriptorProto> {
::std::mem::replace(&mut self.method, ::protobuf::RepeatedField::new())
}
pub fn get_method<'a>(&'a self) -> &'a [MethodDescriptorProto] {
&self.method
}
pub fn clear_options(&mut self) {
self.options.clear();
}
pub fn has_options(&self) -> bool {
self.options.is_some()
}
pub fn set_options(&mut self, v: ServiceOptions) {
self.options = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_options<'a>(&'a mut self) -> &'a mut ServiceOptions {
if self.options.is_none() {
self.options.set_default();
};
self.options.as_mut().unwrap()
}
pub fn take_options(&mut self) -> ServiceOptions {
self.options.take().unwrap_or_else(|| ServiceOptions::new())
}
pub fn get_options<'a>(&'a self) -> &'a ServiceOptions {
self.options.as_ref().unwrap_or_else(|| ServiceOptions::default_instance())
}
}
impl ::protobuf::Message for ServiceDescriptorProto {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.name.set_default();
try!(is.read_string_into(tmp))
},
2 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.method));
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.options.set_default();
try!(is.merge_message(tmp))
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.name.iter() {
my_size += ::protobuf::rt::string_size(1, &value);
};
for value in self.method.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.options.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.name.as_ref() {
try!(os.write_string(1, &v));
};
for v in self.method.iter() {
try!(os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
if let Some(v) = self.options.as_ref() {
try!(os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<ServiceDescriptorProto>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for ServiceDescriptorProto {
fn new() -> ServiceDescriptorProto {
ServiceDescriptorProto::new()
}
fn descriptor_static(_: ::std::option::Option<ServiceDescriptorProto>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"name",
ServiceDescriptorProto::has_name,
ServiceDescriptorProto::get_name,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"method",
ServiceDescriptorProto::get_method,
));
fields.push(::protobuf::reflect::accessor::make_singular_message_accessor(
"options",
ServiceDescriptorProto::has_options,
ServiceDescriptorProto::get_options,
));
::protobuf::reflect::MessageDescriptor::new::<ServiceDescriptorProto>(
"ServiceDescriptorProto",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for ServiceDescriptorProto {
fn clear(&mut self) {
self.clear_name();
self.clear_method();
self.clear_options();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for ServiceDescriptorProto {
fn eq(&self, other: &ServiceDescriptorProto) -> bool {
self.name == other.name &&
self.method == other.method &&
self.options == other.options &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for ServiceDescriptorProto {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct MethodDescriptorProto {
name: ::protobuf::SingularField<::std::string::String>,
input_type: ::protobuf::SingularField<::std::string::String>,
output_type: ::protobuf::SingularField<::std::string::String>,
options: ::protobuf::SingularPtrField<MethodOptions>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl MethodDescriptorProto {
pub fn new() -> MethodDescriptorProto {
::std::default::Default::default()
}
pub fn default_instance() -> &'static MethodDescriptorProto {
static mut instance: ::protobuf::lazy::Lazy<MethodDescriptorProto> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const MethodDescriptorProto,
};
unsafe {
instance.get(|| {
MethodDescriptorProto {
name: ::protobuf::SingularField::none(),
input_type: ::protobuf::SingularField::none(),
output_type: ::protobuf::SingularField::none(),
options: ::protobuf::SingularPtrField::none(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_name(&mut self) {
self.name.clear();
}
pub fn has_name(&self) -> bool {
self.name.is_some()
}
pub fn set_name(&mut self, v: ::std::string::String) {
self.name = ::protobuf::SingularField::some(v);
}
pub fn mut_name<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.name.is_none() {
self.name.set_default();
};
self.name.as_mut().unwrap()
}
pub fn take_name(&mut self) -> ::std::string::String {
self.name.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_name<'a>(&'a self) -> &'a str {
match self.name.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_input_type(&mut self) {
self.input_type.clear();
}
pub fn has_input_type(&self) -> bool {
self.input_type.is_some()
}
pub fn set_input_type(&mut self, v: ::std::string::String) {
self.input_type = ::protobuf::SingularField::some(v);
}
pub fn mut_input_type<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.input_type.is_none() {
self.input_type.set_default();
};
self.input_type.as_mut().unwrap()
}
pub fn take_input_type(&mut self) -> ::std::string::String {
self.input_type.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_input_type<'a>(&'a self) -> &'a str {
match self.input_type.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_output_type(&mut self) {
self.output_type.clear();
}
pub fn has_output_type(&self) -> bool {
self.output_type.is_some()
}
pub fn set_output_type(&mut self, v: ::std::string::String) {
self.output_type = ::protobuf::SingularField::some(v);
}
pub fn mut_output_type<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.output_type.is_none() {
self.output_type.set_default();
};
self.output_type.as_mut().unwrap()
}
pub fn take_output_type(&mut self) -> ::std::string::String {
self.output_type.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_output_type<'a>(&'a self) -> &'a str {
match self.output_type.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_options(&mut self) {
self.options.clear();
}
pub fn has_options(&self) -> bool {
self.options.is_some()
}
pub fn set_options(&mut self, v: MethodOptions) {
self.options = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_options<'a>(&'a mut self) -> &'a mut MethodOptions {
if self.options.is_none() {
self.options.set_default();
};
self.options.as_mut().unwrap()
}
pub fn take_options(&mut self) -> MethodOptions {
self.options.take().unwrap_or_else(|| MethodOptions::new())
}
pub fn get_options<'a>(&'a self) -> &'a MethodOptions {
self.options.as_ref().unwrap_or_else(|| MethodOptions::default_instance())
}
}
impl ::protobuf::Message for MethodDescriptorProto {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.name.set_default();
try!(is.read_string_into(tmp))
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.input_type.set_default();
try!(is.read_string_into(tmp))
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.output_type.set_default();
try!(is.read_string_into(tmp))
},
4 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.options.set_default();
try!(is.merge_message(tmp))
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.name.iter() {
my_size += ::protobuf::rt::string_size(1, &value);
};
for value in self.input_type.iter() {
my_size += ::protobuf::rt::string_size(2, &value);
};
for value in self.output_type.iter() {
my_size += ::protobuf::rt::string_size(3, &value);
};
for value in self.options.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.name.as_ref() {
try!(os.write_string(1, &v));
};
if let Some(v) = self.input_type.as_ref() {
try!(os.write_string(2, &v));
};
if let Some(v) = self.output_type.as_ref() {
try!(os.write_string(3, &v));
};
if let Some(v) = self.options.as_ref() {
try!(os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<MethodDescriptorProto>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for MethodDescriptorProto {
fn new() -> MethodDescriptorProto {
MethodDescriptorProto::new()
}
fn descriptor_static(_: ::std::option::Option<MethodDescriptorProto>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"name",
MethodDescriptorProto::has_name,
MethodDescriptorProto::get_name,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"input_type",
MethodDescriptorProto::has_input_type,
MethodDescriptorProto::get_input_type,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"output_type",
MethodDescriptorProto::has_output_type,
MethodDescriptorProto::get_output_type,
));
fields.push(::protobuf::reflect::accessor::make_singular_message_accessor(
"options",
MethodDescriptorProto::has_options,
MethodDescriptorProto::get_options,
));
::protobuf::reflect::MessageDescriptor::new::<MethodDescriptorProto>(
"MethodDescriptorProto",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for MethodDescriptorProto {
fn clear(&mut self) {
self.clear_name();
self.clear_input_type();
self.clear_output_type();
self.clear_options();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for MethodDescriptorProto {
fn eq(&self, other: &MethodDescriptorProto) -> bool {
self.name == other.name &&
self.input_type == other.input_type &&
self.output_type == other.output_type &&
self.options == other.options &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for MethodDescriptorProto {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct FileOptions {
java_package: ::protobuf::SingularField<::std::string::String>,
java_outer_classname: ::protobuf::SingularField<::std::string::String>,
java_multiple_files: ::std::option::Option<bool>,
java_generate_equals_and_hash: ::std::option::Option<bool>,
java_string_check_utf8: ::std::option::Option<bool>,
optimize_for: ::std::option::Option<FileOptions_OptimizeMode>,
go_package: ::protobuf::SingularField<::std::string::String>,
cc_generic_services: ::std::option::Option<bool>,
java_generic_services: ::std::option::Option<bool>,
py_generic_services: ::std::option::Option<bool>,
deprecated: ::std::option::Option<bool>,
uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl FileOptions {
pub fn new() -> FileOptions {
::std::default::Default::default()
}
pub fn default_instance() -> &'static FileOptions {
static mut instance: ::protobuf::lazy::Lazy<FileOptions> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const FileOptions,
};
unsafe {
instance.get(|| {
FileOptions {
java_package: ::protobuf::SingularField::none(),
java_outer_classname: ::protobuf::SingularField::none(),
java_multiple_files: ::std::option::Option::None,
java_generate_equals_and_hash: ::std::option::Option::None,
java_string_check_utf8: ::std::option::Option::None,
optimize_for: ::std::option::Option::None,
go_package: ::protobuf::SingularField::none(),
cc_generic_services: ::std::option::Option::None,
java_generic_services: ::std::option::Option::None,
py_generic_services: ::std::option::Option::None,
deprecated: ::std::option::Option::None,
uninterpreted_option: ::protobuf::RepeatedField::new(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_java_package(&mut self) {
self.java_package.clear();
}
pub fn has_java_package(&self) -> bool {
self.java_package.is_some()
}
pub fn set_java_package(&mut self, v: ::std::string::String) {
self.java_package = ::protobuf::SingularField::some(v);
}
pub fn mut_java_package<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.java_package.is_none() {
self.java_package.set_default();
};
self.java_package.as_mut().unwrap()
}
pub fn take_java_package(&mut self) -> ::std::string::String {
self.java_package.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_java_package<'a>(&'a self) -> &'a str {
match self.java_package.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_java_outer_classname(&mut self) {
self.java_outer_classname.clear();
}
pub fn has_java_outer_classname(&self) -> bool {
self.java_outer_classname.is_some()
}
pub fn set_java_outer_classname(&mut self, v: ::std::string::String) {
self.java_outer_classname = ::protobuf::SingularField::some(v);
}
pub fn mut_java_outer_classname<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.java_outer_classname.is_none() {
self.java_outer_classname.set_default();
};
self.java_outer_classname.as_mut().unwrap()
}
pub fn take_java_outer_classname(&mut self) -> ::std::string::String {
self.java_outer_classname.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_java_outer_classname<'a>(&'a self) -> &'a str {
match self.java_outer_classname.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_java_multiple_files(&mut self) {
self.java_multiple_files = ::std::option::Option::None;
}
pub fn has_java_multiple_files(&self) -> bool {
self.java_multiple_files.is_some()
}
pub fn set_java_multiple_files(&mut self, v: bool) {
self.java_multiple_files = ::std::option::Option::Some(v);
}
pub fn get_java_multiple_files<'a>(&self) -> bool {
self.java_multiple_files.unwrap_or(false)
}
pub fn clear_java_generate_equals_and_hash(&mut self) {
self.java_generate_equals_and_hash = ::std::option::Option::None;
}
pub fn has_java_generate_equals_and_hash(&self) -> bool {
self.java_generate_equals_and_hash.is_some()
}
pub fn set_java_generate_equals_and_hash(&mut self, v: bool) {
self.java_generate_equals_and_hash = ::std::option::Option::Some(v);
}
pub fn get_java_generate_equals_and_hash<'a>(&self) -> bool {
self.java_generate_equals_and_hash.unwrap_or(false)
}
pub fn clear_java_string_check_utf8(&mut self) {
self.java_string_check_utf8 = ::std::option::Option::None;
}
pub fn has_java_string_check_utf8(&self) -> bool {
self.java_string_check_utf8.is_some()
}
pub fn set_java_string_check_utf8(&mut self, v: bool) {
self.java_string_check_utf8 = ::std::option::Option::Some(v);
}
pub fn get_java_string_check_utf8<'a>(&self) -> bool {
self.java_string_check_utf8.unwrap_or(false)
}
pub fn clear_optimize_for(&mut self) {
self.optimize_for = ::std::option::Option::None;
}
pub fn has_optimize_for(&self) -> bool {
self.optimize_for.is_some()
}
pub fn set_optimize_for(&mut self, v: FileOptions_OptimizeMode) {
self.optimize_for = ::std::option::Option::Some(v);
}
pub fn get_optimize_for<'a>(&self) -> FileOptions_OptimizeMode {
self.optimize_for.unwrap_or(FileOptions_OptimizeMode::SPEED)
}
pub fn clear_go_package(&mut self) {
self.go_package.clear();
}
pub fn has_go_package(&self) -> bool {
self.go_package.is_some()
}
pub fn set_go_package(&mut self, v: ::std::string::String) {
self.go_package = ::protobuf::SingularField::some(v);
}
pub fn mut_go_package<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.go_package.is_none() {
self.go_package.set_default();
};
self.go_package.as_mut().unwrap()
}
pub fn take_go_package(&mut self) -> ::std::string::String {
self.go_package.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_go_package<'a>(&'a self) -> &'a str {
match self.go_package.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_cc_generic_services(&mut self) {
self.cc_generic_services = ::std::option::Option::None;
}
pub fn has_cc_generic_services(&self) -> bool {
self.cc_generic_services.is_some()
}
pub fn set_cc_generic_services(&mut self, v: bool) {
self.cc_generic_services = ::std::option::Option::Some(v);
}
pub fn get_cc_generic_services<'a>(&self) -> bool {
self.cc_generic_services.unwrap_or(false)
}
pub fn clear_java_generic_services(&mut self) {
self.java_generic_services = ::std::option::Option::None;
}
pub fn has_java_generic_services(&self) -> bool {
self.java_generic_services.is_some()
}
pub fn set_java_generic_services(&mut self, v: bool) {
self.java_generic_services = ::std::option::Option::Some(v);
}
pub fn get_java_generic_services<'a>(&self) -> bool {
self.java_generic_services.unwrap_or(false)
}
pub fn clear_py_generic_services(&mut self) {
self.py_generic_services = ::std::option::Option::None;
}
pub fn has_py_generic_services(&self) -> bool {
self.py_generic_services.is_some()
}
pub fn set_py_generic_services(&mut self, v: bool) {
self.py_generic_services = ::std::option::Option::Some(v);
}
pub fn get_py_generic_services<'a>(&self) -> bool {
self.py_generic_services.unwrap_or(false)
}
pub fn clear_deprecated(&mut self) {
self.deprecated = ::std::option::Option::None;
}
pub fn has_deprecated(&self) -> bool {
self.deprecated.is_some()
}
pub fn set_deprecated(&mut self, v: bool) {
self.deprecated = ::std::option::Option::Some(v);
}
pub fn get_deprecated<'a>(&self) -> bool {
self.deprecated.unwrap_or(false)
}
pub fn clear_uninterpreted_option(&mut self) {
self.uninterpreted_option.clear();
}
pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
self.uninterpreted_option = v;
}
pub fn mut_uninterpreted_option<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<UninterpretedOption> {
&mut self.uninterpreted_option
}
pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
}
pub fn get_uninterpreted_option<'a>(&'a self) -> &'a [UninterpretedOption] {
&self.uninterpreted_option
}
}
impl ::protobuf::Message for FileOptions {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.java_package.set_default();
try!(is.read_string_into(tmp))
},
8 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.java_outer_classname.set_default();
try!(is.read_string_into(tmp))
},
10 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.java_multiple_files = ::std::option::Option::Some(tmp);
},
20 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.java_generate_equals_and_hash = ::std::option::Option::Some(tmp);
},
27 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.java_string_check_utf8 = ::std::option::Option::Some(tmp);
},
9 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_enum());
self.optimize_for = ::std::option::Option::Some(tmp);
},
11 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.go_package.set_default();
try!(is.read_string_into(tmp))
},
16 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.cc_generic_services = ::std::option::Option::Some(tmp);
},
17 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.java_generic_services = ::std::option::Option::Some(tmp);
},
18 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.py_generic_services = ::std::option::Option::Some(tmp);
},
23 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.deprecated = ::std::option::Option::Some(tmp);
},
999 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option));
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.java_package.iter() {
my_size += ::protobuf::rt::string_size(1, &value);
};
for value in self.java_outer_classname.iter() {
my_size += ::protobuf::rt::string_size(8, &value);
};
if self.java_multiple_files.is_some() {
my_size += 2;
};
if self.java_generate_equals_and_hash.is_some() {
my_size += 3;
};
if self.java_string_check_utf8.is_some() {
my_size += 3;
};
for value in self.optimize_for.iter() {
my_size += ::protobuf::rt::enum_size(9, *value);
};
for value in self.go_package.iter() {
my_size += ::protobuf::rt::string_size(11, &value);
};
if self.cc_generic_services.is_some() {
my_size += 3;
};
if self.java_generic_services.is_some() {
my_size += 3;
};
if self.py_generic_services.is_some() {
my_size += 3;
};
if self.deprecated.is_some() {
my_size += 3;
};
for value in self.uninterpreted_option.iter() {
let len = value.compute_size();
my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.java_package.as_ref() {
try!(os.write_string(1, &v));
};
if let Some(v) = self.java_outer_classname.as_ref() {
try!(os.write_string(8, &v));
};
if let Some(v) = self.java_multiple_files {
try!(os.write_bool(10, v));
};
if let Some(v) = self.java_generate_equals_and_hash {
try!(os.write_bool(20, v));
};
if let Some(v) = self.java_string_check_utf8 {
try!(os.write_bool(27, v));
};
if let Some(v) = self.optimize_for {
try!(os.write_enum(9, v as i32));
};
if let Some(v) = self.go_package.as_ref() {
try!(os.write_string(11, &v));
};
if let Some(v) = self.cc_generic_services {
try!(os.write_bool(16, v));
};
if let Some(v) = self.java_generic_services {
try!(os.write_bool(17, v));
};
if let Some(v) = self.py_generic_services {
try!(os.write_bool(18, v));
};
if let Some(v) = self.deprecated {
try!(os.write_bool(23, v));
};
for v in self.uninterpreted_option.iter() {
try!(os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<FileOptions>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for FileOptions {
fn new() -> FileOptions {
FileOptions::new()
}
fn descriptor_static(_: ::std::option::Option<FileOptions>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"java_package",
FileOptions::has_java_package,
FileOptions::get_java_package,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"java_outer_classname",
FileOptions::has_java_outer_classname,
FileOptions::get_java_outer_classname,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"java_multiple_files",
FileOptions::has_java_multiple_files,
FileOptions::get_java_multiple_files,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"java_generate_equals_and_hash",
FileOptions::has_java_generate_equals_and_hash,
FileOptions::get_java_generate_equals_and_hash,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"java_string_check_utf8",
FileOptions::has_java_string_check_utf8,
FileOptions::get_java_string_check_utf8,
));
fields.push(::protobuf::reflect::accessor::make_singular_enum_accessor(
"optimize_for",
FileOptions::has_optimize_for,
FileOptions::get_optimize_for,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"go_package",
FileOptions::has_go_package,
FileOptions::get_go_package,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"cc_generic_services",
FileOptions::has_cc_generic_services,
FileOptions::get_cc_generic_services,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"java_generic_services",
FileOptions::has_java_generic_services,
FileOptions::get_java_generic_services,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"py_generic_services",
FileOptions::has_py_generic_services,
FileOptions::get_py_generic_services,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"deprecated",
FileOptions::has_deprecated,
FileOptions::get_deprecated,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"uninterpreted_option",
FileOptions::get_uninterpreted_option,
));
::protobuf::reflect::MessageDescriptor::new::<FileOptions>(
"FileOptions",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for FileOptions {
fn clear(&mut self) {
self.clear_java_package();
self.clear_java_outer_classname();
self.clear_java_multiple_files();
self.clear_java_generate_equals_and_hash();
self.clear_java_string_check_utf8();
self.clear_optimize_for();
self.clear_go_package();
self.clear_cc_generic_services();
self.clear_java_generic_services();
self.clear_py_generic_services();
self.clear_deprecated();
self.clear_uninterpreted_option();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for FileOptions {
fn eq(&self, other: &FileOptions) -> bool {
self.java_package == other.java_package &&
self.java_outer_classname == other.java_outer_classname &&
self.java_multiple_files == other.java_multiple_files &&
self.java_generate_equals_and_hash == other.java_generate_equals_and_hash &&
self.java_string_check_utf8 == other.java_string_check_utf8 &&
self.optimize_for == other.optimize_for &&
self.go_package == other.go_package &&
self.cc_generic_services == other.cc_generic_services &&
self.java_generic_services == other.java_generic_services &&
self.py_generic_services == other.py_generic_services &&
self.deprecated == other.deprecated &&
self.uninterpreted_option == other.uninterpreted_option &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for FileOptions {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum FileOptions_OptimizeMode {
SPEED = 1,
CODE_SIZE = 2,
LITE_RUNTIME = 3,
}
impl ::protobuf::ProtobufEnum for FileOptions_OptimizeMode {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<FileOptions_OptimizeMode> {
match value {
1 => ::std::option::Option::Some(FileOptions_OptimizeMode::SPEED),
2 => ::std::option::Option::Some(FileOptions_OptimizeMode::CODE_SIZE),
3 => ::std::option::Option::Some(FileOptions_OptimizeMode::LITE_RUNTIME),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [FileOptions_OptimizeMode] = &[
FileOptions_OptimizeMode::SPEED,
FileOptions_OptimizeMode::CODE_SIZE,
FileOptions_OptimizeMode::LITE_RUNTIME,
];
values
}
fn enum_descriptor_static(_: Option<FileOptions_OptimizeMode>) -> &'static ::protobuf::reflect::EnumDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::EnumDescriptor,
};
unsafe {
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new("FileOptions_OptimizeMode", file_descriptor_proto())
})
}
}
}
impl ::std::marker::Copy for FileOptions_OptimizeMode {
}
#[derive(Clone,Default)]
pub struct MessageOptions {
message_set_wire_format: ::std::option::Option<bool>,
no_standard_descriptor_accessor: ::std::option::Option<bool>,
deprecated: ::std::option::Option<bool>,
uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl MessageOptions {
pub fn new() -> MessageOptions {
::std::default::Default::default()
}
pub fn default_instance() -> &'static MessageOptions {
static mut instance: ::protobuf::lazy::Lazy<MessageOptions> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const MessageOptions,
};
unsafe {
instance.get(|| {
MessageOptions {
message_set_wire_format: ::std::option::Option::None,
no_standard_descriptor_accessor: ::std::option::Option::None,
deprecated: ::std::option::Option::None,
uninterpreted_option: ::protobuf::RepeatedField::new(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_message_set_wire_format(&mut self) {
self.message_set_wire_format = ::std::option::Option::None;
}
pub fn has_message_set_wire_format(&self) -> bool {
self.message_set_wire_format.is_some()
}
pub fn set_message_set_wire_format(&mut self, v: bool) {
self.message_set_wire_format = ::std::option::Option::Some(v);
}
pub fn get_message_set_wire_format<'a>(&self) -> bool {
self.message_set_wire_format.unwrap_or(false)
}
pub fn clear_no_standard_descriptor_accessor(&mut self) {
self.no_standard_descriptor_accessor = ::std::option::Option::None;
}
pub fn has_no_standard_descriptor_accessor(&self) -> bool {
self.no_standard_descriptor_accessor.is_some()
}
pub fn set_no_standard_descriptor_accessor(&mut self, v: bool) {
self.no_standard_descriptor_accessor = ::std::option::Option::Some(v);
}
pub fn get_no_standard_descriptor_accessor<'a>(&self) -> bool {
self.no_standard_descriptor_accessor.unwrap_or(false)
}
pub fn clear_deprecated(&mut self) {
self.deprecated = ::std::option::Option::None;
}
pub fn has_deprecated(&self) -> bool {
self.deprecated.is_some()
}
pub fn set_deprecated(&mut self, v: bool) {
self.deprecated = ::std::option::Option::Some(v);
}
pub fn get_deprecated<'a>(&self) -> bool {
self.deprecated.unwrap_or(false)
}
pub fn clear_uninterpreted_option(&mut self) {
self.uninterpreted_option.clear();
}
pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
self.uninterpreted_option = v;
}
pub fn mut_uninterpreted_option<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<UninterpretedOption> {
&mut self.uninterpreted_option
}
pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
}
pub fn get_uninterpreted_option<'a>(&'a self) -> &'a [UninterpretedOption] {
&self.uninterpreted_option
}
}
impl ::protobuf::Message for MessageOptions {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.message_set_wire_format = ::std::option::Option::Some(tmp);
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.no_standard_descriptor_accessor = ::std::option::Option::Some(tmp);
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.deprecated = ::std::option::Option::Some(tmp);
},
999 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option));
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if self.message_set_wire_format.is_some() {
my_size += 2;
};
if self.no_standard_descriptor_accessor.is_some() {
my_size += 2;
};
if self.deprecated.is_some() {
my_size += 2;
};
for value in self.uninterpreted_option.iter() {
let len = value.compute_size();
my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.message_set_wire_format {
try!(os.write_bool(1, v));
};
if let Some(v) = self.no_standard_descriptor_accessor {
try!(os.write_bool(2, v));
};
if let Some(v) = self.deprecated {
try!(os.write_bool(3, v));
};
for v in self.uninterpreted_option.iter() {
try!(os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<MessageOptions>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for MessageOptions {
fn new() -> MessageOptions {
MessageOptions::new()
}
fn descriptor_static(_: ::std::option::Option<MessageOptions>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"message_set_wire_format",
MessageOptions::has_message_set_wire_format,
MessageOptions::get_message_set_wire_format,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"no_standard_descriptor_accessor",
MessageOptions::has_no_standard_descriptor_accessor,
MessageOptions::get_no_standard_descriptor_accessor,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"deprecated",
MessageOptions::has_deprecated,
MessageOptions::get_deprecated,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"uninterpreted_option",
MessageOptions::get_uninterpreted_option,
));
::protobuf::reflect::MessageDescriptor::new::<MessageOptions>(
"MessageOptions",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for MessageOptions {
fn clear(&mut self) {
self.clear_message_set_wire_format();
self.clear_no_standard_descriptor_accessor();
self.clear_deprecated();
self.clear_uninterpreted_option();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for MessageOptions {
fn eq(&self, other: &MessageOptions) -> bool {
self.message_set_wire_format == other.message_set_wire_format &&
self.no_standard_descriptor_accessor == other.no_standard_descriptor_accessor &&
self.deprecated == other.deprecated &&
self.uninterpreted_option == other.uninterpreted_option &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for MessageOptions {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct FieldOptions {
ctype: ::std::option::Option<FieldOptions_CType>,
packed: ::std::option::Option<bool>,
lazy: ::std::option::Option<bool>,
deprecated: ::std::option::Option<bool>,
experimental_map_key: ::protobuf::SingularField<::std::string::String>,
weak: ::std::option::Option<bool>,
uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl FieldOptions {
pub fn new() -> FieldOptions {
::std::default::Default::default()
}
pub fn default_instance() -> &'static FieldOptions {
static mut instance: ::protobuf::lazy::Lazy<FieldOptions> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const FieldOptions,
};
unsafe {
instance.get(|| {
FieldOptions {
ctype: ::std::option::Option::None,
packed: ::std::option::Option::None,
lazy: ::std::option::Option::None,
deprecated: ::std::option::Option::None,
experimental_map_key: ::protobuf::SingularField::none(),
weak: ::std::option::Option::None,
uninterpreted_option: ::protobuf::RepeatedField::new(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_ctype(&mut self) {
self.ctype = ::std::option::Option::None;
}
pub fn has_ctype(&self) -> bool {
self.ctype.is_some()
}
pub fn set_ctype(&mut self, v: FieldOptions_CType) {
self.ctype = ::std::option::Option::Some(v);
}
pub fn get_ctype<'a>(&self) -> FieldOptions_CType {
self.ctype.unwrap_or(FieldOptions_CType::STRING)
}
pub fn clear_packed(&mut self) {
self.packed = ::std::option::Option::None;
}
pub fn has_packed(&self) -> bool {
self.packed.is_some()
}
pub fn set_packed(&mut self, v: bool) {
self.packed = ::std::option::Option::Some(v);
}
pub fn get_packed<'a>(&self) -> bool {
self.packed.unwrap_or(false)
}
pub fn clear_lazy(&mut self) {
self.lazy = ::std::option::Option::None;
}
pub fn has_lazy(&self) -> bool {
self.lazy.is_some()
}
pub fn set_lazy(&mut self, v: bool) {
self.lazy = ::std::option::Option::Some(v);
}
pub fn get_lazy<'a>(&self) -> bool {
self.lazy.unwrap_or(false)
}
pub fn clear_deprecated(&mut self) {
self.deprecated = ::std::option::Option::None;
}
pub fn has_deprecated(&self) -> bool {
self.deprecated.is_some()
}
pub fn set_deprecated(&mut self, v: bool) {
self.deprecated = ::std::option::Option::Some(v);
}
pub fn get_deprecated<'a>(&self) -> bool {
self.deprecated.unwrap_or(false)
}
pub fn clear_experimental_map_key(&mut self) {
self.experimental_map_key.clear();
}
pub fn has_experimental_map_key(&self) -> bool {
self.experimental_map_key.is_some()
}
pub fn set_experimental_map_key(&mut self, v: ::std::string::String) {
self.experimental_map_key = ::protobuf::SingularField::some(v);
}
pub fn mut_experimental_map_key<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.experimental_map_key.is_none() {
self.experimental_map_key.set_default();
};
self.experimental_map_key.as_mut().unwrap()
}
pub fn take_experimental_map_key(&mut self) -> ::std::string::String {
self.experimental_map_key.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_experimental_map_key<'a>(&'a self) -> &'a str {
match self.experimental_map_key.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_weak(&mut self) {
self.weak = ::std::option::Option::None;
}
pub fn has_weak(&self) -> bool {
self.weak.is_some()
}
pub fn set_weak(&mut self, v: bool) {
self.weak = ::std::option::Option::Some(v);
}
pub fn get_weak<'a>(&self) -> bool {
self.weak.unwrap_or(false)
}
pub fn clear_uninterpreted_option(&mut self) {
self.uninterpreted_option.clear();
}
pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
self.uninterpreted_option = v;
}
pub fn mut_uninterpreted_option<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<UninterpretedOption> {
&mut self.uninterpreted_option
}
pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
}
pub fn get_uninterpreted_option<'a>(&'a self) -> &'a [UninterpretedOption] {
&self.uninterpreted_option
}
}
impl ::protobuf::Message for FieldOptions {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_enum());
self.ctype = ::std::option::Option::Some(tmp);
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.packed = ::std::option::Option::Some(tmp);
},
5 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.lazy = ::std::option::Option::Some(tmp);
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.deprecated = ::std::option::Option::Some(tmp);
},
9 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.experimental_map_key.set_default();
try!(is.read_string_into(tmp))
},
10 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.weak = ::std::option::Option::Some(tmp);
},
999 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option));
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.ctype.iter() {
my_size += ::protobuf::rt::enum_size(1, *value);
};
if self.packed.is_some() {
my_size += 2;
};
if self.lazy.is_some() {
my_size += 2;
};
if self.deprecated.is_some() {
my_size += 2;
};
for value in self.experimental_map_key.iter() {
my_size += ::protobuf::rt::string_size(9, &value);
};
if self.weak.is_some() {
my_size += 2;
};
for value in self.uninterpreted_option.iter() {
let len = value.compute_size();
my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.ctype {
try!(os.write_enum(1, v as i32));
};
if let Some(v) = self.packed {
try!(os.write_bool(2, v));
};
if let Some(v) = self.lazy {
try!(os.write_bool(5, v));
};
if let Some(v) = self.deprecated {
try!(os.write_bool(3, v));
};
if let Some(v) = self.experimental_map_key.as_ref() {
try!(os.write_string(9, &v));
};
if let Some(v) = self.weak {
try!(os.write_bool(10, v));
};
for v in self.uninterpreted_option.iter() {
try!(os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<FieldOptions>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for FieldOptions {
fn new() -> FieldOptions {
FieldOptions::new()
}
fn descriptor_static(_: ::std::option::Option<FieldOptions>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_enum_accessor(
"ctype",
FieldOptions::has_ctype,
FieldOptions::get_ctype,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"packed",
FieldOptions::has_packed,
FieldOptions::get_packed,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"lazy",
FieldOptions::has_lazy,
FieldOptions::get_lazy,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"deprecated",
FieldOptions::has_deprecated,
FieldOptions::get_deprecated,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"experimental_map_key",
FieldOptions::has_experimental_map_key,
FieldOptions::get_experimental_map_key,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"weak",
FieldOptions::has_weak,
FieldOptions::get_weak,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"uninterpreted_option",
FieldOptions::get_uninterpreted_option,
));
::protobuf::reflect::MessageDescriptor::new::<FieldOptions>(
"FieldOptions",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for FieldOptions {
fn clear(&mut self) {
self.clear_ctype();
self.clear_packed();
self.clear_lazy();
self.clear_deprecated();
self.clear_experimental_map_key();
self.clear_weak();
self.clear_uninterpreted_option();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for FieldOptions {
fn eq(&self, other: &FieldOptions) -> bool {
self.ctype == other.ctype &&
self.packed == other.packed &&
self.lazy == other.lazy &&
self.deprecated == other.deprecated &&
self.experimental_map_key == other.experimental_map_key &&
self.weak == other.weak &&
self.uninterpreted_option == other.uninterpreted_option &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for FieldOptions {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum FieldOptions_CType {
STRING = 0,
CORD = 1,
STRING_PIECE = 2,
}
impl ::protobuf::ProtobufEnum for FieldOptions_CType {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<FieldOptions_CType> {
match value {
0 => ::std::option::Option::Some(FieldOptions_CType::STRING),
1 => ::std::option::Option::Some(FieldOptions_CType::CORD),
2 => ::std::option::Option::Some(FieldOptions_CType::STRING_PIECE),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [FieldOptions_CType] = &[
FieldOptions_CType::STRING,
FieldOptions_CType::CORD,
FieldOptions_CType::STRING_PIECE,
];
values
}
fn enum_descriptor_static(_: Option<FieldOptions_CType>) -> &'static ::protobuf::reflect::EnumDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::EnumDescriptor,
};
unsafe {
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new("FieldOptions_CType", file_descriptor_proto())
})
}
}
}
impl ::std::marker::Copy for FieldOptions_CType {
}
#[derive(Clone,Default)]
pub struct EnumOptions {
allow_alias: ::std::option::Option<bool>,
deprecated: ::std::option::Option<bool>,
uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl EnumOptions {
pub fn new() -> EnumOptions {
::std::default::Default::default()
}
pub fn default_instance() -> &'static EnumOptions {
static mut instance: ::protobuf::lazy::Lazy<EnumOptions> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const EnumOptions,
};
unsafe {
instance.get(|| {
EnumOptions {
allow_alias: ::std::option::Option::None,
deprecated: ::std::option::Option::None,
uninterpreted_option: ::protobuf::RepeatedField::new(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_allow_alias(&mut self) {
self.allow_alias = ::std::option::Option::None;
}
pub fn has_allow_alias(&self) -> bool {
self.allow_alias.is_some()
}
pub fn set_allow_alias(&mut self, v: bool) {
self.allow_alias = ::std::option::Option::Some(v);
}
pub fn get_allow_alias<'a>(&self) -> bool {
self.allow_alias.unwrap_or(false)
}
pub fn clear_deprecated(&mut self) {
self.deprecated = ::std::option::Option::None;
}
pub fn has_deprecated(&self) -> bool {
self.deprecated.is_some()
}
pub fn set_deprecated(&mut self, v: bool) {
self.deprecated = ::std::option::Option::Some(v);
}
pub fn get_deprecated<'a>(&self) -> bool {
self.deprecated.unwrap_or(false)
}
pub fn clear_uninterpreted_option(&mut self) {
self.uninterpreted_option.clear();
}
pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
self.uninterpreted_option = v;
}
pub fn mut_uninterpreted_option<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<UninterpretedOption> {
&mut self.uninterpreted_option
}
pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
}
pub fn get_uninterpreted_option<'a>(&'a self) -> &'a [UninterpretedOption] {
&self.uninterpreted_option
}
}
impl ::protobuf::Message for EnumOptions {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
2 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.allow_alias = ::std::option::Option::Some(tmp);
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.deprecated = ::std::option::Option::Some(tmp);
},
999 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option));
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if self.allow_alias.is_some() {
my_size += 2;
};
if self.deprecated.is_some() {
my_size += 2;
};
for value in self.uninterpreted_option.iter() {
let len = value.compute_size();
my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.allow_alias {
try!(os.write_bool(2, v));
};
if let Some(v) = self.deprecated {
try!(os.write_bool(3, v));
};
for v in self.uninterpreted_option.iter() {
try!(os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<EnumOptions>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for EnumOptions {
fn new() -> EnumOptions {
EnumOptions::new()
}
fn descriptor_static(_: ::std::option::Option<EnumOptions>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"allow_alias",
EnumOptions::has_allow_alias,
EnumOptions::get_allow_alias,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"deprecated",
EnumOptions::has_deprecated,
EnumOptions::get_deprecated,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"uninterpreted_option",
EnumOptions::get_uninterpreted_option,
));
::protobuf::reflect::MessageDescriptor::new::<EnumOptions>(
"EnumOptions",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for EnumOptions {
fn clear(&mut self) {
self.clear_allow_alias();
self.clear_deprecated();
self.clear_uninterpreted_option();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for EnumOptions {
fn eq(&self, other: &EnumOptions) -> bool {
self.allow_alias == other.allow_alias &&
self.deprecated == other.deprecated &&
self.uninterpreted_option == other.uninterpreted_option &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for EnumOptions {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct EnumValueOptions {
deprecated: ::std::option::Option<bool>,
uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl EnumValueOptions {
pub fn new() -> EnumValueOptions {
::std::default::Default::default()
}
pub fn default_instance() -> &'static EnumValueOptions {
static mut instance: ::protobuf::lazy::Lazy<EnumValueOptions> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const EnumValueOptions,
};
unsafe {
instance.get(|| {
EnumValueOptions {
deprecated: ::std::option::Option::None,
uninterpreted_option: ::protobuf::RepeatedField::new(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_deprecated(&mut self) {
self.deprecated = ::std::option::Option::None;
}
pub fn has_deprecated(&self) -> bool {
self.deprecated.is_some()
}
pub fn set_deprecated(&mut self, v: bool) {
self.deprecated = ::std::option::Option::Some(v);
}
pub fn get_deprecated<'a>(&self) -> bool {
self.deprecated.unwrap_or(false)
}
pub fn clear_uninterpreted_option(&mut self) {
self.uninterpreted_option.clear();
}
pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
self.uninterpreted_option = v;
}
pub fn mut_uninterpreted_option<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<UninterpretedOption> {
&mut self.uninterpreted_option
}
pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
}
pub fn get_uninterpreted_option<'a>(&'a self) -> &'a [UninterpretedOption] {
&self.uninterpreted_option
}
}
impl ::protobuf::Message for EnumValueOptions {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.deprecated = ::std::option::Option::Some(tmp);
},
999 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option));
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if self.deprecated.is_some() {
my_size += 2;
};
for value in self.uninterpreted_option.iter() {
let len = value.compute_size();
my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.deprecated {
try!(os.write_bool(1, v));
};
for v in self.uninterpreted_option.iter() {
try!(os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<EnumValueOptions>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for EnumValueOptions {
fn new() -> EnumValueOptions {
EnumValueOptions::new()
}
fn descriptor_static(_: ::std::option::Option<EnumValueOptions>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"deprecated",
EnumValueOptions::has_deprecated,
EnumValueOptions::get_deprecated,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"uninterpreted_option",
EnumValueOptions::get_uninterpreted_option,
));
::protobuf::reflect::MessageDescriptor::new::<EnumValueOptions>(
"EnumValueOptions",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for EnumValueOptions {
fn clear(&mut self) {
self.clear_deprecated();
self.clear_uninterpreted_option();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for EnumValueOptions {
fn eq(&self, other: &EnumValueOptions) -> bool {
self.deprecated == other.deprecated &&
self.uninterpreted_option == other.uninterpreted_option &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for EnumValueOptions {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct ServiceOptions {
deprecated: ::std::option::Option<bool>,
uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl ServiceOptions {
pub fn new() -> ServiceOptions {
::std::default::Default::default()
}
pub fn default_instance() -> &'static ServiceOptions {
static mut instance: ::protobuf::lazy::Lazy<ServiceOptions> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ServiceOptions,
};
unsafe {
instance.get(|| {
ServiceOptions {
deprecated: ::std::option::Option::None,
uninterpreted_option: ::protobuf::RepeatedField::new(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_deprecated(&mut self) {
self.deprecated = ::std::option::Option::None;
}
pub fn has_deprecated(&self) -> bool {
self.deprecated.is_some()
}
pub fn set_deprecated(&mut self, v: bool) {
self.deprecated = ::std::option::Option::Some(v);
}
pub fn get_deprecated<'a>(&self) -> bool {
self.deprecated.unwrap_or(false)
}
pub fn clear_uninterpreted_option(&mut self) {
self.uninterpreted_option.clear();
}
pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
self.uninterpreted_option = v;
}
pub fn mut_uninterpreted_option<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<UninterpretedOption> {
&mut self.uninterpreted_option
}
pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
}
pub fn get_uninterpreted_option<'a>(&'a self) -> &'a [UninterpretedOption] {
&self.uninterpreted_option
}
}
impl ::protobuf::Message for ServiceOptions {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
33 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.deprecated = ::std::option::Option::Some(tmp);
},
999 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option));
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if self.deprecated.is_some() {
my_size += 3;
};
for value in self.uninterpreted_option.iter() {
let len = value.compute_size();
my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.deprecated {
try!(os.write_bool(33, v));
};
for v in self.uninterpreted_option.iter() {
try!(os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<ServiceOptions>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for ServiceOptions {
fn new() -> ServiceOptions {
ServiceOptions::new()
}
fn descriptor_static(_: ::std::option::Option<ServiceOptions>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"deprecated",
ServiceOptions::has_deprecated,
ServiceOptions::get_deprecated,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"uninterpreted_option",
ServiceOptions::get_uninterpreted_option,
));
::protobuf::reflect::MessageDescriptor::new::<ServiceOptions>(
"ServiceOptions",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for ServiceOptions {
fn clear(&mut self) {
self.clear_deprecated();
self.clear_uninterpreted_option();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for ServiceOptions {
fn eq(&self, other: &ServiceOptions) -> bool {
self.deprecated == other.deprecated &&
self.uninterpreted_option == other.uninterpreted_option &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for ServiceOptions {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct MethodOptions {
deprecated: ::std::option::Option<bool>,
uninterpreted_option: ::protobuf::RepeatedField<UninterpretedOption>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl MethodOptions {
pub fn new() -> MethodOptions {
::std::default::Default::default()
}
pub fn default_instance() -> &'static MethodOptions {
static mut instance: ::protobuf::lazy::Lazy<MethodOptions> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const MethodOptions,
};
unsafe {
instance.get(|| {
MethodOptions {
deprecated: ::std::option::Option::None,
uninterpreted_option: ::protobuf::RepeatedField::new(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_deprecated(&mut self) {
self.deprecated = ::std::option::Option::None;
}
pub fn has_deprecated(&self) -> bool {
self.deprecated.is_some()
}
pub fn set_deprecated(&mut self, v: bool) {
self.deprecated = ::std::option::Option::Some(v);
}
pub fn get_deprecated<'a>(&self) -> bool {
self.deprecated.unwrap_or(false)
}
pub fn clear_uninterpreted_option(&mut self) {
self.uninterpreted_option.clear();
}
pub fn set_uninterpreted_option(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption>) {
self.uninterpreted_option = v;
}
pub fn mut_uninterpreted_option<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<UninterpretedOption> {
&mut self.uninterpreted_option
}
pub fn take_uninterpreted_option(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption> {
::std::mem::replace(&mut self.uninterpreted_option, ::protobuf::RepeatedField::new())
}
pub fn get_uninterpreted_option<'a>(&'a self) -> &'a [UninterpretedOption] {
&self.uninterpreted_option
}
}
impl ::protobuf::Message for MethodOptions {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
33 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.deprecated = ::std::option::Option::Some(tmp);
},
999 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.uninterpreted_option));
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if self.deprecated.is_some() {
my_size += 3;
};
for value in self.uninterpreted_option.iter() {
let len = value.compute_size();
my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.deprecated {
try!(os.write_bool(33, v));
};
for v in self.uninterpreted_option.iter() {
try!(os.write_tag(999, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<MethodOptions>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for MethodOptions {
fn new() -> MethodOptions {
MethodOptions::new()
}
fn descriptor_static(_: ::std::option::Option<MethodOptions>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"deprecated",
MethodOptions::has_deprecated,
MethodOptions::get_deprecated,
));
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"uninterpreted_option",
MethodOptions::get_uninterpreted_option,
));
::protobuf::reflect::MessageDescriptor::new::<MethodOptions>(
"MethodOptions",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for MethodOptions {
fn clear(&mut self) {
self.clear_deprecated();
self.clear_uninterpreted_option();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for MethodOptions {
fn eq(&self, other: &MethodOptions) -> bool {
self.deprecated == other.deprecated &&
self.uninterpreted_option == other.uninterpreted_option &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for MethodOptions {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct UninterpretedOption {
name: ::protobuf::RepeatedField<UninterpretedOption_NamePart>,
identifier_value: ::protobuf::SingularField<::std::string::String>,
positive_int_value: ::std::option::Option<u64>,
negative_int_value: ::std::option::Option<i64>,
double_value: ::std::option::Option<f64>,
string_value: ::protobuf::SingularField<::std::vec::Vec<u8>>,
aggregate_value: ::protobuf::SingularField<::std::string::String>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl UninterpretedOption {
pub fn new() -> UninterpretedOption {
::std::default::Default::default()
}
pub fn default_instance() -> &'static UninterpretedOption {
static mut instance: ::protobuf::lazy::Lazy<UninterpretedOption> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const UninterpretedOption,
};
unsafe {
instance.get(|| {
UninterpretedOption {
name: ::protobuf::RepeatedField::new(),
identifier_value: ::protobuf::SingularField::none(),
positive_int_value: ::std::option::Option::None,
negative_int_value: ::std::option::Option::None,
double_value: ::std::option::Option::None,
string_value: ::protobuf::SingularField::none(),
aggregate_value: ::protobuf::SingularField::none(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_name(&mut self) {
self.name.clear();
}
pub fn set_name(&mut self, v: ::protobuf::RepeatedField<UninterpretedOption_NamePart>) {
self.name = v;
}
pub fn mut_name<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<UninterpretedOption_NamePart> {
&mut self.name
}
pub fn take_name(&mut self) -> ::protobuf::RepeatedField<UninterpretedOption_NamePart> {
::std::mem::replace(&mut self.name, ::protobuf::RepeatedField::new())
}
pub fn get_name<'a>(&'a self) -> &'a [UninterpretedOption_NamePart] {
&self.name
}
pub fn clear_identifier_value(&mut self) {
self.identifier_value.clear();
}
pub fn has_identifier_value(&self) -> bool {
self.identifier_value.is_some()
}
pub fn set_identifier_value(&mut self, v: ::std::string::String) {
self.identifier_value = ::protobuf::SingularField::some(v);
}
pub fn mut_identifier_value<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.identifier_value.is_none() {
self.identifier_value.set_default();
};
self.identifier_value.as_mut().unwrap()
}
pub fn take_identifier_value(&mut self) -> ::std::string::String {
self.identifier_value.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_identifier_value<'a>(&'a self) -> &'a str {
match self.identifier_value.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_positive_int_value(&mut self) {
self.positive_int_value = ::std::option::Option::None;
}
pub fn has_positive_int_value(&self) -> bool {
self.positive_int_value.is_some()
}
pub fn set_positive_int_value(&mut self, v: u64) {
self.positive_int_value = ::std::option::Option::Some(v);
}
pub fn get_positive_int_value<'a>(&self) -> u64 {
self.positive_int_value.unwrap_or(0)
}
pub fn clear_negative_int_value(&mut self) {
self.negative_int_value = ::std::option::Option::None;
}
pub fn has_negative_int_value(&self) -> bool {
self.negative_int_value.is_some()
}
pub fn set_negative_int_value(&mut self, v: i64) {
self.negative_int_value = ::std::option::Option::Some(v);
}
pub fn get_negative_int_value<'a>(&self) -> i64 {
self.negative_int_value.unwrap_or(0)
}
pub fn clear_double_value(&mut self) {
self.double_value = ::std::option::Option::None;
}
pub fn has_double_value(&self) -> bool {
self.double_value.is_some()
}
pub fn set_double_value(&mut self, v: f64) {
self.double_value = ::std::option::Option::Some(v);
}
pub fn get_double_value<'a>(&self) -> f64 {
self.double_value.unwrap_or(0.)
}
pub fn clear_string_value(&mut self) {
self.string_value.clear();
}
pub fn has_string_value(&self) -> bool {
self.string_value.is_some()
}
pub fn set_string_value(&mut self, v: ::std::vec::Vec<u8>) {
self.string_value = ::protobuf::SingularField::some(v);
}
pub fn mut_string_value<'a>(&'a mut self) -> &'a mut ::std::vec::Vec<u8> {
if self.string_value.is_none() {
self.string_value.set_default();
};
self.string_value.as_mut().unwrap()
}
pub fn take_string_value(&mut self) -> ::std::vec::Vec<u8> {
self.string_value.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
pub fn get_string_value<'a>(&'a self) -> &'a [u8] {
match self.string_value.as_ref() {
Some(v) => &v,
None => &[],
}
}
pub fn clear_aggregate_value(&mut self) {
self.aggregate_value.clear();
}
pub fn has_aggregate_value(&self) -> bool {
self.aggregate_value.is_some()
}
pub fn set_aggregate_value(&mut self, v: ::std::string::String) {
self.aggregate_value = ::protobuf::SingularField::some(v);
}
pub fn mut_aggregate_value<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.aggregate_value.is_none() {
self.aggregate_value.set_default();
};
self.aggregate_value.as_mut().unwrap()
}
pub fn take_aggregate_value(&mut self) -> ::std::string::String {
self.aggregate_value.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_aggregate_value<'a>(&'a self) -> &'a str {
match self.aggregate_value.as_ref() {
Some(v) => &v,
None => "",
}
}
}
impl ::protobuf::Message for UninterpretedOption {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
2 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.name));
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.identifier_value.set_default();
try!(is.read_string_into(tmp))
},
4 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_uint64());
self.positive_int_value = ::std::option::Option::Some(tmp);
},
5 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_int64());
self.negative_int_value = ::std::option::Option::Some(tmp);
},
6 => {
if wire_type != ::protobuf::wire_format::WireTypeFixed64 {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_double());
self.double_value = ::std::option::Option::Some(tmp);
},
7 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.string_value.set_default();
try!(is.read_bytes_into(tmp))
},
8 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.aggregate_value.set_default();
try!(is.read_string_into(tmp))
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.name.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
for value in self.identifier_value.iter() {
my_size += ::protobuf::rt::string_size(3, &value);
};
for value in self.positive_int_value.iter() {
my_size += ::protobuf::rt::value_size(4, *value, ::protobuf::wire_format::WireTypeVarint);
};
for value in self.negative_int_value.iter() {
my_size += ::protobuf::rt::value_size(5, *value, ::protobuf::wire_format::WireTypeVarint);
};
if self.double_value.is_some() {
my_size += 9;
};
for value in self.string_value.iter() {
my_size += ::protobuf::rt::bytes_size(7, &value);
};
for value in self.aggregate_value.iter() {
my_size += ::protobuf::rt::string_size(8, &value);
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
for v in self.name.iter() {
try!(os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
if let Some(v) = self.identifier_value.as_ref() {
try!(os.write_string(3, &v));
};
if let Some(v) = self.positive_int_value {
try!(os.write_uint64(4, v));
};
if let Some(v) = self.negative_int_value {
try!(os.write_int64(5, v));
};
if let Some(v) = self.double_value {
try!(os.write_double(6, v));
};
if let Some(v) = self.string_value.as_ref() {
try!(os.write_bytes(7, &v));
};
if let Some(v) = self.aggregate_value.as_ref() {
try!(os.write_string(8, &v));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<UninterpretedOption>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for UninterpretedOption {
fn new() -> UninterpretedOption {
UninterpretedOption::new()
}
fn descriptor_static(_: ::std::option::Option<UninterpretedOption>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"name",
UninterpretedOption::get_name,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"identifier_value",
UninterpretedOption::has_identifier_value,
UninterpretedOption::get_identifier_value,
));
fields.push(::protobuf::reflect::accessor::make_singular_u64_accessor(
"positive_int_value",
UninterpretedOption::has_positive_int_value,
UninterpretedOption::get_positive_int_value,
));
fields.push(::protobuf::reflect::accessor::make_singular_i64_accessor(
"negative_int_value",
UninterpretedOption::has_negative_int_value,
UninterpretedOption::get_negative_int_value,
));
fields.push(::protobuf::reflect::accessor::make_singular_f64_accessor(
"double_value",
UninterpretedOption::has_double_value,
UninterpretedOption::get_double_value,
));
fields.push(::protobuf::reflect::accessor::make_singular_bytes_accessor(
"string_value",
UninterpretedOption::has_string_value,
UninterpretedOption::get_string_value,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"aggregate_value",
UninterpretedOption::has_aggregate_value,
UninterpretedOption::get_aggregate_value,
));
::protobuf::reflect::MessageDescriptor::new::<UninterpretedOption>(
"UninterpretedOption",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for UninterpretedOption {
fn clear(&mut self) {
self.clear_name();
self.clear_identifier_value();
self.clear_positive_int_value();
self.clear_negative_int_value();
self.clear_double_value();
self.clear_string_value();
self.clear_aggregate_value();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for UninterpretedOption {
fn eq(&self, other: &UninterpretedOption) -> bool {
self.name == other.name &&
self.identifier_value == other.identifier_value &&
self.positive_int_value == other.positive_int_value &&
self.negative_int_value == other.negative_int_value &&
self.double_value == other.double_value &&
self.string_value == other.string_value &&
self.aggregate_value == other.aggregate_value &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for UninterpretedOption {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct UninterpretedOption_NamePart {
name_part: ::protobuf::SingularField<::std::string::String>,
is_extension: ::std::option::Option<bool>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl UninterpretedOption_NamePart {
pub fn new() -> UninterpretedOption_NamePart {
::std::default::Default::default()
}
pub fn default_instance() -> &'static UninterpretedOption_NamePart {
static mut instance: ::protobuf::lazy::Lazy<UninterpretedOption_NamePart> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const UninterpretedOption_NamePart,
};
unsafe {
instance.get(|| {
UninterpretedOption_NamePart {
name_part: ::protobuf::SingularField::none(),
is_extension: ::std::option::Option::None,
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_name_part(&mut self) {
self.name_part.clear();
}
pub fn has_name_part(&self) -> bool {
self.name_part.is_some()
}
pub fn set_name_part(&mut self, v: ::std::string::String) {
self.name_part = ::protobuf::SingularField::some(v);
}
pub fn mut_name_part<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.name_part.is_none() {
self.name_part.set_default();
};
self.name_part.as_mut().unwrap()
}
pub fn take_name_part(&mut self) -> ::std::string::String {
self.name_part.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_name_part<'a>(&'a self) -> &'a str {
match self.name_part.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_is_extension(&mut self) {
self.is_extension = ::std::option::Option::None;
}
pub fn has_is_extension(&self) -> bool {
self.is_extension.is_some()
}
pub fn set_is_extension(&mut self, v: bool) {
self.is_extension = ::std::option::Option::Some(v);
}
pub fn get_is_extension<'a>(&self) -> bool {
self.is_extension.unwrap_or(false)
}
}
impl ::protobuf::Message for UninterpretedOption_NamePart {
fn is_initialized(&self) -> bool {
if self.name_part.is_none() {
return false;
};
if self.is_extension.is_none() {
return false;
};
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.name_part.set_default();
try!(is.read_string_into(tmp))
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = try!(is.read_bool());
self.is_extension = ::std::option::Option::Some(tmp);
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.name_part.iter() {
my_size += ::protobuf::rt::string_size(1, &value);
};
if self.is_extension.is_some() {
my_size += 2;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.name_part.as_ref() {
try!(os.write_string(1, &v));
};
if let Some(v) = self.is_extension {
try!(os.write_bool(2, v));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<UninterpretedOption_NamePart>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for UninterpretedOption_NamePart {
fn new() -> UninterpretedOption_NamePart {
UninterpretedOption_NamePart::new()
}
fn descriptor_static(_: ::std::option::Option<UninterpretedOption_NamePart>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"name_part",
UninterpretedOption_NamePart::has_name_part,
UninterpretedOption_NamePart::get_name_part,
));
fields.push(::protobuf::reflect::accessor::make_singular_bool_accessor(
"is_extension",
UninterpretedOption_NamePart::has_is_extension,
UninterpretedOption_NamePart::get_is_extension,
));
::protobuf::reflect::MessageDescriptor::new::<UninterpretedOption_NamePart>(
"UninterpretedOption_NamePart",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for UninterpretedOption_NamePart {
fn clear(&mut self) {
self.clear_name_part();
self.clear_is_extension();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for UninterpretedOption_NamePart {
fn eq(&self, other: &UninterpretedOption_NamePart) -> bool {
self.name_part == other.name_part &&
self.is_extension == other.is_extension &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for UninterpretedOption_NamePart {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct SourceCodeInfo {
location: ::protobuf::RepeatedField<SourceCodeInfo_Location>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl SourceCodeInfo {
pub fn new() -> SourceCodeInfo {
::std::default::Default::default()
}
pub fn default_instance() -> &'static SourceCodeInfo {
static mut instance: ::protobuf::lazy::Lazy<SourceCodeInfo> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const SourceCodeInfo,
};
unsafe {
instance.get(|| {
SourceCodeInfo {
location: ::protobuf::RepeatedField::new(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_location(&mut self) {
self.location.clear();
}
pub fn set_location(&mut self, v: ::protobuf::RepeatedField<SourceCodeInfo_Location>) {
self.location = v;
}
pub fn mut_location<'a>(&'a mut self) -> &'a mut ::protobuf::RepeatedField<SourceCodeInfo_Location> {
&mut self.location
}
pub fn take_location(&mut self) -> ::protobuf::RepeatedField<SourceCodeInfo_Location> {
::std::mem::replace(&mut self.location, ::protobuf::RepeatedField::new())
}
pub fn get_location<'a>(&'a self) -> &'a [SourceCodeInfo_Location] {
&self.location
}
}
impl ::protobuf::Message for SourceCodeInfo {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
try!(::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.location));
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in self.location.iter() {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
for v in self.location.iter() {
try!(os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(v.get_cached_size()));
try!(v.write_to_with_cached_sizes(os));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<SourceCodeInfo>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for SourceCodeInfo {
fn new() -> SourceCodeInfo {
SourceCodeInfo::new()
}
fn descriptor_static(_: ::std::option::Option<SourceCodeInfo>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_repeated_message_accessor(
"location",
SourceCodeInfo::get_location,
));
::protobuf::reflect::MessageDescriptor::new::<SourceCodeInfo>(
"SourceCodeInfo",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for SourceCodeInfo {
fn clear(&mut self) {
self.clear_location();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for SourceCodeInfo {
fn eq(&self, other: &SourceCodeInfo) -> bool {
self.location == other.location &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for SourceCodeInfo {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
#[derive(Clone,Default)]
pub struct SourceCodeInfo_Location {
path: ::std::vec::Vec<i32>,
span: ::std::vec::Vec<i32>,
leading_comments: ::protobuf::SingularField<::std::string::String>,
trailing_comments: ::protobuf::SingularField<::std::string::String>,
unknown_fields: ::protobuf::UnknownFields,
cached_size: ::std::cell::Cell<u32>,
}
impl SourceCodeInfo_Location {
pub fn new() -> SourceCodeInfo_Location {
::std::default::Default::default()
}
pub fn default_instance() -> &'static SourceCodeInfo_Location {
static mut instance: ::protobuf::lazy::Lazy<SourceCodeInfo_Location> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const SourceCodeInfo_Location,
};
unsafe {
instance.get(|| {
SourceCodeInfo_Location {
path: ::std::vec::Vec::new(),
span: ::std::vec::Vec::new(),
leading_comments: ::protobuf::SingularField::none(),
trailing_comments: ::protobuf::SingularField::none(),
unknown_fields: ::protobuf::UnknownFields::new(),
cached_size: ::std::cell::Cell::new(0),
}
})
}
}
pub fn clear_path(&mut self) {
self.path.clear();
}
pub fn set_path(&mut self, v: ::std::vec::Vec<i32>) {
self.path = v;
}
pub fn mut_path<'a>(&'a mut self) -> &'a mut ::std::vec::Vec<i32> {
&mut self.path
}
pub fn take_path(&mut self) -> ::std::vec::Vec<i32> {
::std::mem::replace(&mut self.path, ::std::vec::Vec::new())
}
pub fn get_path<'a>(&'a self) -> &'a [i32] {
&self.path
}
pub fn clear_span(&mut self) {
self.span.clear();
}
pub fn set_span(&mut self, v: ::std::vec::Vec<i32>) {
self.span = v;
}
pub fn mut_span<'a>(&'a mut self) -> &'a mut ::std::vec::Vec<i32> {
&mut self.span
}
pub fn take_span(&mut self) -> ::std::vec::Vec<i32> {
::std::mem::replace(&mut self.span, ::std::vec::Vec::new())
}
pub fn get_span<'a>(&'a self) -> &'a [i32] {
&self.span
}
pub fn clear_leading_comments(&mut self) {
self.leading_comments.clear();
}
pub fn has_leading_comments(&self) -> bool {
self.leading_comments.is_some()
}
pub fn set_leading_comments(&mut self, v: ::std::string::String) {
self.leading_comments = ::protobuf::SingularField::some(v);
}
pub fn mut_leading_comments<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.leading_comments.is_none() {
self.leading_comments.set_default();
};
self.leading_comments.as_mut().unwrap()
}
pub fn take_leading_comments(&mut self) -> ::std::string::String {
self.leading_comments.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_leading_comments<'a>(&'a self) -> &'a str {
match self.leading_comments.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_trailing_comments(&mut self) {
self.trailing_comments.clear();
}
pub fn has_trailing_comments(&self) -> bool {
self.trailing_comments.is_some()
}
pub fn set_trailing_comments(&mut self, v: ::std::string::String) {
self.trailing_comments = ::protobuf::SingularField::some(v);
}
pub fn mut_trailing_comments<'a>(&'a mut self) -> &'a mut ::std::string::String {
if self.trailing_comments.is_none() {
self.trailing_comments.set_default();
};
self.trailing_comments.as_mut().unwrap()
}
pub fn take_trailing_comments(&mut self) -> ::std::string::String {
self.trailing_comments.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_trailing_comments<'a>(&'a self) -> &'a str {
match self.trailing_comments.as_ref() {
Some(v) => &v,
None => "",
}
}
}
impl ::protobuf::Message for SourceCodeInfo_Location {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream) -> ::protobuf::ProtobufResult<()> {
while !try!(is.eof()) {
let (field_number, wire_type) = try!(is.read_tag_unpack());
match field_number {
1 => {
try!(::protobuf::rt::read_repeated_int32_into(wire_type, is, &mut self.path));
},
2 => {
try!(::protobuf::rt::read_repeated_int32_into(wire_type, is, &mut self.span));
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.leading_comments.set_default();
try!(is.read_string_into(tmp))
},
4 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::ProtobufError::WireError("unexpected wire type".to_string()));
};
let tmp = self.trailing_comments.set_default();
try!(is.read_string_into(tmp))
},
_ => {
let unknown = try!(is.read_unknown(wire_type));
self.mut_unknown_fields().add_value(field_number, unknown);
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if !self.path.is_empty() {
my_size += ::protobuf::rt::vec_packed_varint_size(1, &self.path);
};
if !self.span.is_empty() {
my_size += ::protobuf::rt::vec_packed_varint_size(2, &self.span);
};
for value in self.leading_comments.iter() {
my_size += ::protobuf::rt::string_size(3, &value);
};
for value in self.trailing_comments.iter() {
my_size += ::protobuf::rt::string_size(4, &value);
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> {
if !self.path.is_empty() {
try!(os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(::protobuf::rt::vec_packed_varint_data_size(&self.path)));
for v in self.path.iter() {
try!(os.write_int32_no_tag(*v));
};
};
if !self.span.is_empty() {
try!(os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited));
try!(os.write_raw_varint32(::protobuf::rt::vec_packed_varint_data_size(&self.span)));
for v in self.span.iter() {
try!(os.write_int32_no_tag(*v));
};
};
if let Some(v) = self.leading_comments.as_ref() {
try!(os.write_string(3, &v));
};
if let Some(v) = self.trailing_comments.as_ref() {
try!(os.write_string(4, &v));
};
try!(os.write_unknown_fields(self.get_unknown_fields()));
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields<'s>(&'s self) -> &'s ::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields<'s>(&'s mut self) -> &'s mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn type_id(&self) -> ::std::any::TypeId {
::std::any::TypeId::of::<SourceCodeInfo_Location>()
}
fn as_any(&self) -> &::std::any::Any {
self as &::std::any::Any
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
::protobuf::MessageStatic::descriptor_static(None::<Self>)
}
}
impl ::protobuf::MessageStatic for SourceCodeInfo_Location {
fn new() -> SourceCodeInfo_Location {
SourceCodeInfo_Location::new()
}
fn descriptor_static(_: ::std::option::Option<SourceCodeInfo_Location>) -> &'static ::protobuf::reflect::MessageDescriptor {
static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::reflect::MessageDescriptor,
};
unsafe {
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_repeated_i32_accessor(
"path",
SourceCodeInfo_Location::get_path,
));
fields.push(::protobuf::reflect::accessor::make_repeated_i32_accessor(
"span",
SourceCodeInfo_Location::get_span,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"leading_comments",
SourceCodeInfo_Location::has_leading_comments,
SourceCodeInfo_Location::get_leading_comments,
));
fields.push(::protobuf::reflect::accessor::make_singular_string_accessor(
"trailing_comments",
SourceCodeInfo_Location::has_trailing_comments,
SourceCodeInfo_Location::get_trailing_comments,
));
::protobuf::reflect::MessageDescriptor::new::<SourceCodeInfo_Location>(
"SourceCodeInfo_Location",
fields,
file_descriptor_proto()
)
})
}
}
}
impl ::protobuf::Clear for SourceCodeInfo_Location {
fn clear(&mut self) {
self.clear_path();
self.clear_span();
self.clear_leading_comments();
self.clear_trailing_comments();
self.unknown_fields.clear();
}
}
impl ::std::cmp::PartialEq for SourceCodeInfo_Location {
fn eq(&self, other: &SourceCodeInfo_Location) -> bool {
self.path == other.path &&
self.span == other.span &&
self.leading_comments == other.leading_comments &&
self.trailing_comments == other.trailing_comments &&
self.unknown_fields == other.unknown_fields
}
}
impl ::std::fmt::Debug for SourceCodeInfo_Location {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
static file_descriptor_proto_data: &'static [u8] = &[
0x0a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x12, 0x0f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x22, 0x47, 0x0a, 0x11, 0x46, 0x69, 0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72,
0x69, 0x70, 0x74, 0x6f, 0x72, 0x53, 0x65, 0x74, 0x12, 0x32, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65,
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x44, 0x65, 0x73,
0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xcb, 0x03, 0x0a,
0x13, 0x46, 0x69, 0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50,
0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x12, 0x0f, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x12, 0x12, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63,
0x79, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x12, 0x19, 0x0a, 0x11, 0x70, 0x75, 0x62, 0x6c, 0x69,
0x63, 0x5f, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x0a, 0x20, 0x03,
0x28, 0x05, 0x12, 0x17, 0x0a, 0x0f, 0x77, 0x65, 0x61, 0x6b, 0x5f, 0x64, 0x65, 0x70, 0x65, 0x6e,
0x64, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x05, 0x12, 0x36, 0x0a, 0x0c, 0x6d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72,
0x6f, 0x74, 0x6f, 0x12, 0x37, 0x0a, 0x09, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65,
0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x44, 0x65, 0x73,
0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x38, 0x0a, 0x07,
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f,
0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x38, 0x0a, 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73,
0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c,
0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f,
0x12, 0x2d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
0x39, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x69,
0x6e, 0x66, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x6f, 0x75, 0x72,
0x63, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xe4, 0x03, 0x0a, 0x0f, 0x44,
0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c,
0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x34, 0x0a, 0x05,
0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69,
0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f,
0x74, 0x6f, 0x12, 0x38, 0x0a, 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18,
0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73,
0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x35, 0x0a, 0x0b,
0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72,
0x6f, 0x74, 0x6f, 0x12, 0x37, 0x0a, 0x09, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65,
0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x44, 0x65, 0x73,
0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x48, 0x0a, 0x0f,
0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18,
0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x6f, 0x6e, 0x65, 0x6f, 0x66, 0x5f,
0x64, 0x65, 0x63, 0x6c, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4f, 0x6e, 0x65,
0x6f, 0x66, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74,
0x6f, 0x12, 0x30, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x1a, 0x2c, 0x0a, 0x0e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x0d, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01,
0x20, 0x01, 0x28, 0x05, 0x12, 0x0b, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x05, 0x22, 0xa9, 0x05, 0x0a, 0x14, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72,
0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e, 0x61,
0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x0e, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62,
0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x12, 0x3a, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44,
0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4c,
0x61, 0x62, 0x65, 0x6c, 0x12, 0x38, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69,
0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x11,
0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28,
0x09, 0x12, 0x10, 0x0a, 0x08, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x12, 0x15, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x12, 0x13, 0x0a, 0x0b, 0x6f, 0x6e,
0x65, 0x6f, 0x66, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x12,
0x2e, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22,
0xb6, 0x02, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45,
0x5f, 0x44, 0x4f, 0x55, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50,
0x45, 0x5f, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50,
0x45, 0x5f, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50,
0x45, 0x5f, 0x55, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59,
0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59,
0x50, 0x45, 0x5f, 0x46, 0x49, 0x58, 0x45, 0x44, 0x36, 0x34, 0x10, 0x06, 0x12, 0x10, 0x0a, 0x0c,
0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x49, 0x58, 0x45, 0x44, 0x33, 0x32, 0x10, 0x07, 0x12, 0x0d,
0x0a, 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x08, 0x12, 0x0f, 0x0a,
0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x09, 0x12, 0x0e,
0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x10, 0x0a, 0x12, 0x10,
0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x10, 0x0b,
0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x59, 0x54, 0x45, 0x53, 0x10, 0x0c,
0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10,
0x0d, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x4e, 0x55, 0x4d, 0x10, 0x0e,
0x12, 0x11, 0x0a, 0x0d, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x46, 0x49, 0x58, 0x45, 0x44, 0x33,
0x32, 0x10, 0x0f, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x46, 0x49, 0x58,
0x45, 0x44, 0x36, 0x34, 0x10, 0x10, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53,
0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x11, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f,
0x53, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x12, 0x22, 0x43, 0x0a, 0x05, 0x4c, 0x61, 0x62, 0x65,
0x6c, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f,
0x4e, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x52,
0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x41, 0x42,
0x45, 0x4c, 0x5f, 0x52, 0x45, 0x50, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x03, 0x22, 0x24, 0x0a,
0x14, 0x4f, 0x6e, 0x65, 0x6f, 0x66, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72,
0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x22, 0x8c, 0x01, 0x0a, 0x13, 0x45, 0x6e, 0x75, 0x6d, 0x44, 0x65, 0x73, 0x63,
0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x38, 0x0a, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72,
0x6f, 0x74, 0x6f, 0x12, 0x2d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x4f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x22, 0x6c, 0x0a, 0x18, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x44,
0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c,
0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x0e, 0x0a, 0x06,
0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x12, 0x32, 0x0a, 0x07,
0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x22, 0x90, 0x01, 0x0a, 0x16, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x44, 0x65, 0x73, 0x63,
0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x36, 0x0a, 0x06, 0x6d, 0x65, 0x74,
0x68, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68,
0x6f, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74,
0x6f, 0x12, 0x30, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x22, 0x7f, 0x0a, 0x15, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x44, 0x65, 0x73,
0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04,
0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x12, 0x0a, 0x0a, 0x69, 0x6e,
0x70, 0x75, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x12, 0x13,
0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20,
0x01, 0x28, 0x09, 0x12, 0x2f, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x22, 0xab, 0x04, 0x0a, 0x0b, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x0c, 0x6a, 0x61, 0x76, 0x61, 0x5f, 0x70, 0x61, 0x63,
0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x1c, 0x0a, 0x14, 0x6a, 0x61,
0x76, 0x61, 0x5f, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6e, 0x61,
0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x12, 0x22, 0x0a, 0x13, 0x6a, 0x61, 0x76, 0x61,
0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18,
0x0a, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x1d,
0x6a, 0x61, 0x76, 0x61, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x65, 0x71,
0x75, 0x61, 0x6c, 0x73, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x14, 0x20,
0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x16, 0x6a, 0x61,
0x76, 0x61, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f,
0x75, 0x74, 0x66, 0x38, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73,
0x65, 0x12, 0x46, 0x0a, 0x0c, 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x5f, 0x66, 0x6f,
0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x4d, 0x6f,
0x64, 0x65, 0x3a, 0x05, 0x53, 0x50, 0x45, 0x45, 0x44, 0x12, 0x12, 0x0a, 0x0a, 0x67, 0x6f, 0x5f,
0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x12, 0x22, 0x0a,
0x13, 0x63, 0x63, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x73, 0x65, 0x72, 0x76,
0x69, 0x63, 0x65, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73,
0x65, 0x12, 0x24, 0x0a, 0x15, 0x6a, 0x61, 0x76, 0x61, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69,
0x63, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08,
0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x13, 0x70, 0x79, 0x5f, 0x67, 0x65,
0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x12,
0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x0a, 0x64,
0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x3a,
0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65,
0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0xe7,
0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70,
0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3a, 0x0a, 0x0c, 0x4f,
0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x53,
0x50, 0x45, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x53,
0x49, 0x5a, 0x45, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x49, 0x54, 0x45, 0x5f, 0x52, 0x55,
0x4e, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x03, 0x2a, 0x09, 0x08, 0xe8, 0x07, 0x10, 0x80, 0x80, 0x80,
0x80, 0x02, 0x22, 0xd3, 0x01, 0x0a, 0x0e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x17, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x5f, 0x73, 0x65, 0x74, 0x5f, 0x77, 0x69, 0x72, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x2e, 0x0a,
0x1f, 0x6e, 0x6f, 0x5f, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x5f, 0x64, 0x65, 0x73,
0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72,
0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x19, 0x0a,
0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e,
0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65,
0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x09, 0x08,
0xe8, 0x07, 0x10, 0x80, 0x80, 0x80, 0x80, 0x02, 0x22, 0xbe, 0x02, 0x0a, 0x0c, 0x46, 0x69, 0x65,
0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3a, 0x0a, 0x05, 0x63, 0x74, 0x79,
0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64,
0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x43, 0x54, 0x79, 0x70, 0x65, 0x3a, 0x06, 0x53,
0x54, 0x52, 0x49, 0x4e, 0x47, 0x12, 0x0e, 0x0a, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x08, 0x12, 0x13, 0x0a, 0x04, 0x6c, 0x61, 0x7a, 0x79, 0x18, 0x05, 0x20,
0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x0a, 0x64, 0x65,
0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05,
0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x14, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d,
0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x09, 0x20,
0x01, 0x28, 0x09, 0x12, 0x13, 0x0a, 0x04, 0x77, 0x65, 0x61, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28,
0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e,
0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65,
0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2f, 0x0a,
0x05, 0x43, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47,
0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x43, 0x4f, 0x52, 0x44, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c,
0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x50, 0x49, 0x45, 0x43, 0x45, 0x10, 0x02, 0x2a, 0x09,
0x08, 0xe8, 0x07, 0x10, 0x80, 0x80, 0x80, 0x80, 0x02, 0x22, 0x8d, 0x01, 0x0a, 0x0b, 0x45, 0x6e,
0x75, 0x6d, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x13, 0x0a, 0x0b, 0x61, 0x6c, 0x6c,
0x6f, 0x77, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x12, 0x19,
0x0a, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01,
0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x14, 0x75, 0x6e, 0x69,
0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74,
0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x09,
0x08, 0xe8, 0x07, 0x10, 0x80, 0x80, 0x80, 0x80, 0x02, 0x22, 0x7d, 0x0a, 0x10, 0x45, 0x6e, 0x75,
0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x19, 0x0a,
0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e,
0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65,
0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x09, 0x08,
0xe8, 0x07, 0x10, 0x80, 0x80, 0x80, 0x80, 0x02, 0x22, 0x7b, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76,
0x69, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x19, 0x0a, 0x0a, 0x64, 0x65,
0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x21, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05,
0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72,
0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0xe7, 0x07,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72,
0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x09, 0x08, 0xe8, 0x07, 0x10,
0x80, 0x80, 0x80, 0x80, 0x02, 0x22, 0x7a, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x19, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63,
0x61, 0x74, 0x65, 0x64, 0x18, 0x21, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73,
0x65, 0x12, 0x43, 0x0a, 0x14, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74,
0x65, 0x64, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0xe7, 0x07, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64,
0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2a, 0x09, 0x08, 0xe8, 0x07, 0x10, 0x80, 0x80, 0x80, 0x80,
0x02, 0x22, 0x9e, 0x02, 0x0a, 0x13, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65,
0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65,
0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4e, 0x61,
0x6d, 0x65, 0x50, 0x61, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x10, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69,
0x66, 0x69, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
0x12, 0x1a, 0x0a, 0x12, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x69, 0x6e, 0x74,
0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x12, 0x1a, 0x0a, 0x12,
0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x12, 0x14, 0x0a, 0x0c, 0x64, 0x6f, 0x75, 0x62,
0x6c, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x12, 0x14,
0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07,
0x20, 0x01, 0x28, 0x0c, 0x12, 0x17, 0x0a, 0x0f, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74,
0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x1a, 0x33, 0x0a,
0x08, 0x4e, 0x61, 0x6d, 0x65, 0x50, 0x61, 0x72, 0x74, 0x12, 0x11, 0x0a, 0x09, 0x6e, 0x61, 0x6d,
0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x02, 0x28, 0x09, 0x12, 0x14, 0x0a, 0x0c,
0x69, 0x73, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x02,
0x28, 0x08, 0x22, 0xb1, 0x01, 0x0a, 0x0e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x64,
0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x43, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x1a, 0x63, 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a,
0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x42, 0x02, 0x10, 0x01, 0x12,
0x10, 0x0a, 0x04, 0x73, 0x70, 0x61, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x42, 0x02, 0x10,
0x01, 0x12, 0x18, 0x0a, 0x10, 0x6c, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6d,
0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x12, 0x19, 0x0a, 0x11, 0x74,
0x72, 0x61, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73,
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x42, 0x10, 0x44,
0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x48,
0x01, 0x4a, 0xe1, 0xd7, 0x01, 0x0a, 0x07, 0x12, 0x05, 0x28, 0x00, 0xae, 0x05, 0x01, 0x0a, 0x08,
0x0a, 0x01, 0x02, 0x12, 0x03, 0x28, 0x08, 0x17, 0x0a, 0x08, 0x0a, 0x01, 0x08, 0x12, 0x03, 0x29,
0x00, 0x2c, 0x0a, 0x0b, 0x0a, 0x04, 0x08, 0xe7, 0x07, 0x00, 0x12, 0x03, 0x29, 0x00, 0x2c, 0x0a,
0x0c, 0x0a, 0x05, 0x08, 0xe7, 0x07, 0x00, 0x02, 0x12, 0x03, 0x29, 0x07, 0x13, 0x0a, 0x0d, 0x0a,
0x06, 0x08, 0xe7, 0x07, 0x00, 0x02, 0x00, 0x12, 0x03, 0x29, 0x07, 0x13, 0x0a, 0x0e, 0x0a, 0x07,
0x08, 0xe7, 0x07, 0x00, 0x02, 0x00, 0x01, 0x12, 0x03, 0x29, 0x07, 0x13, 0x0a, 0x0c, 0x0a, 0x05,
0x08, 0xe7, 0x07, 0x00, 0x07, 0x12, 0x03, 0x29, 0x16, 0x2b, 0x0a, 0x08, 0x0a, 0x01, 0x08, 0x12,
0x03, 0x2a, 0x00, 0x31, 0x0a, 0x0b, 0x0a, 0x04, 0x08, 0xe7, 0x07, 0x01, 0x12, 0x03, 0x2a, 0x00,
0x31, 0x0a, 0x0c, 0x0a, 0x05, 0x08, 0xe7, 0x07, 0x01, 0x02, 0x12, 0x03, 0x2a, 0x07, 0x1b, 0x0a,
0x0d, 0x0a, 0x06, 0x08, 0xe7, 0x07, 0x01, 0x02, 0x00, 0x12, 0x03, 0x2a, 0x07, 0x1b, 0x0a, 0x0e,
0x0a, 0x07, 0x08, 0xe7, 0x07, 0x01, 0x02, 0x00, 0x01, 0x12, 0x03, 0x2a, 0x07, 0x1b, 0x0a, 0x0c,
0x0a, 0x05, 0x08, 0xe7, 0x07, 0x01, 0x07, 0x12, 0x03, 0x2a, 0x1e, 0x30, 0x0a, 0x08, 0x0a, 0x01,
0x08, 0x12, 0x03, 0x2e, 0x00, 0x1c, 0x0a, 0x81, 0x01, 0x0a, 0x04, 0x08, 0xe7, 0x07, 0x02, 0x12,
0x03, 0x2e, 0x00, 0x1c, 0x1a, 0x74, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f,
0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20,
0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x73, 0x70,
0x65, 0x65, 0x64, 0x20, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20, 0x72, 0x65, 0x66, 0x6c,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x64, 0x0a, 0x20, 0x61, 0x6c,
0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x73, 0x20, 0x64, 0x6f, 0x6e, 0x27, 0x74, 0x20, 0x77,
0x6f, 0x72, 0x6b, 0x20, 0x64, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x62, 0x6f, 0x6f, 0x74, 0x73,
0x74, 0x72, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x08, 0xe7,
0x07, 0x02, 0x02, 0x12, 0x03, 0x2e, 0x07, 0x13, 0x0a, 0x0d, 0x0a, 0x06, 0x08, 0xe7, 0x07, 0x02,
0x02, 0x00, 0x12, 0x03, 0x2e, 0x07, 0x13, 0x0a, 0x0e, 0x0a, 0x07, 0x08, 0xe7, 0x07, 0x02, 0x02,
0x00, 0x01, 0x12, 0x03, 0x2e, 0x07, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x08, 0xe7, 0x07, 0x02, 0x03,
0x12, 0x03, 0x2e, 0x16, 0x1b, 0x0a, 0x6a, 0x0a, 0x02, 0x04, 0x00, 0x12, 0x04, 0x32, 0x00, 0x34,
0x01, 0x1a, 0x5e, 0x20, 0x54, 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
0x20, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x72, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x6f, 0x75,
0x74, 0x70, 0x75, 0x74, 0x20, 0x61, 0x20, 0x46, 0x69, 0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72,
0x69, 0x70, 0x74, 0x6f, 0x72, 0x53, 0x65, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x0a, 0x20,
0x66, 0x69, 0x6c, 0x65, 0x73, 0x20, 0x69, 0x74, 0x20, 0x70, 0x61, 0x72, 0x73, 0x65, 0x73, 0x2e,
0x0a, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x00, 0x01, 0x12, 0x03, 0x32, 0x08, 0x19, 0x0a, 0x0b, 0x0a,
0x04, 0x04, 0x00, 0x02, 0x00, 0x12, 0x03, 0x33, 0x02, 0x28, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00,
0x02, 0x00, 0x04, 0x12, 0x03, 0x33, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00,
0x06, 0x12, 0x03, 0x33, 0x0b, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x01, 0x12,
0x03, 0x33, 0x1f, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x03, 0x12, 0x03, 0x33,
0x26, 0x27, 0x0a, 0x2f, 0x0a, 0x02, 0x04, 0x01, 0x12, 0x04, 0x37, 0x00, 0x50, 0x01, 0x1a, 0x23,
0x20, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x73, 0x20, 0x61, 0x20, 0x63, 0x6f, 0x6d,
0x70, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x20, 0x66, 0x69, 0x6c,
0x65, 0x2e, 0x0a, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x01, 0x01, 0x12, 0x03, 0x37, 0x08, 0x1b, 0x0a,
0x39, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x00, 0x12, 0x03, 0x38, 0x02, 0x1b, 0x22, 0x2c, 0x20, 0x66,
0x69, 0x6c, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69,
0x76, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x72, 0x6f, 0x6f, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x20, 0x74, 0x72, 0x65, 0x65, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01,
0x02, 0x00, 0x04, 0x12, 0x03, 0x38, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00,
0x05, 0x12, 0x03, 0x38, 0x0b, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x01, 0x12,
0x03, 0x38, 0x12, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x03, 0x12, 0x03, 0x38,
0x19, 0x1a, 0x0a, 0x2a, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x01, 0x12, 0x03, 0x39, 0x02, 0x1e, 0x22,
0x1d, 0x20, 0x65, 0x2e, 0x67, 0x2e, 0x20, 0x22, 0x66, 0x6f, 0x6f, 0x22, 0x2c, 0x20, 0x22, 0x66,
0x6f, 0x6f, 0x2e, 0x62, 0x61, 0x72, 0x22, 0x2c, 0x20, 0x65, 0x74, 0x63, 0x2e, 0x0a, 0x0a, 0x0c,
0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x04, 0x12, 0x03, 0x39, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05,
0x04, 0x01, 0x02, 0x01, 0x05, 0x12, 0x03, 0x39, 0x0b, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01,
0x02, 0x01, 0x01, 0x12, 0x03, 0x39, 0x12, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01,
0x03, 0x12, 0x03, 0x39, 0x1c, 0x1d, 0x0a, 0x34, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x02, 0x12, 0x03,
0x3c, 0x02, 0x21, 0x1a, 0x27, 0x20, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x66,
0x69, 0x6c, 0x65, 0x73, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79,
0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05,
0x04, 0x01, 0x02, 0x02, 0x04, 0x12, 0x03, 0x3c, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01,
0x02, 0x02, 0x05, 0x12, 0x03, 0x3c, 0x0b, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x02,
0x01, 0x12, 0x03, 0x3c, 0x12, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x02, 0x03, 0x12,
0x03, 0x3c, 0x1f, 0x20, 0x0a, 0x51, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x03, 0x12, 0x03, 0x3e, 0x02,
0x28, 0x1a, 0x44, 0x20, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74,
0x68, 0x65, 0x20, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74,
0x65, 0x64, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20,
0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20,
0x61, 0x62, 0x6f, 0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x03, 0x04,
0x12, 0x03, 0x3e, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x03, 0x05, 0x12, 0x03,
0x3e, 0x0b, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x03, 0x01, 0x12, 0x03, 0x3e, 0x11,
0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x03, 0x03, 0x12, 0x03, 0x3e, 0x25, 0x27, 0x0a,
0x7a, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x04, 0x12, 0x03, 0x41, 0x02, 0x26, 0x1a, 0x6d, 0x20, 0x49,
0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x77, 0x65,
0x61, 0x6b, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x66, 0x69, 0x6c, 0x65,
0x73, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65,
0x6e, 0x63, 0x79, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x2e, 0x0a, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x47,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x6d,
0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x2e, 0x20, 0x44,
0x6f, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x75, 0x73, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04,
0x01, 0x02, 0x04, 0x04, 0x12, 0x03, 0x41, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02,
0x04, 0x05, 0x12, 0x03, 0x41, 0x0b, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x04, 0x01,
0x12, 0x03, 0x41, 0x11, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x04, 0x03, 0x12, 0x03,
0x41, 0x23, 0x25, 0x0a, 0x36, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x05, 0x12, 0x03, 0x44, 0x02, 0x2c,
0x1a, 0x29, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x74, 0x6f, 0x70, 0x2d, 0x6c, 0x65, 0x76, 0x65, 0x6c,
0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x6e, 0x20,
0x74, 0x68, 0x69, 0x73, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04,
0x01, 0x02, 0x05, 0x04, 0x12, 0x03, 0x44, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02,
0x05, 0x06, 0x12, 0x03, 0x44, 0x0b, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x05, 0x01,
0x12, 0x03, 0x44, 0x1b, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x05, 0x03, 0x12, 0x03,
0x44, 0x2a, 0x2b, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x06, 0x12, 0x03, 0x45, 0x02, 0x2d,
0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x06, 0x04, 0x12, 0x03, 0x45, 0x02, 0x0a, 0x0a, 0x0c,
0x0a, 0x05, 0x04, 0x01, 0x02, 0x06, 0x06, 0x12, 0x03, 0x45, 0x0b, 0x1e, 0x0a, 0x0c, 0x0a, 0x05,
0x04, 0x01, 0x02, 0x06, 0x01, 0x12, 0x03, 0x45, 0x1f, 0x28, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01,
0x02, 0x06, 0x03, 0x12, 0x03, 0x45, 0x2b, 0x2c, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x07,
0x12, 0x03, 0x46, 0x02, 0x2e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x07, 0x04, 0x12, 0x03,
0x46, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x07, 0x06, 0x12, 0x03, 0x46, 0x0b,
0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x07, 0x01, 0x12, 0x03, 0x46, 0x22, 0x29, 0x0a,
0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x07, 0x03, 0x12, 0x03, 0x46, 0x2c, 0x2d, 0x0a, 0x0b, 0x0a,
0x04, 0x04, 0x01, 0x02, 0x08, 0x12, 0x03, 0x47, 0x02, 0x2e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01,
0x02, 0x08, 0x04, 0x12, 0x03, 0x47, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x08,
0x06, 0x12, 0x03, 0x47, 0x0b, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x08, 0x01, 0x12,
0x03, 0x47, 0x20, 0x29, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x08, 0x03, 0x12, 0x03, 0x47,
0x2c, 0x2d, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x09, 0x12, 0x03, 0x49, 0x02, 0x23, 0x0a,
0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x09, 0x04, 0x12, 0x03, 0x49, 0x02, 0x0a, 0x0a, 0x0c, 0x0a,
0x05, 0x04, 0x01, 0x02, 0x09, 0x06, 0x12, 0x03, 0x49, 0x0b, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04,
0x01, 0x02, 0x09, 0x01, 0x12, 0x03, 0x49, 0x17, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02,
0x09, 0x03, 0x12, 0x03, 0x49, 0x21, 0x22, 0x0a, 0xf5, 0x01, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x0a,
0x12, 0x03, 0x4f, 0x02, 0x2f, 0x1a, 0xe7, 0x01, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x66, 0x69,
0x65, 0x6c, 0x64, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x20, 0x6f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x72, 0x69, 0x67,
0x69, 0x6e, 0x61, 0x6c, 0x20, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65,
0x2e, 0x0a, 0x20, 0x59, 0x6f, 0x75, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x73, 0x61, 0x66, 0x65, 0x6c,
0x79, 0x20, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x65, 0x6e,
0x74, 0x69, 0x72, 0x65, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x77, 0x68, 0x69, 0x74, 0x68,
0x6f, 0x75, 0x74, 0x20, 0x68, 0x61, 0x72, 0x6d, 0x69, 0x6e, 0x67, 0x20, 0x72, 0x75, 0x6e, 0x74,
0x69, 0x6d, 0x65, 0x0a, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x69,
0x74, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x70, 0x74, 0x6f, 0x72, 0x73, 0x20, 0x2d, 0x2d, 0x20, 0x74, 0x68, 0x65, 0x20, 0x69, 0x6e, 0x66,
0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x65, 0x65, 0x64,
0x65, 0x64, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x62, 0x79, 0x0a, 0x20, 0x64, 0x65, 0x76, 0x65,
0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x2e, 0x0a, 0x0a,
0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x0a, 0x04, 0x12, 0x03, 0x4f, 0x02, 0x0a, 0x0a, 0x0c, 0x0a,
0x05, 0x04, 0x01, 0x02, 0x0a, 0x06, 0x12, 0x03, 0x4f, 0x0b, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04,
0x01, 0x02, 0x0a, 0x01, 0x12, 0x03, 0x4f, 0x1a, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02,
0x0a, 0x03, 0x12, 0x03, 0x4f, 0x2d, 0x2e, 0x0a, 0x27, 0x0a, 0x02, 0x04, 0x02, 0x12, 0x04, 0x53,
0x00, 0x65, 0x01, 0x1a, 0x1b, 0x20, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x73, 0x20,
0x61, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x0a,
0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x02, 0x01, 0x12, 0x03, 0x53, 0x08, 0x17, 0x0a, 0x0b, 0x0a, 0x04,
0x04, 0x02, 0x02, 0x00, 0x12, 0x03, 0x54, 0x02, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02,
0x00, 0x04, 0x12, 0x03, 0x54, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x05,
0x12, 0x03, 0x54, 0x0b, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x01, 0x12, 0x03,
0x54, 0x12, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x03, 0x12, 0x03, 0x54, 0x19,
0x1a, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x01, 0x12, 0x03, 0x56, 0x02, 0x2a, 0x0a, 0x0c,
0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, 0x04, 0x12, 0x03, 0x56, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05,
0x04, 0x02, 0x02, 0x01, 0x06, 0x12, 0x03, 0x56, 0x0b, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02,
0x02, 0x01, 0x01, 0x12, 0x03, 0x56, 0x20, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01,
0x03, 0x12, 0x03, 0x56, 0x28, 0x29, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x02, 0x12, 0x03,
0x57, 0x02, 0x2e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x02, 0x04, 0x12, 0x03, 0x57, 0x02,
0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x02, 0x06, 0x12, 0x03, 0x57, 0x0b, 0x1f, 0x0a,
0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x02, 0x01, 0x12, 0x03, 0x57, 0x20, 0x29, 0x0a, 0x0c, 0x0a,
0x05, 0x04, 0x02, 0x02, 0x02, 0x03, 0x12, 0x03, 0x57, 0x2c, 0x2d, 0x0a, 0x0b, 0x0a, 0x04, 0x04,
0x02, 0x02, 0x03, 0x12, 0x03, 0x59, 0x02, 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03,
0x04, 0x12, 0x03, 0x59, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x06, 0x12,
0x03, 0x59, 0x0b, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x01, 0x12, 0x03, 0x59,
0x1b, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x03, 0x12, 0x03, 0x59, 0x29, 0x2a,
0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x04, 0x12, 0x03, 0x5a, 0x02, 0x2d, 0x0a, 0x0c, 0x0a,
0x05, 0x04, 0x02, 0x02, 0x04, 0x04, 0x12, 0x03, 0x5a, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04,
0x02, 0x02, 0x04, 0x06, 0x12, 0x03, 0x5a, 0x0b, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02,
0x04, 0x01, 0x12, 0x03, 0x5a, 0x1f, 0x28, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x04, 0x03,
0x12, 0x03, 0x5a, 0x2b, 0x2c, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x02, 0x03, 0x00, 0x12, 0x04, 0x5c,
0x02, 0x5f, 0x03, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x03, 0x00, 0x01, 0x12, 0x03, 0x5c, 0x0a,
0x18, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x02, 0x03, 0x00, 0x02, 0x00, 0x12, 0x03, 0x5d, 0x04, 0x1d,
0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x02, 0x03, 0x00, 0x02, 0x00, 0x04, 0x12, 0x03, 0x5d, 0x04, 0x0c,
0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x02, 0x03, 0x00, 0x02, 0x00, 0x05, 0x12, 0x03, 0x5d, 0x0d, 0x12,
0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x02, 0x03, 0x00, 0x02, 0x00, 0x01, 0x12, 0x03, 0x5d, 0x13, 0x18,
0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x02, 0x03, 0x00, 0x02, 0x00, 0x03, 0x12, 0x03, 0x5d, 0x1b, 0x1c,
0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x02, 0x03, 0x00, 0x02, 0x01, 0x12, 0x03, 0x5e, 0x04, 0x1b, 0x0a,
0x0e, 0x0a, 0x07, 0x04, 0x02, 0x03, 0x00, 0x02, 0x01, 0x04, 0x12, 0x03, 0x5e, 0x04, 0x0c, 0x0a,
0x0e, 0x0a, 0x07, 0x04, 0x02, 0x03, 0x00, 0x02, 0x01, 0x05, 0x12, 0x03, 0x5e, 0x0d, 0x12, 0x0a,
0x0e, 0x0a, 0x07, 0x04, 0x02, 0x03, 0x00, 0x02, 0x01, 0x01, 0x12, 0x03, 0x5e, 0x13, 0x16, 0x0a,
0x0e, 0x0a, 0x07, 0x04, 0x02, 0x03, 0x00, 0x02, 0x01, 0x03, 0x12, 0x03, 0x5e, 0x19, 0x1a, 0x0a,
0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x05, 0x12, 0x03, 0x60, 0x02, 0x2e, 0x0a, 0x0c, 0x0a, 0x05,
0x04, 0x02, 0x02, 0x05, 0x04, 0x12, 0x03, 0x60, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02,
0x02, 0x05, 0x06, 0x12, 0x03, 0x60, 0x0b, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x05,
0x01, 0x12, 0x03, 0x60, 0x1a, 0x29, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x05, 0x03, 0x12,
0x03, 0x60, 0x2c, 0x2d, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x06, 0x12, 0x03, 0x62, 0x02,
0x2f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x06, 0x04, 0x12, 0x03, 0x62, 0x02, 0x0a, 0x0a,
0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x06, 0x06, 0x12, 0x03, 0x62, 0x0b, 0x1f, 0x0a, 0x0c, 0x0a,
0x05, 0x04, 0x02, 0x02, 0x06, 0x01, 0x12, 0x03, 0x62, 0x20, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, 0x04,
0x02, 0x02, 0x06, 0x03, 0x12, 0x03, 0x62, 0x2d, 0x2e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02,
0x07, 0x12, 0x03, 0x64, 0x02, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x07, 0x04, 0x12,
0x03, 0x64, 0x02, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x07, 0x06, 0x12, 0x03, 0x64,
0x0b, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x07, 0x01, 0x12, 0x03, 0x64, 0x1a, 0x21,
0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x07, 0x03, 0x12, 0x03, 0x64, 0x24, 0x25, 0x0a, 0x32,
0x0a, 0x02, 0x04, 0x03, 0x12, 0x05, 0x68, 0x00, 0xaf, 0x01, 0x01, 0x1a, 0x25, 0x20, 0x44, 0x65,
0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x73, 0x20, 0x61, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20,
0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x20, 0x61, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x2e, 0x0a, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x03, 0x01, 0x12, 0x03, 0x68, 0x08, 0x1c, 0x0a, 0x0d,
0x0a, 0x04, 0x04, 0x03, 0x04, 0x00, 0x12, 0x05, 0x69, 0x02, 0x84, 0x01, 0x03, 0x0a, 0x0c, 0x0a,
0x05, 0x04, 0x03, 0x04, 0x00, 0x01, 0x12, 0x03, 0x69, 0x07, 0x0b, 0x0a, 0x52, 0x0a, 0x06, 0x04,
0x03, 0x04, 0x00, 0x02, 0x00, 0x12, 0x03, 0x6c, 0x04, 0x1c, 0x1a, 0x43, 0x20, 0x30, 0x20, 0x69,
0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x65,
0x72, 0x72, 0x6f, 0x72, 0x73, 0x2e, 0x0a, 0x20, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x20, 0x69, 0x73,
0x20, 0x77, 0x65, 0x69, 0x72, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x68, 0x69, 0x73, 0x74, 0x6f,
0x72, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x73, 0x2e, 0x0a, 0x0a,
0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x00, 0x01, 0x12, 0x03, 0x6c, 0x04, 0x0f, 0x0a,
0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x00, 0x02, 0x12, 0x03, 0x6c, 0x1a, 0x1b, 0x0a,
0x0d, 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x01, 0x12, 0x03, 0x6d, 0x04, 0x1c, 0x0a, 0x0e,
0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x01, 0x01, 0x12, 0x03, 0x6d, 0x04, 0x0e, 0x0a, 0x0e,
0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x01, 0x02, 0x12, 0x03, 0x6d, 0x1a, 0x1b, 0x0a, 0x76,
0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x02, 0x12, 0x03, 0x70, 0x04, 0x1c, 0x1a, 0x67, 0x20,
0x4e, 0x6f, 0x74, 0x20, 0x5a, 0x69, 0x67, 0x5a, 0x61, 0x67, 0x20, 0x65, 0x6e, 0x63, 0x6f, 0x64,
0x65, 0x64, 0x2e, 0x20, 0x20, 0x4e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x20, 0x6e, 0x75,
0x6d, 0x62, 0x65, 0x72, 0x73, 0x20, 0x74, 0x61, 0x6b, 0x65, 0x20, 0x31, 0x30, 0x20, 0x62, 0x79,
0x74, 0x65, 0x73, 0x2e, 0x20, 0x20, 0x55, 0x73, 0x65, 0x20, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53,
0x49, 0x4e, 0x54, 0x36, 0x34, 0x20, 0x69, 0x66, 0x0a, 0x20, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69,
0x76, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6c, 0x69,
0x6b, 0x65, 0x6c, 0x79, 0x2e, 0x0a, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x02,
0x01, 0x12, 0x03, 0x70, 0x04, 0x0e, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x02,
0x02, 0x12, 0x03, 0x70, 0x1a, 0x1b, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x03,
0x12, 0x03, 0x71, 0x04, 0x1c, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x03, 0x01,
0x12, 0x03, 0x71, 0x04, 0x0f, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x03, 0x02,
0x12, 0x03, 0x71, 0x1a, 0x1b, 0x0a, 0x76, 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x04, 0x12,
0x03, 0x74, 0x04, 0x1c, 0x1a, 0x67, 0x20, 0x4e, 0x6f, 0x74, 0x20, 0x5a, 0x69, 0x67, 0x5a, 0x61,
0x67, 0x20, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x2e, 0x20, 0x20, 0x4e, 0x65, 0x67, 0x61,
0x74, 0x69, 0x76, 0x65, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x20, 0x74, 0x61, 0x6b,
0x65, 0x20, 0x31, 0x30, 0x20, 0x62, 0x79, 0x74, 0x65, 0x73, 0x2e, 0x20, 0x20, 0x55, 0x73, 0x65,
0x20, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x20, 0x69, 0x66, 0x0a,
0x20, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73,
0x20, 0x61, 0x72, 0x65, 0x20, 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x79, 0x2e, 0x0a, 0x0a, 0x0e, 0x0a,
0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x04, 0x01, 0x12, 0x03, 0x74, 0x04, 0x0e, 0x0a, 0x0e, 0x0a,
0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x04, 0x02, 0x12, 0x03, 0x74, 0x1a, 0x1b, 0x0a, 0x0d, 0x0a,
0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x05, 0x12, 0x03, 0x75, 0x04, 0x1c, 0x0a, 0x0e, 0x0a, 0x07,
0x04, 0x03, 0x04, 0x00, 0x02, 0x05, 0x01, 0x12, 0x03, 0x75, 0x04, 0x10, 0x0a, 0x0e, 0x0a, 0x07,
0x04, 0x03, 0x04, 0x00, 0x02, 0x05, 0x02, 0x12, 0x03, 0x75, 0x1a, 0x1b, 0x0a, 0x0d, 0x0a, 0x06,
0x04, 0x03, 0x04, 0x00, 0x02, 0x06, 0x12, 0x03, 0x76, 0x04, 0x1c, 0x0a, 0x0e, 0x0a, 0x07, 0x04,
0x03, 0x04, 0x00, 0x02, 0x06, 0x01, 0x12, 0x03, 0x76, 0x04, 0x10, 0x0a, 0x0e, 0x0a, 0x07, 0x04,
0x03, 0x04, 0x00, 0x02, 0x06, 0x02, 0x12, 0x03, 0x76, 0x1a, 0x1b, 0x0a, 0x0d, 0x0a, 0x06, 0x04,
0x03, 0x04, 0x00, 0x02, 0x07, 0x12, 0x03, 0x77, 0x04, 0x1c, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03,
0x04, 0x00, 0x02, 0x07, 0x01, 0x12, 0x03, 0x77, 0x04, 0x0d, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03,
0x04, 0x00, 0x02, 0x07, 0x02, 0x12, 0x03, 0x77, 0x1a, 0x1b, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x03,
0x04, 0x00, 0x02, 0x08, 0x12, 0x03, 0x78, 0x04, 0x1c, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04,
0x00, 0x02, 0x08, 0x01, 0x12, 0x03, 0x78, 0x04, 0x0f, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04,
0x00, 0x02, 0x08, 0x02, 0x12, 0x03, 0x78, 0x1a, 0x1b, 0x0a, 0x29, 0x0a, 0x06, 0x04, 0x03, 0x04,
0x00, 0x02, 0x09, 0x12, 0x03, 0x79, 0x04, 0x1d, 0x22, 0x1a, 0x20, 0x54, 0x61, 0x67, 0x2d, 0x64,
0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x20, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61,
0x74, 0x65, 0x2e, 0x0a, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x09, 0x01, 0x12,
0x03, 0x79, 0x04, 0x0e, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x09, 0x02, 0x12,
0x03, 0x79, 0x1a, 0x1c, 0x0a, 0x2c, 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0a, 0x12, 0x03,
0x7a, 0x04, 0x1d, 0x22, 0x1d, 0x20, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2d, 0x64, 0x65, 0x6c,
0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x20, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65,
0x2e, 0x0a, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0a, 0x01, 0x12, 0x03, 0x7a,
0x04, 0x10, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0a, 0x02, 0x12, 0x03, 0x7a,
0x1a, 0x1c, 0x0a, 0x22, 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0b, 0x12, 0x03, 0x7d, 0x04,
0x1d, 0x1a, 0x13, 0x20, 0x4e, 0x65, 0x77, 0x20, 0x69, 0x6e, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x20, 0x32, 0x2e, 0x0a, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0b,
0x01, 0x12, 0x03, 0x7d, 0x04, 0x0e, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0b,
0x02, 0x12, 0x03, 0x7d, 0x1a, 0x1c, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0c,
0x12, 0x03, 0x7e, 0x04, 0x1d, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0c, 0x01,
0x12, 0x03, 0x7e, 0x04, 0x0f, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0c, 0x02,
0x12, 0x03, 0x7e, 0x1a, 0x1c, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0d, 0x12,
0x03, 0x7f, 0x04, 0x1d, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0d, 0x01, 0x12,
0x03, 0x7f, 0x04, 0x0d, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0d, 0x02, 0x12,
0x03, 0x7f, 0x1a, 0x1c, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0e, 0x12, 0x04,
0x80, 0x01, 0x04, 0x1d, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0e, 0x01, 0x12,
0x04, 0x80, 0x01, 0x04, 0x11, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0e, 0x02,
0x12, 0x04, 0x80, 0x01, 0x1a, 0x1c, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0f,
0x12, 0x04, 0x81, 0x01, 0x04, 0x1d, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x0f,
0x01, 0x12, 0x04, 0x81, 0x01, 0x04, 0x11, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02,
0x0f, 0x02, 0x12, 0x04, 0x81, 0x01, 0x1a, 0x1c, 0x0a, 0x27, 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00,
0x02, 0x10, 0x12, 0x04, 0x82, 0x01, 0x04, 0x1d, 0x22, 0x17, 0x20, 0x55, 0x73, 0x65, 0x73, 0x20,
0x5a, 0x69, 0x67, 0x5a, 0x61, 0x67, 0x20, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x2e,
0x0a, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x10, 0x01, 0x12, 0x04, 0x82, 0x01,
0x04, 0x0f, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x10, 0x02, 0x12, 0x04, 0x82,
0x01, 0x1a, 0x1c, 0x0a, 0x27, 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x11, 0x12, 0x04, 0x83,
0x01, 0x04, 0x1d, 0x22, 0x17, 0x20, 0x55, 0x73, 0x65, 0x73, 0x20, 0x5a, 0x69, 0x67, 0x5a, 0x61,
0x67, 0x20, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x2e, 0x0a, 0x0a, 0x0f, 0x0a, 0x07,
0x04, 0x03, 0x04, 0x00, 0x02, 0x11, 0x01, 0x12, 0x04, 0x83, 0x01, 0x04, 0x0f, 0x0a, 0x0f, 0x0a,
0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x11, 0x02, 0x12, 0x04, 0x83, 0x01, 0x1a, 0x1c, 0x0a, 0x0e,
0x0a, 0x04, 0x04, 0x03, 0x04, 0x01, 0x12, 0x06, 0x86, 0x01, 0x02, 0x8c, 0x01, 0x03, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x03, 0x04, 0x01, 0x01, 0x12, 0x04, 0x86, 0x01, 0x07, 0x0c, 0x0a, 0x2a, 0x0a,
0x06, 0x04, 0x03, 0x04, 0x01, 0x02, 0x00, 0x12, 0x04, 0x88, 0x01, 0x04, 0x1c, 0x1a, 0x1a, 0x20,
0x30, 0x20, 0x69, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x20, 0x66, 0x6f,
0x72, 0x20, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x0a, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x03, 0x04,
0x01, 0x02, 0x00, 0x01, 0x12, 0x04, 0x88, 0x01, 0x04, 0x12, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x03,
0x04, 0x01, 0x02, 0x00, 0x02, 0x12, 0x04, 0x88, 0x01, 0x1a, 0x1b, 0x0a, 0x0e, 0x0a, 0x06, 0x04,
0x03, 0x04, 0x01, 0x02, 0x01, 0x12, 0x04, 0x89, 0x01, 0x04, 0x1c, 0x0a, 0x0f, 0x0a, 0x07, 0x04,
0x03, 0x04, 0x01, 0x02, 0x01, 0x01, 0x12, 0x04, 0x89, 0x01, 0x04, 0x12, 0x0a, 0x0f, 0x0a, 0x07,
0x04, 0x03, 0x04, 0x01, 0x02, 0x01, 0x02, 0x12, 0x04, 0x89, 0x01, 0x1a, 0x1b, 0x0a, 0x38, 0x0a,
0x06, 0x04, 0x03, 0x04, 0x01, 0x02, 0x02, 0x12, 0x04, 0x8a, 0x01, 0x04, 0x1c, 0x22, 0x28, 0x20,
0x54, 0x4f, 0x44, 0x4f, 0x28, 0x73, 0x61, 0x6e, 0x6a, 0x61, 0x79, 0x29, 0x3a, 0x20, 0x53, 0x68,
0x6f, 0x75, 0x6c, 0x64, 0x20, 0x77, 0x65, 0x20, 0x61, 0x64, 0x64, 0x20, 0x4c, 0x41, 0x42, 0x45,
0x4c, 0x5f, 0x4d, 0x41, 0x50, 0x3f, 0x0a, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x01, 0x02,
0x02, 0x01, 0x12, 0x04, 0x8a, 0x01, 0x04, 0x12, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x03, 0x04, 0x01,
0x02, 0x02, 0x02, 0x12, 0x04, 0x8a, 0x01, 0x1a, 0x1b, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x03, 0x02,
0x00, 0x12, 0x04, 0x8e, 0x01, 0x02, 0x1b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x04,
0x12, 0x04, 0x8e, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x05, 0x12,
0x04, 0x8e, 0x01, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x01, 0x12, 0x04,
0x8e, 0x01, 0x12, 0x16, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x03, 0x12, 0x04, 0x8e,
0x01, 0x19, 0x1a, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x01, 0x12, 0x04, 0x8f, 0x01, 0x02,
0x1c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, 0x04, 0x12, 0x04, 0x8f, 0x01, 0x02, 0x0a,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, 0x05, 0x12, 0x04, 0x8f, 0x01, 0x0b, 0x10, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, 0x01, 0x12, 0x04, 0x8f, 0x01, 0x11, 0x17, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, 0x03, 0x12, 0x04, 0x8f, 0x01, 0x1a, 0x1b, 0x0a, 0x0c, 0x0a,
0x04, 0x04, 0x03, 0x02, 0x02, 0x12, 0x04, 0x90, 0x01, 0x02, 0x1b, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x03, 0x02, 0x02, 0x04, 0x12, 0x04, 0x90, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03,
0x02, 0x02, 0x06, 0x12, 0x04, 0x90, 0x01, 0x0b, 0x10, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02,
0x02, 0x01, 0x12, 0x04, 0x90, 0x01, 0x11, 0x16, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x02,
0x03, 0x12, 0x04, 0x90, 0x01, 0x19, 0x1a, 0x0a, 0x9c, 0x01, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x03,
0x12, 0x04, 0x94, 0x01, 0x02, 0x19, 0x1a, 0x8d, 0x01, 0x20, 0x49, 0x66, 0x20, 0x74, 0x79, 0x70,
0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x69, 0x73, 0x20, 0x73, 0x65, 0x74, 0x2c, 0x20, 0x74,
0x68, 0x69, 0x73, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x62, 0x65, 0x20,
0x73, 0x65, 0x74, 0x2e, 0x20, 0x20, 0x49, 0x66, 0x20, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x74, 0x68,
0x69, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
0x0a, 0x20, 0x61, 0x72, 0x65, 0x20, 0x73, 0x65, 0x74, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x54,
0x59, 0x50, 0x45, 0x5f, 0x45, 0x4e, 0x55, 0x4d, 0x2c, 0x20, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d,
0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x20, 0x6f, 0x72, 0x20, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x47,
0x52, 0x4f, 0x55, 0x50, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x03, 0x04, 0x12,
0x04, 0x94, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x03, 0x06, 0x12, 0x04,
0x94, 0x01, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x03, 0x01, 0x12, 0x04, 0x94,
0x01, 0x10, 0x14, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x03, 0x03, 0x12, 0x04, 0x94, 0x01,
0x17, 0x18, 0x0a, 0xb7, 0x02, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x04, 0x12, 0x04, 0x9b, 0x01, 0x02,
0x20, 0x1a, 0xa8, 0x02, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x20, 0x61, 0x6e, 0x64, 0x20, 0x65, 0x6e, 0x75, 0x6d, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2c,
0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x6d,
0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x20, 0x20,
0x49, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x0a, 0x20, 0x73, 0x74, 0x61,
0x72, 0x74, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x20, 0x27, 0x2e, 0x27, 0x2c, 0x20,
0x69, 0x74, 0x20, 0x69, 0x73, 0x20, 0x66, 0x75, 0x6c, 0x6c, 0x79, 0x2d, 0x71, 0x75, 0x61, 0x6c,
0x69, 0x66, 0x69, 0x65, 0x64, 0x2e, 0x20, 0x20, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x77, 0x69, 0x73,
0x65, 0x2c, 0x20, 0x43, 0x2b, 0x2b, 0x2d, 0x6c, 0x69, 0x6b, 0x65, 0x20, 0x73, 0x63, 0x6f, 0x70,
0x69, 0x6e, 0x67, 0x0a, 0x20, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x75,
0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x66, 0x69, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20,
0x74, 0x79, 0x70, 0x65, 0x20, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74,
0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x20, 0x74, 0x79, 0x70, 0x65,
0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x0a, 0x20, 0x6d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x73, 0x65, 0x61, 0x72, 0x63,
0x68, 0x65, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x20, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e,
0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x6f, 0x6e, 0x20,
0x75, 0x70, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x6f, 0x6f, 0x74, 0x0a, 0x20,
0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x29, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x03, 0x02, 0x04, 0x04, 0x12, 0x04, 0x9b, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x03, 0x02, 0x04, 0x05, 0x12, 0x04, 0x9b, 0x01, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03,
0x02, 0x04, 0x01, 0x12, 0x04, 0x9b, 0x01, 0x12, 0x1b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02,
0x04, 0x03, 0x12, 0x04, 0x9b, 0x01, 0x1e, 0x1f, 0x0a, 0x7e, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x05,
0x12, 0x04, 0x9f, 0x01, 0x02, 0x1f, 0x1a, 0x70, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x74,
0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73,
0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x62, 0x65, 0x69, 0x6e, 0x67, 0x20, 0x65, 0x78, 0x74, 0x65,
0x6e, 0x64, 0x65, 0x64, 0x2e, 0x20, 0x20, 0x49, 0x74, 0x20, 0x69, 0x73, 0x0a, 0x20, 0x72, 0x65,
0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61,
0x6d, 0x65, 0x20, 0x6d, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x20, 0x61, 0x73, 0x20, 0x74, 0x79, 0x70,
0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x05,
0x04, 0x12, 0x04, 0x9f, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x05, 0x05,
0x12, 0x04, 0x9f, 0x01, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x05, 0x01, 0x12,
0x04, 0x9f, 0x01, 0x12, 0x1a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x05, 0x03, 0x12, 0x04,
0x9f, 0x01, 0x1d, 0x1e, 0x0a, 0xb1, 0x02, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x06, 0x12, 0x04, 0xa6,
0x01, 0x02, 0x24, 0x1a, 0xa2, 0x02, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x6e, 0x75, 0x6d, 0x65, 0x72,
0x69, 0x63, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
0x6e, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x20,
0x74, 0x65, 0x78, 0x74, 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x2e, 0x0a, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x62, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x73, 0x2c,
0x20, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x20, 0x6f, 0x72, 0x20, 0x22, 0x66, 0x61, 0x6c, 0x73,
0x65, 0x22, 0x2e, 0x0a, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73,
0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64,
0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x74, 0x65, 0x78, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x74,
0x65, 0x6e, 0x74, 0x73, 0x20, 0x28, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65,
0x64, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x77, 0x61, 0x79, 0x29, 0x2e, 0x0a, 0x20,
0x46, 0x6f, 0x72, 0x20, 0x62, 0x79, 0x74, 0x65, 0x73, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61,
0x69, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x43, 0x20, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65,
0x64, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x20, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x62, 0x79,
0x74, 0x65, 0x73, 0x20, 0x3e, 0x3d, 0x20, 0x31, 0x32, 0x38, 0x20, 0x61, 0x72, 0x65, 0x20, 0x65,
0x73, 0x63, 0x61, 0x70, 0x65, 0x64, 0x2e, 0x0a, 0x20, 0x54, 0x4f, 0x44, 0x4f, 0x28, 0x6b, 0x65,
0x6e, 0x74, 0x6f, 0x6e, 0x29, 0x3a, 0x20, 0x20, 0x42, 0x61, 0x73, 0x65, 0x2d, 0x36, 0x34, 0x20,
0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x3f, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x06,
0x04, 0x12, 0x04, 0xa6, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x06, 0x05,
0x12, 0x04, 0xa6, 0x01, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x06, 0x01, 0x12,
0x04, 0xa6, 0x01, 0x12, 0x1f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x06, 0x03, 0x12, 0x04,
0xa6, 0x01, 0x22, 0x23, 0x0a, 0xae, 0x02, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x07, 0x12, 0x04, 0xac,
0x01, 0x02, 0x21, 0x1a, 0x9f, 0x02, 0x20, 0x49, 0x66, 0x20, 0x73, 0x65, 0x74, 0x2c, 0x20, 0x67,
0x69, 0x76, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x20, 0x6f,
0x66, 0x20, 0x61, 0x20, 0x6f, 0x6e, 0x65, 0x6f, 0x66, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65,
0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x79, 0x70, 0x65,
0x27, 0x73, 0x20, 0x6f, 0x6e, 0x65, 0x6f, 0x66, 0x5f, 0x64, 0x65, 0x63, 0x6c, 0x0a, 0x20, 0x6c,
0x69, 0x73, 0x74, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64,
0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20,
0x74, 0x68, 0x61, 0x74, 0x20, 0x6f, 0x6e, 0x65, 0x6f, 0x66, 0x2e, 0x20, 0x20, 0x45, 0x78, 0x74,
0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x20, 0x6f, 0x6e, 0x65,
0x6f, 0x66, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x0a, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x73,
0x65, 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x20, 0x74, 0x68,
0x65, 0x20, 0x6f, 0x6e, 0x65, 0x6f, 0x66, 0x20, 0x74, 0x6f, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68,
0x20, 0x74, 0x68, 0x65, 0x79, 0x20, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x20, 0x77, 0x69, 0x6c,
0x6c, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x20, 0x62, 0x61,
0x73, 0x65, 0x64, 0x0a, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x78, 0x74, 0x65,
0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74,
0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e,
0x73, 0x69, 0x6f, 0x6e, 0x27, 0x73, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x6e, 0x75, 0x6d,
0x62, 0x65, 0x72, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x07, 0x04, 0x12, 0x04,
0xac, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x07, 0x05, 0x12, 0x04, 0xac,
0x01, 0x0b, 0x10, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x07, 0x01, 0x12, 0x04, 0xac, 0x01,
0x11, 0x1c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x07, 0x03, 0x12, 0x04, 0xac, 0x01, 0x1f,
0x20, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x08, 0x12, 0x04, 0xae, 0x01, 0x02, 0x24, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x08, 0x04, 0x12, 0x04, 0xae, 0x01, 0x02, 0x0a, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x03, 0x02, 0x08, 0x06, 0x12, 0x04, 0xae, 0x01, 0x0b, 0x17, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x03, 0x02, 0x08, 0x01, 0x12, 0x04, 0xae, 0x01, 0x18, 0x1f, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x03, 0x02, 0x08, 0x03, 0x12, 0x04, 0xae, 0x01, 0x22, 0x23, 0x0a, 0x22, 0x0a, 0x02, 0x04,
0x04, 0x12, 0x06, 0xb2, 0x01, 0x00, 0xb4, 0x01, 0x01, 0x1a, 0x14, 0x20, 0x44, 0x65, 0x73, 0x63,
0x72, 0x69, 0x62, 0x65, 0x73, 0x20, 0x61, 0x20, 0x6f, 0x6e, 0x65, 0x6f, 0x66, 0x2e, 0x0a, 0x0a,
0x0b, 0x0a, 0x03, 0x04, 0x04, 0x01, 0x12, 0x04, 0xb2, 0x01, 0x08, 0x1c, 0x0a, 0x0c, 0x0a, 0x04,
0x04, 0x04, 0x02, 0x00, 0x12, 0x04, 0xb3, 0x01, 0x02, 0x1b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x04,
0x02, 0x00, 0x04, 0x12, 0x04, 0xb3, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x04, 0x02,
0x00, 0x05, 0x12, 0x04, 0xb3, 0x01, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00,
0x01, 0x12, 0x04, 0xb3, 0x01, 0x12, 0x16, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x03,
0x12, 0x04, 0xb3, 0x01, 0x19, 0x1a, 0x0a, 0x27, 0x0a, 0x02, 0x04, 0x05, 0x12, 0x06, 0xb7, 0x01,
0x00, 0xbd, 0x01, 0x01, 0x1a, 0x19, 0x20, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x73,
0x20, 0x61, 0x6e, 0x20, 0x65, 0x6e, 0x75, 0x6d, 0x20, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x0a, 0x0a,
0x0b, 0x0a, 0x03, 0x04, 0x05, 0x01, 0x12, 0x04, 0xb7, 0x01, 0x08, 0x1b, 0x0a, 0x0c, 0x0a, 0x04,
0x04, 0x05, 0x02, 0x00, 0x12, 0x04, 0xb8, 0x01, 0x02, 0x1b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x05,
0x02, 0x00, 0x04, 0x12, 0x04, 0xb8, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x05, 0x02,
0x00, 0x05, 0x12, 0x04, 0xb8, 0x01, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00,
0x01, 0x12, 0x04, 0xb8, 0x01, 0x12, 0x16, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x03,
0x12, 0x04, 0xb8, 0x01, 0x19, 0x1a, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x01, 0x12, 0x04,
0xba, 0x01, 0x02, 0x2e, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x04, 0x12, 0x04, 0xba,
0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x06, 0x12, 0x04, 0xba, 0x01,
0x0b, 0x23, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x01, 0x12, 0x04, 0xba, 0x01, 0x24,
0x29, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x03, 0x12, 0x04, 0xba, 0x01, 0x2c, 0x2d,
0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x02, 0x12, 0x04, 0xbc, 0x01, 0x02, 0x23, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x05, 0x02, 0x02, 0x04, 0x12, 0x04, 0xbc, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x05, 0x02, 0x02, 0x06, 0x12, 0x04, 0xbc, 0x01, 0x0b, 0x16, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x05, 0x02, 0x02, 0x01, 0x12, 0x04, 0xbc, 0x01, 0x17, 0x1e, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x05, 0x02, 0x02, 0x03, 0x12, 0x04, 0xbc, 0x01, 0x21, 0x22, 0x0a, 0x31, 0x0a, 0x02, 0x04, 0x06,
0x12, 0x06, 0xc0, 0x01, 0x00, 0xc5, 0x01, 0x01, 0x1a, 0x23, 0x20, 0x44, 0x65, 0x73, 0x63, 0x72,
0x69, 0x62, 0x65, 0x73, 0x20, 0x61, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x77, 0x69, 0x74,
0x68, 0x69, 0x6e, 0x20, 0x61, 0x6e, 0x20, 0x65, 0x6e, 0x75, 0x6d, 0x2e, 0x0a, 0x0a, 0x0b, 0x0a,
0x03, 0x04, 0x06, 0x01, 0x12, 0x04, 0xc0, 0x01, 0x08, 0x20, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x06,
0x02, 0x00, 0x12, 0x04, 0xc1, 0x01, 0x02, 0x1b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00,
0x04, 0x12, 0x04, 0xc1, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x05,
0x12, 0x04, 0xc1, 0x01, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x01, 0x12,
0x04, 0xc1, 0x01, 0x12, 0x16, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x03, 0x12, 0x04,
0xc1, 0x01, 0x19, 0x1a, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x01, 0x12, 0x04, 0xc2, 0x01,
0x02, 0x1c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x01, 0x04, 0x12, 0x04, 0xc2, 0x01, 0x02,
0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x01, 0x05, 0x12, 0x04, 0xc2, 0x01, 0x0b, 0x10,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x01, 0x01, 0x12, 0x04, 0xc2, 0x01, 0x11, 0x17, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x01, 0x03, 0x12, 0x04, 0xc2, 0x01, 0x1a, 0x1b, 0x0a, 0x0c,
0x0a, 0x04, 0x04, 0x06, 0x02, 0x02, 0x12, 0x04, 0xc4, 0x01, 0x02, 0x28, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x06, 0x02, 0x02, 0x04, 0x12, 0x04, 0xc4, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x06, 0x02, 0x02, 0x06, 0x12, 0x04, 0xc4, 0x01, 0x0b, 0x1b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x06,
0x02, 0x02, 0x01, 0x12, 0x04, 0xc4, 0x01, 0x1c, 0x23, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x06, 0x02,
0x02, 0x03, 0x12, 0x04, 0xc4, 0x01, 0x26, 0x27, 0x0a, 0x24, 0x0a, 0x02, 0x04, 0x07, 0x12, 0x06,
0xc8, 0x01, 0x00, 0xcd, 0x01, 0x01, 0x1a, 0x16, 0x20, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62,
0x65, 0x73, 0x20, 0x61, 0x20, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x0a, 0x0a, 0x0b,
0x0a, 0x03, 0x04, 0x07, 0x01, 0x12, 0x04, 0xc8, 0x01, 0x08, 0x1e, 0x0a, 0x0c, 0x0a, 0x04, 0x04,
0x07, 0x02, 0x00, 0x12, 0x04, 0xc9, 0x01, 0x02, 0x1b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02,
0x00, 0x04, 0x12, 0x04, 0xc9, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00,
0x05, 0x12, 0x04, 0xc9, 0x01, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x01,
0x12, 0x04, 0xc9, 0x01, 0x12, 0x16, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x03, 0x12,
0x04, 0xc9, 0x01, 0x19, 0x1a, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x07, 0x02, 0x01, 0x12, 0x04, 0xca,
0x01, 0x02, 0x2c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x01, 0x04, 0x12, 0x04, 0xca, 0x01,
0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x01, 0x06, 0x12, 0x04, 0xca, 0x01, 0x0b,
0x20, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x01, 0x01, 0x12, 0x04, 0xca, 0x01, 0x21, 0x27,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x01, 0x03, 0x12, 0x04, 0xca, 0x01, 0x2a, 0x2b, 0x0a,
0x0c, 0x0a, 0x04, 0x04, 0x07, 0x02, 0x02, 0x12, 0x04, 0xcc, 0x01, 0x02, 0x26, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x07, 0x02, 0x02, 0x04, 0x12, 0x04, 0xcc, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x07, 0x02, 0x02, 0x06, 0x12, 0x04, 0xcc, 0x01, 0x0b, 0x19, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x07, 0x02, 0x02, 0x01, 0x12, 0x04, 0xcc, 0x01, 0x1a, 0x21, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07,
0x02, 0x02, 0x03, 0x12, 0x04, 0xcc, 0x01, 0x24, 0x25, 0x0a, 0x30, 0x0a, 0x02, 0x04, 0x08, 0x12,
0x06, 0xd0, 0x01, 0x00, 0xd9, 0x01, 0x01, 0x1a, 0x22, 0x20, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69,
0x62, 0x65, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x6f, 0x66, 0x20,
0x61, 0x20, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x0a, 0x0a, 0x0b, 0x0a, 0x03, 0x04,
0x08, 0x01, 0x12, 0x04, 0xd0, 0x01, 0x08, 0x1d, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x00,
0x12, 0x04, 0xd1, 0x01, 0x02, 0x1b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x04, 0x12,
0x04, 0xd1, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x05, 0x12, 0x04,
0xd1, 0x01, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x01, 0x12, 0x04, 0xd1,
0x01, 0x12, 0x16, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x03, 0x12, 0x04, 0xd1, 0x01,
0x19, 0x1a, 0x0a, 0x97, 0x01, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x01, 0x12, 0x04, 0xd5, 0x01, 0x02,
0x21, 0x1a, 0x88, 0x01, 0x20, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6f,
0x75, 0x74, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73,
0x2e, 0x20, 0x20, 0x54, 0x68, 0x65, 0x73, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x72, 0x65, 0x73,
0x6f, 0x6c, 0x76, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d,
0x65, 0x20, 0x77, 0x61, 0x79, 0x20, 0x61, 0x73, 0x0a, 0x20, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44,
0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x74,
0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x6d, 0x75,
0x73, 0x74, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x08, 0x02, 0x01, 0x04, 0x12, 0x04, 0xd5, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x08, 0x02, 0x01, 0x05, 0x12, 0x04, 0xd5, 0x01, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x08,
0x02, 0x01, 0x01, 0x12, 0x04, 0xd5, 0x01, 0x12, 0x1c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x08, 0x02,
0x01, 0x03, 0x12, 0x04, 0xd5, 0x01, 0x1f, 0x20, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x02,
0x12, 0x04, 0xd6, 0x01, 0x02, 0x22, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x02, 0x04, 0x12,
0x04, 0xd6, 0x01, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x02, 0x05, 0x12, 0x04,
0xd6, 0x01, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x02, 0x01, 0x12, 0x04, 0xd6,
0x01, 0x12, 0x1d, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x02, 0x03, 0x12, 0x04, 0xd6, 0x01,
0x20, 0x21, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x03, 0x12, 0x04, 0xd8, 0x01, 0x02, 0x25,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x03, 0x04, 0x12, 0x04, 0xd8, 0x01, 0x02, 0x0a, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x03, 0x06, 0x12, 0x04, 0xd8, 0x01, 0x0b, 0x18, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x08, 0x02, 0x03, 0x01, 0x12, 0x04, 0xd8, 0x01, 0x19, 0x20, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x08, 0x02, 0x03, 0x03, 0x12, 0x04, 0xd8, 0x01, 0x23, 0x24, 0x0a, 0x0c, 0x0a, 0x02,
0x04, 0x09, 0x12, 0x06, 0xfd, 0x01, 0x00, 0xd3, 0x02, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x09,
0x01, 0x12, 0x04, 0xfd, 0x01, 0x08, 0x13, 0x0a, 0xf4, 0x01, 0x0a, 0x04, 0x04, 0x09, 0x02, 0x00,
0x12, 0x04, 0x83, 0x02, 0x02, 0x23, 0x1a, 0xe5, 0x01, 0x20, 0x53, 0x65, 0x74, 0x73, 0x20, 0x74,
0x68, 0x65, 0x20, 0x4a, 0x61, 0x76, 0x61, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x20,
0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x20, 0x67, 0x65,
0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x69,
0x73, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65,
0x0a, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x2e, 0x20, 0x20, 0x42, 0x79, 0x20, 0x64, 0x65,
0x66, 0x61, 0x75, 0x6c, 0x74, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x20, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x20, 0x69, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64,
0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x6f, 0x66,
0x74, 0x65, 0x6e, 0x0a, 0x20, 0x69, 0x6e, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x70, 0x72, 0x69, 0x61,
0x74, 0x65, 0x20, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x20, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x73, 0x20, 0x64, 0x6f, 0x20, 0x6e, 0x6f, 0x74,
0x20, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x20,
0x77, 0x69, 0x74, 0x68, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x77, 0x61, 0x72, 0x64, 0x73, 0x0a, 0x20,
0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x2e, 0x0a, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x09, 0x02, 0x00, 0x04, 0x12, 0x04, 0x83, 0x02, 0x02, 0x0a, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x09, 0x02, 0x00, 0x05, 0x12, 0x04, 0x83, 0x02, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x09, 0x02, 0x00, 0x01, 0x12, 0x04, 0x83, 0x02, 0x12, 0x1e, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x09, 0x02, 0x00, 0x03, 0x12, 0x04, 0x83, 0x02, 0x21, 0x22, 0x0a, 0xbf, 0x02, 0x0a, 0x04, 0x04,
0x09, 0x02, 0x01, 0x12, 0x04, 0x8b, 0x02, 0x02, 0x2b, 0x1a, 0xb0, 0x02, 0x20, 0x49, 0x66, 0x20,
0x73, 0x65, 0x74, 0x2c, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6c, 0x61,
0x73, 0x73, 0x65, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x20, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x77, 0x72,
0x61, 0x70, 0x70, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c,
0x65, 0x0a, 0x20, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x77,
0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x6e, 0x61,
0x6d, 0x65, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x65,
0x73, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x31,
0x0a, 0x20, 0x28, 0x65, 0x71, 0x75, 0x69, 0x76, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x6f,
0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x6c, 0x64, 0x20, 0x22, 0x2d, 0x2d, 0x6f, 0x6e, 0x65, 0x5f,
0x6a, 0x61, 0x76, 0x61, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x29, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x20, 0x28, 0x77,
0x68, 0x65, 0x72, 0x65, 0x0a, 0x20, 0x61, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x20, 0x61,
0x6c, 0x77, 0x61, 0x79, 0x73, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x65, 0x73,
0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x63, 0x6c, 0x61,
0x73, 0x73, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6d, 0x61, 0x79, 0x20,
0x77, 0x61, 0x6e, 0x74, 0x20, 0x74, 0x6f, 0x0a, 0x20, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69,
0x74, 0x6c, 0x79, 0x20, 0x63, 0x68, 0x6f, 0x6f, 0x73, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63,
0x6c, 0x61, 0x73, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x29, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x09, 0x02, 0x01, 0x04, 0x12, 0x04, 0x8b, 0x02, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x09, 0x02, 0x01, 0x05, 0x12, 0x04, 0x8b, 0x02, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09,
0x02, 0x01, 0x01, 0x12, 0x04, 0x8b, 0x02, 0x12, 0x26, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02,
0x01, 0x03, 0x12, 0x04, 0x8b, 0x02, 0x29, 0x2a, 0x0a, 0xa3, 0x03, 0x0a, 0x04, 0x04, 0x09, 0x02,
0x02, 0x12, 0x04, 0x93, 0x02, 0x02, 0x39, 0x1a, 0x94, 0x03, 0x20, 0x49, 0x66, 0x20, 0x73, 0x65,
0x74, 0x20, 0x74, 0x72, 0x75, 0x65, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x20, 0x74, 0x68, 0x65,
0x20, 0x4a, 0x61, 0x76, 0x61, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72,
0x61, 0x74, 0x6f, 0x72, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
0x74, 0x65, 0x20, 0x61, 0x20, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x20, 0x2e, 0x6a,
0x61, 0x76, 0x61, 0x0a, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x61,
0x63, 0x68, 0x20, 0x74, 0x6f, 0x70, 0x2d, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x20, 0x6d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x2c, 0x20, 0x65, 0x6e, 0x75, 0x6d, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20,
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20,
0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x0a, 0x20, 0x66,
0x69, 0x6c, 0x65, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x75, 0x73, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x73,
0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x2a, 0x6e, 0x6f,
0x74, 0x2a, 0x20, 0x62, 0x65, 0x20, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x73,
0x69, 0x64, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x20, 0x63, 0x6c,
0x61, 0x73, 0x73, 0x0a, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x6a, 0x61,
0x76, 0x61, 0x5f, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6e, 0x61,
0x6d, 0x65, 0x2e, 0x20, 0x20, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x74, 0x68,
0x65, 0x20, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x77, 0x69,
0x6c, 0x6c, 0x20, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x0a, 0x20, 0x67, 0x65, 0x6e,
0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x27, 0x73, 0x20, 0x67, 0x65, 0x74,
0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x28, 0x29, 0x20, 0x6d, 0x65, 0x74,
0x68, 0x6f, 0x64, 0x20, 0x61, 0x73, 0x20, 0x77, 0x65, 0x6c, 0x6c, 0x20, 0x61, 0x73, 0x20, 0x61,
0x6e, 0x79, 0x0a, 0x20, 0x74, 0x6f, 0x70, 0x2d, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x20, 0x65, 0x78,
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64,
0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x0a, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x09, 0x02, 0x02, 0x04, 0x12, 0x04, 0x93, 0x02, 0x02, 0x0a, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x09, 0x02, 0x02, 0x05, 0x12, 0x04, 0x93, 0x02, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x09, 0x02, 0x02, 0x01, 0x12, 0x04, 0x93, 0x02, 0x10, 0x23, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x09, 0x02, 0x02, 0x03, 0x12, 0x04, 0x93, 0x02, 0x26, 0x28, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09,
0x02, 0x02, 0x08, 0x12, 0x04, 0x93, 0x02, 0x29, 0x38, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02,
0x02, 0x07, 0x12, 0x04, 0x93, 0x02, 0x32, 0x37, 0x0a, 0x9f, 0x05, 0x0a, 0x04, 0x04, 0x09, 0x02,
0x03, 0x12, 0x04, 0x9f, 0x02, 0x02, 0x43, 0x1a, 0x90, 0x05, 0x20, 0x49, 0x66, 0x20, 0x73, 0x65,
0x74, 0x20, 0x74, 0x72, 0x75, 0x65, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x20, 0x74, 0x68, 0x65,
0x20, 0x4a, 0x61, 0x76, 0x61, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72,
0x61, 0x74, 0x6f, 0x72, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
0x74, 0x65, 0x20, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x73, 0x28, 0x29, 0x20, 0x61, 0x6e, 0x64, 0x0a,
0x20, 0x68, 0x61, 0x73, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x28, 0x29, 0x20, 0x6d, 0x65, 0x74, 0x68,
0x6f, 0x64, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x6d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x73, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20,
0x74, 0x68, 0x65, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x2e,
0x0a, 0x20, 0x2d, 0x20, 0x49, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x75, 0x6c, 0x6c, 0x20,
0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73,
0x20, 0x70, 0x75, 0x72, 0x65, 0x6c, 0x79, 0x20, 0x61, 0x20, 0x73, 0x70, 0x65, 0x65, 0x64, 0x20,
0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x20, 0x61, 0x73,
0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, 0x41, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x62, 0x61, 0x73, 0x65, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73,
0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x72, 0x65, 0x66, 0x6c, 0x65, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x69, 0x6d, 0x70, 0x6c, 0x65,
0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x0a, 0x20, 0x74,
0x68, 0x65, 0x73, 0x65, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x2e, 0x0a, 0x2d, 0x20,
0x49, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x69, 0x74, 0x65, 0x20, 0x72, 0x75, 0x6e, 0x74,
0x69, 0x6d, 0x65, 0x2c, 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x69,
0x73, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73,
0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x65, 0x6d, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x73, 0x20, 0x6f,
0x66, 0x0a, 0x20, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x73, 0x28, 0x29, 0x20, 0x61, 0x6e, 0x64, 0x20,
0x68, 0x61, 0x73, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x28, 0x29, 0x20, 0x74, 0x6f, 0x20, 0x6d, 0x6f,
0x72, 0x65, 0x20, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x6c, 0x79, 0x20, 0x6d, 0x61, 0x74, 0x63, 0x68,
0x20, 0x74, 0x68, 0x6f, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x75,
0x6c, 0x6c, 0x20, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x3b, 0x0a, 0x20, 0x74, 0x68, 0x65,
0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f,
0x64, 0x73, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72,
0x20, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f,
0x6e, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x20, 0x72,
0x61, 0x74, 0x68, 0x65, 0x72, 0x0a, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x6f, 0x62, 0x6a, 0x65,
0x63, 0x74, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x20, 0x28, 0x49, 0x6d,
0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x73, 0x68,
0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x73, 0x73, 0x75, 0x6d, 0x65, 0x20,
0x74, 0x68, 0x61, 0x74, 0x20, 0x68, 0x61, 0x73, 0x68, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x0a, 0x20,
0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x65,
0x6e, 0x74, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x20, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d,
0x65, 0x73, 0x20, 0x6f, 0x72, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f,
0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x20, 0x63,
0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x72, 0x2e, 0x29, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09,
0x02, 0x03, 0x04, 0x12, 0x04, 0x9f, 0x02, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02,
0x03, 0x05, 0x12, 0x04, 0x9f, 0x02, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x03,
0x01, 0x12, 0x04, 0x9f, 0x02, 0x10, 0x2d, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x03, 0x03,
0x12, 0x04, 0x9f, 0x02, 0x30, 0x32, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x03, 0x08, 0x12,
0x04, 0x9f, 0x02, 0x33, 0x42, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x03, 0x07, 0x12, 0x04,
0x9f, 0x02, 0x3c, 0x41, 0x0a, 0xe6, 0x02, 0x0a, 0x04, 0x04, 0x09, 0x02, 0x04, 0x12, 0x04, 0xa7,
0x02, 0x02, 0x3c, 0x1a, 0xd7, 0x02, 0x20, 0x49, 0x66, 0x20, 0x73, 0x65, 0x74, 0x20, 0x74, 0x72,
0x75, 0x65, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4a, 0x61, 0x76,
0x61, 0x32, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f,
0x72, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x20,
0x63, 0x6f, 0x64, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x0a, 0x20, 0x74, 0x68, 0x72, 0x6f, 0x77,
0x73, 0x20, 0x61, 0x6e, 0x20, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x77,
0x68, 0x65, 0x6e, 0x65, 0x76, 0x65, 0x72, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x65, 0x6d,
0x70, 0x74, 0x20, 0x69, 0x73, 0x20, 0x6d, 0x61, 0x64, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x73,
0x73, 0x69, 0x67, 0x6e, 0x20, 0x61, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x55, 0x54, 0x46, 0x2d, 0x38,
0x0a, 0x20, 0x62, 0x79, 0x74, 0x65, 0x20, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x20,
0x74, 0x6f, 0x20, 0x61, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x66, 0x69, 0x65, 0x6c,
0x64, 0x2e, 0x0a, 0x20, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x72, 0x65, 0x66, 0x6c,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x64, 0x6f, 0x20, 0x74,
0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x2e, 0x0a, 0x20, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65,
0x72, 0x2c, 0x20, 0x61, 0x6e, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20,
0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x20, 0x61, 0x63, 0x63, 0x65,
0x70, 0x74, 0x73, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x55, 0x54, 0x46, 0x2d, 0x38, 0x20, 0x62, 0x79,
0x74, 0x65, 0x20, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x2e, 0x0a, 0x20, 0x54,
0x68, 0x69, 0x73, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x68, 0x61, 0x73, 0x20, 0x6e,
0x6f, 0x20, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x6f, 0x6e, 0x20, 0x77, 0x68, 0x65, 0x6e,
0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c,
0x69, 0x74, 0x65, 0x20, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x09, 0x02, 0x04, 0x04, 0x12, 0x04, 0xa7, 0x02, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x09, 0x02, 0x04, 0x05, 0x12, 0x04, 0xa7, 0x02, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x09, 0x02, 0x04, 0x01, 0x12, 0x04, 0xa7, 0x02, 0x10, 0x26, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09,
0x02, 0x04, 0x03, 0x12, 0x04, 0xa7, 0x02, 0x29, 0x2b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02,
0x04, 0x08, 0x12, 0x04, 0xa7, 0x02, 0x2c, 0x3b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x04,
0x07, 0x12, 0x04, 0xa7, 0x02, 0x35, 0x3a, 0x0a, 0x4c, 0x0a, 0x04, 0x04, 0x09, 0x04, 0x00, 0x12,
0x06, 0xab, 0x02, 0x02, 0xb0, 0x02, 0x03, 0x1a, 0x3c, 0x20, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61,
0x74, 0x65, 0x64, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x20, 0x63, 0x61, 0x6e, 0x20,
0x62, 0x65, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72,
0x20, 0x73, 0x70, 0x65, 0x65, 0x64, 0x20, 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x73,
0x69, 0x7a, 0x65, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x04, 0x00, 0x01, 0x12, 0x04,
0xab, 0x02, 0x07, 0x13, 0x0a, 0x44, 0x0a, 0x06, 0x04, 0x09, 0x04, 0x00, 0x02, 0x00, 0x12, 0x04,
0xac, 0x02, 0x04, 0x0e, 0x22, 0x34, 0x20, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x20,
0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x66, 0x6f,
0x72, 0x20, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x2c, 0x20, 0x73, 0x65, 0x72, 0x69, 0x61,
0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x0a, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x09,
0x04, 0x00, 0x02, 0x00, 0x01, 0x12, 0x04, 0xac, 0x02, 0x04, 0x09, 0x0a, 0x0f, 0x0a, 0x07, 0x04,
0x09, 0x04, 0x00, 0x02, 0x00, 0x02, 0x12, 0x04, 0xac, 0x02, 0x0c, 0x0d, 0x0a, 0x47, 0x0a, 0x06,
0x04, 0x09, 0x04, 0x00, 0x02, 0x01, 0x12, 0x04, 0xae, 0x02, 0x04, 0x12, 0x1a, 0x06, 0x20, 0x65,
0x74, 0x63, 0x2e, 0x0a, 0x22, 0x2f, 0x20, 0x55, 0x73, 0x65, 0x20, 0x52, 0x65, 0x66, 0x6c, 0x65,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x70, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x6d, 0x70, 0x6c,
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x68, 0x65, 0x73, 0x65, 0x20, 0x6d, 0x65, 0x74, 0x68,
0x6f, 0x64, 0x73, 0x2e, 0x0a, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x09, 0x04, 0x00, 0x02, 0x01, 0x01,
0x12, 0x04, 0xae, 0x02, 0x04, 0x0d, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x09, 0x04, 0x00, 0x02, 0x01,
0x02, 0x12, 0x04, 0xae, 0x02, 0x10, 0x11, 0x0a, 0x47, 0x0a, 0x06, 0x04, 0x09, 0x04, 0x00, 0x02,
0x02, 0x12, 0x04, 0xaf, 0x02, 0x04, 0x15, 0x22, 0x37, 0x20, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61,
0x74, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x4d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x4c, 0x69, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68,
0x65, 0x20, 0x6c, 0x69, 0x74, 0x65, 0x20, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x0a,
0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x09, 0x04, 0x00, 0x02, 0x02, 0x01, 0x12, 0x04, 0xaf, 0x02, 0x04,
0x10, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x09, 0x04, 0x00, 0x02, 0x02, 0x02, 0x12, 0x04, 0xaf, 0x02,
0x13, 0x14, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x09, 0x02, 0x05, 0x12, 0x04, 0xb1, 0x02, 0x02, 0x39,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x05, 0x04, 0x12, 0x04, 0xb1, 0x02, 0x02, 0x0a, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x05, 0x06, 0x12, 0x04, 0xb1, 0x02, 0x0b, 0x17, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x09, 0x02, 0x05, 0x01, 0x12, 0x04, 0xb1, 0x02, 0x18, 0x24, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x09, 0x02, 0x05, 0x03, 0x12, 0x04, 0xb1, 0x02, 0x27, 0x28, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x09, 0x02, 0x05, 0x08, 0x12, 0x04, 0xb1, 0x02, 0x29, 0x38, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x09, 0x02, 0x05, 0x07, 0x12, 0x04, 0xb1, 0x02, 0x32, 0x37, 0x0a, 0x73, 0x0a, 0x04, 0x04, 0x09,
0x02, 0x06, 0x12, 0x04, 0xb5, 0x02, 0x02, 0x22, 0x1a, 0x65, 0x20, 0x53, 0x65, 0x74, 0x73, 0x20,
0x74, 0x68, 0x65, 0x20, 0x47, 0x6f, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x20, 0x77,
0x68, 0x65, 0x72, 0x65, 0x20, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x20, 0x67, 0x65, 0x6e,
0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x69, 0x73,
0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x0a,
0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x65, 0x72, 0x65, 0x20,
0x69, 0x73, 0x20, 0x6e, 0x6f, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x0a, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x06, 0x04, 0x12, 0x04, 0xb5, 0x02, 0x02, 0x0a, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x09, 0x02, 0x06, 0x05, 0x12, 0x04, 0xb5, 0x02, 0x0b, 0x11, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x09, 0x02, 0x06, 0x01, 0x12, 0x04, 0xb5, 0x02, 0x12, 0x1c, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x09, 0x02, 0x06, 0x03, 0x12, 0x04, 0xb5, 0x02, 0x1f, 0x21, 0x0a, 0xcb, 0x04, 0x0a, 0x04,
0x04, 0x09, 0x02, 0x07, 0x12, 0x04, 0xc3, 0x02, 0x02, 0x39, 0x1a, 0xbc, 0x04, 0x20, 0x53, 0x68,
0x6f, 0x75, 0x6c, 0x64, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x20, 0x73, 0x65, 0x72,
0x76, 0x69, 0x63, 0x65, 0x73, 0x20, 0x62, 0x65, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x65, 0x61, 0x63, 0x68, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75,
0x61, 0x67, 0x65, 0x3f, 0x20, 0x20, 0x22, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x22, 0x20,
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x0a, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6e, 0x6f,
0x74, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x6e,
0x79, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x52, 0x50, 0x43,
0x20, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x65, 0x79, 0x20, 0x61,
0x72, 0x65, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20,
0x74, 0x68, 0x65, 0x0a, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x67,
0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x65, 0x61, 0x63,
0x68, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x28, 0x77, 0x69, 0x74, 0x68,
0x6f, 0x75, 0x74, 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x70,
0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x29, 0x2e, 0x0a, 0x20, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69,
0x63, 0x20, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x20, 0x77, 0x65, 0x72, 0x65, 0x20,
0x74, 0x68, 0x65, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x6b, 0x69, 0x6e, 0x64, 0x20, 0x6f, 0x66,
0x20, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79,
0x0a, 0x20, 0x65, 0x61, 0x72, 0x6c, 0x79, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73,
0x20, 0x6f, 0x66, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x2e, 0x0a, 0x0a, 0x20, 0x47, 0x65,
0x6e, 0x65, 0x72, 0x69, 0x63, 0x20, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x20, 0x61,
0x72, 0x65, 0x20, 0x6e, 0x6f, 0x77, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65,
0x64, 0x20, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20,
0x66, 0x61, 0x76, 0x6f, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x70,
0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x0a, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x67, 0x65, 0x6e,
0x65, 0x72, 0x61, 0x74, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69,
0x66, 0x69, 0x63, 0x20, 0x74, 0x6f, 0x20, 0x79, 0x6f, 0x75, 0x72, 0x20, 0x70, 0x61, 0x72, 0x74,
0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x52, 0x50, 0x43, 0x20, 0x73, 0x79, 0x73, 0x74, 0x65,
0x6d, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x65, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x2c, 0x0a, 0x20,
0x74, 0x68, 0x65, 0x73, 0x65, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x74, 0x6f,
0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x2e, 0x20, 0x20, 0x4f, 0x6c, 0x64, 0x20, 0x63, 0x6f, 0x64,
0x65, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x73, 0x20,
0x6f, 0x6e, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x20, 0x73, 0x65, 0x72, 0x76, 0x69,
0x63, 0x65, 0x73, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x0a, 0x20, 0x65, 0x78, 0x70, 0x6c,
0x69, 0x63, 0x69, 0x74, 0x6c, 0x79, 0x20, 0x73, 0x65, 0x74, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x20,
0x74, 0x6f, 0x20, 0x74, 0x72, 0x75, 0x65, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02,
0x07, 0x04, 0x12, 0x04, 0xc3, 0x02, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x07,
0x05, 0x12, 0x04, 0xc3, 0x02, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x07, 0x01,
0x12, 0x04, 0xc3, 0x02, 0x10, 0x23, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x07, 0x03, 0x12,
0x04, 0xc3, 0x02, 0x26, 0x28, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x07, 0x08, 0x12, 0x04,
0xc3, 0x02, 0x29, 0x38, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x07, 0x07, 0x12, 0x04, 0xc3,
0x02, 0x32, 0x37, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x09, 0x02, 0x08, 0x12, 0x04, 0xc4, 0x02, 0x02,
0x3b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x08, 0x04, 0x12, 0x04, 0xc4, 0x02, 0x02, 0x0a,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x08, 0x05, 0x12, 0x04, 0xc4, 0x02, 0x0b, 0x0f, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x08, 0x01, 0x12, 0x04, 0xc4, 0x02, 0x10, 0x25, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x09, 0x02, 0x08, 0x03, 0x12, 0x04, 0xc4, 0x02, 0x28, 0x2a, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x09, 0x02, 0x08, 0x08, 0x12, 0x04, 0xc4, 0x02, 0x2b, 0x3a, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x09, 0x02, 0x08, 0x07, 0x12, 0x04, 0xc4, 0x02, 0x34, 0x39, 0x0a, 0x0c, 0x0a, 0x04, 0x04,
0x09, 0x02, 0x09, 0x12, 0x04, 0xc5, 0x02, 0x02, 0x39, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02,
0x09, 0x04, 0x12, 0x04, 0xc5, 0x02, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x09,
0x05, 0x12, 0x04, 0xc5, 0x02, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x09, 0x01,
0x12, 0x04, 0xc5, 0x02, 0x10, 0x23, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x09, 0x03, 0x12,
0x04, 0xc5, 0x02, 0x26, 0x28, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x09, 0x08, 0x12, 0x04,
0xc5, 0x02, 0x29, 0x38, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x09, 0x07, 0x12, 0x04, 0xc5,
0x02, 0x32, 0x37, 0x0a, 0xf3, 0x01, 0x0a, 0x04, 0x04, 0x09, 0x02, 0x0a, 0x12, 0x04, 0xcb, 0x02,
0x02, 0x30, 0x1a, 0xe4, 0x01, 0x20, 0x49, 0x73, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x66, 0x69,
0x6c, 0x65, 0x20, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x3f, 0x0a, 0x20,
0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65,
0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x65, 0x6d, 0x69, 0x74, 0x20,
0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x76, 0x65, 0x72,
0x79, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x69,
0x6c, 0x65, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x69, 0x74, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62,
0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x6c, 0x79, 0x20, 0x69, 0x67, 0x6e,
0x6f, 0x72, 0x65, 0x64, 0x3b, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x76, 0x65, 0x72,
0x79, 0x0a, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69,
0x73, 0x20, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x69, 0x6e,
0x67, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02,
0x0a, 0x04, 0x12, 0x04, 0xcb, 0x02, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x0a,
0x05, 0x12, 0x04, 0xcb, 0x02, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x0a, 0x01,
0x12, 0x04, 0xcb, 0x02, 0x10, 0x1a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x0a, 0x03, 0x12,
0x04, 0xcb, 0x02, 0x1d, 0x1f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x0a, 0x08, 0x12, 0x04,
0xcb, 0x02, 0x20, 0x2f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x0a, 0x07, 0x12, 0x04, 0xcb,
0x02, 0x29, 0x2e, 0x0a, 0x4f, 0x0a, 0x04, 0x04, 0x09, 0x02, 0x0b, 0x12, 0x04, 0xcf, 0x02, 0x02,
0x3a, 0x1a, 0x41, 0x20, 0x54, 0x68, 0x65, 0x20, 0x70, 0x61, 0x72, 0x73, 0x65, 0x72, 0x20, 0x73,
0x74, 0x6f, 0x72, 0x65, 0x73, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x74,
0x20, 0x64, 0x6f, 0x65, 0x73, 0x6e, 0x27, 0x74, 0x20, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69,
0x7a, 0x65, 0x20, 0x68, 0x65, 0x72, 0x65, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x61, 0x62, 0x6f,
0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x0b, 0x04, 0x12, 0x04, 0xcf,
0x02, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x0b, 0x06, 0x12, 0x04, 0xcf, 0x02,
0x0b, 0x1e, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x0b, 0x01, 0x12, 0x04, 0xcf, 0x02, 0x1f,
0x33, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x0b, 0x03, 0x12, 0x04, 0xcf, 0x02, 0x36, 0x39,
0x0a, 0x5a, 0x0a, 0x03, 0x04, 0x09, 0x05, 0x12, 0x04, 0xd2, 0x02, 0x02, 0x19, 0x1a, 0x4d, 0x20,
0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x64, 0x65, 0x66, 0x69,
0x6e, 0x65, 0x20, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x20, 0x69, 0x6e, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20,
0x6f, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e,
0x20, 0x53, 0x65, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x04,
0x04, 0x09, 0x05, 0x00, 0x12, 0x04, 0xd2, 0x02, 0x0d, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09,
0x05, 0x00, 0x01, 0x12, 0x04, 0xd2, 0x02, 0x0d, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x09, 0x05,
0x00, 0x02, 0x12, 0x04, 0xd2, 0x02, 0x15, 0x18, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0a, 0x12, 0x06,
0xd5, 0x02, 0x00, 0xfa, 0x02, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0a, 0x01, 0x12, 0x04, 0xd5,
0x02, 0x08, 0x16, 0x0a, 0xd8, 0x05, 0x0a, 0x04, 0x04, 0x0a, 0x02, 0x00, 0x12, 0x04, 0xe8, 0x02,
0x02, 0x3c, 0x1a, 0xc9, 0x05, 0x20, 0x53, 0x65, 0x74, 0x20, 0x74, 0x72, 0x75, 0x65, 0x20, 0x74,
0x6f, 0x20, 0x75, 0x73, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x6c, 0x64, 0x20, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x31, 0x20, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x20,
0x77, 0x69, 0x72, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20,
0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x0a, 0x20, 0x54, 0x68, 0x69,
0x73, 0x20, 0x69, 0x73, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x66, 0x6f,
0x72, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x77, 0x61, 0x72, 0x64, 0x73, 0x2d, 0x63, 0x6f, 0x6d, 0x70,
0x61, 0x74, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74,
0x68, 0x65, 0x20, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x20, 0x77, 0x69,
0x72, 0x65, 0x0a, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x20, 0x20, 0x59, 0x6f, 0x75,
0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x75, 0x73, 0x65, 0x20,
0x74, 0x68, 0x69, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x6f, 0x74, 0x68,
0x65, 0x72, 0x20, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x3a, 0x20, 0x20, 0x49, 0x74, 0x27, 0x73,
0x20, 0x6c, 0x65, 0x73, 0x73, 0x0a, 0x20, 0x65, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74,
0x2c, 0x20, 0x68, 0x61, 0x73, 0x20, 0x66, 0x65, 0x77, 0x65, 0x72, 0x20, 0x66, 0x65, 0x61, 0x74,
0x75, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x72,
0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x2e, 0x0a, 0x0a,
0x20, 0x54, 0x68, 0x65, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x6d, 0x75, 0x73,
0x74, 0x20, 0x62, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x65, 0x78, 0x61,
0x63, 0x74, 0x6c, 0x79, 0x20, 0x61, 0x73, 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x3a,
0x0a, 0x20, 0x20, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x46, 0x6f, 0x6f, 0x20,
0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x77, 0x69, 0x72, 0x65, 0x5f, 0x66,
0x6f, 0x72, 0x6d, 0x61, 0x74, 0x20, 0x3d, 0x20, 0x74, 0x72, 0x75, 0x65, 0x3b, 0x0a, 0x20, 0x20,
0x20, 0x20, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x34, 0x20,
0x74, 0x6f, 0x20, 0x6d, 0x61, 0x78, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x4e, 0x6f,
0x74, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x20, 0x63, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20,
0x61, 0x6e, 0x79, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x66, 0x69, 0x65, 0x6c,
0x64, 0x73, 0x3b, 0x20, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x73, 0x20,
0x6f, 0x6e, 0x6c, 0x79, 0x0a, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e,
0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x0a, 0x0a, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x65, 0x78, 0x74,
0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x79, 0x6f, 0x75, 0x72, 0x20,
0x74, 0x79, 0x70, 0x65, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x73, 0x69, 0x6e,
0x67, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x3b, 0x20,
0x65, 0x2e, 0x67, 0x2e, 0x20, 0x74, 0x68, 0x65, 0x79, 0x20, 0x63, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x0a, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x73, 0x2c, 0x20, 0x65, 0x6e, 0x75,
0x6d, 0x73, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20,
0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x0a, 0x0a, 0x20, 0x42, 0x65, 0x63, 0x61,
0x75, 0x73, 0x65, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x6f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65,
0x20, 0x74, 0x77, 0x6f, 0x20, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63,
0x65, 0x64, 0x20, 0x62, 0x79, 0x0a, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x63, 0x6f, 0x6c, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x72, 0x2e, 0x0a, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x0a, 0x02, 0x00, 0x04, 0x12, 0x04, 0xe8, 0x02, 0x02, 0x0a, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x0a, 0x02, 0x00, 0x05, 0x12, 0x04, 0xe8, 0x02, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x0a, 0x02, 0x00, 0x01, 0x12, 0x04, 0xe8, 0x02, 0x10, 0x27, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x0a, 0x02, 0x00, 0x03, 0x12, 0x04, 0xe8, 0x02, 0x2a, 0x2b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a,
0x02, 0x00, 0x08, 0x12, 0x04, 0xe8, 0x02, 0x2c, 0x3b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02,
0x00, 0x07, 0x12, 0x04, 0xe8, 0x02, 0x35, 0x3a, 0x0a, 0xeb, 0x01, 0x0a, 0x04, 0x04, 0x0a, 0x02,
0x01, 0x12, 0x04, 0xed, 0x02, 0x02, 0x44, 0x1a, 0xdc, 0x01, 0x20, 0x44, 0x69, 0x73, 0x61, 0x62,
0x6c, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61,
0x72, 0x64, 0x20, 0x22, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x28, 0x29,
0x22, 0x20, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x2c, 0x20, 0x77, 0x68, 0x69, 0x63,
0x68, 0x20, 0x63, 0x61, 0x6e, 0x0a, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x20,
0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x6f, 0x66, 0x20,
0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x20, 0x20,
0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x6d, 0x65, 0x61, 0x6e, 0x74, 0x20, 0x74, 0x6f,
0x20, 0x6d, 0x61, 0x6b, 0x65, 0x20, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a,
0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x31, 0x20, 0x65, 0x61, 0x73,
0x69, 0x65, 0x72, 0x3b, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x73, 0x68,
0x6f, 0x75, 0x6c, 0x64, 0x20, 0x61, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64,
0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x20, 0x22, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
0x74, 0x6f, 0x72, 0x22, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x01, 0x04, 0x12,
0x04, 0xed, 0x02, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x01, 0x05, 0x12, 0x04,
0xed, 0x02, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x01, 0x01, 0x12, 0x04, 0xed,
0x02, 0x10, 0x2f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x01, 0x03, 0x12, 0x04, 0xed, 0x02,
0x32, 0x33, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x01, 0x08, 0x12, 0x04, 0xed, 0x02, 0x34,
0x43, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x01, 0x07, 0x12, 0x04, 0xed, 0x02, 0x3d, 0x42,
0x0a, 0xee, 0x01, 0x0a, 0x04, 0x04, 0x0a, 0x02, 0x02, 0x12, 0x04, 0xf3, 0x02, 0x02, 0x2f, 0x1a,
0xdf, 0x01, 0x20, 0x49, 0x73, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x20, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x3f, 0x0a, 0x20,
0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65,
0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x65, 0x6d, 0x69, 0x74, 0x20,
0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20,
0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x69, 0x74, 0x20, 0x77,
0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x6c,
0x79, 0x20, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x3b, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68,
0x65, 0x20, 0x76, 0x65, 0x72, 0x79, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x2c, 0x0a, 0x20, 0x74,
0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69,
0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x70, 0x72, 0x65,
0x63, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e,
0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x02, 0x04, 0x12, 0x04, 0xf3, 0x02, 0x02, 0x0a,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x02, 0x05, 0x12, 0x04, 0xf3, 0x02, 0x0b, 0x0f, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x02, 0x01, 0x12, 0x04, 0xf3, 0x02, 0x10, 0x1a, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x0a, 0x02, 0x02, 0x03, 0x12, 0x04, 0xf3, 0x02, 0x1d, 0x1e, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x0a, 0x02, 0x02, 0x08, 0x12, 0x04, 0xf3, 0x02, 0x1f, 0x2e, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x0a, 0x02, 0x02, 0x07, 0x12, 0x04, 0xf3, 0x02, 0x28, 0x2d, 0x0a, 0x4f, 0x0a, 0x04, 0x04,
0x0a, 0x02, 0x03, 0x12, 0x04, 0xf6, 0x02, 0x02, 0x3a, 0x1a, 0x41, 0x20, 0x54, 0x68, 0x65, 0x20,
0x70, 0x61, 0x72, 0x73, 0x65, 0x72, 0x20, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x20, 0x6f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x74, 0x20, 0x64, 0x6f, 0x65, 0x73, 0x6e, 0x27, 0x74,
0x20, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x20, 0x68, 0x65, 0x72, 0x65, 0x2e,
0x20, 0x53, 0x65, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x0a, 0x02, 0x03, 0x04, 0x12, 0x04, 0xf6, 0x02, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x0a, 0x02, 0x03, 0x06, 0x12, 0x04, 0xf6, 0x02, 0x0b, 0x1e, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a,
0x02, 0x03, 0x01, 0x12, 0x04, 0xf6, 0x02, 0x1f, 0x33, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02,
0x03, 0x03, 0x12, 0x04, 0xf6, 0x02, 0x36, 0x39, 0x0a, 0x5a, 0x0a, 0x03, 0x04, 0x0a, 0x05, 0x12,
0x04, 0xf9, 0x02, 0x02, 0x19, 0x1a, 0x4d, 0x20, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x20,
0x63, 0x61, 0x6e, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x75, 0x73, 0x74, 0x6f,
0x6d, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x65, 0x78, 0x74,
0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x61, 0x62, 0x6f,
0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0a, 0x05, 0x00, 0x12, 0x04, 0xf9, 0x02,
0x0d, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x05, 0x00, 0x01, 0x12, 0x04, 0xf9, 0x02, 0x0d,
0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x05, 0x00, 0x02, 0x12, 0x04, 0xf9, 0x02, 0x15, 0x18,
0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0b, 0x12, 0x06, 0xfc, 0x02, 0x00, 0xce, 0x03, 0x01, 0x0a, 0x0b,
0x0a, 0x03, 0x04, 0x0b, 0x01, 0x12, 0x04, 0xfc, 0x02, 0x08, 0x14, 0x0a, 0xa3, 0x02, 0x0a, 0x04,
0x04, 0x0b, 0x02, 0x00, 0x12, 0x04, 0x81, 0x03, 0x02, 0x2e, 0x1a, 0x94, 0x02, 0x20, 0x54, 0x68,
0x65, 0x20, 0x63, 0x74, 0x79, 0x70, 0x65, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69,
0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x43, 0x2b, 0x2b,
0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x20,
0x74, 0x6f, 0x20, 0x75, 0x73, 0x65, 0x20, 0x61, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65,
0x6e, 0x74, 0x0a, 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20,
0x74, 0x68, 0x61, 0x6e, 0x20, 0x69, 0x74, 0x20, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x6c, 0x79,
0x20, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x2e, 0x20, 0x20, 0x53, 0x65, 0x65, 0x20, 0x74, 0x68, 0x65,
0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x0a, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x20, 0x62, 0x65, 0x6c, 0x6f, 0x77, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20,
0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x79, 0x65,
0x74, 0x20, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e,
0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x70, 0x65, 0x6e, 0x20, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x0a, 0x20, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x20, 0x2d, 0x2d, 0x20, 0x73, 0x6f, 0x72,
0x72, 0x79, 0x2c, 0x20, 0x77, 0x65, 0x27, 0x6c, 0x6c, 0x20, 0x74, 0x72, 0x79, 0x20, 0x74, 0x6f,
0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x69, 0x74, 0x20, 0x69, 0x6e, 0x20, 0x61,
0x20, 0x66, 0x75, 0x74, 0x75, 0x72, 0x65, 0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x21,
0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x00, 0x04, 0x12, 0x04, 0x81, 0x03, 0x02, 0x0a,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x00, 0x06, 0x12, 0x04, 0x81, 0x03, 0x0b, 0x10, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x00, 0x01, 0x12, 0x04, 0x81, 0x03, 0x11, 0x16, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x0b, 0x02, 0x00, 0x03, 0x12, 0x04, 0x81, 0x03, 0x19, 0x1a, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x0b, 0x02, 0x00, 0x08, 0x12, 0x04, 0x81, 0x03, 0x1b, 0x2d, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x0b, 0x02, 0x00, 0x07, 0x12, 0x04, 0x81, 0x03, 0x26, 0x2c, 0x0a, 0x0e, 0x0a, 0x04, 0x04,
0x0b, 0x04, 0x00, 0x12, 0x06, 0x82, 0x03, 0x02, 0x89, 0x03, 0x03, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x0b, 0x04, 0x00, 0x01, 0x12, 0x04, 0x82, 0x03, 0x07, 0x0c, 0x0a, 0x1f, 0x0a, 0x06, 0x04, 0x0b,
0x04, 0x00, 0x02, 0x00, 0x12, 0x04, 0x84, 0x03, 0x04, 0x0f, 0x1a, 0x0f, 0x20, 0x44, 0x65, 0x66,
0x61, 0x75, 0x6c, 0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x2e, 0x0a, 0x0a, 0x0f, 0x0a, 0x07, 0x04,
0x0b, 0x04, 0x00, 0x02, 0x00, 0x01, 0x12, 0x04, 0x84, 0x03, 0x04, 0x0a, 0x0a, 0x0f, 0x0a, 0x07,
0x04, 0x0b, 0x04, 0x00, 0x02, 0x00, 0x02, 0x12, 0x04, 0x84, 0x03, 0x0d, 0x0e, 0x0a, 0x0e, 0x0a,
0x06, 0x04, 0x0b, 0x04, 0x00, 0x02, 0x01, 0x12, 0x04, 0x86, 0x03, 0x04, 0x0d, 0x0a, 0x0f, 0x0a,
0x07, 0x04, 0x0b, 0x04, 0x00, 0x02, 0x01, 0x01, 0x12, 0x04, 0x86, 0x03, 0x04, 0x08, 0x0a, 0x0f,
0x0a, 0x07, 0x04, 0x0b, 0x04, 0x00, 0x02, 0x01, 0x02, 0x12, 0x04, 0x86, 0x03, 0x0b, 0x0c, 0x0a,
0x0e, 0x0a, 0x06, 0x04, 0x0b, 0x04, 0x00, 0x02, 0x02, 0x12, 0x04, 0x88, 0x03, 0x04, 0x15, 0x0a,
0x0f, 0x0a, 0x07, 0x04, 0x0b, 0x04, 0x00, 0x02, 0x02, 0x01, 0x12, 0x04, 0x88, 0x03, 0x04, 0x10,
0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0b, 0x04, 0x00, 0x02, 0x02, 0x02, 0x12, 0x04, 0x88, 0x03, 0x13,
0x14, 0x0a, 0x8a, 0x02, 0x0a, 0x04, 0x04, 0x0b, 0x02, 0x01, 0x12, 0x04, 0x8e, 0x03, 0x02, 0x1b,
0x1a, 0xfb, 0x01, 0x20, 0x54, 0x68, 0x65, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64, 0x20, 0x6f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x65, 0x6e, 0x61,
0x62, 0x6c, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65,
0x64, 0x20, 0x70, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x20, 0x66, 0x69, 0x65, 0x6c,
0x64, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x0a, 0x20, 0x61, 0x20,
0x6d, 0x6f, 0x72, 0x65, 0x20, 0x65, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x20, 0x72,
0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x6e,
0x20, 0x74, 0x68, 0x65, 0x20, 0x77, 0x69, 0x72, 0x65, 0x2e, 0x20, 0x52, 0x61, 0x74, 0x68, 0x65,
0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x6c,
0x79, 0x0a, 0x20, 0x77, 0x72, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74,
0x61, 0x67, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20,
0x65, 0x61, 0x63, 0x68, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x20, 0x74, 0x68,
0x65, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x72, 0x65, 0x20, 0x61, 0x72, 0x72, 0x61, 0x79, 0x20, 0x69,
0x73, 0x20, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x20, 0x61, 0x73, 0x0a, 0x20, 0x61, 0x20,
0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x2d, 0x64, 0x65,
0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x20, 0x62, 0x6c, 0x6f, 0x62, 0x2e, 0x0a, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x0b, 0x02, 0x01, 0x04, 0x12, 0x04, 0x8e, 0x03, 0x02, 0x0a, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x0b, 0x02, 0x01, 0x05, 0x12, 0x04, 0x8e, 0x03, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x0b, 0x02, 0x01, 0x01, 0x12, 0x04, 0x8e, 0x03, 0x10, 0x16, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x0b, 0x02, 0x01, 0x03, 0x12, 0x04, 0x8e, 0x03, 0x19, 0x1a, 0x0a, 0xf0, 0x0c, 0x0a, 0x04, 0x04,
0x0b, 0x02, 0x02, 0x12, 0x04, 0xae, 0x03, 0x02, 0x29, 0x1a, 0xe1, 0x0c, 0x20, 0x53, 0x68, 0x6f,
0x75, 0x6c, 0x64, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x62,
0x65, 0x20, 0x70, 0x61, 0x72, 0x73, 0x65, 0x64, 0x20, 0x6c, 0x61, 0x7a, 0x69, 0x6c, 0x79, 0x3f,
0x20, 0x20, 0x4c, 0x61, 0x7a, 0x79, 0x20, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x20, 0x6f,
0x6e, 0x6c, 0x79, 0x20, 0x74, 0x6f, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2d, 0x74,
0x79, 0x70, 0x65, 0x0a, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x2e, 0x20, 0x20, 0x49, 0x74,
0x20, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x77, 0x68, 0x65, 0x6e,
0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x20,
0x70, 0x61, 0x72, 0x73, 0x65, 0x64, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, 0x69, 0x6e, 0x6e,
0x65, 0x72, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x27, 0x73, 0x20, 0x63, 0x6f, 0x6e,
0x74, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x62,
0x65, 0x20, 0x70, 0x61, 0x72, 0x73, 0x65, 0x64, 0x20, 0x62, 0x75, 0x74, 0x20, 0x69, 0x6e, 0x73,
0x74, 0x65, 0x61, 0x64, 0x20, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x65,
0x6e, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x0a, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x20, 0x20, 0x54,
0x68, 0x65, 0x20, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x62,
0x65, 0x20, 0x70, 0x61, 0x72, 0x73, 0x65, 0x64, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x69, 0x74,
0x20, 0x69, 0x73, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x20, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73,
0x65, 0x64, 0x2e, 0x0a, 0x0a, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x6f, 0x6e,
0x6c, 0x79, 0x20, 0x61, 0x20, 0x68, 0x69, 0x6e, 0x74, 0x2e, 0x20, 0x20, 0x49, 0x6d, 0x70, 0x6c,
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20,
0x66, 0x72, 0x65, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x68, 0x6f, 0x6f, 0x73, 0x65, 0x20, 0x77,
0x68, 0x65, 0x74, 0x68, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x75, 0x73, 0x65, 0x0a, 0x20, 0x65,
0x61, 0x67, 0x65, 0x72, 0x20, 0x6f, 0x72, 0x20, 0x6c, 0x61, 0x7a, 0x79, 0x20, 0x70, 0x61, 0x72,
0x73, 0x69, 0x6e, 0x67, 0x20, 0x72, 0x65, 0x67, 0x61, 0x72, 0x64, 0x6c, 0x65, 0x73, 0x73, 0x20,
0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6f, 0x66, 0x20,
0x74, 0x68, 0x69, 0x73, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x20, 0x48, 0x6f,
0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x0a, 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x20,
0x74, 0x68, 0x69, 0x73, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x72, 0x75, 0x65,
0x20, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74,
0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x20, 0x61, 0x75, 0x74, 0x68,
0x6f, 0x72, 0x20, 0x62, 0x65, 0x6c, 0x69, 0x65, 0x76, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74,
0x0a, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x6c, 0x61, 0x7a, 0x79, 0x20, 0x70, 0x61, 0x72,
0x73, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x66, 0x69, 0x65,
0x6c, 0x64, 0x20, 0x69, 0x73, 0x20, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20,
0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x62, 0x6f, 0x6f, 0x6b, 0x6b,
0x65, 0x65, 0x70, 0x69, 0x6e, 0x67, 0x0a, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x68, 0x65, 0x61, 0x64,
0x20, 0x74, 0x79, 0x70, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x6e, 0x65, 0x65, 0x64, 0x65,
0x64, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x69,
0x74, 0x2e, 0x0a, 0x0a, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x20, 0x64, 0x6f, 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74,
0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20, 0x69, 0x6e, 0x74, 0x65,
0x72, 0x66, 0x61, 0x63, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x67, 0x65, 0x6e,
0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x3b, 0x0a, 0x20, 0x61, 0x6c,
0x6c, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75,
0x72, 0x65, 0x73, 0x20, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73,
0x61, 0x6d, 0x65, 0x2e, 0x20, 0x20, 0x46, 0x75, 0x72, 0x74, 0x68, 0x65, 0x72, 0x6d, 0x6f, 0x72,
0x65, 0x2c, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x2d, 0x73, 0x61, 0x66, 0x65, 0x74, 0x79,
0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61,
0x63, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74,
0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x3b, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73,
0x20, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x20, 0x73, 0x61, 0x66, 0x65, 0x20, 0x74, 0x6f, 0x0a,
0x20, 0x63, 0x61, 0x6c, 0x6c, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69,
0x70, 0x6c, 0x65, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x63,
0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x2c, 0x20, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x20,
0x6e, 0x6f, 0x6e, 0x2d, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64,
0x73, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x65, 0x0a, 0x20, 0x74, 0x6f, 0x20, 0x72,
0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x20, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65,
0x20, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x0a, 0x0a, 0x0a, 0x20, 0x4e, 0x6f, 0x74, 0x65,
0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x63, 0x68, 0x6f, 0x6f, 0x73, 0x65,
0x20, 0x6e, 0x6f, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x20, 0x72, 0x65,
0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x20, 0x77, 0x69,
0x74, 0x68, 0x69, 0x6e, 0x0a, 0x20, 0x61, 0x20, 0x6c, 0x61, 0x7a, 0x79, 0x20, 0x73, 0x75, 0x62,
0x2d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x61, 0x74, 0x20,
0x69, 0x73, 0x2c, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x73, 0x49, 0x6e,
0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x28, 0x29, 0x20, 0x6f, 0x6e, 0x20, 0x74,
0x68, 0x65, 0x20, 0x6f, 0x75, 0x74, 0x68, 0x65, 0x72, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x0a, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x74, 0x72,
0x75, 0x65, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x20, 0x69, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x69,
0x6e, 0x6e, 0x65, 0x72, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x68, 0x61, 0x73,
0x20, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65,
0x64, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x2e, 0x0a, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20,
0x69, 0x73, 0x20, 0x6e, 0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0x20, 0x62, 0x65, 0x63,
0x61, 0x75, 0x73, 0x65, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x77, 0x69, 0x73, 0x65, 0x20, 0x74,
0x68, 0x65, 0x20, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x20, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x62,
0x65, 0x0a, 0x20, 0x70, 0x61, 0x72, 0x73, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x6f, 0x72, 0x64,
0x65, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x74, 0x68,
0x65, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x2c, 0x20, 0x64, 0x65, 0x66, 0x65, 0x61, 0x74, 0x69,
0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x75, 0x72, 0x70, 0x6f, 0x73, 0x65, 0x20, 0x6f,
0x66, 0x20, 0x6c, 0x61, 0x7a, 0x79, 0x0a, 0x20, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x2e,
0x20, 0x20, 0x41, 0x6e, 0x20, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x63, 0x68, 0x6f, 0x6f, 0x73, 0x65,
0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x20, 0x72,
0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x0a, 0x20,
0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x65,
0x6e, 0x74, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x20, 0x69, 0x74, 0x2e, 0x20, 0x20, 0x54, 0x68,
0x61, 0x74, 0x20, 0x69, 0x73, 0x2c, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x70,
0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x73, 0x75, 0x62, 0x2d, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, 0x69, 0x6d, 0x70, 0x6c,
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20,
0x65, 0x69, 0x74, 0x68, 0x65, 0x72, 0x20, 0x2a, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x2a, 0x20,
0x63, 0x68, 0x65, 0x63, 0x6b, 0x20, 0x69, 0x74, 0x73, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72,
0x65, 0x64, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x2a, 0x6e,
0x65, 0x76, 0x65, 0x72, 0x2a, 0x0a, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x20, 0x69, 0x74, 0x73,
0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73,
0x2c, 0x20, 0x72, 0x65, 0x67, 0x61, 0x72, 0x64, 0x6c, 0x65, 0x73, 0x73, 0x20, 0x6f, 0x66, 0x20,
0x77, 0x68, 0x65, 0x74, 0x68, 0x65, 0x72, 0x20, 0x6f, 0x72, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x74,
0x68, 0x65, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x68, 0x61, 0x73, 0x0a, 0x20,
0x62, 0x65, 0x65, 0x6e, 0x20, 0x70, 0x61, 0x72, 0x73, 0x65, 0x64, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x0b, 0x02, 0x02, 0x04, 0x12, 0x04, 0xae, 0x03, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x0b, 0x02, 0x02, 0x05, 0x12, 0x04, 0xae, 0x03, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x0b, 0x02, 0x02, 0x01, 0x12, 0x04, 0xae, 0x03, 0x10, 0x14, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b,
0x02, 0x02, 0x03, 0x12, 0x04, 0xae, 0x03, 0x17, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02,
0x02, 0x08, 0x12, 0x04, 0xae, 0x03, 0x19, 0x28, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x02,
0x07, 0x12, 0x04, 0xae, 0x03, 0x22, 0x27, 0x0a, 0xe8, 0x01, 0x0a, 0x04, 0x04, 0x0b, 0x02, 0x03,
0x12, 0x04, 0xb4, 0x03, 0x02, 0x2f, 0x1a, 0xd9, 0x01, 0x20, 0x49, 0x73, 0x20, 0x74, 0x68, 0x69,
0x73, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74,
0x65, 0x64, 0x3f, 0x0a, 0x20, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f,
0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x70, 0x6c, 0x61,
0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x63, 0x61, 0x6e, 0x20,
0x65, 0x6d, 0x69, 0x74, 0x20, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x20,
0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x66, 0x6f, 0x72,
0x20, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x73, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x69,
0x74, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65,
0x74, 0x65, 0x6c, 0x79, 0x20, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x3b, 0x20, 0x69, 0x6e,
0x20, 0x74, 0x68, 0x65, 0x20, 0x76, 0x65, 0x72, 0x79, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x2c,
0x20, 0x74, 0x68, 0x69, 0x73, 0x0a, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x6d,
0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65,
0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73,
0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x03, 0x04, 0x12, 0x04, 0xb4, 0x03, 0x02,
0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x03, 0x05, 0x12, 0x04, 0xb4, 0x03, 0x0b, 0x0f,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x03, 0x01, 0x12, 0x04, 0xb4, 0x03, 0x10, 0x1a, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x03, 0x03, 0x12, 0x04, 0xb4, 0x03, 0x1d, 0x1e, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x0b, 0x02, 0x03, 0x08, 0x12, 0x04, 0xb4, 0x03, 0x1f, 0x2e, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x0b, 0x02, 0x03, 0x07, 0x12, 0x04, 0xb4, 0x03, 0x28, 0x2d, 0x0a, 0xd7, 0x03, 0x0a,
0x04, 0x04, 0x0b, 0x02, 0x04, 0x12, 0x04, 0xc2, 0x03, 0x02, 0x2b, 0x1a, 0xc8, 0x03, 0x20, 0x45,
0x58, 0x50, 0x45, 0x52, 0x49, 0x4d, 0x45, 0x4e, 0x54, 0x41, 0x4c, 0x2e, 0x20, 0x20, 0x44, 0x4f,
0x20, 0x4e, 0x4f, 0x54, 0x20, 0x55, 0x53, 0x45, 0x2e, 0x0a, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x22,
0x6d, 0x61, 0x70, 0x22, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x2c, 0x20, 0x74, 0x68, 0x65,
0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x69, 0x65,
0x6c, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6e, 0x63, 0x6c, 0x6f, 0x73,
0x65, 0x64, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x0a, 0x20, 0x69, 0x73,
0x20, 0x74, 0x68, 0x65, 0x20, 0x6b, 0x65, 0x79, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x69,
0x73, 0x20, 0x6d, 0x61, 0x70, 0x2e, 0x20, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x2c, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x73, 0x65, 0x20, 0x77, 0x65, 0x20,
0x68, 0x61, 0x76, 0x65, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x20, 0x49, 0x74, 0x65, 0x6d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x71,
0x75, 0x69, 0x72, 0x65, 0x64, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x6e, 0x61, 0x6d,
0x65, 0x20, 0x3d, 0x20, 0x31, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x71, 0x75,
0x69, 0x72, 0x65, 0x64, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x76, 0x61, 0x6c, 0x75,
0x65, 0x20, 0x3d, 0x20, 0x32, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x6d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x20, 0x7b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x49, 0x74,
0x65, 0x6d, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x20, 0x3d, 0x20, 0x31, 0x20, 0x5b, 0x65, 0x78,
0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x6b,
0x65, 0x79, 0x3d, 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x5d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x7d,
0x0a, 0x20, 0x49, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x69, 0x74, 0x75, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x61, 0x70, 0x20, 0x6b, 0x65, 0x79,
0x20, 0x66, 0x6f, 0x72, 0x20, 0x49, 0x74, 0x65, 0x6d, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62,
0x65, 0x20, 0x73, 0x65, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x2e,
0x0a, 0x20, 0x54, 0x4f, 0x44, 0x4f, 0x3a, 0x20, 0x46, 0x75, 0x6c, 0x6c, 0x79, 0x2d, 0x69, 0x6d,
0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2c, 0x20, 0x74, 0x68,
0x65, 0x6e, 0x20, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x22, 0x65,
0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x22, 0x20, 0x70, 0x72,
0x65, 0x66, 0x69, 0x78, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x04, 0x04, 0x12,
0x04, 0xc2, 0x03, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x04, 0x05, 0x12, 0x04,
0xc2, 0x03, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x04, 0x01, 0x12, 0x04, 0xc2,
0x03, 0x12, 0x26, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x04, 0x03, 0x12, 0x04, 0xc2, 0x03,
0x29, 0x2a, 0x0a, 0x3f, 0x0a, 0x04, 0x04, 0x0b, 0x02, 0x05, 0x12, 0x04, 0xc5, 0x03, 0x02, 0x2a,
0x1a, 0x31, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2d, 0x69, 0x6e,
0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x2e, 0x20, 0x44, 0x6f, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x75, 0x73,
0x65, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x05, 0x04, 0x12, 0x04, 0xc5, 0x03,
0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x05, 0x05, 0x12, 0x04, 0xc5, 0x03, 0x0b,
0x0f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x05, 0x01, 0x12, 0x04, 0xc5, 0x03, 0x10, 0x14,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x05, 0x03, 0x12, 0x04, 0xc5, 0x03, 0x17, 0x19, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x05, 0x08, 0x12, 0x04, 0xc5, 0x03, 0x1a, 0x29, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x0b, 0x02, 0x05, 0x07, 0x12, 0x04, 0xc5, 0x03, 0x23, 0x28, 0x0a, 0x4f, 0x0a,
0x04, 0x04, 0x0b, 0x02, 0x06, 0x12, 0x04, 0xca, 0x03, 0x02, 0x3a, 0x1a, 0x41, 0x20, 0x54, 0x68,
0x65, 0x20, 0x70, 0x61, 0x72, 0x73, 0x65, 0x72, 0x20, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x20,
0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x74, 0x20, 0x64, 0x6f, 0x65, 0x73, 0x6e,
0x27, 0x74, 0x20, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x20, 0x68, 0x65, 0x72,
0x65, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x0b, 0x02, 0x06, 0x04, 0x12, 0x04, 0xca, 0x03, 0x02, 0x0a, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x0b, 0x02, 0x06, 0x06, 0x12, 0x04, 0xca, 0x03, 0x0b, 0x1e, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x0b, 0x02, 0x06, 0x01, 0x12, 0x04, 0xca, 0x03, 0x1f, 0x33, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x0b, 0x02, 0x06, 0x03, 0x12, 0x04, 0xca, 0x03, 0x36, 0x39, 0x0a, 0x5a, 0x0a, 0x03, 0x04, 0x0b,
0x05, 0x12, 0x04, 0xcd, 0x03, 0x02, 0x19, 0x1a, 0x4d, 0x20, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74,
0x73, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x75, 0x73,
0x74, 0x6f, 0x6d, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x65,
0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69,
0x73, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x61,
0x62, 0x6f, 0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0b, 0x05, 0x00, 0x12, 0x04,
0xcd, 0x03, 0x0d, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x05, 0x00, 0x01, 0x12, 0x04, 0xcd,
0x03, 0x0d, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x05, 0x00, 0x02, 0x12, 0x04, 0xcd, 0x03,
0x15, 0x18, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0c, 0x12, 0x06, 0xd0, 0x03, 0x00, 0xe1, 0x03, 0x01,
0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0c, 0x01, 0x12, 0x04, 0xd0, 0x03, 0x08, 0x13, 0x0a, 0x60, 0x0a,
0x04, 0x04, 0x0c, 0x02, 0x00, 0x12, 0x04, 0xd4, 0x03, 0x02, 0x20, 0x1a, 0x52, 0x20, 0x53, 0x65,
0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f,
0x20, 0x74, 0x72, 0x75, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x20, 0x6d,
0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74,
0x20, 0x74, 0x61, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68,
0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x0a, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x0a, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, 0x04, 0x12, 0x04, 0xd4, 0x03, 0x02, 0x0a, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, 0x05, 0x12, 0x04, 0xd4, 0x03, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x0c, 0x02, 0x00, 0x01, 0x12, 0x04, 0xd4, 0x03, 0x10, 0x1b, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x0c, 0x02, 0x00, 0x03, 0x12, 0x04, 0xd4, 0x03, 0x1e, 0x1f, 0x0a, 0xe5, 0x01, 0x0a, 0x04,
0x04, 0x0c, 0x02, 0x01, 0x12, 0x04, 0xda, 0x03, 0x02, 0x2f, 0x1a, 0xd6, 0x01, 0x20, 0x49, 0x73,
0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x65, 0x6e, 0x75, 0x6d, 0x20, 0x64, 0x65, 0x70, 0x72, 0x65,
0x63, 0x61, 0x74, 0x65, 0x64, 0x3f, 0x0a, 0x20, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e,
0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20,
0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x63,
0x61, 0x6e, 0x20, 0x65, 0x6d, 0x69, 0x74, 0x20, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74,
0x65, 0x64, 0x20, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20,
0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6e, 0x75, 0x6d, 0x2c, 0x20, 0x6f, 0x72,
0x20, 0x69, 0x74, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70,
0x6c, 0x65, 0x74, 0x65, 0x6c, 0x79, 0x20, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x3b, 0x20,
0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x76, 0x65, 0x72, 0x79, 0x20, 0x6c, 0x65, 0x61, 0x73,
0x74, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x0a, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x66, 0x6f,
0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20,
0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x65, 0x6e, 0x75, 0x6d,
0x73, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x01, 0x04, 0x12, 0x04, 0xda, 0x03,
0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x01, 0x05, 0x12, 0x04, 0xda, 0x03, 0x0b,
0x0f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x01, 0x01, 0x12, 0x04, 0xda, 0x03, 0x10, 0x1a,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x01, 0x03, 0x12, 0x04, 0xda, 0x03, 0x1d, 0x1e, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x01, 0x08, 0x12, 0x04, 0xda, 0x03, 0x1f, 0x2e, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x0c, 0x02, 0x01, 0x07, 0x12, 0x04, 0xda, 0x03, 0x28, 0x2d, 0x0a, 0x4f, 0x0a,
0x04, 0x04, 0x0c, 0x02, 0x02, 0x12, 0x04, 0xdd, 0x03, 0x02, 0x3a, 0x1a, 0x41, 0x20, 0x54, 0x68,
0x65, 0x20, 0x70, 0x61, 0x72, 0x73, 0x65, 0x72, 0x20, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x20,
0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x74, 0x20, 0x64, 0x6f, 0x65, 0x73, 0x6e,
0x27, 0x74, 0x20, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x20, 0x68, 0x65, 0x72,
0x65, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x0c, 0x02, 0x02, 0x04, 0x12, 0x04, 0xdd, 0x03, 0x02, 0x0a, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x0c, 0x02, 0x02, 0x06, 0x12, 0x04, 0xdd, 0x03, 0x0b, 0x1e, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x0c, 0x02, 0x02, 0x01, 0x12, 0x04, 0xdd, 0x03, 0x1f, 0x33, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x0c, 0x02, 0x02, 0x03, 0x12, 0x04, 0xdd, 0x03, 0x36, 0x39, 0x0a, 0x5a, 0x0a, 0x03, 0x04, 0x0c,
0x05, 0x12, 0x04, 0xe0, 0x03, 0x02, 0x19, 0x1a, 0x4d, 0x20, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74,
0x73, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x75, 0x73,
0x74, 0x6f, 0x6d, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x65,
0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69,
0x73, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x61,
0x62, 0x6f, 0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0c, 0x05, 0x00, 0x12, 0x04,
0xe0, 0x03, 0x0d, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x05, 0x00, 0x01, 0x12, 0x04, 0xe0,
0x03, 0x0d, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x05, 0x00, 0x02, 0x12, 0x04, 0xe0, 0x03,
0x15, 0x18, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0d, 0x12, 0x06, 0xe3, 0x03, 0x00, 0xef, 0x03, 0x01,
0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0d, 0x01, 0x12, 0x04, 0xe3, 0x03, 0x08, 0x18, 0x0a, 0xf7, 0x01,
0x0a, 0x04, 0x04, 0x0d, 0x02, 0x00, 0x12, 0x04, 0xe8, 0x03, 0x02, 0x2f, 0x1a, 0xe8, 0x01, 0x20,
0x49, 0x73, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x65, 0x6e, 0x75, 0x6d, 0x20, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x20, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x3f, 0x0a, 0x20,
0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65,
0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x65, 0x6d, 0x69, 0x74, 0x20,
0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20,
0x65, 0x6e, 0x75, 0x6d, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x69,
0x74, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65,
0x74, 0x65, 0x6c, 0x79, 0x20, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x3b, 0x20, 0x69, 0x6e,
0x20, 0x74, 0x68, 0x65, 0x20, 0x76, 0x65, 0x72, 0x79, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x2c,
0x0a, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x6d,
0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65,
0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x65, 0x6e, 0x75, 0x6d, 0x20, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x04,
0x12, 0x04, 0xe8, 0x03, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x05, 0x12,
0x04, 0xe8, 0x03, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x01, 0x12, 0x04,
0xe8, 0x03, 0x10, 0x1a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x03, 0x12, 0x04, 0xe8,
0x03, 0x1d, 0x1e, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x08, 0x12, 0x04, 0xe8, 0x03,
0x1f, 0x2e, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x07, 0x12, 0x04, 0xe8, 0x03, 0x28,
0x2d, 0x0a, 0x4f, 0x0a, 0x04, 0x04, 0x0d, 0x02, 0x01, 0x12, 0x04, 0xeb, 0x03, 0x02, 0x3a, 0x1a,
0x41, 0x20, 0x54, 0x68, 0x65, 0x20, 0x70, 0x61, 0x72, 0x73, 0x65, 0x72, 0x20, 0x73, 0x74, 0x6f,
0x72, 0x65, 0x73, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x74, 0x20, 0x64,
0x6f, 0x65, 0x73, 0x6e, 0x27, 0x74, 0x20, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65,
0x20, 0x68, 0x65, 0x72, 0x65, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65,
0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x01, 0x04, 0x12, 0x04, 0xeb, 0x03, 0x02,
0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x01, 0x06, 0x12, 0x04, 0xeb, 0x03, 0x0b, 0x1e,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x01, 0x01, 0x12, 0x04, 0xeb, 0x03, 0x1f, 0x33, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x01, 0x03, 0x12, 0x04, 0xeb, 0x03, 0x36, 0x39, 0x0a, 0x5a,
0x0a, 0x03, 0x04, 0x0d, 0x05, 0x12, 0x04, 0xee, 0x03, 0x02, 0x19, 0x1a, 0x4d, 0x20, 0x43, 0x6c,
0x69, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65,
0x20, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20,
0x69, 0x6e, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66,
0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x20, 0x53,
0x65, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0d,
0x05, 0x00, 0x12, 0x04, 0xee, 0x03, 0x0d, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x05, 0x00,
0x01, 0x12, 0x04, 0xee, 0x03, 0x0d, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x05, 0x00, 0x02,
0x12, 0x04, 0xee, 0x03, 0x15, 0x18, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0e, 0x12, 0x06, 0xf1, 0x03,
0x00, 0x83, 0x04, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0e, 0x01, 0x12, 0x04, 0xf1, 0x03, 0x08,
0x16, 0x0a, 0xee, 0x01, 0x0a, 0x04, 0x04, 0x0e, 0x02, 0x00, 0x12, 0x04, 0xfc, 0x03, 0x02, 0x30,
0x1a, 0xdf, 0x01, 0x20, 0x49, 0x73, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x65, 0x72, 0x76,
0x69, 0x63, 0x65, 0x20, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x3f, 0x0a,
0x20, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68,
0x65, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
0x6d, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x65, 0x6d, 0x69, 0x74,
0x20, 0x44, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6e, 0x6e, 0x6f,
0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65,
0x20, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x69, 0x74, 0x20,
0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65,
0x6c, 0x79, 0x20, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x3b, 0x20, 0x69, 0x6e, 0x20, 0x74,
0x68, 0x65, 0x20, 0x76, 0x65, 0x72, 0x79, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x2c, 0x0a, 0x20,
0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6c,
0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x70, 0x72,
0x65, 0x63, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73,
0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x00, 0x04, 0x12, 0x04, 0xfc, 0x03, 0x02,
0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x00, 0x05, 0x12, 0x04, 0xfc, 0x03, 0x0b, 0x0f,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x00, 0x01, 0x12, 0x04, 0xfc, 0x03, 0x10, 0x1a, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x00, 0x03, 0x12, 0x04, 0xfc, 0x03, 0x1d, 0x1f, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x0e, 0x02, 0x00, 0x08, 0x12, 0x04, 0xfc, 0x03, 0x20, 0x2f, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x0e, 0x02, 0x00, 0x07, 0x12, 0x04, 0xfc, 0x03, 0x29, 0x2e, 0x0a, 0x4f, 0x0a, 0x04,
0x04, 0x0e, 0x02, 0x01, 0x12, 0x04, 0xff, 0x03, 0x02, 0x3a, 0x1a, 0x41, 0x20, 0x54, 0x68, 0x65,
0x20, 0x70, 0x61, 0x72, 0x73, 0x65, 0x72, 0x20, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x20, 0x6f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x74, 0x20, 0x64, 0x6f, 0x65, 0x73, 0x6e, 0x27,
0x74, 0x20, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x20, 0x68, 0x65, 0x72, 0x65,
0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x0e, 0x02, 0x01, 0x04, 0x12, 0x04, 0xff, 0x03, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x0e, 0x02, 0x01, 0x06, 0x12, 0x04, 0xff, 0x03, 0x0b, 0x1e, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x0e, 0x02, 0x01, 0x01, 0x12, 0x04, 0xff, 0x03, 0x1f, 0x33, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e,
0x02, 0x01, 0x03, 0x12, 0x04, 0xff, 0x03, 0x36, 0x39, 0x0a, 0x5a, 0x0a, 0x03, 0x04, 0x0e, 0x05,
0x12, 0x04, 0x82, 0x04, 0x02, 0x19, 0x1a, 0x4d, 0x20, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73,
0x20, 0x63, 0x61, 0x6e, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x75, 0x73, 0x74,
0x6f, 0x6d, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x65, 0x78,
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73,
0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x61, 0x62,
0x6f, 0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0e, 0x05, 0x00, 0x12, 0x04, 0x82,
0x04, 0x0d, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x05, 0x00, 0x01, 0x12, 0x04, 0x82, 0x04,
0x0d, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x05, 0x00, 0x02, 0x12, 0x04, 0x82, 0x04, 0x15,
0x18, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0f, 0x12, 0x06, 0x85, 0x04, 0x00, 0x97, 0x04, 0x01, 0x0a,
0x0b, 0x0a, 0x03, 0x04, 0x0f, 0x01, 0x12, 0x04, 0x85, 0x04, 0x08, 0x15, 0x0a, 0xeb, 0x01, 0x0a,
0x04, 0x04, 0x0f, 0x02, 0x00, 0x12, 0x04, 0x90, 0x04, 0x02, 0x30, 0x1a, 0xdc, 0x01, 0x20, 0x49,
0x73, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x64, 0x65,
0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x65, 0x64, 0x3f, 0x0a, 0x20, 0x44, 0x65, 0x70, 0x65, 0x6e,
0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x61, 0x72, 0x67,
0x65, 0x74, 0x20, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x20, 0x74, 0x68, 0x69,
0x73, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x65, 0x6d, 0x69, 0x74, 0x20, 0x44, 0x65, 0x70, 0x72, 0x65,
0x63, 0x61, 0x74, 0x65, 0x64, 0x20, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x0a, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f,
0x64, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x69, 0x74, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65,
0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x6c, 0x79, 0x20, 0x69, 0x67, 0x6e, 0x6f,
0x72, 0x65, 0x64, 0x3b, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x76, 0x65, 0x72, 0x79,
0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x2c, 0x0a, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73,
0x20, 0x61, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x20, 0x66, 0x6f, 0x72, 0x20, 0x64, 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x69, 0x6e, 0x67,
0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f,
0x02, 0x00, 0x04, 0x12, 0x04, 0x90, 0x04, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02,
0x00, 0x05, 0x12, 0x04, 0x90, 0x04, 0x0b, 0x0f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x00,
0x01, 0x12, 0x04, 0x90, 0x04, 0x10, 0x1a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x00, 0x03,
0x12, 0x04, 0x90, 0x04, 0x1d, 0x1f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x00, 0x08, 0x12,
0x04, 0x90, 0x04, 0x20, 0x2f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x00, 0x07, 0x12, 0x04,
0x90, 0x04, 0x29, 0x2e, 0x0a, 0x4f, 0x0a, 0x04, 0x04, 0x0f, 0x02, 0x01, 0x12, 0x04, 0x93, 0x04,
0x02, 0x3a, 0x1a, 0x41, 0x20, 0x54, 0x68, 0x65, 0x20, 0x70, 0x61, 0x72, 0x73, 0x65, 0x72, 0x20,
0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x69,
0x74, 0x20, 0x64, 0x6f, 0x65, 0x73, 0x6e, 0x27, 0x74, 0x20, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e,
0x69, 0x7a, 0x65, 0x20, 0x68, 0x65, 0x72, 0x65, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x61, 0x62,
0x6f, 0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x01, 0x04, 0x12, 0x04,
0x93, 0x04, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x01, 0x06, 0x12, 0x04, 0x93,
0x04, 0x0b, 0x1e, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x01, 0x01, 0x12, 0x04, 0x93, 0x04,
0x1f, 0x33, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x01, 0x03, 0x12, 0x04, 0x93, 0x04, 0x36,
0x39, 0x0a, 0x5a, 0x0a, 0x03, 0x04, 0x0f, 0x05, 0x12, 0x04, 0x96, 0x04, 0x02, 0x19, 0x1a, 0x4d,
0x20, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x64, 0x65, 0x66,
0x69, 0x6e, 0x65, 0x20, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73,
0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x2e, 0x0a, 0x0a, 0x0c, 0x0a,
0x04, 0x04, 0x0f, 0x05, 0x00, 0x12, 0x04, 0x96, 0x04, 0x0d, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x0f, 0x05, 0x00, 0x01, 0x12, 0x04, 0x96, 0x04, 0x0d, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f,
0x05, 0x00, 0x02, 0x12, 0x04, 0x96, 0x04, 0x15, 0x18, 0x0a, 0x8b, 0x03, 0x0a, 0x02, 0x04, 0x10,
0x12, 0x06, 0xa0, 0x04, 0x00, 0xb4, 0x04, 0x01, 0x1a, 0xfc, 0x02, 0x20, 0x41, 0x20, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x69,
0x6e, 0x67, 0x20, 0x61, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20,
0x70, 0x61, 0x72, 0x73, 0x65, 0x72, 0x20, 0x64, 0x6f, 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20,
0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x2e, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20,
0x6f, 0x6e, 0x6c, 0x79, 0x0a, 0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x73, 0x20, 0x69, 0x6e,
0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x20,
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63,
0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x72, 0x3a, 0x3a, 0x50, 0x61, 0x72, 0x73, 0x65, 0x72, 0x20,
0x63, 0x6c, 0x61, 0x73, 0x73, 0x2e, 0x0a, 0x20, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
0x6f, 0x72, 0x50, 0x6f, 0x6f, 0x6c, 0x20, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x73, 0x20,
0x74, 0x68, 0x65, 0x73, 0x65, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x62, 0x75, 0x69, 0x6c, 0x64,
0x69, 0x6e, 0x67, 0x20, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x20, 0x6f,
0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x72, 0x65, 0x66, 0x6f, 0x72,
0x65, 0x2c, 0x0a, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72,
0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x20, 0x72,
0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x44, 0x65, 0x73, 0x63, 0x72,
0x69, 0x70, 0x74, 0x6f, 0x72, 0x3a, 0x3a, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x28, 0x29,
0x2c, 0x0a, 0x20, 0x6f, 0x72, 0x20, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x64, 0x20, 0x62,
0x79, 0x20, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x3a, 0x3a, 0x43, 0x6f,
0x70, 0x79, 0x54, 0x6f, 0x28, 0x29, 0x29, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x6e, 0x65, 0x76,
0x65, 0x72, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x55, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70,
0x72, 0x65, 0x74, 0x65, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x69, 0x6e,
0x20, 0x74, 0x68, 0x65, 0x6d, 0x2e, 0x0a, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x10, 0x01, 0x12, 0x04,
0xa0, 0x04, 0x08, 0x1b, 0x0a, 0xcb, 0x02, 0x0a, 0x04, 0x04, 0x10, 0x03, 0x00, 0x12, 0x06, 0xa6,
0x04, 0x02, 0xa9, 0x04, 0x03, 0x1a, 0xba, 0x02, 0x20, 0x54, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x6d,
0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72,
0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x20,
0x45, 0x61, 0x63, 0x68, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x72, 0x65, 0x70, 0x72,
0x65, 0x73, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x20, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74,
0x20, 0x69, 0x6e, 0x0a, 0x20, 0x61, 0x20, 0x64, 0x6f, 0x74, 0x2d, 0x73, 0x65, 0x70, 0x61, 0x72,
0x61, 0x74, 0x65, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x20, 0x20, 0x69, 0x73, 0x5f, 0x65,
0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x73, 0x20, 0x74, 0x72, 0x75, 0x65,
0x20, 0x69, 0x66, 0x66, 0x20, 0x61, 0x20, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x72,
0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x6e, 0x0a, 0x20, 0x65, 0x78,
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x64, 0x65, 0x6e, 0x6f, 0x74, 0x65, 0x64,
0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x68, 0x65, 0x73, 0x65,
0x73, 0x20, 0x69, 0x6e, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x73, 0x70, 0x65,
0x63, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x20, 0x66, 0x69, 0x6c,
0x65, 0x73, 0x29, 0x2e, 0x0a, 0x20, 0x45, 0x2e, 0x67, 0x2e, 0x2c, 0x7b, 0x20, 0x5b, 0x22, 0x66,
0x6f, 0x6f, 0x22, 0x2c, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x5d, 0x2c, 0x20, 0x5b, 0x22, 0x62,
0x61, 0x72, 0x2e, 0x62, 0x61, 0x7a, 0x22, 0x2c, 0x20, 0x74, 0x72, 0x75, 0x65, 0x5d, 0x2c, 0x20,
0x5b, 0x22, 0x71, 0x75, 0x78, 0x22, 0x2c, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x5d, 0x20, 0x7d,
0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x20, 0x22, 0x66, 0x6f,
0x6f, 0x2e, 0x28, 0x62, 0x61, 0x72, 0x2e, 0x62, 0x61, 0x7a, 0x29, 0x2e, 0x71, 0x75, 0x78, 0x22,
0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x03, 0x00, 0x01, 0x12, 0x04, 0xa6, 0x04, 0x0a,
0x12, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x10, 0x03, 0x00, 0x02, 0x00, 0x12, 0x04, 0xa7, 0x04, 0x04,
0x22, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x10, 0x03, 0x00, 0x02, 0x00, 0x04, 0x12, 0x04, 0xa7, 0x04,
0x04, 0x0c, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x10, 0x03, 0x00, 0x02, 0x00, 0x05, 0x12, 0x04, 0xa7,
0x04, 0x0d, 0x13, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x10, 0x03, 0x00, 0x02, 0x00, 0x01, 0x12, 0x04,
0xa7, 0x04, 0x14, 0x1d, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x10, 0x03, 0x00, 0x02, 0x00, 0x03, 0x12,
0x04, 0xa7, 0x04, 0x20, 0x21, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x10, 0x03, 0x00, 0x02, 0x01, 0x12,
0x04, 0xa8, 0x04, 0x04, 0x23, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x10, 0x03, 0x00, 0x02, 0x01, 0x04,
0x12, 0x04, 0xa8, 0x04, 0x04, 0x0c, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x10, 0x03, 0x00, 0x02, 0x01,
0x05, 0x12, 0x04, 0xa8, 0x04, 0x0d, 0x11, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x10, 0x03, 0x00, 0x02,
0x01, 0x01, 0x12, 0x04, 0xa8, 0x04, 0x12, 0x1e, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x10, 0x03, 0x00,
0x02, 0x01, 0x03, 0x12, 0x04, 0xa8, 0x04, 0x21, 0x22, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x10, 0x02,
0x00, 0x12, 0x04, 0xaa, 0x04, 0x02, 0x1d, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x00, 0x04,
0x12, 0x04, 0xaa, 0x04, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x00, 0x06, 0x12,
0x04, 0xaa, 0x04, 0x0b, 0x13, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x00, 0x01, 0x12, 0x04,
0xaa, 0x04, 0x14, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x00, 0x03, 0x12, 0x04, 0xaa,
0x04, 0x1b, 0x1c, 0x0a, 0x9c, 0x01, 0x0a, 0x04, 0x04, 0x10, 0x02, 0x01, 0x12, 0x04, 0xae, 0x04,
0x02, 0x27, 0x1a, 0x8d, 0x01, 0x20, 0x54, 0x68, 0x65, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20,
0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72,
0x65, 0x74, 0x65, 0x64, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x20, 0x69, 0x6e, 0x20,
0x77, 0x68, 0x61, 0x74, 0x65, 0x76, 0x65, 0x72, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x74, 0x68,
0x65, 0x20, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x69, 0x7a, 0x65, 0x72, 0x0a, 0x20, 0x69, 0x64, 0x65,
0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x69, 0x74, 0x20, 0x61, 0x73, 0x20, 0x64, 0x75,
0x72, 0x69, 0x6e, 0x67, 0x20, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x2e, 0x20, 0x45, 0x78,
0x61, 0x63, 0x74, 0x6c, 0x79, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
0x73, 0x65, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x20, 0x73, 0x65, 0x74,
0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x01, 0x04, 0x12, 0x04, 0xae, 0x04, 0x02,
0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x01, 0x05, 0x12, 0x04, 0xae, 0x04, 0x0b, 0x11,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x01, 0x01, 0x12, 0x04, 0xae, 0x04, 0x12, 0x22, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x01, 0x03, 0x12, 0x04, 0xae, 0x04, 0x25, 0x26, 0x0a, 0x0c,
0x0a, 0x04, 0x04, 0x10, 0x02, 0x02, 0x12, 0x04, 0xaf, 0x04, 0x02, 0x29, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x10, 0x02, 0x02, 0x04, 0x12, 0x04, 0xaf, 0x04, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x10, 0x02, 0x02, 0x05, 0x12, 0x04, 0xaf, 0x04, 0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10,
0x02, 0x02, 0x01, 0x12, 0x04, 0xaf, 0x04, 0x12, 0x24, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02,
0x02, 0x03, 0x12, 0x04, 0xaf, 0x04, 0x27, 0x28, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x10, 0x02, 0x03,
0x12, 0x04, 0xb0, 0x04, 0x02, 0x28, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x03, 0x04, 0x12,
0x04, 0xb0, 0x04, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x03, 0x05, 0x12, 0x04,
0xb0, 0x04, 0x0b, 0x10, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x03, 0x01, 0x12, 0x04, 0xb0,
0x04, 0x11, 0x23, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x03, 0x03, 0x12, 0x04, 0xb0, 0x04,
0x26, 0x27, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x10, 0x02, 0x04, 0x12, 0x04, 0xb1, 0x04, 0x02, 0x23,
0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x04, 0x04, 0x12, 0x04, 0xb1, 0x04, 0x02, 0x0a, 0x0a,
0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x04, 0x05, 0x12, 0x04, 0xb1, 0x04, 0x0b, 0x11, 0x0a, 0x0d,
0x0a, 0x05, 0x04, 0x10, 0x02, 0x04, 0x01, 0x12, 0x04, 0xb1, 0x04, 0x12, 0x1e, 0x0a, 0x0d, 0x0a,
0x05, 0x04, 0x10, 0x02, 0x04, 0x03, 0x12, 0x04, 0xb1, 0x04, 0x21, 0x22, 0x0a, 0x0c, 0x0a, 0x04,
0x04, 0x10, 0x02, 0x05, 0x12, 0x04, 0xb2, 0x04, 0x02, 0x22, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10,
0x02, 0x05, 0x04, 0x12, 0x04, 0xb2, 0x04, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02,
0x05, 0x05, 0x12, 0x04, 0xb2, 0x04, 0x0b, 0x10, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x05,
0x01, 0x12, 0x04, 0xb2, 0x04, 0x11, 0x1d, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x05, 0x03,
0x12, 0x04, 0xb2, 0x04, 0x20, 0x21, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x10, 0x02, 0x06, 0x12, 0x04,
0xb3, 0x04, 0x02, 0x26, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x06, 0x04, 0x12, 0x04, 0xb3,
0x04, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x06, 0x05, 0x12, 0x04, 0xb3, 0x04,
0x0b, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x06, 0x01, 0x12, 0x04, 0xb3, 0x04, 0x12,
0x21, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x10, 0x02, 0x06, 0x03, 0x12, 0x04, 0xb3, 0x04, 0x24, 0x25,
0x0a, 0x78, 0x0a, 0x02, 0x04, 0x11, 0x12, 0x06, 0xbb, 0x04, 0x00, 0xae, 0x05, 0x01, 0x1a, 0x6a,
0x20, 0x45, 0x6e, 0x63, 0x61, 0x70, 0x73, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x20, 0x69, 0x6e,
0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x20,
0x74, 0x68, 0x65, 0x20, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x20, 0x73, 0x6f, 0x75,
0x72, 0x63, 0x65, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x77, 0x68,
0x69, 0x63, 0x68, 0x20, 0x61, 0x0a, 0x20, 0x46, 0x69, 0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72,
0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x20, 0x77, 0x61, 0x73, 0x20, 0x67,
0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x2e, 0x0a, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x11,
0x01, 0x12, 0x04, 0xbb, 0x04, 0x08, 0x16, 0x0a, 0x82, 0x11, 0x0a, 0x04, 0x04, 0x11, 0x02, 0x00,
0x12, 0x04, 0xe7, 0x04, 0x02, 0x21, 0x1a, 0xf3, 0x10, 0x20, 0x41, 0x20, 0x4c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x73, 0x20,
0x61, 0x20, 0x70, 0x69, 0x65, 0x63, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x20, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x0a, 0x20, 0x63,
0x6f, 0x72, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20,
0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e,
0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x66,
0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x74, 0x65,
0x6e, 0x64, 0x65, 0x64, 0x0a, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, 0x66,
0x75, 0x6c, 0x20, 0x74, 0x6f, 0x20, 0x49, 0x44, 0x45, 0x73, 0x2c, 0x20, 0x63, 0x6f, 0x64, 0x65,
0x20, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x72, 0x73, 0x2c, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d,
0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
0x6f, 0x72, 0x73, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72,
0x0a, 0x20, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x2e, 0x0a, 0x0a, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x65,
0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2c, 0x20, 0x73, 0x61, 0x79, 0x20, 0x77, 0x65, 0x20, 0x68,
0x61, 0x76, 0x65, 0x20, 0x61, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x20, 0x6c, 0x69, 0x6b, 0x65, 0x3a,
0x0a, 0x20, 0x20, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x46, 0x6f, 0x6f, 0x20,
0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20,
0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x66, 0x6f, 0x6f, 0x20, 0x3d, 0x20, 0x31, 0x3b, 0x0a,
0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x4c, 0x65, 0x74, 0x27, 0x73, 0x20, 0x6c, 0x6f, 0x6f, 0x6b,
0x20, 0x61, 0x74, 0x20, 0x6a, 0x75, 0x73, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x69, 0x65,
0x6c, 0x64, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x0a, 0x20,
0x20, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e,
0x67, 0x20, 0x66, 0x6f, 0x6f, 0x20, 0x3d, 0x20, 0x31, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x5e, 0x20,
0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x5e, 0x5e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x5e, 0x5e, 0x20,
0x20, 0x5e, 0x20, 0x20, 0x5e, 0x5e, 0x5e, 0x0a, 0x20, 0x20, 0x20, 0x61, 0x20, 0x20, 0x20, 0x20,
0x20, 0x20, 0x20, 0x62, 0x63, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x65, 0x20, 0x20, 0x66, 0x20,
0x20, 0x67, 0x68, 0x69, 0x0a, 0x20, 0x57, 0x65, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x74, 0x68,
0x65, 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x20, 0x6c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x20,
0x20, 0x70, 0x61, 0x74, 0x68, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x73, 0x0a, 0x20,
0x20, 0x20, 0x5b, 0x61, 0x2c, 0x69, 0x29, 0x20, 0x20, 0x5b, 0x20, 0x34, 0x2c, 0x20, 0x30, 0x2c,
0x20, 0x32, 0x2c, 0x20, 0x30, 0x20, 0x5d, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20,
0x77, 0x68, 0x6f, 0x6c, 0x65, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x64, 0x65, 0x66, 0x69,
0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x5b, 0x61, 0x2c, 0x62, 0x29,
0x20, 0x20, 0x5b, 0x20, 0x34, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x32, 0x2c, 0x20, 0x30, 0x2c, 0x20,
0x34, 0x20, 0x5d, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x28,
0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x29, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x5b, 0x63,
0x2c, 0x64, 0x29, 0x20, 0x20, 0x5b, 0x20, 0x34, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x32, 0x2c, 0x20,
0x30, 0x2c, 0x20, 0x35, 0x20, 0x5d, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x74, 0x79, 0x70, 0x65,
0x20, 0x28, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x29, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x5b, 0x65,
0x2c, 0x66, 0x29, 0x20, 0x20, 0x5b, 0x20, 0x34, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x32, 0x2c, 0x20,
0x30, 0x2c, 0x20, 0x31, 0x20, 0x5d, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65,
0x20, 0x28, 0x66, 0x6f, 0x6f, 0x29, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x5b, 0x67, 0x2c, 0x68, 0x29,
0x20, 0x20, 0x5b, 0x20, 0x34, 0x2c, 0x20, 0x30, 0x2c, 0x20, 0x32, 0x2c, 0x20, 0x30, 0x2c, 0x20,
0x33, 0x20, 0x5d, 0x20, 0x20, 0x54, 0x68, 0x65, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20,
0x28, 0x31, 0x29, 0x2e, 0x0a, 0x0a, 0x20, 0x4e, 0x6f, 0x74, 0x65, 0x73, 0x3a, 0x0a, 0x20, 0x2d,
0x20, 0x41, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x61, 0x79, 0x20,
0x72, 0x65, 0x66, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x72, 0x65, 0x70, 0x65, 0x61,
0x74, 0x65, 0x64, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x69, 0x74, 0x73, 0x65, 0x6c, 0x66,
0x20, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x6e,
0x79, 0x0a, 0x20, 0x20, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x20,
0x69, 0x6e, 0x64, 0x65, 0x78, 0x20, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x20, 0x69, 0x74, 0x29,
0x2e, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20,
0x77, 0x68, 0x65, 0x6e, 0x65, 0x76, 0x65, 0x72, 0x20, 0x61, 0x20, 0x73, 0x65, 0x74, 0x20, 0x6f,
0x66, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x72, 0x65, 0x0a, 0x20,
0x20, 0x20, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x65, 0x6e, 0x63, 0x6c,
0x6f, 0x73, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65,
0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x20,
0x46, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2c, 0x20, 0x61, 0x6e, 0x20,
0x65, 0x6e, 0x74, 0x69, 0x72, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64,
0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x28, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x79,
0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x6d, 0x75, 0x6c, 0x74,
0x69, 0x70, 0x6c, 0x65, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x64,
0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x29, 0x20, 0x77, 0x69, 0x6c, 0x6c,
0x0a, 0x20, 0x20, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x6f, 0x75, 0x74, 0x65,
0x72, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x77, 0x68, 0x6f, 0x73, 0x65,
0x20, 0x70, 0x61, 0x74, 0x68, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x73, 0x20, 0x74, 0x6f, 0x20,
0x74, 0x68, 0x65, 0x20, 0x22, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22,
0x20, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x66, 0x69, 0x65,
0x6c, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x20, 0x61, 0x6e, 0x20, 0x69, 0x6e,
0x64, 0x65, 0x78, 0x2e, 0x0a, 0x20, 0x2d, 0x20, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65,
0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6d, 0x61, 0x79, 0x20, 0x68,
0x61, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x70, 0x61, 0x74,
0x68, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x68, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x73,
0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x0a, 0x20,
0x20, 0x20, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x73, 0x20, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x20,
0x6f, 0x75, 0x74, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69,
0x70, 0x6c, 0x65, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x65,
0x20, 0x6d, 0x6f, 0x73, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x6f, 0x62, 0x76, 0x69, 0x6f, 0x75, 0x73,
0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20,
0x22, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x22, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x61,
0x67, 0x61, 0x69, 0x6e, 0x20, 0x2d, 0x2d, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x6d, 0x61,
0x79, 0x20, 0x62, 0x65, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x0a, 0x20, 0x20,
0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x20, 0x69,
0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x73, 0x63, 0x6f, 0x70, 0x65,
0x2c, 0x20, 0x65, 0x61, 0x63, 0x68, 0x20, 0x6f, 0x66, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20,
0x77, 0x69, 0x6c, 0x6c, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61,
0x6d, 0x65, 0x20, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x0a, 0x20, 0x2d, 0x20, 0x41, 0x20, 0x6c, 0x6f,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x27, 0x73, 0x20, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x69, 0x73,
0x20, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x20, 0x61, 0x20, 0x73, 0x75,
0x62, 0x73, 0x65, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x73, 0x20, 0x70, 0x61, 0x72, 0x65,
0x6e, 0x74, 0x27, 0x73, 0x20, 0x73, 0x70, 0x61, 0x6e, 0x2e, 0x20, 0x20, 0x46, 0x6f, 0x72, 0x0a,
0x20, 0x20, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20,
0x22, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x65, 0x22, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x6e,
0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61,
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x73, 0x20, 0x61,
0x74, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x6e, 0x69,
0x6e, 0x67, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x22, 0x65, 0x78, 0x74, 0x65, 0x6e,
0x64, 0x22, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x73, 0x20,
0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x65, 0x78,
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x0a,
0x20, 0x20, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x2e, 0x0a, 0x20, 0x2d,
0x20, 0x4a, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20, 0x61, 0x20,
0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x27, 0x73, 0x20, 0x73, 0x70, 0x61, 0x6e, 0x20,
0x69, 0x73, 0x20, 0x61, 0x20, 0x73, 0x75, 0x62, 0x73, 0x65, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x73,
0x6f, 0x6d, 0x65, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x27, 0x73, 0x20, 0x73, 0x70, 0x61, 0x6e, 0x0a, 0x20, 0x20, 0x20, 0x64, 0x6f, 0x65,
0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6d, 0x65, 0x61, 0x6e, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20,
0x69, 0x74, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x64, 0x65, 0x73, 0x63, 0x65, 0x6e, 0x64, 0x65,
0x6e, 0x74, 0x2e, 0x20, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65,
0x2c, 0x20, 0x61, 0x20, 0x22, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x20, 0x64, 0x65, 0x66, 0x69,
0x6e, 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x61, 0x20, 0x74, 0x79,
0x70, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x69,
0x6e, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61,
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x75, 0x73, 0x2c, 0x20, 0x74,
0x68, 0x65, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x0a, 0x20, 0x20, 0x20,
0x63, 0x6f, 0x72, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f,
0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x66, 0x69,
0x65, 0x6c, 0x64, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x63, 0x6f,
0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x6f, 0x76,
0x65, 0x72, 0x6c, 0x61, 0x70, 0x2e, 0x0a, 0x20, 0x2d, 0x20, 0x43, 0x6f, 0x64, 0x65, 0x20, 0x77,
0x68, 0x69, 0x63, 0x68, 0x20, 0x74, 0x72, 0x69, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x6e,
0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x6c,
0x79, 0x20, 0x62, 0x65, 0x20, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x20, 0x74, 0x6f,
0x0a, 0x20, 0x20, 0x20, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x68, 0x6f, 0x73, 0x65,
0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x69, 0x74, 0x20, 0x64, 0x6f, 0x65, 0x73, 0x6e, 0x27, 0x74,
0x20, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x2c, 0x20, 0x61, 0x73, 0x20,
0x6d, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x6f,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x63, 0x6f, 0x75, 0x6c, 0x64, 0x0a, 0x20, 0x20,
0x20, 0x62, 0x65, 0x20, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20,
0x74, 0x68, 0x65, 0x20, 0x66, 0x75, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x0a, 0x0a, 0x0d, 0x0a, 0x05,
0x04, 0x11, 0x02, 0x00, 0x04, 0x12, 0x04, 0xe7, 0x04, 0x02, 0x0a, 0x0a, 0x0d, 0x0a, 0x05, 0x04,
0x11, 0x02, 0x00, 0x06, 0x12, 0x04, 0xe7, 0x04, 0x0b, 0x13, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x11,
0x02, 0x00, 0x01, 0x12, 0x04, 0xe7, 0x04, 0x14, 0x1c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x11, 0x02,
0x00, 0x03, 0x12, 0x04, 0xe7, 0x04, 0x1f, 0x20, 0x0a, 0x0e, 0x0a, 0x04, 0x04, 0x11, 0x03, 0x00,
0x12, 0x06, 0xe8, 0x04, 0x02, 0xad, 0x05, 0x03, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x11, 0x03, 0x00,
0x01, 0x12, 0x04, 0xe8, 0x04, 0x0a, 0x12, 0x0a, 0x83, 0x07, 0x0a, 0x06, 0x04, 0x11, 0x03, 0x00,
0x02, 0x00, 0x12, 0x04, 0x80, 0x05, 0x04, 0x2a, 0x1a, 0xf2, 0x06, 0x20, 0x49, 0x64, 0x65, 0x6e,
0x74, 0x69, 0x66, 0x69, 0x65, 0x73, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x70, 0x61, 0x72,
0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x46, 0x69, 0x6c, 0x65, 0x44, 0x65, 0x73,
0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x20, 0x77, 0x61, 0x73,
0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x61, 0x74, 0x20, 0x74, 0x68, 0x69, 0x73,
0x0a, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x0a, 0x20, 0x45, 0x61,
0x63, 0x68, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20,
0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x72, 0x20,
0x61, 0x6e, 0x20, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x20, 0x20, 0x54, 0x68, 0x65, 0x79, 0x20,
0x66, 0x6f, 0x72, 0x6d, 0x20, 0x61, 0x20, 0x70, 0x61, 0x74, 0x68, 0x20, 0x66, 0x72, 0x6f, 0x6d,
0x0a, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x6f, 0x6f, 0x74, 0x20, 0x46, 0x69, 0x6c, 0x65, 0x44,
0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x20, 0x74,
0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x20, 0x77, 0x68, 0x65, 0x72,
0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e,
0x2e, 0x20, 0x20, 0x46, 0x6f, 0x72, 0x0a, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2c,
0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x70, 0x61, 0x74, 0x68, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x5b,
0x20, 0x34, 0x2c, 0x20, 0x33, 0x2c, 0x20, 0x32, 0x2c, 0x20, 0x37, 0x2c, 0x20, 0x31, 0x20, 0x5d,
0x0a, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x73, 0x20, 0x74, 0x6f, 0x3a, 0x0a, 0x20, 0x20, 0x20,
0x66, 0x69, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70,
0x65, 0x28, 0x33, 0x29, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x34, 0x2c, 0x20, 0x33, 0x0a, 0x20, 0x20,
0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x28, 0x37, 0x29, 0x20, 0x20,
0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x32, 0x2c, 0x20, 0x37, 0x0a, 0x20,
0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x28, 0x29, 0x20, 0x20, 0x20,
0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x31, 0x0a, 0x20, 0x54, 0x68,
0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20, 0x46, 0x69,
0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74,
0x6f, 0x2e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x20, 0x68,
0x61, 0x73, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20,
0x34, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x44,
0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x20, 0x6d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x20, 0x3d, 0x20, 0x34, 0x3b,
0x0a, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72,
0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x68, 0x61, 0x73, 0x20,
0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x32, 0x3a, 0x0a,
0x20, 0x20, 0x20, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20, 0x46, 0x69, 0x65, 0x6c,
0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f,
0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x3d, 0x20, 0x32, 0x3b, 0x0a, 0x20, 0x61, 0x6e, 0x64,
0x20, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72,
0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x68, 0x61, 0x73, 0x20, 0x66,
0x69, 0x65, 0x6c, 0x64, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x31, 0x3a, 0x0a, 0x20,
0x20, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e,
0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x3d, 0x20, 0x31, 0x3b, 0x0a, 0x0a, 0x20, 0x54, 0x68,
0x75, 0x73, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x20, 0x70, 0x61,
0x74, 0x68, 0x20, 0x67, 0x69, 0x76, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x6f, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64,
0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2e, 0x20, 0x20, 0x49, 0x66, 0x20, 0x77, 0x65, 0x20, 0x72, 0x65,
0x6d, 0x6f, 0x76, 0x65, 0x64, 0x0a, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x61, 0x73, 0x74, 0x20,
0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x5b, 0x20, 0x34, 0x2c,
0x20, 0x33, 0x2c, 0x20, 0x32, 0x2c, 0x20, 0x37, 0x20, 0x5d, 0x0a, 0x20, 0x74, 0x68, 0x69, 0x73,
0x20, 0x70, 0x61, 0x74, 0x68, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x73, 0x20, 0x74, 0x6f, 0x20,
0x74, 0x68, 0x65, 0x20, 0x77, 0x68, 0x6f, 0x6c, 0x65, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20,
0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x66, 0x72, 0x6f,
0x6d, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x0a,
0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x74, 0x6f,
0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6e, 0x67,
0x20, 0x73, 0x65, 0x6d, 0x69, 0x63, 0x6f, 0x6c, 0x6f, 0x6e, 0x29, 0x2e, 0x0a, 0x0a, 0x0f, 0x0a,
0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x00, 0x04, 0x12, 0x04, 0x80, 0x05, 0x04, 0x0c, 0x0a, 0x0f,
0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x00, 0x05, 0x12, 0x04, 0x80, 0x05, 0x0d, 0x12, 0x0a,
0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x00, 0x01, 0x12, 0x04, 0x80, 0x05, 0x13, 0x17,
0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x00, 0x03, 0x12, 0x04, 0x80, 0x05, 0x1a,
0x1b, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x00, 0x08, 0x12, 0x04, 0x80, 0x05,
0x1c, 0x29, 0x0a, 0x12, 0x0a, 0x0a, 0x04, 0x11, 0x03, 0x00, 0x02, 0x00, 0x08, 0xe7, 0x07, 0x00,
0x12, 0x04, 0x80, 0x05, 0x1d, 0x28, 0x0a, 0x13, 0x0a, 0x0b, 0x04, 0x11, 0x03, 0x00, 0x02, 0x00,
0x08, 0xe7, 0x07, 0x00, 0x02, 0x12, 0x04, 0x80, 0x05, 0x1d, 0x23, 0x0a, 0x14, 0x0a, 0x0c, 0x04,
0x11, 0x03, 0x00, 0x02, 0x00, 0x08, 0xe7, 0x07, 0x00, 0x02, 0x00, 0x12, 0x04, 0x80, 0x05, 0x1d,
0x23, 0x0a, 0x15, 0x0a, 0x0d, 0x04, 0x11, 0x03, 0x00, 0x02, 0x00, 0x08, 0xe7, 0x07, 0x00, 0x02,
0x00, 0x01, 0x12, 0x04, 0x80, 0x05, 0x1d, 0x23, 0x0a, 0x13, 0x0a, 0x0b, 0x04, 0x11, 0x03, 0x00,
0x02, 0x00, 0x08, 0xe7, 0x07, 0x00, 0x03, 0x12, 0x04, 0x80, 0x05, 0x24, 0x28, 0x0a, 0xd2, 0x02,
0x0a, 0x06, 0x04, 0x11, 0x03, 0x00, 0x02, 0x01, 0x12, 0x04, 0x87, 0x05, 0x04, 0x2a, 0x1a, 0xc1,
0x02, 0x20, 0x41, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x20, 0x68, 0x61, 0x73, 0x20, 0x65, 0x78, 0x61,
0x63, 0x74, 0x6c, 0x79, 0x20, 0x74, 0x68, 0x72, 0x65, 0x65, 0x20, 0x6f, 0x72, 0x20, 0x66, 0x6f,
0x75, 0x72, 0x20, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x20, 0x73, 0x74, 0x61,
0x72, 0x74, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x2c, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x20, 0x63,
0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x2c, 0x0a, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6c, 0x69, 0x6e, 0x65,
0x20, 0x28, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2c, 0x20, 0x6f, 0x74, 0x68, 0x65,
0x72, 0x77, 0x69, 0x73, 0x65, 0x20, 0x61, 0x73, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x20, 0x73, 0x61,
0x6d, 0x65, 0x20, 0x61, 0x73, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x20, 0x6c, 0x69, 0x6e, 0x65,
0x29, 0x2c, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x2e, 0x0a, 0x20,
0x54, 0x68, 0x65, 0x73, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x64,
0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x66,
0x69, 0x65, 0x6c, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65,
0x6e, 0x63, 0x79, 0x2e, 0x20, 0x20, 0x4e, 0x6f, 0x74, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20,
0x6c, 0x69, 0x6e, 0x65, 0x0a, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e,
0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x7a, 0x65, 0x72,
0x6f, 0x2d, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x2d, 0x2d, 0x20, 0x74, 0x79, 0x70, 0x69, 0x63,
0x61, 0x6c, 0x6c, 0x79, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x77, 0x61,
0x6e, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x64, 0x64, 0x0a, 0x20, 0x31, 0x20, 0x74, 0x6f, 0x20,
0x65, 0x61, 0x63, 0x68, 0x20, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x20, 0x64, 0x69, 0x73, 0x70,
0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x75, 0x73, 0x65, 0x72,
0x2e, 0x0a, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x01, 0x04, 0x12, 0x04, 0x87,
0x05, 0x04, 0x0c, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x01, 0x05, 0x12, 0x04,
0x87, 0x05, 0x0d, 0x12, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x01, 0x01, 0x12,
0x04, 0x87, 0x05, 0x13, 0x17, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x01, 0x03,
0x12, 0x04, 0x87, 0x05, 0x1a, 0x1b, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x01,
0x08, 0x12, 0x04, 0x87, 0x05, 0x1c, 0x29, 0x0a, 0x12, 0x0a, 0x0a, 0x04, 0x11, 0x03, 0x00, 0x02,
0x01, 0x08, 0xe7, 0x07, 0x00, 0x12, 0x04, 0x87, 0x05, 0x1d, 0x28, 0x0a, 0x13, 0x0a, 0x0b, 0x04,
0x11, 0x03, 0x00, 0x02, 0x01, 0x08, 0xe7, 0x07, 0x00, 0x02, 0x12, 0x04, 0x87, 0x05, 0x1d, 0x23,
0x0a, 0x14, 0x0a, 0x0c, 0x04, 0x11, 0x03, 0x00, 0x02, 0x01, 0x08, 0xe7, 0x07, 0x00, 0x02, 0x00,
0x12, 0x04, 0x87, 0x05, 0x1d, 0x23, 0x0a, 0x15, 0x0a, 0x0d, 0x04, 0x11, 0x03, 0x00, 0x02, 0x01,
0x08, 0xe7, 0x07, 0x00, 0x02, 0x00, 0x01, 0x12, 0x04, 0x87, 0x05, 0x1d, 0x23, 0x0a, 0x13, 0x0a,
0x0b, 0x04, 0x11, 0x03, 0x00, 0x02, 0x01, 0x08, 0xe7, 0x07, 0x00, 0x03, 0x12, 0x04, 0x87, 0x05,
0x24, 0x28, 0x0a, 0xd9, 0x08, 0x0a, 0x06, 0x04, 0x11, 0x03, 0x00, 0x02, 0x02, 0x12, 0x04, 0xab,
0x05, 0x04, 0x29, 0x1a, 0xc8, 0x08, 0x20, 0x49, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x53,
0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x20, 0x72, 0x65,
0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c,
0x65, 0x74, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2c,
0x20, 0x74, 0x68, 0x65, 0x73, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x61, 0x6e, 0x79, 0x0a, 0x20,
0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x69,
0x6e, 0x67, 0x20, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x66,
0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72,
0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x0a, 0x20, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64,
0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x0a, 0x20, 0x41, 0x20, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x20,
0x6f, 0x66, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73,
0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x63, 0x6f,
0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2c,
0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x6e, 0x6f, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x0a, 0x20,
0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x69, 0x6e, 0x67,
0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x6f, 0x73, 0x65, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x2c,
0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x74, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x63, 0x6f, 0x6d,
0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x0a, 0x0a, 0x20, 0x4f, 0x6e, 0x6c, 0x79, 0x20, 0x74, 0x68, 0x65,
0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
0x20, 0x69, 0x73, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x3b, 0x20, 0x63, 0x6f,
0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x20, 0x28, 0x65,
0x2e, 0x67, 0x2e, 0x20, 0x2f, 0x2f, 0x29, 0x20, 0x61, 0x72, 0x65, 0x0a, 0x20, 0x73, 0x74, 0x72,
0x69, 0x70, 0x70, 0x65, 0x64, 0x20, 0x6f, 0x75, 0x74, 0x2e, 0x20, 0x20, 0x46, 0x6f, 0x72, 0x20,
0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2c, 0x20,
0x6c, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x77, 0x68, 0x69, 0x74, 0x65, 0x73, 0x70, 0x61,
0x63, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x73, 0x74, 0x65, 0x72, 0x69,
0x73, 0x6b, 0x0a, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x73, 0x74, 0x72, 0x69,
0x70, 0x70, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x65,
0x67, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x66, 0x20, 0x65, 0x61, 0x63, 0x68, 0x20,
0x6c, 0x69, 0x6e, 0x65, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20,
0x74, 0x68, 0x65, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x2e, 0x0a, 0x20, 0x4e, 0x65, 0x77, 0x6c,
0x69, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65,
0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2e,
0x0a, 0x0a, 0x20, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x3a, 0x0a, 0x0a, 0x20, 0x20,
0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x20,
0x66, 0x6f, 0x6f, 0x20, 0x3d, 0x20, 0x31, 0x3b, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x43, 0x6f, 0x6d,
0x6d, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x20, 0x74, 0x6f,
0x20, 0x66, 0x6f, 0x6f, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x43, 0x6f, 0x6d, 0x6d,
0x65, 0x6e, 0x74, 0x20, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20,
0x62, 0x61, 0x72, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
0x20, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x20, 0x62, 0x61, 0x72, 0x20, 0x3d, 0x20, 0x32, 0x3b, 0x0a,
0x0a, 0x20, 0x20, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x73, 0x74, 0x72,
0x69, 0x6e, 0x67, 0x20, 0x62, 0x61, 0x7a, 0x20, 0x3d, 0x20, 0x33, 0x3b, 0x0a, 0x20, 0x20, 0x20,
0x2f, 0x2f, 0x20, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x74, 0x74, 0x61, 0x63,
0x68, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x61, 0x7a, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x2f,
0x2f, 0x20, 0x41, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x61,
0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x61, 0x7a, 0x2e, 0x0a,
0x0a, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x61,
0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x71, 0x75, 0x78, 0x2e, 0x0a,
0x20, 0x20, 0x20, 0x2f, 0x2f, 0x0a, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x41, 0x6e, 0x6f, 0x74,
0x68, 0x65, 0x72, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65,
0x64, 0x20, 0x74, 0x6f, 0x20, 0x71, 0x75, 0x78, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x6f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x20, 0x71, 0x75, 0x78,
0x20, 0x3d, 0x20, 0x34, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x61, 0x6c, 0x20, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x63, 0x6f, 0x72, 0x67, 0x65, 0x20,
0x3d, 0x20, 0x35, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x2f, 0x2a, 0x20, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65,
0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2a, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x72, 0x67, 0x65,
0x2e, 0x20, 0x20, 0x4c, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x73, 0x74, 0x65, 0x72,
0x69, 0x73, 0x6b, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2a, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20,
0x62, 0x65, 0x20, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x2e, 0x20, 0x2a, 0x2f, 0x0a, 0x20,
0x20, 0x20, 0x2f, 0x2a, 0x20, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x65,
0x6e, 0x74, 0x20, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x0a, 0x20,
0x20, 0x20, 0x20, 0x2a, 0x20, 0x67, 0x72, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x20, 0x2a, 0x2f, 0x0a,
0x20, 0x20, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x33,
0x32, 0x20, 0x67, 0x72, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x3d, 0x20, 0x36, 0x3b, 0x0a, 0x0a, 0x0f,
0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x02, 0x04, 0x12, 0x04, 0xab, 0x05, 0x04, 0x0c, 0x0a,
0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x02, 0x05, 0x12, 0x04, 0xab, 0x05, 0x0d, 0x13,
0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x02, 0x01, 0x12, 0x04, 0xab, 0x05, 0x14,
0x24, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x02, 0x03, 0x12, 0x04, 0xab, 0x05,
0x27, 0x28, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x11, 0x03, 0x00, 0x02, 0x03, 0x12, 0x04, 0xac, 0x05,
0x04, 0x2a, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x03, 0x04, 0x12, 0x04, 0xac,
0x05, 0x04, 0x0c, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x03, 0x05, 0x12, 0x04,
0xac, 0x05, 0x0d, 0x13, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x03, 0x01, 0x12,
0x04, 0xac, 0x05, 0x14, 0x25, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x11, 0x03, 0x00, 0x02, 0x03, 0x03,
0x12, 0x04, 0xac, 0x05, 0x28, 0x29,
];
static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy {
lock: ::protobuf::lazy::ONCE_INIT,
ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto,
};
fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap()
}
pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
unsafe {
file_descriptor_proto_lazy.get(|| {
parse_descriptor_proto()
})
}
}