#![allow(dead_code)]
#![allow(nonstandard_style)]
#![allow(unused_imports)]
#![allow(unused_variables)]
use antlr_rust::atn::ATN;
use antlr_rust::atn_deserializer::ATNDeserializer;
use antlr_rust::char_stream::CharStream;
use antlr_rust::dfa::DFA;
use antlr_rust::error_listener::ErrorListener;
use antlr_rust::int_stream::IntStream;
use antlr_rust::lexer::{BaseLexer, Lexer, LexerRecog};
use antlr_rust::lexer_atn_simulator::{ILexerATNSimulator, LexerATNSimulator};
use antlr_rust::parser_rule_context::{cast, BaseParserRuleContext, ParserRuleContext};
use antlr_rust::recognizer::{Actions, Recognizer};
use antlr_rust::rule_context::{BaseRuleContext, EmptyContext, EmptyCustomRuleContext};
use antlr_rust::token::*;
use antlr_rust::token_factory::{CommonTokenFactory, TokenAware, TokenFactory};
use antlr_rust::vocabulary::{Vocabulary, VocabularyImpl};
use antlr_rust::PredictionContextCache;
use antlr_rust::TokenSource;
use antlr_rust::{lazy_static, Tid, TidAble, TidExt};
use std::cell::RefCell;
use std::marker::PhantomData;
use std::ops::{Deref, DerefMut};
use std::rc::Rc;
use std::sync::Arc;
pub const COMMENT: isize = 1;
pub const CDATA: isize = 2;
pub const DTD: isize = 3;
pub const EntityRef: isize = 4;
pub const CharRef: isize = 5;
pub const SEA_WS: isize = 6;
pub const OPEN: isize = 7;
pub const XMLDeclOpen: isize = 8;
pub const TEXT: isize = 9;
pub const CLOSE: isize = 10;
pub const SPECIAL_CLOSE: isize = 11;
pub const SLASH_CLOSE: isize = 12;
pub const SLASH: isize = 13;
pub const EQUALS: isize = 14;
pub const STRING: isize = 15;
pub const Name: isize = 16;
pub const S: isize = 17;
pub const PI: isize = 18;
pub const INSIDE: usize = 1;
pub const PROC_INSTR: usize = 2;
pub const channelNames: [&'static str; 0 + 2] = ["DEFAULT_TOKEN_CHANNEL", "HIDDEN"];
pub const modeNames: [&'static str; 3] = ["DEFAULT_MODE", "INSIDE", "PROC_INSTR"];
pub const ruleNames: [&'static str; 24] = [
"COMMENT",
"CDATA",
"DTD",
"EntityRef",
"CharRef",
"SEA_WS",
"OPEN",
"XMLDeclOpen",
"SPECIAL_OPEN",
"TEXT",
"CLOSE",
"SPECIAL_CLOSE",
"SLASH_CLOSE",
"SLASH",
"EQUALS",
"STRING",
"Name",
"S",
"HEXDIGIT",
"DIGIT",
"NameChar",
"NameStartChar",
"PI",
"IGNORE",
];
pub const _LITERAL_NAMES: [Option<&'static str>; 15] = [
None,
None,
None,
None,
None,
None,
None,
Some("'<'"),
None,
None,
Some("'>'"),
None,
Some("'/>'"),
Some("'/'"),
Some("'='"),
];
pub const _SYMBOLIC_NAMES: [Option<&'static str>; 19] = [
None,
Some("COMMENT"),
Some("CDATA"),
Some("DTD"),
Some("EntityRef"),
Some("CharRef"),
Some("SEA_WS"),
Some("OPEN"),
Some("XMLDeclOpen"),
Some("TEXT"),
Some("CLOSE"),
Some("SPECIAL_CLOSE"),
Some("SLASH_CLOSE"),
Some("SLASH"),
Some("EQUALS"),
Some("STRING"),
Some("Name"),
Some("S"),
Some("PI"),
];
lazy_static! {
static ref _shared_context_cache: Arc<PredictionContextCache> =
Arc::new(PredictionContextCache::new());
static ref VOCABULARY: Box<dyn Vocabulary> = Box::new(VocabularyImpl::new(
_LITERAL_NAMES.iter(),
_SYMBOLIC_NAMES.iter(),
None
));
}
pub type LexerContext<'input> =
BaseRuleContext<'input, EmptyCustomRuleContext<'input, LocalTokenFactory<'input>>>;
pub type LocalTokenFactory<'input> = CommonTokenFactory;
type From<'a> = <LocalTokenFactory<'a> as TokenFactory<'a>>::From;
#[derive(Tid)]
pub struct XMLLexer<'input, Input: CharStream<From<'input>>> {
base: BaseLexer<'input, XMLLexerActions, Input, LocalTokenFactory<'input>>,
}
impl<'input, Input: CharStream<From<'input>>> Deref for XMLLexer<'input, Input> {
type Target = BaseLexer<'input, XMLLexerActions, Input, LocalTokenFactory<'input>>;
fn deref(&self) -> &Self::Target { &self.base }
}
impl<'input, Input: CharStream<From<'input>>> DerefMut for XMLLexer<'input, Input> {
fn deref_mut(&mut self) -> &mut Self::Target { &mut self.base }
}
impl<'input, Input: CharStream<From<'input>>> XMLLexer<'input, Input> {
fn get_rule_names(&self) -> &'static [&'static str] { &ruleNames }
fn get_literal_names(&self) -> &[Option<&str>] { &_LITERAL_NAMES }
fn get_symbolic_names(&self) -> &[Option<&str>] { &_SYMBOLIC_NAMES }
fn get_grammar_file_name(&self) -> &'static str { "XMLLexer.g4" }
pub fn new_with_token_factory(input: Input, tf: &'input LocalTokenFactory<'input>) -> Self {
antlr_rust::recognizer::check_version("0", "2");
Self {
base: BaseLexer::new_base_lexer(
input,
LexerATNSimulator::new_lexer_atnsimulator(
_ATN.clone(),
_decision_to_DFA.clone(),
_shared_context_cache.clone(),
),
XMLLexerActions {},
tf,
),
}
}
}
impl<'input, Input: CharStream<From<'input>>> XMLLexer<'input, Input>
where
&'input LocalTokenFactory<'input>: Default,
{
pub fn new(input: Input) -> Self {
XMLLexer::new_with_token_factory(input, <&LocalTokenFactory<'input> as Default>::default())
}
}
pub struct XMLLexerActions {}
impl XMLLexerActions {}
impl<'input, Input: CharStream<From<'input>>>
Actions<'input, BaseLexer<'input, XMLLexerActions, Input, LocalTokenFactory<'input>>>
for XMLLexerActions
{
fn action(
_localctx: Option<&EmptyContext<'input, LocalTokenFactory<'input>>>,
rule_index: isize,
action_index: isize,
recog: &mut BaseLexer<'input, XMLLexerActions, Input, LocalTokenFactory<'input>>,
) {
match rule_index {
10 => XMLLexer::<'input>::CLOSE_action(None, action_index, recog),
_ => {}
}
}
fn sempred(
_localctx: Option<&EmptyContext<'input, LocalTokenFactory<'input>>>,
rule_index: isize,
pred_index: isize,
recog: &mut BaseLexer<'input, XMLLexerActions, Input, LocalTokenFactory<'input>>,
) -> bool {
match rule_index {
0 => XMLLexer::<'input>::COMMENT_sempred(None, pred_index, recog),
_ => true,
}
}
}
impl<'input, Input: CharStream<From<'input>>> XMLLexer<'input, Input> {
fn CLOSE_action(
_localctx: Option<&LexerContext<'input>>,
action_index: isize,
recog: &mut <Self as Deref>::Target,
) {
match action_index {
0 => {
recog.pop_mode();
}
_ => {}
}
}
fn COMMENT_sempred(
_localctx: Option<&LexerContext<'input>>,
pred_index: isize,
recog: &mut <Self as Deref>::Target,
) -> bool {
match pred_index {
0 => true,
_ => true,
}
}
}
impl<'input, Input: CharStream<From<'input>>>
LexerRecog<'input, BaseLexer<'input, XMLLexerActions, Input, LocalTokenFactory<'input>>>
for XMLLexerActions
{
}
impl<'input> TokenAware<'input> for XMLLexerActions {
type TF = LocalTokenFactory<'input>;
}
impl<'input, Input: CharStream<From<'input>>> TokenSource<'input> for XMLLexer<'input, Input> {
type TF = LocalTokenFactory<'input>;
fn next_token(&mut self) -> <Self::TF as TokenFactory<'input>>::Tok { self.base.next_token() }
fn get_line(&self) -> isize { self.base.get_line() }
fn get_char_position_in_line(&self) -> isize { self.base.get_char_position_in_line() }
fn get_input_stream(&mut self) -> Option<&mut dyn IntStream> { self.base.get_input_stream() }
fn get_source_name(&self) -> String { self.base.get_source_name() }
fn get_token_factory(&self) -> &'input Self::TF { self.base.get_token_factory() }
}
lazy_static! {
static ref _ATN: Arc<ATN> =
Arc::new(ATNDeserializer::new(None).deserialize(_serializedATN.chars()));
static ref _decision_to_DFA: Arc<Vec<antlr_rust::RwLock<DFA>>> = {
let mut dfa = Vec::new();
let size = _ATN.decision_to_state.len();
for i in 0..size {
dfa.push(DFA::new(_ATN.clone(), _ATN.get_decision_state(i), i as isize).into())
}
Arc::new(dfa)
};
}
const _serializedATN: &'static str =
"\x03\u{608b}\u{a72a}\u{8133}\u{b9ed}\u{417c}\u{3be7}\u{7786}\u{5964}\x02\
\x14\u{e8}\x08\x01\x08\x01\x08\x01\x04\x02\x09\x02\x04\x03\x09\x03\x04\
\x04\x09\x04\x04\x05\x09\x05\x04\x06\x09\x06\x04\x07\x09\x07\x04\x08\x09\
\x08\x04\x09\x09\x09\x04\x0a\x09\x0a\x04\x0b\x09\x0b\x04\x0c\x09\x0c\x04\
\x0d\x09\x0d\x04\x0e\x09\x0e\x04\x0f\x09\x0f\x04\x10\x09\x10\x04\x11\x09\
\x11\x04\x12\x09\x12\x04\x13\x09\x13\x04\x14\x09\x14\x04\x15\x09\x15\x04\
\x16\x09\x16\x04\x17\x09\x17\x04\x18\x09\x18\x04\x19\x09\x19\x03\x02\x03\
\x02\x03\x02\x03\x02\x03\x02\x03\x02\x07\x02\x3c\x0a\x02\x0c\x02\x0e\x02\
\x3f\x0b\x02\x03\x02\x03\x02\x03\x02\x03\x02\x03\x02\x03\x02\x03\x03\x03\
\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\
\x03\x07\x03\x52\x0a\x03\x0c\x03\x0e\x03\x55\x0b\x03\x03\x03\x03\x03\x03\
\x03\x03\x03\x03\x04\x03\x04\x03\x04\x03\x04\x07\x04\x5f\x0a\x04\x0c\x04\
\x0e\x04\x62\x0b\x04\x03\x04\x03\x04\x03\x04\x03\x04\x03\x05\x03\x05\x03\
\x05\x03\x05\x03\x06\x03\x06\x03\x06\x03\x06\x06\x06\x70\x0a\x06\x0d\x06\
\x0e\x06\x71\x03\x06\x03\x06\x03\x06\x03\x06\x03\x06\x03\x06\x03\x06\x06\
\x06\x7b\x0a\x06\x0d\x06\x0e\x06\x7c\x03\x06\x03\x06\x05\x06\u{81}\x0a\
\x06\x03\x07\x03\x07\x05\x07\u{85}\x0a\x07\x03\x07\x05\x07\u{88}\x0a\x07\
\x03\x08\x03\x08\x03\x08\x03\x08\x03\x09\x03\x09\x03\x09\x03\x09\x03\x09\
\x03\x09\x03\x09\x03\x09\x03\x09\x03\x09\x03\x0a\x03\x0a\x03\x0a\x03\x0a\
\x03\x0a\x03\x0a\x03\x0a\x03\x0a\x03\x0b\x06\x0b\u{a1}\x0a\x0b\x0d\x0b\
\x0e\x0b\u{a2}\x03\x0c\x03\x0c\x03\x0c\x03\x0d\x03\x0d\x03\x0d\x03\x0d\
\x03\x0d\x03\x0e\x03\x0e\x03\x0e\x03\x0e\x03\x0e\x03\x0f\x03\x0f\x03\x10\
\x03\x10\x03\x11\x03\x11\x07\x11\u{b8}\x0a\x11\x0c\x11\x0e\x11\u{bb}\x0b\
\x11\x03\x11\x03\x11\x03\x11\x07\x11\u{c0}\x0a\x11\x0c\x11\x0e\x11\u{c3}\
\x0b\x11\x03\x11\x05\x11\u{c6}\x0a\x11\x03\x12\x03\x12\x07\x12\u{ca}\x0a\
\x12\x0c\x12\x0e\x12\u{cd}\x0b\x12\x03\x13\x03\x13\x03\x13\x03\x13\x03\
\x14\x03\x14\x03\x15\x03\x15\x03\x16\x03\x16\x03\x16\x03\x16\x05\x16\u{db}\
\x0a\x16\x03\x17\x05\x17\u{de}\x0a\x17\x03\x18\x03\x18\x03\x18\x03\x18\
\x03\x18\x03\x19\x03\x19\x03\x19\x03\x19\x05\x3d\x53\x60\x02\x1a\x05\x03\
\x07\x04\x09\x05\x0b\x06\x0d\x07\x0f\x08\x11\x09\x13\x0a\x15\x02\x17\x0b\
\x19\x0c\x1b\x0d\x1d\x0e\x1f\x0f\x21\x10\x23\x11\x25\x12\x27\x13\x29\x02\
\x2b\x02\x2d\x02\x2f\x02\x31\x14\x33\x02\x05\x02\x03\x04\x0b\x04\x02\x0b\
\x0b\x22\x22\x04\x02\x28\x28\x3e\x3e\x04\x02\x24\x24\x3e\x3e\x04\x02\x29\
\x29\x3e\x3e\x05\x02\x0b\x0c\x0f\x0f\x22\x22\x05\x02\x32\x3b\x43\x48\x63\
\x68\x03\x02\x32\x3b\x05\x02\u{b9}\u{b9}\u{302}\u{371}\u{2041}\u{2042}\
\x0a\x02\x3c\x3c\x43\x5c\x63\x7c\u{2072}\u{2191}\u{2c02}\u{2ff1}\u{3003}\
\u{10801}\u{f902}\u{fdd1}\u{fdf2}\u{ffff}\x02\u{f1}\x02\x05\x03\x02\x02\
\x02\x02\x07\x03\x02\x02\x02\x02\x09\x03\x02\x02\x02\x02\x0b\x03\x02\x02\
\x02\x02\x0d\x03\x02\x02\x02\x02\x0f\x03\x02\x02\x02\x02\x11\x03\x02\x02\
\x02\x02\x13\x03\x02\x02\x02\x02\x15\x03\x02\x02\x02\x02\x17\x03\x02\x02\
\x02\x03\x19\x03\x02\x02\x02\x03\x1b\x03\x02\x02\x02\x03\x1d\x03\x02\x02\
\x02\x03\x1f\x03\x02\x02\x02\x03\x21\x03\x02\x02\x02\x03\x23\x03\x02\x02\
\x02\x03\x25\x03\x02\x02\x02\x03\x27\x03\x02\x02\x02\x04\x31\x03\x02\x02\
\x02\x04\x33\x03\x02\x02\x02\x05\x35\x03\x02\x02\x02\x07\x46\x03\x02\x02\
\x02\x09\x5a\x03\x02\x02\x02\x0b\x67\x03\x02\x02\x02\x0d\u{80}\x03\x02\
\x02\x02\x0f\u{87}\x03\x02\x02\x02\x11\u{89}\x03\x02\x02\x02\x13\u{8d}\
\x03\x02\x02\x02\x15\u{97}\x03\x02\x02\x02\x17\u{a0}\x03\x02\x02\x02\x19\
\u{a4}\x03\x02\x02\x02\x1b\u{a7}\x03\x02\x02\x02\x1d\u{ac}\x03\x02\x02\
\x02\x1f\u{b1}\x03\x02\x02\x02\x21\u{b3}\x03\x02\x02\x02\x23\u{c5}\x03\
\x02\x02\x02\x25\u{c7}\x03\x02\x02\x02\x27\u{ce}\x03\x02\x02\x02\x29\u{d2}\
\x03\x02\x02\x02\x2b\u{d4}\x03\x02\x02\x02\x2d\u{da}\x03\x02\x02\x02\x2f\
\u{dd}\x03\x02\x02\x02\x31\u{df}\x03\x02\x02\x02\x33\u{e4}\x03\x02\x02\
\x02\x35\x36\x07\x3e\x02\x02\x36\x37\x07\x23\x02\x02\x37\x38\x07\x2f\x02\
\x02\x38\x39\x07\x2f\x02\x02\x39\x3d\x03\x02\x02\x02\x3a\x3c\x0b\x02\x02\
\x02\x3b\x3a\x03\x02\x02\x02\x3c\x3f\x03\x02\x02\x02\x3d\x3e\x03\x02\x02\
\x02\x3d\x3b\x03\x02\x02\x02\x3e\x40\x03\x02\x02\x02\x3f\x3d\x03\x02\x02\
\x02\x40\x41\x07\x2f\x02\x02\x41\x42\x07\x2f\x02\x02\x42\x43\x07\x40\x02\
\x02\x43\x44\x03\x02\x02\x02\x44\x45\x06\x02\x02\x02\x45\x06\x03\x02\x02\
\x02\x46\x47\x07\x3e\x02\x02\x47\x48\x07\x23\x02\x02\x48\x49\x07\x5d\x02\
\x02\x49\x4a\x07\x45\x02\x02\x4a\x4b\x07\x46\x02\x02\x4b\x4c\x07\x43\x02\
\x02\x4c\x4d\x07\x56\x02\x02\x4d\x4e\x07\x43\x02\x02\x4e\x4f\x07\x5d\x02\
\x02\x4f\x53\x03\x02\x02\x02\x50\x52\x0b\x02\x02\x02\x51\x50\x03\x02\x02\
\x02\x52\x55\x03\x02\x02\x02\x53\x54\x03\x02\x02\x02\x53\x51\x03\x02\x02\
\x02\x54\x56\x03\x02\x02\x02\x55\x53\x03\x02\x02\x02\x56\x57\x07\x5f\x02\
\x02\x57\x58\x07\x5f\x02\x02\x58\x59\x07\x40\x02\x02\x59\x08\x03\x02\x02\
\x02\x5a\x5b\x07\x3e\x02\x02\x5b\x5c\x07\x23\x02\x02\x5c\x60\x03\x02\x02\
\x02\x5d\x5f\x0b\x02\x02\x02\x5e\x5d\x03\x02\x02\x02\x5f\x62\x03\x02\x02\
\x02\x60\x61\x03\x02\x02\x02\x60\x5e\x03\x02\x02\x02\x61\x63\x03\x02\x02\
\x02\x62\x60\x03\x02\x02\x02\x63\x64\x07\x40\x02\x02\x64\x65\x03\x02\x02\
\x02\x65\x66\x08\x04\x02\x02\x66\x0a\x03\x02\x02\x02\x67\x68\x07\x28\x02\
\x02\x68\x69\x05\x25\x12\x02\x69\x6a\x07\x3d\x02\x02\x6a\x0c\x03\x02\x02\
\x02\x6b\x6c\x07\x28\x02\x02\x6c\x6d\x07\x25\x02\x02\x6d\x6f\x03\x02\x02\
\x02\x6e\x70\x05\x2b\x15\x02\x6f\x6e\x03\x02\x02\x02\x70\x71\x03\x02\x02\
\x02\x71\x6f\x03\x02\x02\x02\x71\x72\x03\x02\x02\x02\x72\x73\x03\x02\x02\
\x02\x73\x74\x07\x3d\x02\x02\x74\u{81}\x03\x02\x02\x02\x75\x76\x07\x28\
\x02\x02\x76\x77\x07\x25\x02\x02\x77\x78\x07\x7a\x02\x02\x78\x7a\x03\x02\
\x02\x02\x79\x7b\x05\x29\x14\x02\x7a\x79\x03\x02\x02\x02\x7b\x7c\x03\x02\
\x02\x02\x7c\x7a\x03\x02\x02\x02\x7c\x7d\x03\x02\x02\x02\x7d\x7e\x03\x02\
\x02\x02\x7e\x7f\x07\x3d\x02\x02\x7f\u{81}\x03\x02\x02\x02\u{80}\x6b\x03\
\x02\x02\x02\u{80}\x75\x03\x02\x02\x02\u{81}\x0e\x03\x02\x02\x02\u{82}\
\u{88}\x09\x02\x02\x02\u{83}\u{85}\x07\x0f\x02\x02\u{84}\u{83}\x03\x02\
\x02\x02\u{84}\u{85}\x03\x02\x02\x02\u{85}\u{86}\x03\x02\x02\x02\u{86}\
\u{88}\x07\x0c\x02\x02\u{87}\u{82}\x03\x02\x02\x02\u{87}\u{84}\x03\x02\
\x02\x02\u{88}\x10\x03\x02\x02\x02\u{89}\u{8a}\x07\x3e\x02\x02\u{8a}\u{8b}\
\x03\x02\x02\x02\u{8b}\u{8c}\x08\x08\x03\x02\u{8c}\x12\x03\x02\x02\x02\
\u{8d}\u{8e}\x07\x3e\x02\x02\u{8e}\u{8f}\x07\x41\x02\x02\u{8f}\u{90}\x07\
\x7a\x02\x02\u{90}\u{91}\x07\x6f\x02\x02\u{91}\u{92}\x07\x6e\x02\x02\u{92}\
\u{93}\x03\x02\x02\x02\u{93}\u{94}\x05\x27\x13\x02\u{94}\u{95}\x03\x02\
\x02\x02\u{95}\u{96}\x08\x09\x03\x02\u{96}\x14\x03\x02\x02\x02\u{97}\u{98}\
\x07\x3e\x02\x02\u{98}\u{99}\x07\x41\x02\x02\u{99}\u{9a}\x03\x02\x02\x02\
\u{9a}\u{9b}\x05\x25\x12\x02\u{9b}\u{9c}\x03\x02\x02\x02\u{9c}\u{9d}\x08\
\x0a\x04\x02\u{9d}\u{9e}\x08\x0a\x05\x02\u{9e}\x16\x03\x02\x02\x02\u{9f}\
\u{a1}\x0a\x03\x02\x02\u{a0}\u{9f}\x03\x02\x02\x02\u{a1}\u{a2}\x03\x02\
\x02\x02\u{a2}\u{a0}\x03\x02\x02\x02\u{a2}\u{a3}\x03\x02\x02\x02\u{a3}\
\x18\x03\x02\x02\x02\u{a4}\u{a5}\x07\x40\x02\x02\u{a5}\u{a6}\x08\x0c\x06\
\x02\u{a6}\x1a\x03\x02\x02\x02\u{a7}\u{a8}\x07\x41\x02\x02\u{a8}\u{a9}\
\x07\x40\x02\x02\u{a9}\u{aa}\x03\x02\x02\x02\u{aa}\u{ab}\x08\x0d\x07\x02\
\u{ab}\x1c\x03\x02\x02\x02\u{ac}\u{ad}\x07\x31\x02\x02\u{ad}\u{ae}\x07\
\x40\x02\x02\u{ae}\u{af}\x03\x02\x02\x02\u{af}\u{b0}\x08\x0e\x07\x02\u{b0}\
\x1e\x03\x02\x02\x02\u{b1}\u{b2}\x07\x31\x02\x02\u{b2}\x20\x03\x02\x02\
\x02\u{b3}\u{b4}\x07\x3f\x02\x02\u{b4}\x22\x03\x02\x02\x02\u{b5}\u{b9}\
\x07\x24\x02\x02\u{b6}\u{b8}\x0a\x04\x02\x02\u{b7}\u{b6}\x03\x02\x02\x02\
\u{b8}\u{bb}\x03\x02\x02\x02\u{b9}\u{b7}\x03\x02\x02\x02\u{b9}\u{ba}\x03\
\x02\x02\x02\u{ba}\u{bc}\x03\x02\x02\x02\u{bb}\u{b9}\x03\x02\x02\x02\u{bc}\
\u{c6}\x07\x24\x02\x02\u{bd}\u{c1}\x07\x29\x02\x02\u{be}\u{c0}\x0a\x05\
\x02\x02\u{bf}\u{be}\x03\x02\x02\x02\u{c0}\u{c3}\x03\x02\x02\x02\u{c1}\
\u{bf}\x03\x02\x02\x02\u{c1}\u{c2}\x03\x02\x02\x02\u{c2}\u{c4}\x03\x02\
\x02\x02\u{c3}\u{c1}\x03\x02\x02\x02\u{c4}\u{c6}\x07\x29\x02\x02\u{c5}\
\u{b5}\x03\x02\x02\x02\u{c5}\u{bd}\x03\x02\x02\x02\u{c6}\x24\x03\x02\x02\
\x02\u{c7}\u{cb}\x05\x2f\x17\x02\u{c8}\u{ca}\x05\x2d\x16\x02\u{c9}\u{c8}\
\x03\x02\x02\x02\u{ca}\u{cd}\x03\x02\x02\x02\u{cb}\u{c9}\x03\x02\x02\x02\
\u{cb}\u{cc}\x03\x02\x02\x02\u{cc}\x26\x03\x02\x02\x02\u{cd}\u{cb}\x03\
\x02\x02\x02\u{ce}\u{cf}\x09\x06\x02\x02\u{cf}\u{d0}\x03\x02\x02\x02\u{d0}\
\u{d1}\x08\x13\x02\x02\u{d1}\x28\x03\x02\x02\x02\u{d2}\u{d3}\x09\x07\x02\
\x02\u{d3}\x2a\x03\x02\x02\x02\u{d4}\u{d5}\x09\x08\x02\x02\u{d5}\x2c\x03\
\x02\x02\x02\u{d6}\u{db}\x05\x2f\x17\x02\u{d7}\u{db}\x04\x2f\x30\x02\u{d8}\
\u{db}\x05\x2b\x15\x02\u{d9}\u{db}\x09\x09\x02\x02\u{da}\u{d6}\x03\x02\
\x02\x02\u{da}\u{d7}\x03\x02\x02\x02\u{da}\u{d8}\x03\x02\x02\x02\u{da}\
\u{d9}\x03\x02\x02\x02\u{db}\x2e\x03\x02\x02\x02\u{dc}\u{de}\x09\x0a\x02\
\x02\u{dd}\u{dc}\x03\x02\x02\x02\u{de}\x30\x03\x02\x02\x02\u{df}\u{e0}\
\x07\x41\x02\x02\u{e0}\u{e1}\x07\x40\x02\x02\u{e1}\u{e2}\x03\x02\x02\x02\
\u{e2}\u{e3}\x08\x18\x07\x02\u{e3}\x32\x03\x02\x02\x02\u{e4}\u{e5}\x0b\
\x02\x02\x02\u{e5}\u{e6}\x03\x02\x02\x02\u{e6}\u{e7}\x08\x19\x04\x02\u{e7}\
\x34\x03\x02\x02\x02\x14\x02\x03\x04\x3d\x53\x60\x71\x7c\u{80}\u{84}\u{87}\
\u{a2}\u{b9}\u{c1}\u{c5}\u{cb}\u{da}\u{dd}\x08\x08\x02\x02\x07\x03\x02\
\x05\x02\x02\x07\x04\x02\x03\x0c\x02\x06\x02\x02";